admin 发表于 2019-5-16 05:13:37

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;

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

珍藏版 发表于 2019-5-16 07:00:20

发发呆,回回帖,工作结束~

晋魂雪儿 发表于 2019-6-6 08:38:32

呵呵,低调,低调!

灵魂承载者 发表于 2019-6-14 09:30:21

这贴内容不错

圣罗兰 发表于 2019-6-19 09:03:28

呵呵。。。不错啊

极品小兔子 发表于 2019-6-19 09:41:53

这个帖一般般,还可以哦!

众神茶茶文 发表于 2019-7-4 09:08:02

呵呵,低调,低调!

一样的天空 发表于 2019-7-30 08:13:21

纯粹路过,没任何兴趣,仅仅是看在老用户份上回复一下

残月光 发表于 2019-8-5 09:04:41

确实是难得好帖啊,顶先!

獨特愛戀 发表于 2019-8-18 09:24:07

又抢到前排了。哈,不用怀疑,不用惊讶,你也没有看错!
页: [1] 2 3 4 5
查看完整版本: 91M2引擎的传奇如何克隆玩家为人形怪?