>[danger] 注:脚本中本身没有“我”的这个概念,而是根据传人参数确定当前执行者,所以对通过Gamelib查找出来的角色和参数传入的角色的操作没有区别 > 同时需要注意的是,Gamelib.FindPlayer只能够查找当前在线的角色,角色不存在或不在线是不可被查找到的,如果需要判定更准确,可以辅以[数据库操作来](%E5%A6%82%E4%BD%95%E6%93%8D%E4%BD%9C%E6%95%B0%E6%8D%AE%E5%BA%93.htm)判断角色是否存在 ``` 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; ```