您当前的位置:首页 > 传奇技术

91M2引擎如何获取坐标上指定范围内的全部怪物脚本

本文出处:网游动力作者:本站发布时间:2019-05-16阅读次数:
如何获取坐标上指定范围内的全部怪物

unit Q2;

inte**ce
  uses Classes, SysUtils;

procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);

implementation

procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
var
  AActorList: TActorList; 
  AActor: TActor;
  I: Integer;
begin
  //取出指定范围里的对象列表
  AActorList := Player.Map.GetActorListAt(Player.MapX + 1, Player.MapY, '白野猪'{如果不指定名称则取出的是全部对象}); //取出一个坐标上的全部白野猪列表
  try
    for I := 0 to AActorList.Count - 1 do  //循环处理列表中的对象
    begin
      AActor := AActorList.Items[I];
      try
        //针对AActor做些处理
      except
      end;
    end;
  finally
    AActorList.Free; //这个列表需要执行Free释放掉
  end;  
  //取出以某坐标为中心范围内的怪物列表
  AActorList := Player.Map.GetActorListInRange(Player.MapX, Player.MapY, 3{3格范围}, '白野猪'{如果不指定名称则取出的是全部对象});   
  try
    for I := 0 to AActorList.Count - 1 do  //循环处理列表中的对象
    begin
      AActor := AActorList.Items[I];
      try
        //针对AActor做些处理
      except
      end;
    end;
  finally
    AActorList.Free;
  end;
end;

end.