登录
×
  • 首页
  • 传奇论坛
  • 传奇版本库
  • 传奇服务端
  • 传奇三端手游
  • 传奇素材网
  • 传奇客户端
  • 下载排行
  • 获取邀请码
  • 网络广告 风险自担
    110601

    [其它手游引擎] 91M2引擎的传奇如何克隆玩家为人形怪方法讲解

     火... [复制链接]

    [其它手游引擎] 91M2引擎的传奇如何克隆玩家为人形怪方法讲解

     火... [复制链接]
    趣游论坛

    1万

    主题

    10

    回帖

    11万

    积分

    管理员

    积分
    112181

    灌水之王活跃会员突出贡献优秀版主荣誉管理论坛元老

    趣游论坛 2019-5-14 16:01:57 / 显示全部楼层 /阅读模式
    110601
    20190514154759.png

    如何克隆玩家为人形怪

    方法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;

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

    回复

    使用道具 举报

    太执着

    0

    主题

    4817

    回帖

    1万

    积分

    年VIP会员

    积分
    11629
    太执着 2024-8-27 04:57:39 / 显示全部楼层
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    扫一扫加群沟通交流

    首页 论坛 !mobpost! 最新 我的