找回密码
 立即注册

77M2引擎如何创建和删除一个副本地图脚本示例

[复制链接]
◇逍遥◆MIR2◇ 发表于 2022-9-16 12:46:15 | 显示全部楼层 |阅读模式
如何创建一个副本地图
procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
var
  AMap: TEnvirnoment;   
  I: Integer;
begin
  AMap:= Gamelib.CreateDuplicateMap('Dota对战', 300); //创建一个Dota副本,副本持续时间为300秒
  if AMap <> nil then //如果创建成功,则不为nil
  begin
    AMap.RunMon := False; //设置地图为不允许穿过怪物的模式
    for I := 0 to Player.GroupCount - 1 do //循环当前玩家所在的队伍
      if Player.Group[I] <> nil then
      begin
        Player.Group[I].MapMoveEx(AMap, 100, 100); //将队员传送到副本的指定坐标
        Player.SendCountDownMessage('离副本关闭还有{$Time:300$}', 0); //向队员发送一个倒计时信息
      end;
  end
  else
    Npc.MessageBox(Player, '副本创建失败!!');
end;


注:副本地图不是预生成的,而是调用脚本后才开始创建的,没有做数量上的限制,实际应用中则最好根据副本配置情况限制副本同一时间最大允许数量
副本的持续时间不得低于1分钟


如何删除一个副本地图
unit Q2;

inte**ce
  uses Classes, SysUtils;

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

implementation

procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
begin
  if Player.Map.Duplicate then //如果玩家当前处于副本地图中
    Gamelib.CloseDuplicateMap(Player.Map.Name); //关闭副本,人物都回城,副本地图怪物清理掉
end;

end.

xiaojie73oo 发表于 2022-9-16 17:09:29 | 显示全部楼层
我只是路过打酱油的。
回复

使用道具 举报

回忆Childhoo 发表于 2022-9-17 17:10:32 | 显示全部楼层
太生气了,无法HOLD啦 >_<......
回复

使用道具 举报

blfxdsh 发表于 2022-9-18 06:58:27 | 显示全部楼层
感恩无私的分享与奉献 :)
回复

使用道具 举报

1449231467 发表于 2022-9-18 07:32:44 | 显示全部楼层
感恩无私的分享与奉献 :)
回复

使用道具 举报

ggjute 发表于 2022-9-18 07:56:02 | 显示全部楼层
淡定,淡定,淡定……
回复

使用道具 举报

nickal 发表于 2022-9-19 05:11:48 | 显示全部楼层
太生气了,无法HOLD啦 >_<......
回复

使用道具 举报

takashi79 发表于 2022-9-19 09:18:59 | 显示全部楼层
激动人心,无法言表!
回复

使用道具 举报

za402 发表于 2022-9-19 18:02:30 | 显示全部楼层
我只是路过打酱油的。
回复

使用道具 举报

boolay 发表于 2022-9-21 06:20:56 | 显示全部楼层
太生气了,无法HOLD啦 >_<......
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|游戏淘宝湾

GMT+8, 2024-11-23 22:56 , Processed in 0.060971 second(s), 53 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024, Oddpp Cloud.

快速回复 返回顶部 返回列表