逍遥MIR 发表于 2024-7-17 23:55:08

91M2引擎如何访问其他角色脚本和命令说明

如何访问其他角色
procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
var
Obj: TPlayObject;
begin
Obj := Gamelib.FindPlayer('张三');
if Obj <> nil then
begin
    Obj.SendMessage('你的东西掉了。。。', 0);
    if Obj.Wepon <> nil then
    begin
      Obj.Wepon.AddDC := Obj.Wepon.AddDC + 10;< /FONT>
      Obj.UpdateItem(Obj.Wepon);
    end;
end
else
    Npc.MessageBox(Player, '玩家“张三”不在线!!!');
end;


注:脚本中本身没有“我”的这个概念,而是根据传人参数确定当前执行者,所以对通过Gamelib查找出来的角色和参数传入的角色的操作没有区别
同时需要注意的是,Gamelib.FindPlayer只能够查找当前在线的角色,角色不存在或不在线是不可被查找到的,如果需要判定更准确,可以辅以数据库操作来判断角色是否存在
页: [1]
查看完整版本: 91M2引擎如何访问其他角色脚本和命令说明