--0记录怪物死亡次数 --1记录门牌号 --2记录等级判断(1-6分别是30-39,40-49,50-59,60-69,70-79,80+) --3怪的波数 --4地图的怪的总数 --5元素神殿 --传送进入元素神殿 local YSSD_pos = {} --地宫坐标 YSSD_pos[1] = {x=80,y=40,z=145} YSSD_pos[2] = {x=100,y=40,z=131} YSSD_pos[3] = {x= 127,y=40,z=117} YSSD_pos[4] = {x=159,y=40,z=113} YSSD_pos[5] = {x=180,y=1534,z=139} YSSD_pos[6] = {x=225,y=1534,z=132} YSSD_pos[7] = {x=220,y=1534,z=179} YSSD_pos[8] = {x=221,y=1534,z=87} YSSD_pos[9] = {x=214,y=1534,z=34} YSSD_pos[10] = {x=172,y=421,z=56} --天宫 YSSD_pos[101] = {x=37,y=40,z=172} YSSD_pos[102] = {x=34,y=40,z=128} YSSD_pos[103] = {x=26,y=40,z=85} YSSD_pos[104] = {x=69,y=784,z=65} YSSD_pos[105] = {x=90,y=784,z=76} YSSD_pos[106] = {x=119,y=784,z=74} YSSD_pos[107] = {x=117,y=784,z=42} YSSD_pos[108] = {x=115,y=784,z=23} YSSD_pos[109] = {x=62,y=784,z=36} YSSD_pos[110] = {x=35,y=784,z=31} --副本开启对话 function yuansukaiqi_OnTalk(MapID, InstanceID, TargetID, TargetTypeID, RoleID, TalkIndex) if TalkIndex == -1 then local MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 20, 206575) --“你想要挑战元素神殿?看看自己的实力自己选择神殿分支或者圣殿分支吧,神殿分支比较容易,而且免费进入。圣殿分支则极为困难,而且你必须交5个圣殿之钥才可开启圣殿分支的大门。” msg.AddMsgEvent(MsgID, 24, TargetID) --npcid msg.AddMsgEvent(MsgID, 21, 4) msg.AddMsgEvent(MsgID, 1, 206576) --“上交5个圣殿之钥,开启圣殿分支” msg.AddMsgEvent(MsgID, 21, 5) msg.AddMsgEvent(MsgID, 1, 206577) --“开启神殿分支” msg.AddMsgEvent(MsgID, 21, 6) msg.AddMsgEvent(MsgID, 1, 100002) --“取消” msg.DispatchRoleMsgEvent(RoleID, MsgID) elseif TalkIndex == 4 then--开启天宫 if role.GetRoleItemNum(RoleID, 4810061) >= 5 then if map.GetMapScriptData(MapID, InstanceID, 1, 3) == 0 then role.RemoveFromRole(MapID, InstanceID, RoleID, 4810061, 5, 420)--天地票 map.OpenCloseDoor(MapID, InstanceID, 321, 1) map.SetMapScriptData(MapID, InstanceID, 1, 1, 1) map.SetMapScriptData(MapID, InstanceID, 1, 3, 1) map.SetMapScriptData(MapID, InstanceID, 1, 5, 1) YSSDD_CreatCreature(MapID, InstanceID) local QuestID1 = msg.BeginMsgEvent() msg.AddMsgEvent(QuestID1, 13, 0) msg.AddMsgEvent(QuestID1, 1, 206578)--圣殿分支的大门已经开启 msg.DispatchRoleMsgEvent(RoleID, QuestID1) else local QuestID1 = msg.BeginMsgEvent() msg.AddMsgEvent(QuestID1, 13, 0) msg.AddMsgEvent(QuestID1, 1, 206546)--门已经开启,不用再次开启 msg.DispatchRoleMsgEvent(RoleID, QuestID1) end else local MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 20, 206579) --“你身上没有5个圣殿之钥是无法进入圣殿分支的” msg.AddMsgEvent(MsgID, 24, TargetID) --npcid msg.AddMsgEvent(MsgID, 21, 4) msg.AddMsgEvent(MsgID, 1, 206576) --“上交5个圣殿之钥,开启圣殿分支” msg.AddMsgEvent(MsgID, 21, 6) msg.AddMsgEvent(MsgID, 1, 100002) --“取消” msg.DispatchRoleMsgEvent(RoleID, MsgID) end elseif TalkIndex == 5 then--开启地宫 if map.GetMapScriptData(MapID, InstanceID, 1, 3) == 0 then map.OpenCloseDoor(MapID, InstanceID, 331, 1) map.SetMapScriptData(MapID, InstanceID, 1, 1, 1) map.SetMapScriptData(MapID, InstanceID, 1, 3, 1) map.SetMapScriptData(MapID, InstanceID, 1, 5, 2) YSSDD_CreatCreature(MapID, InstanceID) local QuestID1 = msg.BeginMsgEvent() msg.AddMsgEvent(QuestID1, 13, 0) msg.AddMsgEvent(QuestID1, 1, 206580)--神殿分支的大门已经开启 msg.DispatchRoleMsgEvent(RoleID, QuestID1) else local QuestID1 = msg.BeginMsgEvent() msg.AddMsgEvent(QuestID1, 13, 0) msg.AddMsgEvent(QuestID1, 1, 206546)--大门已经开启,不用再次开启 msg.DispatchRoleMsgEvent(RoleID, QuestID1) end end end aux.RegisterCreatureEvent(1085205, 7, "yuansukaiqi_OnTalk") -- --地宫副本刷怪 function YSSDD_CreatCreature(MapID, InstanceID) local RoleTbl = map.GetMapAllRoleID(MapID, InstanceID) local totallevel = 0 local num = 0 local Player = {} local index = 0 for u,v in pairs(RoleTbl) do if u ~= nil then local level = role.GetRoleLevel(MapID, InstanceID, v) totallevel = totallevel + level num = num + 1 index = index + 1 Player[index] = v end end local k = 1 if num == 0 then k = map.GetMapScriptData(MapID,InstanceID,1,2) else k = math.floor(totallevel/num/10) - 2 if k > 6 then k = 6 elseif k < 1 then k = 1 end map.SetMapScriptData(MapID,InstanceID,1,2,k) end local monster = {}--怪 --地宫 monster[1] = {mon = {1085001}, num = {6}}--门1开启 monster[2] = {mon = {1085001, 1085007}, num = {4, 2}}--1波 monster[3] = {mon = {1085001, 1085007, 1085013}, num = {4, 1, 1}}--二波 monster[4] = {mon = {1085001}, num = {6}}--门2开启 monster[5] = {mon = {1085001, 1085007}, num = {4, 3}}--1 monster[6] = {mon = {1085001, 1085013}, num = {4, 3}}--2 monster[7] = {mon = {0}, num = {0}}--门3单写 monster[8] = {mon = {1085007, 1085013}, num = {4, 2}}--门4 monster[9] = {mon = {1085013, 1085019}, num = {4, 2}}--1 monster[10] = {mon = {1085007, 1085019}, num = {6, 2}}--2 monster[11] = {mon = {1085013, 1085019}, num = {4, 2}}--门5 monster[12] = {mon = {1085007, 1085019}, num = {4, 2}}--1 monster[13] = {mon = {1085001, 1085019, 1085025}, num = {8, 1, 1}}--2 monster[14] = {mon = {1085001,0}, num = {4,0}}--门6 monster[15] = {mon = {1085007, 1085025}, num = {6, 2}}--门7 monster[16] = {mon = {1085019, 1085001, 1085025}, num = {4, 6, 1}}--1 monster[17] = {mon = {1085013, 1085001}, num = {6, 5}}--2 monster[18] = {mon = {1085013, 1085007, 1085019}, num = {6, 2, 1}}--门8 monster[19] = {mon = {1085001, 1085019, 1085025}, num = {6, 1, 2}}--1 monster[20] = {mon = {1085019, 1085025}, num = {6, 2}}--2 monster[21] = {mon = {1085013, 1085019, 1085025,0}, num = {1, 1, 1,0}}--门9 monster[22] = {mon = {0}, num = {0}}--门10其它单写 --天宫 monster[101] = {mon = {1085031}, num = {8}}--门1开启 monster[102] = {mon = {1085031, 1085037}, num = {4, 4}}--1波 monster[103] = {mon = {1085049, 1085037}, num = {4, 4}}--二波 monster[104] = {mon = {1085037, 1085043}, num = {6, 2}}--门2开启 monster[105] = {mon = {1085043, 1085049, 1085031}, num = {2, 2, 4}}--1 monster[106] = {mon = {1085055, 1085031, 1085043}, num = {4, 4, 2}}--2 monster[107] = {mon = {0}, num = {0}}--门3单写 monster[108] = {mon = {1085043, 1085031}, num = {3, 6}}--门4 monster[109] = {mon = {1085043, 1085037}, num = {3, 6}}--1 monster[110] = {mon = {1085031, 1085055}, num = {8, 2}}--2 monster[111] = {mon = {1085031, 1085043, 1085037}, num = {6, 2, 2}}--门5 monster[112] = {mon = {1085037, 1085031, 1085049}, num = {6, 2, 2}}--1 monster[113] = {mon = {1085037, 1085031, 1085043}, num = {4, 4, 1}}--2 monster[114] = {mon = {1085055, 1085043, 0}, num = {1, 1, 0}}--门6 monster[115] = {mon = {1085037, 1085049, 1085055}, num = {6, 3, 1}}--门7 monster[116] = {mon = {1085037, 1085049, 1085043, 1085055}, num = {5, 3, 3, 1}}--1 monster[117] = {mon = {1085037, 1085049, 1085043, 1085055}, num = {4, 4, 2, 2}}--2 monster[118] = {mon = {0}, num = {0}}--门8 monster[119] = {mon = {1085055, 0}, num = {2, 0}}--门9 monster[120] = {mon = {0}, num = {0}}--门10 --坐标点 local function GetNewYSSD_position(YSSD_pos1) local tbl_YSSD_pos = {} tbl_YSSD_pos[1] = {x=YSSD_pos1.x, y=YSSD_pos1.y,z=YSSD_pos1.z} tbl_YSSD_pos[2] = {x=YSSD_pos1.x, y=YSSD_pos1.y,z=YSSD_pos1.z+3} tbl_YSSD_pos[3] = {x=YSSD_pos1.x+3, y=YSSD_pos1.y,z=YSSD_pos1.z} tbl_YSSD_pos[4] = {x=YSSD_pos1.x, y=YSSD_pos1.y,z=YSSD_pos1.z-3} tbl_YSSD_pos[5] = {x=YSSD_pos1.x-3, y=YSSD_pos1.y,z=YSSD_pos1.z} tbl_YSSD_pos[6] = {x=YSSD_pos1.x+3, y=YSSD_pos1.y,z=YSSD_pos1.z+3} tbl_YSSD_pos[7] = {x=YSSD_pos1.x+3, y=YSSD_pos1.y,z=YSSD_pos1.z-3} tbl_YSSD_pos[8] = {x=YSSD_pos1.x-3, y=YSSD_pos1.y,z=YSSD_pos1.z+3} tbl_YSSD_pos[9] = {x=YSSD_pos1.x-3, y=YSSD_pos1.y,z=YSSD_pos1.z-3} tbl_YSSD_pos[10] = {x=YSSD_pos1.x, y=YSSD_pos1.y,z=YSSD_pos1.z+6} tbl_YSSD_pos[11] = {x=YSSD_pos1.x, y=YSSD_pos1.y,z=YSSD_pos1.z-6} tbl_YSSD_pos[12] = {x=YSSD_pos1.x+6, y=YSSD_pos1.y,z=YSSD_pos1.z+6} return tbl_YSSD_pos end local m = map.GetMapScriptData(MapID, InstanceID, 1, 5) local door = 0 local x = 0 if m == 1 then door = map.GetMapScriptData(MapID,InstanceID,1,1)+100 x = map.GetMapScriptData(MapID,InstanceID,1,3)+100 elseif m == 2 then door = map.GetMapScriptData(MapID,InstanceID,1,1) x = map.GetMapScriptData(MapID,InstanceID,1,3) end local newYSSD_pos = GetNewYSSD_position(YSSD_pos[door]) ------------------------- map.SetMapScriptData(MapID, InstanceID, 1, 4, 0) --local y = map.GetMapScriptData(MapID, InstanceID, 1, 5) if ( x >= 1 and x <= 22) or ( x >= 101 and x <= 120) then for u,v in pairs(monster[x].mon) do if u ~= nil then if v ~= 0 then for i = 1,monster[x].num[u] do local MonID = map.MapCreateColCreature(MapID, InstanceID, v+k-1, newYSSD_pos[i].x, newYSSD_pos[i].y,newYSSD_pos[i].z, true, "") if index and index > 0 then cre.AddEnmity(MapID, InstanceID, MonID, Player[math.random(1,index)], 1) end end end end map.SetMapScriptData(MapID, InstanceID, 1, 4, map.GetMapScriptData(MapID, InstanceID, 1, 4)+monster[x].num[u]) end --map.SetMapScriptData(MapID, InstanceID, 1, 4, map.GetMapScriptData(MapID, InstanceID, 1, 4)+CreatureNum) map.SetMapScriptData(MapID, InstanceID, 1, 0, map.GetMapScriptData(MapID, InstanceID, 1, 4)) YSSD_boss(MapID, InstanceID, x) end end --副本BOSS function YSSD_boss(MapID, InstanceID, siwang) local monster = {} monster[7] = true monster[14] = true monster[21] = true monster[22] = true monster[107] = true monster[114] = true monster[118] = true monster[119] = true monster[120] = true if monster[siwang] then local boss = {} boss[1] ={fuben = {1085127, 1085128, 1085129}, xiyou = 1085130, shouling = {1085131, 1085132}, digong= {1085061, 1085067, 1085073, 1085079}} boss[2] ={fuben = {1085133, 1085134, 1085135}, xiyou = 1085136, shouling = {1085137, 1085138}, digong= {1085062, 1085068, 1085074, 1085080}} boss[3] ={fuben = {1085139, 1085140, 1085141}, xiyou = 1085142, shouling = {1085143, 1085144}, digong= {1085063, 1085069, 1085075, 1085081}} boss[4] ={fuben = {1085145, 1085146, 1085147}, xiyou = 1085148, shouling = {1085149, 1085150}, digong= {1085064, 1085070, 1085076, 1085082}} boss[5] ={fuben = {1085151, 1085152, 1085153}, xiyou = 1085154, shouling = {1085156, 1085157}, digong= {1085065, 1085071, 1085077, 1085083}} boss[6] ={fuben = {1085158, 1085159, 1085160}, xiyou = 1085161, shouling = {1085162, 1085164}, digong= {1085066, 1085072, 1085078, 1085084}} boss[11] ={fuben = {1085165, 1085166, 1085167}, xiyou = 1085168, shouling = {1085169, 1085170}, digong= {1085085, 1085091, 1085097, 1085103, 1085109, 1085115, 1085121}} boss[12] ={fuben = {1085171, 1085172, 1085173}, xiyou = 1085174, shouling = {1085175, 1085176}, digong= {1085086, 1085092, 1085098, 1085104, 1085110, 1085116, 1085122}} boss[13] ={fuben = {1085177, 1085178, 1085179}, xiyou = 1085180, shouling = {1085181, 1085182}, digong= {1085087, 1085093, 1085099, 1085105, 1085111, 1085117, 1085123}} boss[14] ={fuben = {1085183, 1085184, 1085185}, xiyou = 1085186, shouling = {1085187, 1085188}, digong= {1085088, 1085094, 1085100, 1085106, 1085112, 1085118, 1085124}} boss[15] ={fuben = {1085189, 1085190, 1085191}, xiyou = 1085192, shouling = {1085194, 1085195}, digong= {1085089, 1085095, 1085101, 1085107, 1085113, 1085119, 1085125}} boss[16] ={fuben = {1085196, 1085197, 1085198}, xiyou = 1085199, shouling = {1085200, 1085202}, digong= {1085090, 1085096, 1085102, 1085108, 1085114, 1085120, 1085126}} local k = map.GetMapScriptData(MapID,InstanceID,1,2) local door = map.GetMapScriptData(MapID,InstanceID,1,1) local a = math.random(1, 100) local b = math.random(1, 2) local c = math.random(1, 3) local d = math.random(1, 4) local m = map.GetMapScriptData(MapID, InstanceID, 1, 5) if m == 1 then door = door + 100 k = k + 10 elseif m == 2 then door = door k = k end if door == 3 or door == 103 then if a <= 70 then if b == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].shouling[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif b ==2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].shouling[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end elseif a > 70 and a <= 90 then if c == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif c ==2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif c ==3 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[3], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end elseif a > 90 then map.MapCreateColCreature(MapID, InstanceID, boss[k].xiyou, YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end elseif door == 6 or door == 106 then if a <= 50 then if b == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].shouling[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif b ==2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].shouling[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end elseif a > 50 and a <= 80 then if c == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif c ==2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif c ==3 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[3], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end elseif a > 80 and a <= 95 then map.MapCreateColCreature(MapID, InstanceID, boss[k].xiyou, YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif a > 95 then if d == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 3 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[3], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 4 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[4], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end end elseif door == 9 or door == 108 then if a <= 40 then if b == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].shouling[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif b ==2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].shouling[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end elseif a > 40 and a <= 75 then if c == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif c ==2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif c ==3 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[3], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end elseif a > 75 and a <= 90 then map.MapCreateColCreature(MapID, InstanceID, boss[k].xiyou, YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif a > 90 then if d == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 3 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[3], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 4 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[4], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end end elseif door == 109 then if a <= 30 then if c == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif c ==2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif c ==3 then map.MapCreateColCreature(MapID, InstanceID, boss[k].fuben[3], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end elseif a > 30 and a <= 65 then map.MapCreateColCreature(MapID, InstanceID, boss[k].xiyou, YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif a > 65 then if d == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 3 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[3], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 4 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[4], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end end elseif door == 10 then if d == 1 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 2 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 3 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[3], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif d == 4 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[4], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end elseif door == 110 then if a <= 10 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[1], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif a > 10 and a <= 30 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[2], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif a > 30 and a <= 40 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[3], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif a > 40 and a <= 60 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[4], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif a > 60 and a <= 80 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[5], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif a > 80 and a <= 90 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[6], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") elseif a > 90 then map.MapCreateColCreature(MapID, InstanceID, boss[k].digong[7], YSSD_pos[door].x,YSSD_pos[door].y, YSSD_pos[door].z, true, "") end end map.SetMapScriptData(MapID, InstanceID, 1, 4, map.GetMapScriptData(MapID, InstanceID, 1, 4)+1) map.SetMapScriptData(MapID, InstanceID, 1, 0, map.GetMapScriptData(MapID, InstanceID, 1, 4)) end end --d获得怪物死亡计数 function YSSD_guai_OnDie(MapID, InstanceID, TargetID, TargetTypeID, RoleID) local CreatureNum1 = map.GetMapScriptData(MapID, InstanceID, 1, 0)-1 map.SetMapScriptData(MapID, InstanceID, 1, 0, CreatureNum1) local x = map.GetMapScriptData(MapID,InstanceID,1,3) local door = {} --地宫 door[3] = {d = 332, id = 2} door[6] = {d = 333, id = 3} door[7] = {d = 334, id = 4} door[10] = {d = 344, id = 5} door[13] = {d = 335, id = 6} door[14] = {d = 336, id = 7} door[17] = {d = 337, id = 8} door[20] = {d = 338, id = 9} door[21] = {d = 339, id = 10} --天宫 door[103] = {d = 322, id = 2} door[106] = {d = 323, id = 3} door[107] = {d = 324, id = 4} door[110] = {d = 325, id = 5} door[113] = {d = 326, id = 6} door[114] = {d = 327, id = 7} door[117] = {d = 328, id = 8} door[118] = {d = 329, id = 9} door[119] = {d = 330, id = 10} if CreatureNum1 <= 0 then map.SetMapScriptData(MapID, InstanceID, 1, 3, x+1) local m = map.GetMapScriptData(MapID, InstanceID, 1, 5) if m == 1 then x = x+100 if door[x] ~= nil then map.OpenCloseDoor(MapID, InstanceID, door[x].d, 1) local MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 13, 0) msg.AddMsgEvent(MsgID, 1, 206539)--下一个房间的门已经开启,怪物已经出现,请开始挑战 msg.DispatchRoleMsgEvent(RoleID, MsgID) map.SetMapScriptData(MapID, InstanceID, 1, 1, door[x].id) end YSSDD_CreatCreature(MapID, InstanceID) elseif m == 2 then if door[x] ~= nil then map.OpenCloseDoor(MapID, InstanceID, door[x].d, 1) local MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 13, 0) msg.AddMsgEvent(MsgID, 1, 206539)--下一个房间的门已经开启,怪物已经出现,请开始挑战 msg.DispatchRoleMsgEvent(RoleID, MsgID) map.SetMapScriptData(MapID, InstanceID, 1, 1, door[x].id) end YSSDD_CreatCreature(MapID, InstanceID) end end end aux.RegisterCreatureEvent(1085001, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085002, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085003, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085004, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085005, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085006, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085007, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085008, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085009, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085010, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085011, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085012, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085013, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085014, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085015, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085016, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085017, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085018, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085019, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085020, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085021, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085022, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085023, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085024, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085025, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085026, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085027, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085028, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085029, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085030, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085031, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085032, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085033, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085034, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085035, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085036, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085037, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085038, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085039, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085040, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085041, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085042, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085043, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085044, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085045, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085046, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085047, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085048, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085049, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085050, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085051, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085052, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085053, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085054, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085055, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085056, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085057, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085058, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085059, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085060, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085061, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085062, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085063, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085064, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085065, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085066, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085067, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085068, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085069, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085070, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085071, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085072, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085073, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085074, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085075, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085076, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085077, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085078, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085079, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085080, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085081, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085082, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085083, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085084, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085085, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085086, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085087, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085088, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085089, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085090, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085091, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085092, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085093, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085094, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085095, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085096, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085097, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085098, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085099, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085100, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085101, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085102, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085103, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085104, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085105, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085106, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085107, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085108, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085109, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085110, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085111, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085112, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085113, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085114, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085115, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085116, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085117, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085118, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085119, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085120, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085121, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085122, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085123, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085124, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085125, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085126, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085127, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085128, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085129, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085130, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085131, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085132, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085133, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085134, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085135, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085136, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085137, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085138, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085139, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085140, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085141, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085142, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085143, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085144, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085145, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085146, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085147, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085148, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085149, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085150, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085151, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085152, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085153, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085154, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085156, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085157, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085158, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085159, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085160, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085161, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085162, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085164, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085165, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085166, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085167, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085168, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085169, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085170, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085171, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085172, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085173, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085174, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085175, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085176, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085177, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085178, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085179, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085180, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085181, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085182, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085183, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085184, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085185, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085186, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085187, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085188, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085189, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085190, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085191, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085192, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085194, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085195, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085196, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085197, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085198, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085199, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085200, 4, "YSSD_guai_OnDie") aux.RegisterCreatureEvent(1085202, 4, "YSSD_guai_OnDie")