如何克隆玩家为人形怪
91M2说明书 > 引擎脚本功能 > 脚本示例 >

方法1 直接从现有玩家克隆:
export function Main1(NpcTNormNpcPlayerTPlayObjectArgsTArgs) {
    let AObjTActor;
    //直接克隆当前玩家
    // Player{ 克隆对象 }, '鸭梨山大'{ 克隆后角色的名称 }, Player.Map{ 指定克隆对象的目标地图 }, 100, 100{ 目标地图的坐标 }
    AObj = GameLib.AddClonePlayer(Player'鸭梨山大'Player.Map100100);
    if (AObj != null) { //克隆可能会失败,所以需要判断是否为nil
        AObj.Master = Player//将克隆的对象设置为当前玩家的下属    
        AObj.MasterRoyaltyTick = 60 * 60 * 1000//设置下属的有效期为60分钟
    }
}
 
方法2 从文件中加载玩家数据克隆
 
1. 首先需要在特殊情况下保存玩家数据
// 方法2 从文件中加载玩家数据克隆:
// 1. 首先需要在特殊情况下保存玩家数据
export function Main2(NpcTNormNpcPlayerTPlayObjectArgsTArgs) {
    //将当前玩家的数据保存到本地文件(Envir目录下面)
    GameLib.SavePlayerToFile(Player'Store\\第一战士.dat');
}
 
2. 然后根据需要执行克隆
// 2. 然后根据需要执行克隆
export function Main(NpcTNormNpcPlayerTPlayObjectArgsTArgs) {
    let AObjTActor;
    //直接克隆当前玩家
    // 'Store\第一战士.dat'{ 要克隆的玩家数据文件 }, '鸭梨山大'{ 克隆后角色的名称 }, Player.Map{ 指定克隆对象的目标地图 }, 100, 100{ 目标地图的坐标 }
    AObj = GameLib.AddClonePlayerFromFile('Store\\第一战士.dat''鸭梨山大'Player.Map100100);
    if (AObj != null) { //克隆可能会失败,所以需要判断是否为nil
        AObj.Master = Player//将克隆的对象设置为当前玩家的下属    
        AObj.MasterRoyaltyTick = 10 * 60 * 1000//设置下属的有效期为10分钟
    }
    //如果不设置为下属,则克隆对象将是一个普通怪物
}
 
注意:通过克隆出来的人形怪不会爆出任何装备

 

引擎官网:www.91M2.com   交流群:5555999   此引擎仅供测试,切勿用于商业用途。如有侵权请立即联系我们,我们将在第一时间删除。