传奇版本中地图传送,随机传送等脚本方法和其它引擎有所不同,我们看一下以下脚本和其它引擎的有什么不同。
地图传送
unitQ2;
interface
usesClassesSysUtils;
procedureMain(Npc:TNormNpc;Player:TPlayObject;Args:TArgs);
implementation
procedureMain(Npc:TNormNpc;Player:TPlayObject;Args:TArgs);
var
I:Integer;
begin
Player.RandomMove;//在当前玩家在所在的地图随机传送
Player.RandomMove('0');//在地图名称为'0'的地图上随机传送
Player.RandomMoveEx(Player.Map);//在指定的地图对象上随机传送
Player.GuildMapMove('3'600600);//行会成员传送到指定位置
Player.GroupMapMove('3'300300);//编组成员传送到指定位置
//循环服务器全部玩家
forI:=Gamelib.PlayCount-1downto0do
begin
//按奇偶序号分阵营(取模操作)
ifImod2=0then
begin
Gamelib.Player[I].Camp:=1;//分到阵营1
Gamelib.Player[I].MapMove('0'300300);//传送到指定位置
end
else
begin
Gamelib.Player[I].Camp:=2;//分到阵营2
Gamelib.Player[I].MapMove('0'600600);//传送到指定位置
end;
end;
end;
end.
地图传送
unitQ2;
interface
usesClassesSysUtils;
procedureMain(Npc:TNormNpc;Player:TPlayObject;Args:TArgs);
implementation
procedureMain(Npc:TNormNpc;Player:TPlayObject;Args:TArgs);
var
I:Integer;
begin
Player.RandomMove;//在当前玩家在所在的地图随机传送
Player.RandomMove('0');//在地图名称为'0'的地图上随机传送
Player.RandomMoveEx(Player.Map);//在指定的地图对象上随机传送
Player.GuildMapMove('3'600600);//行会成员传送到指定位置
Player.GroupMapMove('3'300300);//编组成员传送到指定位置
//循环服务器全部玩家
forI:=Gamelib.PlayCount-1downto0do
begin
//按奇偶序号分阵营(取模操作)
ifImod2=0then
begin
Gamelib.Player[I].Camp:=1;//分到阵营1
Gamelib.Player[I].MapMove('0'300300);//传送到指定位置
end
else
begin
Gamelib.Player[I].Camp:=2;//分到阵营2
Gamelib.Player[I].MapMove('0'600600);//传送到指定位置
end;
end;
end;
end.

