XiuLian_Fire = XiuLian_Fire or {} local function _tick_map(RoleTbl) if type(RoleTbl) ~= "table" then return end for _, v in pairs(RoleTbl) do local time1 = role.GetRoleScriptData(v, 1, RoleDataType["XiuLianChang_Time"]) if time1 == 0 then local MapID, InstanceID = role.GetRoleMapID(v) role.RoleGotoNewMap(MapID, InstanceID, v, 3424073512, 576, 462, 712) else if time1 == 30 or time1 == 10 then local MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 71, 605018) msg.AddMsgEvent(MsgID, 9, time1) msg.DispatchRoleMsgEvent(v, MsgID) end role.SetRoleScriptData(v, 1, RoleDataType["XiuLianChang_Time"], time1 - 1) end end end local function onTimerMin(_actID) local curhour = tonumber(os.date("%H")) local curmin = tonumber(os.date("%M")) local RoleTbl1 = map.GetMapAllRoleID(2748433913, -1) local RoleTbl2 = map.GetMapAllRoleID(2748434169, -1) local RoleTbl3 = map.GetMapAllRoleID(2748434425, -1) local RoleTbl4 = map.GetMapAllRoleID(2748432633, -1) local RoleTbl5 = map.GetMapAllRoleID(2748432889, -1) _tick_map(RoleTbl1) _tick_map(RoleTbl2) _tick_map(RoleTbl3) _tick_map(RoleTbl4) _tick_map(RoleTbl5) if curhour % 2 == 1 and curmin == 0 then for k, v in pairs(XiuLian_Fire) do for _, v1 in pairs(v) do map.MapDeleteCreature(k, -1, v1) end end XiuLian_Fire = {} elseif curmin == 0 then map.SetMapScriptData(2748433913, -1, 1, 0, 0) map.SetMapScriptData(2748433913, -1, 1, 1, 0) map.SetMapScriptData(2748434169, -1, 1, 0, 0) map.SetMapScriptData(2748434169, -1, 1, 1, 0) map.SetMapScriptData(2748434425, -1, 1, 0, 0) map.SetMapScriptData(2748434425, -1, 1, 1, 0) map.SetMapScriptData(2748432633, -1, 1, 0, 0) map.SetMapScriptData(2748432633, -1, 1, 1, 0) map.SetMapScriptData(2748432889, -1, 1, 0, 0) map.SetMapScriptData(2748432889, -1, 1, 1, 0) XiuLian_Fire = {} for i = 1, 20 do map.MapCreateColCreature(2748433913, -1, 1099301, XiuLian_Pos[i].x, XiuLian_Pos[i].y, XiuLian_Pos[i].z, 1) map.MapCreateColCreature(2748434169, -1, 1099304, XiuLian_Pos[i].x, XiuLian_Pos[i].y, XiuLian_Pos[i].z, 1) map.MapCreateColCreature(2748434425, -1, 1099307, XiuLian_Pos[i].x, XiuLian_Pos[i].y, XiuLian_Pos[i].z, 1) map.MapCreateColCreature(2748432633, -1, 1099310, XiuLian_Pos[i].x, XiuLian_Pos[i].y, XiuLian_Pos[i].z, 1) map.MapCreateColCreature(2748432889, -1, 1099340, XiuLian_Pos[i].x, XiuLian_Pos[i].y, XiuLian_Pos[i].z, 1) end local MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 101, 605019) msg.DispatchMapMsgEvent(MsgID, 2748433913, -1) MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 101, 605019) msg.DispatchMapMsgEvent(MsgID, 2748434169, -1) MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 101, 605019) msg.DispatchMapMsgEvent(MsgID, 2748434425, -1) MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 101, 605019) msg.DispatchMapMsgEvent(MsgID, 2748432633, -1) MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 101, 605019) msg.DispatchMapMsgEvent(MsgID, 2748432889, -1) end end return { onTimerMin = onTimerMin, }