小巨人 发表于 2023-4-29 00:42:29

91M2引擎的传奇如何克隆玩家为人形怪方法讲解

如何克隆玩家为人形怪

方法1 直接从现有玩家克隆:

procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
var
AObj: TActor;
begin
//直接克隆当前玩家
AObj := Gamelib.AddClonePlayer(Player{克隆对象}, '鸭梨山大'{克隆后角色的名称}, Player.Map{指定克隆对象的目标地图}, 100, 100{目标地图的坐标});
if AObj <> nil then //克隆可能会失败,所以需要判断是否为nil
begin
   AObj.Master := Player; //将克隆的对象设置为当前玩家的下属   
   AObj.MasterRoyaltyTick := 60 * 60 * 1000; //设置下属的有效期为60分钟
end;
end;

方法2 从文件中加载玩家数据克隆:

1. 首先需要在特殊情况下保存玩家数据
procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
begin
//将当前玩家的数据保存到本地文件(Envir目录下面)
Gamelib.SavePlayerToFile(Player, 'Store\第一战士.dat');
end;

2. 然后根据需要执行克隆
procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
var
AObj: TActor;
begin
//直接克隆当前玩家
AObj := Gamelib.AddClonePlayerFromFile('Store\第一战士.dat'{要克隆的玩家数据文件}, '鸭梨山大'{克隆后角色的名称}, Player.Map{指定克隆对象的目标地图}, 100, 100{目标地图的坐标});
if AObj <> nil then //克隆可能会失败,所以需要判断是否为nil
begin
   AObj.Master := Player; //将克隆的对象设置为当前玩家的下属   
   AObj.MasterRoyaltyTick := 10 * 60 * 1000; //设置下属的有效期为10分钟
end;   

//如果不设置为下属,则克隆对象将是一个普通怪物
end;

注意:通过克隆出来的人形怪不会爆出任何装备

却是旧时相识 发表于 2023-4-29 01:23:48

这个帖子不回对不起自己!我想我是一天也不能离开GM爱好者:www.gmahz.com

思岍 发表于 2023-4-29 02:01:03

我看不错噢 谢谢楼主!GM爱好者:www.gmahz.com越来越好!

鄂尔多斯小伙子 发表于 2023-4-29 02:59:39

楼主,我太崇拜你了!我想我是一天也不能离开GM爱好者:www.gmahz.com

fcwindpass 发表于 2023-4-29 02:59:43

楼主发贴辛苦了,谢谢楼主分享!我觉得GM爱好者:www.gmahz.com是注册对了!

sdlzlsq 发表于 2023-4-29 03:24:16

金币我要攒金币!!!

123456806 发表于 2023-4-29 04:42:46

路过支持一下

123456865 发表于 2023-4-30 16:04:44

楼主太厉害了!楼主,I*老*虎*U!我觉得GM爱好者:www.gmahz.com真是个好地方

十年2017 发表于 2023-5-2 17:09:12

拿币走人。。。。

sdlzlsq 发表于 2023-5-4 12:28:22

既然你诚信诚意的推荐了,那我就勉为其难的看看吧!GM爱好者:www.gmahz.com不走平凡路。
页: [1] 2
查看完整版本: 91M2引擎的传奇如何克隆玩家为人形怪方法讲解