monster_loot.lua

main 1602 lines · 70.5 KB Raw
Alex Alex Commit Server upload 18/10/2026 23:38
1local GateTime = 0
2local PillarTime = 0
3local PASSIVE_LEVEL = 0
4local PillarEvent = nil
5local function onGetPassivas(player, id)
6 if player:getStorageValue(_SYSTEM.POINTS_ATR[01]) == id then
7 PASSIVE_LEVEL = player:getStorageValue(_SYSTEM.POINTS_ATR[08])
8 return true
9 elseif player:getStorageValue(_SYSTEM.POINTS_ATR[02]) == id then
10 PASSIVE_LEVEL = player:getStorageValue(_SYSTEM.POINTS_ATR[09])
11 return true
12 elseif player:getStorageValue(_SYSTEM.POINTS_ATR[03]) == id then
13 PASSIVE_LEVEL = player:getStorageValue(_SYSTEM.POINTS_ATR[10])
14 return true
15 elseif player:getStorageValue(_SYSTEM.POINTS_ATR[04]) == id then
16 PASSIVE_LEVEL = player:getStorageValue(_SYSTEM.POINTS_ATR[11])
17 return true
18 elseif player:getStorageValue(_SYSTEM.POINTS_ATR[05]) == id then
19 PASSIVE_LEVEL = player:getStorageValue(_SYSTEM.POINTS_ATR[12])
20 return true
21 elseif player:getStorageValue(_SYSTEM.POINTS_ATR[06]) == id then
22 PASSIVE_LEVEL = player:getStorageValue(_SYSTEM.POINTS_ATR[13])
23 return true
24 else
25 PASSIVE_LEVEL = 00
26 return false
27 end
28end
29
30local function onPillarFortune()
31 if Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP) > 00 then
32 if PillarTime > 00 then
33 if PillarTime == 01 then
34 for X = 01, 05 do
35 local POS_PILLAR = Tile(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_POS[X].TILE[01], _GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_POS[X].TILE[02], _GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_POS[X].TILE[03])
36 local CHECK_PILLAR = POS_PILLAR:getTopCreature()
37 if CHECK_PILLAR and CHECK_PILLAR:isMonster() then
38 doRemoveCreature(CHECK_PILLAR:getId())
39 end
40 end
41
42 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP, nil)
43 local players = Game.getPlayers()
44 for _, targetPlayer in ipairs(players) do
45 targetPlayer:sendTextMessage(MESSAGE_STATUS_WARNING, "O servidor falhou em eliminar os pilares dentro do tempo.\nNova tentativa ap�s o ServerSave.")
46 targetPlayer:sendCancelMessage("@RemoveMarkMap")
47 end
48 return false
49 end
50
51 PillarTime = PillarTime - 01
52 addEvent(onPillarFortune, 1000)
53 end
54 end
55end
56local function onRemoveSelectItem(pos, item, id)
57 local item = Tile(pos):getItemById(id)
58 if GateTime > 0 then
59 GateTime = GateTime - 1
60 addEvent(onRemoveSelectItem, 1000, pos, item)
61 else
62 Game.createItem(1546, 1, pos)
63 pos:sendMagicEffect(CONST_ME_POFF)
64 end
65end
66local function onTPPlayer(cid)
67 local player = Player(cid)
68 player:teleportTo({x=3999, y=991, z=07})
69 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
70 player:setStorageValue(_SYSTEM.TASK[00].TIMER, nil)
71 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
72 player:sendCancelMessage("@DGTime 0 0 0")
73 player:sendCancelMessage("@ResetDG")
74 player:setTown(Town(01))
75end
76local function onEspecialistaPlayer(cid)
77 local player = Player(cid)
78 player:teleportTo({x=3281, y=1632, z=7})
79 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
80
81 player:sendCancelMessage("@StarCliente")
82 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Desafio Finalizado!\nNivel de especialista aumentado. Acesse seu Menu, na aba STATUS para mais informa��es.")
83end
84local function onLoadQuest(cid, id)
85 local player = Player(cid)
86 if player then
87 if id then
88 if _QUESTLOG[id] then
89 if _QUESTLOG[id].Type == "HUNT" then
90 player:sendCancelMessage("@QuestAbertas " .._QUESTLOG[id].Type.. " " ..id.. " " ..player:getStorageValue(_QUESTLOG[id].UID_01).. " " ..player:getStorageValue(_QUESTLOG[id].Value[01]).. " " .._QUESTLOG[id].Value[02])
91 end
92 end
93 else
94 for X = 01, #_QUESTLOG do
95 if _QUESTLOG[X].Type == "NORMAL" then
96 player:sendCancelMessage("@QuestAbertas " .._QUESTLOG[X].Type.. " " ..X.. " " ..player:getStorageValue(_QUESTLOG[X].UID_01))
97 elseif _QUESTLOG[X].Type == "HUNT" then
98 player:sendCancelMessage("@QuestAbertas " .._QUESTLOG[X].Type.. " " ..X.. " " ..player:getStorageValue(_QUESTLOG[X].UID_01).. " " ..player:getStorageValue(_QUESTLOG[X].Value[01]).. " " .._QUESTLOG[X].Value[02])
99 else
100 player:sendCancelMessage("@QuestAbertas " .._QUESTLOG[X].Type.. " " ..X.. " " ..player:getStorageValue(_QUESTLOG[X].UID_01).. " " ..onGetBackpackItem(player, _QUESTLOG[X].Value[01]).. " " .._QUESTLOG[X].Value[02])
101 end
102 end
103 end
104 end
105 return true
106end
107function onKill(player, target)
108 local Name = target:getName()
109 if not target:isMonster() then
110 return true
111 end
112 local master = target:getMaster()
113 if master then
114 return true
115 end
116
117 local mpos = target:getPosition()
118 player:sendCancelMessage("@Analyser#05")
119 if player:getStorageValue(_SYSTEM.INVENTARIO[07].UID_01) == 7000 then -- Chance de ganhar muni��o ao eliminar monstros.
120 local RingRA = player:getStorageValue(_SYSTEM.INVENTARIO[07].UID_02)
121 local RingST = player:getStorageValue(_SYSTEM.INVENTARIO[07].UID_03)
122 local RingLV = player:getStorageValue(_SYSTEM.INVENTARIO[07].UID_05)
123 local ChanceRandom = math.random(200)
124 if RingRA < 0 then RingRA = 0 end
125 if RingST < 0 then RingST = 0 end
126 if RingLV < 0 then RingLV = 0 end
127 local AmmoGain = 05 * (RingRA + 01)
128 if player:getStorageValue(_SYSTEM.MAESTRIA[01]) == 05 then
129 if player:getStorageValue(_SYSTEM.MAESTRIA[04]) > 0 then
130 ChanceRandom = 00
131 AmmoGain = AmmoGain * player:getStorageValue(_SYSTEM.MAESTRIA[02])
132 end
133 end
134 if ChanceRandom <= _AMULET_CHANCE_MODE[RingRA] then
135 if player:getStorageValue(_SYSTEM.INVENTARIO[04].UID_01) > 0 then
136 local AtrAmmo = player:getStorageValue(_SYSTEM.TASK[00].RANK)
137 if AtrAmmo < 00 then AtrAmmo = 01 end
138 AtrAmmo = AtrAmmo * 500
139 local LimitBullet = AtrAmmo
140
141 if player:getStorageValue(_SYSTEM.INVENTARIO[04].UID_10) < LimitBullet then
142 if AmmoGain > (LimitBullet - player:getStorageValue(_SYSTEM.INVENTARIO[04].UID_10)) then
143 AmmoGain = LimitBullet - player:getStorageValue(_SYSTEM.INVENTARIO[04].UID_10)
144 end
145
146 player:setStorageValue(_SYSTEM.INVENTARIO[04].UID_10, (player:getStorageValue(_SYSTEM.INVENTARIO[04].UID_10) + AmmoGain))
147 player:sendCancelMessage("@LoadAmmo " ..player:getStorageValue(_SYSTEM.INVENTARIO[04].UID_10))
148 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[RING] Muni��o encontrada: x" ..AmmoGain)
149 end
150 end
151 end
152 end
153
154 if _GLOBAL_RANDOM.COLISEUM.NAME[Name] then
155 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Voc� venceu o combate!\nClique na est�tua para finalizar o desafio.")
156 return false
157 end
158 if Name == "Joker" then
159 if player:isPlayer() then
160 local lootIds = {}
161 local itemId = player:getStorageValue(_SYSTEM.INVENTARIO[04].UID_01) or 0
162 if itemId > 00 then
163 for X = 01, #_ITEMS[itemId].UPGRADE do
164 if _ITEMS[itemId].UPGRADE[X][01] > 00 then
165 table.insert(lootIds, _ITEMS[itemId].UPGRADE[X][01])
166 end
167 end
168 end
169 if #lootIds > 00 then
170 local chooses = math.random(01, #lootIds)
171 local chooseIds = lootIds[chooses]
172 local chooseQnt = 01
173 local rare = _ITEMS[chooseIds].RARE
174 local rateChance = 30
175 local dropChance = math.random(00, 100)
176
177 if dropChance < rateChance then
178 if doBackpack(player, 00, 03, 00, 01) then
179 player:sendCancelMessage("@Analyser#02#" ..chooseIds.. "#" ..chooseQnt.. "#" ..rare)
180 doBackpack(player, 03, 03, 00, 01, chooseIds) -- Procurar
181 if doBackpack(player, 01, 03, 00, 0, chooseIds, rare, 00, chooseQnt) then end
182 else
183 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Sua Backpack esta cheia.")
184 end
185 end
186 end
187 end
188 return false
189 end
190 if Name == "Mercenario" then
191 if player:getStorageValue(_QUESTLOG[197].UID_01) == 03 then
192 if player:getStorageValue(11034) == 05 then
193 player:setStorageValue(11034, nil)
194 player:setStorageValue(_QUESTLOG[197].UID_01, 04)
195
196 doBackpack(player, 12)
197 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
198 player:sendCancelMessage("@LoadQuestWindows")
199 else
200 player:setStorageValue(11034, (player:getStorageValue(11034) + 1))
201 end
202 return true
203 end
204 if player:getStorageValue(_QUESTLOG[198].UID_01) == 02 then
205 if player:getStorageValue(11034) == 15 then
206 player:setStorageValue(11034, nil)
207
208 local SummPos = player:getSummons()
209 addEvent(function()
210 SummPos[01]:say('VITORIA!', TALKTYPE_SAY)
211
212 addEvent(function()
213 for X = 02, #player:getSummons() do
214 local Ruge = math.random(00, 01)
215 if Ruge == 01 then
216 local talk_con = {
217 [01] = 'AEEEE!',
218 [02] = 'CONSEGUIMOS!',
219 [03] = 'Eu sabia que dava pra ganhar!',
220 [04] = '� ISSO A�, TIME!',
221 [05] = '� assim que se faz!',
222 [06] = 'Boa galera!',
223 }
224 SummPos[X]:say(talk_con[math.random(01, 06)], TALKTYPE_SAY)
225 end
226 end
227
228 addEvent(function()
229 player:setStorageValue(_QUESTLOG[198].UID_01, 03)
230 player:setStorageValue(_SYSTEM.DANGEROUS[01][01].STORAGE, nil)
231 player:teleportTo({x=3862, y=1762, z=06})
232 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
233
234 addEvent(function()
235 doBackpack(player, 12)
236 player:getPosition():sendMagicEffect(13)
237 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
238 player:sendCancelMessage("@LoadQuestWindows")
239 end, 3000)
240 end, 7000)
241 end, 1000)
242 end, 3000)
243 else
244 player:setStorageValue(11034, (player:getStorageValue(11034) + 1))
245 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[QUEST]: Mercen�rios eliminados: " ..player:getStorageValue(11034).. "/16")
246 end
247 return true
248 end
249 end
250 if Name == "Mortal Target" then
251 if player:getStorageValue(_QUESTLOG[187].UID_01) == 02 then
252 player:setStorageValue(_QUESTLOG[187].UID_01, 100)
253 player:setStorageValue(_QUESTLOG[188].UID_01, 001)
254 player:setStorageValue(_SYSTEM.DANGEROUS[01][01].STORAGE, nil)
255 player:teleportTo({x=3281, y=1632, z=7})
256 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
257 doBackpack(player, 12)
258
259 player:sendCancelMessage("@DGTime 0 0 0")
260 player:sendCancelMessage("@ResetDG")
261 addEvent(function()
262 player:addExperience(55000, true, true)
263 PlayerGoldCoins(player, 02, 5000)
264 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
265 end, 1000)
266 return true
267 end
268 end
269 if Name == "Pillar of Fortune" then
270 if Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_ID) == 11 then
271 local players = Game.getPlayers()
272 if Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP) == 01 then
273 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP, 02)
274
275 for _, targetPlayer in ipairs(players) do
276 targetPlayer:sendTextMessage(MESSAGE_EVENT_ADVANCE, "O servidor possui 05 minutos para destruir todos os 04 pilares restantes.")
277 end
278
279 PillarTime = 300
280 PillarEvent = addEvent(onPillarFortune, 1000)
281 return false
282 elseif Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP) == 05 then
283 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP, 06)
284 stopEvent(PillarEvent)
285
286 for _, targetPlayer in ipairs(players) do
287 targetPlayer:sendTextMessage(MESSAGE_INFO_DESCR, "Objetivo do evento concluido com sucesso.\n[ O dobro de Gold Coins de todas as criaturas at� o pr�ximo ServerSave ]")
288 targetPlayer:sendCancelMessage("@RemoveMarkMap")
289 end
290 return false
291 elseif Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP) < 06 then
292 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP, (Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP) + 01))
293
294 for _, targetPlayer in ipairs(players) do
295 targetPlayer:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Pilares destruidos:\n[ 0" ..(Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP) - 01).. " / 05 ]")
296 end
297 end
298 return false
299 end
300 end
301 if Name == "Orc Warlord" then
302 if player:getStorageValue(_QUESTLOG[172].UID_01) == 03 then
303 if player:getStorageValue(11001) == 19 then
304 player:setStorageValue(11001, nil)
305 player:setStorageValue(_QUESTLOG[172].UID_01, 04)
306
307 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[QUEST]: Orc Warlods eliminados: 20/20")
308 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[QUEST]: Todos foram eliminados.")
309 doBackpack(player, 12)
310 player:sendCancelMessage("@LoadQuestWindows")
311 else
312 player:setStorageValue(11001, (player:getStorageValue(11001) + 1))
313 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[QUEST]: Orc Warlods eliminados: " ..player:getStorageValue(11001).. "/20")
314 onLoadQuest(player)
315 end
316 end
317 end
318 if Name == "Blood Beast" then
319 if player:getStorageValue(_QUESTLOG[166].UID_01) == 02 then
320 if player:getStorageValue(10993) == 17 then
321 player:teleportTo({x=3651, y=1707, z=07})
322 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
323
324 player:setStorageValue(10993, nil)
325 addEvent(function()
326 player:setStorageValue(_QUESTLOG[166].UID_01, 100)
327 player:setStorageValue(_QUESTLOG[167].UID_01, 01)
328 player:setStorageValue(_QUESTLOG[168].UID_01, 01)
329 player:getPosition():sendMagicEffect(14)
330 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
331
332 player:addExperience(53000, true, true)
333 doBackpack(player, 12)
334 end, 3000)
335 return true
336 else
337 if player:getStorageValue(10993) < 01 then
338 player:setStorageValue(10993, 01)
339 else
340 player:setStorageValue(10993, (player:getStorageValue(10993) + 1))
341 end
342 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[NINHO]: Blood Beast restantes: " ..player:getStorageValue(10993).. "/18")
343 end
344 end
345 end
346 if Name == "Ashmunrah" then
347 local party = player:getParty()
348 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) == 06 then
349 if not party then
350 player:teleportTo({x=4098, y=1359, z=8})
351 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
352
353 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre a sala de recompensas.")
354 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
355 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
356 else
357 local members = party:getMembers()
358 members[#members + 1] = party:getLeader()
359 for _, member in ipairs(members) do
360 member:teleportTo({x=4098, y=1359, z=8})
361 member:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
362
363 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre a sala de recompensas.")
364 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
365 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
366 end
367 end
368
369 return true
370 end
371 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) < 00 then
372 if not party then
373 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
374 else
375 local members = party:getMembers()
376 members[#members + 1] = party:getLeader()
377 for _, member in ipairs(members) do
378 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
379 end
380 end
381 else
382 if not party then
383 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Selo Ancestral Obtido:\n[ 0" ..player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE).. "/06 ]")
384 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) + 1))
385 else
386 local members = party:getMembers()
387 members[#members + 1] = party:getLeader()
388 for _, member in ipairs(members) do
389 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Selo Ancestral Obtido:\n[ 0" ..player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE).. "/06 ]")
390 member:setStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) + 1))
391 end
392 end
393 end
394 return true
395 end
396 if Name == "Dipthrah" then
397 local party = player:getParty()
398 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) == 06 then
399 if not party then
400 player:teleportTo({x=4098, y=1359, z=8})
401 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
402
403 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre a sala de recompensas.")
404 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
405 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
406 else
407 local members = party:getMembers()
408 members[#members + 1] = party:getLeader()
409 for _, member in ipairs(members) do
410 member:teleportTo({x=4098, y=1359, z=8})
411 member:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
412
413 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre a sala de recompensas.")
414 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
415 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
416 end
417 end
418
419 return true
420 end
421 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) < 00 then
422 if not party then
423 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
424 else
425 local members = party:getMembers()
426 members[#members + 1] = party:getLeader()
427 for _, member in ipairs(members) do
428 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
429 end
430 end
431 else
432 if not party then
433 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Selo Ancestral Obtido:\n[ 0" ..player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE).. "/06 ]")
434 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) + 1))
435 else
436 local members = party:getMembers()
437 members[#members + 1] = party:getLeader()
438 for _, member in ipairs(members) do
439 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Selo Ancestral Obtido:\n[ 0" ..player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE).. "/06 ]")
440 member:setStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) + 1))
441 end
442 end
443 end
444 return true
445 end
446 if Name == "Rahemos" then
447 local party = player:getParty()
448 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) == 06 then
449 if not party then
450 player:teleportTo({x=4098, y=1359, z=8})
451 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
452
453 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre a sala de recompensas.")
454 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
455 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
456 else
457 local members = party:getMembers()
458 members[#members + 1] = party:getLeader()
459 for _, member in ipairs(members) do
460 member:teleportTo({x=4098, y=1359, z=8})
461 member:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
462
463 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre a sala de recompensas.")
464 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
465 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
466 end
467 end
468
469 return true
470 end
471 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) < 00 then
472 if not party then
473 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
474 else
475 local members = party:getMembers()
476 members[#members + 1] = party:getLeader()
477 for _, member in ipairs(members) do
478 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
479 end
480 end
481 else
482 if not party then
483 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Selo Ancestral Obtido:\n[ 0" ..player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE).. "/06 ]")
484 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) + 1))
485 else
486 local members = party:getMembers()
487 members[#members + 1] = party:getLeader()
488 for _, member in ipairs(members) do
489 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Selo Ancestral Obtido:\n[ 0" ..player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE).. "/06 ]")
490 member:setStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) + 1))
491 end
492 end
493 end
494 return true
495 end
496 if Name == "Morguthis" then
497 local party = player:getParty()
498 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) == 06 then
499 if not party then
500 player:teleportTo({x=4098, y=1359, z=8})
501 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
502
503 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre a sala de recompensas.")
504 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
505 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
506 else
507 local members = party:getMembers()
508 members[#members + 1] = party:getLeader()
509 for _, member in ipairs(members) do
510 member:teleportTo({x=4098, y=1359, z=8})
511 member:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
512
513 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre a sala de recompensas.")
514 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
515 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
516 end
517 end
518
519 return true
520 end
521 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) < 00 then
522 if not party then
523 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
524 else
525 local members = party:getMembers()
526 members[#members + 1] = party:getLeader()
527 for _, member in ipairs(members) do
528 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
529 end
530 end
531 else
532 if not party then
533 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Selo Ancestral Obtido:\n[ 0" ..player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE).. "/06 ]")
534 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) + 1))
535 else
536 local members = party:getMembers()
537 members[#members + 1] = party:getLeader()
538 for _, member in ipairs(members) do
539 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Selo Ancestral Obtido:\n[ 0" ..player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE).. "/06 ]")
540 member:setStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) + 1))
541 end
542 end
543 end
544 return true
545 end
546 if Name == "Glooth Fairy" then
547 local party = player:getParty()
548 if not party then
549 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
550 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 01 then
551 player:teleportTo({x=3987, y=1535, z=14})
552 elseif player:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 02 then
553 player:teleportTo({x=4095, y=1535, z=14})
554 elseif player:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 03 then
555 player:teleportTo({x=4203, y=1535, z=14})
556 end
557 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
558 else
559 local members = party:getMembers()
560 members[#members + 1] = party:getLeader()
561 for _, member in ipairs(members) do
562 if member:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 01 then
563 member:teleportTo({x=3987, y=1535, z=14})
564 elseif member:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 02 then
565 member:teleportTo({x=4095, y=1535, z=14})
566 elseif member:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 03 then
567 member:teleportTo({x=4203, y=1535, z=14})
568 end
569 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[06][01].RECOMPENSA[02])
570 member:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
571 end
572 end
573 end
574 if Name == "Protetor" then
575 local party = player:getParty()
576 if not party then
577 if player:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) >= 05 then
578 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 01 then
579 player:teleportTo({x=4045, y=1738, z=14})
580 elseif player:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 02 then
581 player:teleportTo({x=4186, y=1738, z=14})
582 elseif player:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 03 then
583 player:teleportTo({x=4327, y=1738, z=14})
584 end
585 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
586
587 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Todos os protetores foram destruidos.\nColete sua recompensa.")
588 player:setStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE, 05)
589 player:setStorageValue(_SYSTEM.DANGEROUS[04][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[04][01].RECOMPENSA[02])
590 else
591 player:setStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) + 1))
592 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Protetor Destruido [ 0" ..(player:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) - 01).. "/05 ]")
593 end
594 else
595 if player:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) >= 05 then
596 local members = party:getMembers()
597 members[#members + 1] = party:getLeader()
598 for _, member in ipairs(members) do
599 if member:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 01 then
600 member:teleportTo({x=4045, y=1738, z=14})
601 elseif member:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 02 then
602 member:teleportTo({x=4186, y=1738, z=14})
603 elseif member:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 03 then
604 member:teleportTo({x=4327, y=1738, z=14})
605 end
606 member:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
607
608 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Todos os protetores foram destruidos.\nColete sua recompensa.")
609 member:setStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE, 05)
610 member:setStorageValue(_SYSTEM.DANGEROUS[04][01].RECOMPENSA[01], _SYSTEM.DANGEROUS[04][01].RECOMPENSA[02])
611 end
612 else
613 local members = party:getMembers()
614 members[#members + 1] = party:getLeader()
615 for _, member in ipairs(members) do
616 member:setStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE, (member:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) + 1))
617 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Protetor Destruido [ 0" ..(member:getStorageValue(_SYSTEM.DANGEROUS[04][01].STORAGE) - 01).. "/05 ]")
618 end
619 end
620 end
621
622 return true
623 end
624 if Name == "Dimensional Pilar" then
625 local party = player:getParty()
626 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) == 05 then
627 if not party then
628 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
629 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "O Boss foi invocado.")
630 player:getPosition():sendMagicEffect(13)
631 else
632 local members = party:getMembers()
633 members[#members + 1] = party:getLeader()
634 for _, member in ipairs(members) do
635 member:getPosition():sendMagicEffect(13)
636 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 06)
637 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "O Boss foi invocado.")
638 end
639 end
640
641 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 01 then
642 Game.createMonster("Glooth Fairy", {x=3995, y=1539, z=14})
643 elseif player:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 02 then
644 Game.createMonster("Glooth Fairy", {x=4103, y=1539, z=14})
645 elseif player:getStorageValue(_SYSTEM.DANGEROUS[06][01].INDEX) == 03 then
646 Game.createMonster("Glooth Fairy", {x=4211, y=1539, z=14})
647 end
648 return true
649 end
650 if player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) < 00 then
651 if not party then
652 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
653 else
654 local members = party:getMembers()
655 members[#members + 1] = party:getLeader()
656 for _, member in ipairs(members) do
657 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, 01)
658 end
659 end
660 else
661 if not party then
662 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Pillar Dimensional Destruido [ 0" ..(player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE)).. "/05 ]")
663 player:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, (player:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) + 1))
664 else
665 local members = party:getMembers()
666 members[#members + 1] = party:getLeader()
667 for _, member in ipairs(members) do
668 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Pillar Dimensional Destruido [ 0" ..(member:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE)).. "/05 ]")
669 member:setStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE, (member:getStorageValue(_SYSTEM.DANGEROUS[06][01].STORAGE) + 1))
670 end
671 end
672 end
673 return true
674 end
675 if Name == "Seagull" then
676 if mpos.x == 3955 and mpos.y == 1077 and mpos.z == 06 then
677 local CorpsePos = Position(3955, 1078, 7)
678 local itemCorpse = Game.createItem(6076, 1, CorpsePos)
679
680 local GatePos = Position(3982, 1082, 7)
681 local GateThing = Tile(GatePos):getItemById(1546)
682 if GateThing then
683 GateThing:remove()
684 GatePos:sendMagicEffect(CONST_ME_POFF)
685
686 GateTime = 25
687 onRemoveSelectItem(GatePos, GateThing, 1546)
688 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "[ Bot�o acionado ]\nSela aberta.")
689 player:getPosition():sendMagicEffect(14)
690 end
691 end
692 return true
693 end
694 if Name == "Ghastly Dragon" then
695 if player:getStorageValue(_SYSTEM.ESPECIALISTA[02]) < 06 then
696 if player:getStorageValue(_SYSTEM.ESPECIALISTA[03]) == 02 then
697 if mpos.x == 3868 and mpos.y == 1067 and mpos.z == 10 or mpos.x == 3893 and mpos.y == 1060 and mpos.z == 12 then
698 if player:getStorageValue(_SYSTEM.ESPECIALISTA[04]) == 04 then
699 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Sacrificio Aceito [ 05/05 ]")
700 player:setStorageValue(_SYSTEM.ESPECIALISTA[02], (player:getStorageValue(_SYSTEM.ESPECIALISTA[02]) + 1))
701 player:setStorageValue(_SYSTEM.ESPECIALISTA[03], nil)
702 player:setStorageValue(_SYSTEM.ESPECIALISTA[04], nil)
703
704 if player:getStorageValue(_QUESTLOG[159].UID_01) == 02 then
705 addEvent(function()
706 player:setStorageValue(_QUESTLOG[159].UID_01, 100)
707 player:setStorageValue(_QUESTLOG[160].UID_01, 01)
708 player:getPosition():sendMagicEffect(14)
709 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
710
711 player:addExperience(200000, true, true)
712 doBackpack(player, 12)
713 end, 5000)
714 end
715 addEvent(onEspecialistaPlayer, 3000, player.uid)
716 else
717 player:setStorageValue(_SYSTEM.ESPECIALISTA[04], (player:getStorageValue(_SYSTEM.ESPECIALISTA[04]) + 1))
718 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Sacrificio Aceito [ 0" ..player:getStorageValue(_SYSTEM.ESPECIALISTA[04]).. "/05 ]")
719 doBackpack(player, 12)
720 end
721 end
722 end
723 end
724 end
725 if Name == "Nucleo Dimensional" then
726 if player:getStorageValue(_SYSTEM.FENDAS_DIMENSIONAL[01]) > 00 then
727 local X = player:getStorageValue(_SYSTEM.FENDAS_DIMENSIONAL[01])
728 player:teleportTo(_GLOBAL_RANDOM.FENDAS_DIMENSIONAIS[X].OUT)
729 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
730
731 player:sendCancelMessage("@DGTime 0 0 0")
732 player:sendTextMessage(MESSAGE_INFO_DESCR, "[ FENDA DIMENSIONAL ]\nVoc� obteve x10 Criptomoedas por selar essa fenda.")
733 PlayerFendasDimensionais(player, 1000, 01, X)
734 player:setStorageValue(_SYSTEM.FENDAS_DIMENSIONAL[01], nil)
735 if player:getStorageValue(_SYSTEM.CRIPTOMOEDA) < 00 then
736 player:setStorageValue(_SYSTEM.CRIPTOMOEDA, ((player:getStorageValue(_SYSTEM.CRIPTOMOEDA) + 10) + 01))
737 else
738 player:setStorageValue(_SYSTEM.CRIPTOMOEDA, (player:getStorageValue(_SYSTEM.CRIPTOMOEDA) + 10))
739 end
740
741 doBackpack(player, 11)
742 player:sendCancelMessage("@LootMSG 3297 4 3 10")
743
744 addEvent(function()
745 if player:getStorageValue(_QUESTLOG[167].UID_01) == 02 then
746 player:setStorageValue(_QUESTLOG[167].UID_01, 100)
747 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
748 end
749 end, 5000)
750 else
751 player:teleportTo({x=3999, y=991, z=07})
752 player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
753 end
754 if player:getStorageValue(_QUESTLOG[167].UID_01) == 03 then
755 player:setStorageValue(_QUESTLOG[167].UID_01, 100)
756
757 addEvent(function()
758 player:addExperience(550000, true, true)
759 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
760 doBackpack(player, 12)
761 end, 5000)
762 end
763 if player:getStorageValue(_QUESTLOG[118].UID_01) == 02 then
764 player:setStorageValue(_QUESTLOG[118].UID_01, 03)
765 addEvent(function() player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.") end, 2 * 1000)
766 end
767 end
768 if player:isPlayer() then
769 -- NINHOS
770 if player:getStorageValue(_SYSTEM.GLOBAL_INDEX[04]) == 01 then
771 local NINHO_DIFICULTY = {
772 [01] = {"FACIL", 00};
773 [02] = {"MEDIO", 01};
774 [03] = {"DIFICIL", 02};
775 [04] = {"IMPOSSIVEL", 03};
776 }
777 local QNT = _SYSTEM.GLOBAL_INDEX[03]
778 local HARD = NINHO_DIFICULTY[player:getStorageValue(_SYSTEM.GLOBAL_INDEX[01])][01]
779 local INDEX = player:getStorageValue(_SYSTEM.GLOBAL_INDEX[02])
780 local TOTAL_NINHO = _GLOBAL_RANDOM.NINHOS[HARD][INDEX].TOTAL
781 if player:getStorageValue(_SYSTEM.GLOBAL_INDEX[03]) > 1 then
782 player:setStorageValue(QNT, (player:getStorageValue(QNT) - 1))
783 player:sendCancelMessage("@TaskMSG-0-" ..Name.. "-" ..player:getStorageValue(QNT).. "-" ..TOTAL_NINHO.. "-NINHO")
784 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[NINHO]: " ..Name .. " restantes: " ..player:getStorageValue(QNT).. "/" ..TOTAL_NINHO)
785 else
786 player:setStorageValue(_SYSTEM.GLOBAL_INDEX[04], nil)
787 player:setStorageValue(QNT, nil)
788 player:sendCancelMessage("@TaskMSG-1-fin-0-0".. "-NINHO")
789 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre o portal para sair da �rea.")
790 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[NINHO]: Todos os monstros foram eliminados")
791 end
792 end
793 -- DESAFIO ESPECIALISTA #04
794 if player:getStorageValue(_SYSTEM.ESPECIALISTA[02]) < 06 then
795 if player:getStorageValue(_SYSTEM.ESPECIALISTA[03]) == 04 then
796 local QNT = _SYSTEM.ESPECIALISTA[04]
797 local TOTAL_DESAFIO = 100
798 if player:getStorageValue(_SYSTEM.ESPECIALISTA[04]) < 99 then
799 player:setStorageValue(QNT, (player:getStorageValue(QNT) + 1))
800 player:sendCancelMessage("@TaskMSG-0-Drakens-" ..player:getStorageValue(QNT).. "-" ..TOTAL_DESAFIO.. "-QUEST")
801 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[QUEST]: Drakens eliminados: " ..player:getStorageValue(QNT).. "/" ..TOTAL_DESAFIO)
802 else
803 player:setStorageValue(QNT, (player:getStorageValue(QNT) + 1))
804 player:sendCancelMessage("@TaskMSG-0-Drakens-" ..player:getStorageValue(QNT).. "-" ..TOTAL_DESAFIO.. "-QUEST")
805 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[QUEST]: Drakens eliminados: " ..player:getStorageValue(QNT).. "/" ..TOTAL_DESAFIO)
806 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Encontre o Portal para enfrentar o Boss.")
807 player:setStorageValue(QNT, nil)
808 player:setStorageValue(_SYSTEM.ESPECIALISTA[03], 05)
809 end
810
811 doBackpack(player, 12)
812 elseif player:getStorageValue(_SYSTEM.ESPECIALISTA[03]) == 05 then
813 if Name == "Zulazza The Corruptor" then
814 player:setStorageValue(_SYSTEM.ESPECIALISTA[02], (player:getStorageValue(_SYSTEM.ESPECIALISTA[02]) + 1))
815 player:setStorageValue(_SYSTEM.ESPECIALISTA[03], nil)
816 player:setStorageValue(_SYSTEM.ESPECIALISTA[04], nil)
817
818 if player:getStorageValue(_QUESTLOG[161].UID_01) == 02 then
819 addEvent(function()
820 player:setStorageValue(_QUESTLOG[161].UID_01, 100)
821 player:setStorageValue(_QUESTLOG[162].UID_01, 01)
822 player:getPosition():sendMagicEffect(14)
823 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
824
825 player:addExperience(300000, true, true)
826 doBackpack(player, 12)
827 end, 5000)
828 end
829 addEvent(onEspecialistaPlayer, 3000, player.uid)
830 end
831 end
832 end
833 -- COLISEU WAVES
834 if player:getStorageValue(_SYSTEM.COLISEU[05]) > 00 then
835 if player:getStorageValue(_SYSTEM.COLISEU[08]) < 06 then
836 if player:getStorageValue(_SYSTEM.COLISEU[05]) == 01 then
837 if player:getStorageValue(_SYSTEM.COLISEU[08]) < 05 then
838 local WAVE = player:getStorageValue(_SYSTEM.COLISEU[08])
839 local HARD = player:getStorageValue(_SYSTEM.COLISEU[06])
840 local CATEGORY = 02
841 local INDEX = player:getStorageValue(_SYSTEM.COLISEU[07])
842
843 player:setStorageValue(_SYSTEM.COLISEU[08], (player:getStorageValue(_SYSTEM.COLISEU[08]) + 01))
844 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "ONDA [ 0" ..player:getStorageValue(_SYSTEM.COLISEU[08]).. "/05 ]\nPrepare-se!")
845 addEvent(function()
846 local MonsterName = _GLOBAL_RANDOM.COLISEUM.ORDER[HARD][CATEGORY][INDEX].NAME
847 for M = 01, #_GLOBAL_RANDOM.COLISEUM.ORDER[00][CATEGORY][WAVE + 01] do
848 Game.createMonster(MonsterName, _GLOBAL_RANDOM.COLISEUM.ORDER[00][CATEGORY][WAVE + 01][M])
849 player:setStorageValue(_SYSTEM.COLISEU[05], M)
850 end
851 end, 5000)
852 else
853 player:setStorageValue(_SYSTEM.COLISEU[08], 06)
854 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Voc� finalizou todas as Waves.\nClique na est�tua central para finalizar.")
855 end
856 else
857 player:setStorageValue(_SYSTEM.COLISEU[05], (player:getStorageValue(_SYSTEM.COLISEU[05]) - 01))
858 end
859 end
860
861 return false
862 end
863 end
864
865 if _MONSTER_LOOT[Name] then
866 doRemoveCreature(target:getId())
867 local cids = {}
868 for cid, damage in pairs(target:getDamageMap()) do
869 local killer = Creature(cid)
870 if killer and killer:isPlayer() and target:isMonster() then
871 table.insert(cids, killer)
872 end
873 end
874 -- EVENTOS
875 if Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_ID) > 0 then
876 local IDD = Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_ID)
877 if IDD == 01 then -- BEN��O DOS DEUSES
878 if _MONSTER_LOOT[Name][00].Task_ID[01] == Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_3) or
879 _MONSTER_LOOT[Name][00].Task_ID[01] == Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_6) or
880 _MONSTER_LOOT[Name][00].Task_ID[01] == Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_9) then
881 if math.random(00, 100) < 50 then
882 if player:getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[IDD].GOLD_TOKEN) < 0 then
883 player:setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[IDD].GOLD_TOKEN, 01)
884 else
885 player:setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[IDD].GOLD_TOKEN, (player:getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[IDD].GOLD_TOKEN) + 01))
886 end
887
888 player:sendCancelMessage("@LootMSG 3046 3 3 1")
889 player:sendCancelMessage("@ReloadEvents 01 " ..player:getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[IDD].GOLD_TOKEN))
890 end
891 end
892 end
893 if IDD == 02 then -- MODO ONLINE
894 local QntMonster = Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_1)
895 if QntMonster < 5000 then
896 if QntMonster < 0 then
897 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_1, 01)
898 else
899 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_1, (QntMonster + 01))
900 end
901
902 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[EVENTO]: Monstros para a meta: " ..(QntMonster + 01).. "/5000.")
903 player:sendCancelMessage("@ReloadEvents 02 " ..(QntMonster + 01))
904 end
905 end
906 if IDD == 03 then -- CRYPTBLOOD
907 local QntMonster = Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_1)
908 if QntMonster < 49999 then
909 if QntMonster < 0 then
910 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_1, 01)
911 else
912 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_1, (QntMonster + 01))
913 end
914
915 player:sendCancelMessage("@ReloadEvents 03 " ..(QntMonster + 01))
916 end
917 end
918 if IDD == 04 then -- ESS�NCIAS ELEMENTAIS
919 local chanceDrop = math.random(00, 100)
920 if chanceDrop < 25 then
921 if doBackpack(player, 00, 03, 00, 01) then
922 local itemid = math.random(3161, 3164)
923 local qnt = 01
924 local rare = 0
925 local ext = 0
926 local star = 0
927 player:sendCancelMessage("@Analyser#02#" ..itemid.. "#" ..qnt.. "#" ..rare)
928 doBackpack(player, 03, 03, ext, 01, itemid) -- Procurar
929 if doBackpack(player, 01, 03, ext, 0, itemid, rare, star, qnt) then end
930 end
931 end
932 end
933 if IDD == 12 then -- OS ESCOLHIDOS
934 local CM_UM = Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_1)
935 local CM_DO = Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_2)
936 local CM_TR = Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_3)
937 local TYPE = _MONSTER_LOOT[Name][00].Type
938 local CLASSES_IMG = {
939 [01] = {NAME = 'Dragon', IMG = '/images/custom/Spells/Passiva/passive_4019'};
940 [02] = {NAME = 'Magica', IMG = '/images/custom/Spells/Passiva/passive_4026'};
941 [03] = {NAME = 'Repteis', IMG = '/images/custom/Spells/Passiva/passive_4036'};
942 [04] = {NAME = 'Aquatico', IMG = '/images/custom/Spells/Passiva/passive_4046'};
943 [05] = {NAME = 'Morto-Vivo', IMG = '/images/custom/Spells/Passiva/passive_4049'};
944 [06] = {NAME = 'Vermes', IMG = '/images/custom/Spells/Passiva/passive_4020'};
945 [07] = {NAME = 'Mamiferos', IMG = '/images/custom/Spells/Passiva/passive_4015'};
946 [08] = {NAME = 'Demon', IMG = '/images/custom/Spells/Passiva/passive_4030'};
947 [09] = {NAME = 'Gigantes', IMG = '/images/custom/Spells/Passiva/passive_4033'};
948 [10] = {NAME = 'Constructos', IMG = '/images/custom/Spells/Passiva/passive_4001'};
949 [11] = {NAME = 'Humanoide', IMG = '/images/custom/Spells/Passiva/passive_4005'};
950 [12] = {NAME = 'Dimensionais', IMG = '/images/custom/Spells/Passiva/passive_4012'};
951 }
952
953 if TYPE == CLASSES_IMG[CM_UM].NAME or TYPE == CLASSES_IMG[CM_DO].NAME or TYPE == CLASSES_IMG[CM_TR].NAME then
954 if Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_4) < 2000 then
955 if Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_4) < 0 then
956 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_4, 01)
957 else
958 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_4, (Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_4) + 01))
959 end
960 end
961 else
962 if Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_4) > 0 then
963 Game.setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_4, (Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_4) - 01))
964 end
965 end
966
967 player:sendCancelMessage("@ReloadEvents " ..IDD.. " " ..Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_UID_4))
968 end
969 end
970 -- BOSS [BLACKLIST]
971 if _MONSTER_LOOT[Name][00].Type == "Boss" then
972 local party = player:getParty()
973 local RANK_EXP = _MONSTER_LOOT[Name][00].Task_ID[04]
974 local MONSTER_RANK = _MONSTER_LOOT[Name][00].QuestKill[01]
975 local eventKey = false
976 if Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[00].EVENT_ID) == 10 then
977 local PlayerRank = player:getStorageValue(_SYSTEM.TASK[00].RANK)
978 local chancEvent = math.random(000, 100)
979 local EXP = 00
980 if PlayerRank < 1 then PlayerRank = 1 end
981 if PlayerRank == 01 then
982 EXP = 20
983 elseif PlayerRank == 02 then
984 EXP = 30
985 elseif PlayerRank == 03 then
986 EXP = 40
987 elseif PlayerRank == 04 then
988 EXP = 50
989 elseif PlayerRank == 05 then
990 EXP = 60
991 elseif PlayerRank == 06 then
992 EXP = 70
993 elseif PlayerRank == 07 then
994 EXP = 80
995 elseif PlayerRank == 08 then
996 EXP = 90
997 elseif PlayerRank == 09 then
998 EXP = 99
999 end
1000 if chancEvent < EXP then
1001 eventKey = true
1002 end
1003 end
1004 if not party then
1005 local PlayerRank = player:getStorageValue(_SYSTEM.TASK[00].RANK)
1006 if PlayerRank < 1 then PlayerRank = 1 end
1007 if eventKey then
1008 if player:getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT) < 00 then
1009 player:setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT, 01)
1010 else
1011 player:setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT, (player:getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT) + 01))
1012 end
1013
1014 player:sendCancelMessage("@LootMSG 3298 03 03 01")
1015 player:sendCancelMessage("@ReloadEvents 10 " ..player:getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT))
1016 end
1017 -- GANHANDO PONTOS
1018 if PlayerRank < 09 then
1019 if MONSTER_RANK == PlayerRank then
1020 if player:getStorageValue(_SYSTEM.TASK[00].EXP) < 0 then
1021 player:setStorageValue(_SYSTEM.TASK[00].EXP, 0)
1022 end
1023 -- DESAFIO
1024 if player:getStorageValue(_DESAFIOS[00].DESAFIO_ID) > 00 then
1025 if _MONSTER_LOOT[Name][00].QuestKill[01] == 01 then
1026 onPlayerDesafios(player, 35, 01)
1027 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 02 then
1028 onPlayerDesafios(player, 36, 01)
1029 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 03 then
1030 onPlayerDesafios(player, 37, 01)
1031 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 04 then
1032 onPlayerDesafios(player, 38, 01)
1033 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 05 then
1034 onPlayerDesafios(player, 39, 01)
1035 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 06 then
1036 onPlayerDesafios(player, 40, 01)
1037 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 07 then
1038 onPlayerDesafios(player, 41, 01)
1039 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 08 then
1040 onPlayerDesafios(player, 42, 01)
1041 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 09 then
1042 onPlayerDesafios(player, 43, 01)
1043 end
1044 end
1045 player:setStorageValue(_SYSTEM.TASK[00].EXP, (player:getStorageValue(_SYSTEM.TASK[00].EXP) + RANK_EXP))
1046 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BLACKLIST]: Voc� obteve " ..RANK_EXP.. " de EXP.")
1047 doBackpack(player, 11)
1048 else
1049 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Voc� n�o ganha pontos ao matar bosses inferior ao seu rank.")
1050 end
1051 end
1052 -- AVAN�ANDO DE RANK
1053 local checkEXPRank = player:getStorageValue(_SYSTEM.TASK[00].EXP)
1054 if PlayerRank < 09 then
1055 if checkEXPRank >= _SYSTEM.TASK.BOSSES[PlayerRank].QNT_RANK then
1056 if player:getStorageValue(_SYSTEM.TASK[00].RANK) < 1 then
1057 player:setStorageValue(_SYSTEM.TASK[00].RANK, 02)
1058 else
1059 player:setStorageValue(_SYSTEM.TASK[00].RANK, (player:getStorageValue(_SYSTEM.TASK[00].RANK) + 01))
1060 end
1061 player:setStorageValue(_SYSTEM.TASK[00].EXP, 00)
1062 doBackpack(player, 11)
1063
1064 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Sua muni��o m�xima aumentou.")
1065 player:sendCancelMessage("@QuestBlock 02")
1066 end
1067 end
1068
1069 if player:getStorageValue(_QUESTLOG[28].UID_01) == 02 then
1070 player:setStorageValue(_QUESTLOG[28].UID_01, 03)
1071 addEvent(function() player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.") end, 2 * 1000)
1072 end
1073 addEvent(onTPPlayer, 2000, player.uid)
1074 else
1075 local members = party:getMembers()
1076 members[#members + 1] = party:getLeader()
1077 for _, member in ipairs(members) do
1078 local PlayerRank = member:getStorageValue(_SYSTEM.TASK[00].RANK)
1079 if PlayerRank < 1 then PlayerRank = 1 end
1080 if eventKey then
1081 if member:getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT) < 00 then
1082 member:setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT, 01)
1083 else
1084 member:setStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT, (member:getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT) + 01))
1085 end
1086
1087 member:sendCancelMessage("@LootMSG 3298 03 03 01")
1088 player:sendCancelMessage("@ReloadEvents 10 " ..player:getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[10].KEYS_EVENT))
1089 end
1090 -- GANHANDO PONTOS
1091 if Game.getStorageValue(_GLOBAL_RANDOM.DAILY_EVENTS.STORAGE) == 07 then
1092 RANK_EXP = RANK_EXP + 01
1093 end
1094 if PlayerRank < 09 then
1095 if MONSTER_RANK == PlayerRank then
1096 if member:getStorageValue(_SYSTEM.TASK[00].EXP) < 0 then
1097 member:setStorageValue(_SYSTEM.TASK[00].EXP, 0)
1098 end
1099 if member:getStorageValue(_DESAFIOS[00].DESAFIO_ID) > 00 then
1100 if _MONSTER_LOOT[Name][00].QuestKill[01] == 01 then
1101 onPlayerDesafios(member, 35, 01)
1102 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 02 then
1103 onPlayerDesafios(member, 36, 01)
1104 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 03 then
1105 onPlayerDesafios(member, 37, 01)
1106 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 04 then
1107 onPlayerDesafios(member, 38, 01)
1108 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 05 then
1109 onPlayerDesafios(member, 39, 01)
1110 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 06 then
1111 onPlayerDesafios(member, 40, 01)
1112 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 07 then
1113 onPlayerDesafios(member, 41, 01)
1114 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 08 then
1115 onPlayerDesafios(member, 42, 01)
1116 elseif _MONSTER_LOOT[Name][00].QuestKill[01] == 09 then
1117 onPlayerDesafios(member, 43, 01)
1118 end
1119 end
1120 member:setStorageValue(_SYSTEM.TASK[00].EXP, (member:getStorageValue(_SYSTEM.TASK[00].EXP) + RANK_EXP))
1121 member:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BLACKLIST]: Voc� obteve " ..RANK_EXP.. " de EXP.")
1122 doBackpack(member, 11)
1123 else
1124 member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Voc� n�o ganha pontos ao matar bosses inferior ao seu rank.")
1125 end
1126 end
1127 -- AVAN�ANDO DE RANK
1128 local checkEXPRank = member:getStorageValue(_SYSTEM.TASK[00].EXP)
1129 if PlayerRank < 09 then
1130 if checkEXPRank >= _SYSTEM.TASK.BOSSES[PlayerRank].QNT_RANK then
1131 if member:getStorageValue(_SYSTEM.TASK[00].RANK) < 1 then
1132 member:setStorageValue(_SYSTEM.TASK[00].RANK, 02)
1133 else
1134 member:setStorageValue(_SYSTEM.TASK[00].RANK, (member:getStorageValue(_SYSTEM.TASK[00].RANK) + 01))
1135 end
1136 member:setStorageValue(_SYSTEM.TASK[00].EXP, 00)
1137 doBackpack(member, 11)
1138 member:sendCancelMessage("@QuestBlock 02")
1139 end
1140 end
1141
1142 if member:getStorageValue(_QUESTLOG[28].UID_01) == 02 then
1143 member:setStorageValue(_QUESTLOG[28].UID_01, 03)
1144 addEvent(function() member:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.") end, 2 * 1000)
1145 end
1146 addEvent(onTPPlayer, 2000, member.uid)
1147 end
1148 end
1149 if Name == "Demodras" then
1150 if player:getStorageValue(_QUESTLOG[168].UID_01) == 02 then
1151 addEvent(function()
1152 player:setStorageValue(_QUESTLOG[168].UID_01, 100)
1153 player:setStorageValue(_QUESTLOG[169].UID_01, 001)
1154 player:setStorageValue(_QUESTLOG[170].UID_01, 001)
1155 player:addExperience(58000, true, true)
1156 PlayerGoldCoins(player, 02, 8000)
1157 player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.")
1158 end, 5000)
1159 end
1160 end
1161 end
1162 if #cids > 0 then
1163 for P = 01, #cids do
1164 local pid = Creature(cids[P])
1165 local _cid = pid:getId()
1166 -- DESAFIO
1167 if pid:getStorageValue(_DESAFIOS[00].DESAFIO_ID) > 00 then
1168 if _MONSTER_LOOT[Name][00].Type == "Dragon" then
1169 onPlayerDesafios(pid, 08, 01)
1170 elseif _MONSTER_LOOT[Name][00].Type == "Magica" then
1171 onPlayerDesafios(pid, 09, 01)
1172 elseif _MONSTER_LOOT[Name][00].Type == "Repteis" then
1173 onPlayerDesafios(pid, 10, 01)
1174 elseif _MONSTER_LOOT[Name][00].Type == "Aquatico" then
1175 onPlayerDesafios(pid, 11, 01)
1176 elseif _MONSTER_LOOT[Name][00].Type == "Morto-Vivo" then
1177 onPlayerDesafios(pid, 12, 01)
1178 elseif _MONSTER_LOOT[Name][00].Type == "Vermes" then
1179 onPlayerDesafios(pid, 13, 01)
1180 elseif _MONSTER_LOOT[Name][00].Type == "Mamiferos" then
1181 onPlayerDesafios(pid, 14, 01)
1182 elseif _MONSTER_LOOT[Name][00].Type == "Demon" then
1183 onPlayerDesafios(pid, 15, 01)
1184 elseif _MONSTER_LOOT[Name][00].Type == "Gigantes" then
1185 onPlayerDesafios(pid, 16, 01)
1186 elseif _MONSTER_LOOT[Name][00].Type == "Constructos" then
1187 onPlayerDesafios(pid, 17, 01)
1188 elseif _MONSTER_LOOT[Name][00].Type == "Humanoide" then
1189 onPlayerDesafios(pid, 18, 01)
1190 elseif _MONSTER_LOOT[Name][00].Type == "Dimensionais" then
1191 onPlayerDesafios(pid, 19, 01)
1192 end
1193 end
1194 if Name == "Devovorga" then
1195 local chooseBuff = math.random(01, #_SHOP_PRODUCTS[03])
1196 if pid:getStorageValue(_GLOBAL_RANDOM.BUFFS[chooseBuff].STORAGE) > 00 then
1197 pid:getPosition():sendMagicEffect(CONST_ME_POFF)
1198 else
1199 pid:setStorageValue(_GLOBAL_RANDOM.BUFFS[chooseBuff].STORAGE, 1800)
1200 pid:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Voc� obteve [ " .._SHOP_PRODUCTS[03][chooseBuff].NAME.. " ] por 30 minutos.")
1201 pid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Buff Ativado: [ " .._SHOP_PRODUCTS[03][chooseBuff].NAME.. " ] por 30 minutos.")
1202 pid:getPosition():sendMagicEffect(CONST_ME_MAGIC_GREEN)
1203
1204 doInventario(pid, 05)
1205 end
1206 end
1207 -- PASSIVA
1208 if onGetPassivas(pid, 09) then
1209 local Percent = _PASSIVES[09].POWER_BASE + (_PASSIVES[09].POWER_FOR_LEVEL * (PASSIVE_LEVEL - 01))
1210 if Game.getStorageValue(_GLOBAL_RANDOM.DAILY_EVENTS.STORAGE) == 02 then -- PASSIVA DAS CORES
1211 if Game.getStorageValue(_GLOBAL_RANDOM.DAILY_EVENTS.PASSIVE) == _PASSIVES[09].CATEGORY then
1212 Percent = Percent + _PASSIVES[09].BOOST
1213 end
1214 end
1215 pid:setStorageValue(_SYSTEM.PASSIVA[01], 05)
1216 pid:sendCancelMessage("@IndividualStatus 01 " ..Percent)
1217 end
1218 if onGetPassivas(pid, 19) then
1219 local Percent = _PASSIVES[19].POWER_BASE + (_PASSIVES[19].POWER_FOR_LEVEL * (PASSIVE_LEVEL - 01))
1220 if Game.getStorageValue(_GLOBAL_RANDOM.DAILY_EVENTS.STORAGE) == 02 then -- PASSIVA DAS CORES
1221 if Game.getStorageValue(_GLOBAL_RANDOM.DAILY_EVENTS.PASSIVE) == _PASSIVES[19].CATEGORY then
1222 Percent = Percent + _PASSIVES[19].BOOST
1223 end
1224 end
1225 pid:setStorageValue(_SYSTEM.PASSIVA[02], 05)
1226 pid:sendCancelMessage("@IndividualStatus 02 " ..Percent)
1227 end
1228 -- TASK
1229 if pid:getStorageValue(_SYSTEM.TASK[00].TASK_ATIVA) > 0 then
1230 if _MONSTER_LOOT[Name][00].Type ~= "Boss" then
1231 if pid:getStorageValue(_SYSTEM.TASK[00].TASK_ATIVA) == _MONSTER_LOOT[Name][00].Task_ID[01] then
1232 local QNT = _SYSTEM.TASK[00].QNT_ATIVA
1233 local TOTAL_TASK = _MONSTER_LOOT[Name][00].Task_ID[02]
1234 if pid:getStorageValue(_DESAFIOS[00].DESAFIO_TYPE) == 01 then
1235 TOTAL_TASK = TOTAL_TASK * 2
1236 end
1237 if pid:getStorageValue(QNT) == -1 then
1238 pid:setStorageValue(QNT, (pid:getStorageValue(QNT) + 2))
1239 pid:sendCancelMessage("@TaskMSG-0-" ..Name.. "-" ..pid:getStorageValue(QNT).. "-" ..TOTAL_TASK.. "-TASK")
1240 pid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[TASK]: " ..Name.. " eliminado(a): " ..pid:getStorageValue(QNT).. "/" ..TOTAL_TASK)
1241 doBackpack(pid, 11)
1242 else
1243 pid:setStorageValue(QNT, (pid:getStorageValue(QNT) + 1))
1244 pid:sendCancelMessage("@TaskMSG-0-" ..Name.. "-" ..pid:getStorageValue(QNT).. "-" ..TOTAL_TASK.. "-TASK")
1245 pid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[TASK]: " ..Name .. " eliminado(a): " ..pid:getStorageValue(QNT).. "/" ..TOTAL_TASK)
1246 doBackpack(pid, 11)
1247 end
1248
1249 if pid:getStorageValue(QNT) >= TOTAL_TASK then
1250 local TOKEN_MULT = 1
1251 local GOLD_GAIN = _MONSTER_LOOT[Name][00].Task_ID[05]
1252 local TokensGain = _MONSTER_LOOT[Name][00].Task_ID[04]
1253 local checkNexus = pid:getStorageValue(_SYSTEM.TASK[00].NEXUS)
1254 if pid:getStorageValue(_SYSTEM.SHOP_WARZONE) == 06 then
1255 TOKEN_MULT = 2
1256 end
1257 if checkNexus > 00 then
1258 if Game.getStorageValue(_SYSTEM.TASK.MONSTER[checkNexus][00].BOOSTER) > 00 then
1259 if pid:getStorageValue(_SYSTEM.TASK[00].TASK_ATIVA) == Game.getStorageValue(_SYSTEM.TASK.MONSTER[checkNexus][00].BOOSTER) then
1260 TokensGain = TokensGain + 01
1261 end
1262 end
1263 end
1264 -- DESAFIO SHOP
1265 if pid:getStorageValue(_DESAFIOS[00].DESAFIO_TYPE) == 01 then
1266 if pid:getStorageValue(_DESAFIOS[00].DESAFIO_SHOP) > 00 then
1267 TOKEN_MULT = TOKEN_MULT + 01
1268 GOLD_GAIN = GOLD_GAIN * 2
1269 if pid:getStorageValue(_DESAFIOS[00].DESAFIO_SHOP) == 01 then
1270 pid:setStorageValue(_DESAFIOS[00].DESAFIO_TYPE, nil)
1271 pid:setStorageValue(_DESAFIOS[00].DESAFIO_SHOP, nil)
1272 pid:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[EXTENSOR TASK]: FINALIZADO!")
1273 else
1274 pid:setStorageValue(_DESAFIOS[00].DESAFIO_SHOP, (pid:getStorageValue(_DESAFIOS[00].DESAFIO_SHOP) - 01))
1275 pid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[EXTENSOR TASK]: Ainda resta " ..pid:getStorageValue(_DESAFIOS[00].DESAFIO_SHOP).. ".")
1276 end
1277 end
1278 end
1279 pid:setStorageValue(_SYSTEM.TASK[00].TASK_ATIVA, nil)
1280 pid:setStorageValue(_SYSTEM.TASK[00].QNT_ATIVA, nil)
1281 pid:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[TASK]: FINALIZADA! Voc� obteve " .. GOLD_GAIN .. " gold | " .. (TokensGain * TOKEN_MULT) .." Tokens.")
1282 pid:sendCancelMessage("@TaskMSG-1-fin-" .. GOLD_GAIN.. "-" ..(TokensGain * TOKEN_MULT).. "-TASK")
1283 PlayerGoldCoins(pid, 02, GOLD_GAIN)
1284 if Game.getStorageValue(_GLOBAL_RANDOM.DAILY_EVENTS.STORAGE) == 07 then
1285 local party = player:getParty()
1286 if party then
1287 TokensGain = TokensGain + 01
1288 end
1289 end
1290 PlayerTokenCoins(pid, _MONSTER_LOOT[Name][00].Task_ID[03], TokensGain, TOKEN_MULT)
1291 -- DESAFIO
1292 if pid:getStorageValue(_DESAFIOS[00].DESAFIO_ID) > 00 then
1293 onPlayerDesafios(pid, 06, 01)
1294 end
1295 if pid:getStorageValue(_QUESTLOG[27].UID_01) == 02 then
1296 pid:setStorageValue(_QUESTLOG[27].UID_01, 03)
1297 addEvent(function() pid:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.") end, 2 * 1000)
1298 end
1299 end
1300 end
1301 end
1302 end
1303 -- QUEST
1304 if _MONSTER_LOOT[Name][00].QuestKill[01] ~= nil then
1305 if _MONSTER_LOOT[Name][00].QuestKill[01] > 0 then
1306 if pid:getStorageValue(_MONSTER_LOOT[Name][00].QuestKill[02]) > 0 and pid:getStorageValue(_MONSTER_LOOT[Name][00].QuestKill[02]) < 100 then
1307 local ST = _MONSTER_LOOT[Name][00].QuestKill[03]
1308 local VL = _MONSTER_LOOT[Name][00].QuestKill[04] or 0
1309
1310 if pid:getStorageValue(ST) == (VL - 01) then
1311 pid:setStorageValue(ST, (pid:getStorageValue(ST) + 1))
1312 pid:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[QUEST]: QUEST FINALIZADA! Todos foram derrotados.")
1313 pid:sendCancelMessage("@TaskMSG-1-fin-" .. _MONSTER_LOOT[Name][00].QuestKill[04].. "-0".. "-QUEST")
1314
1315 if pid:getStorageValue(_QUESTLOG[078].UID_01) == 01 then
1316 pid:setStorageValue(_QUESTLOG[078].UID_01, 100)
1317
1318 doBackpack(pid, 12)
1319 addEvent(function() pid:addExperience(15000, true, true) end, 3 * 1000)
1320 addEvent(function() PlayerGoldCoins(pid, 02, 2900) end, 3 * 1000)
1321 addEvent(function() pid:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Seu Quest Log foi atualizado.") end, 3 * 1000)
1322 end
1323 else
1324 if pid:getStorageValue(ST) < VL then
1325 if pid:getStorageValue(ST) == -1 then
1326 pid:setStorageValue(ST, (pid:getStorageValue(ST) + 2))
1327 pid:sendCancelMessage("@TaskMSG-0-" ..Name.. "-" ..pid:getStorageValue(ST).. "-" ..VL.. "-QUEST")
1328 pid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[QUEST]: " ..Name.. " eliminado(a): " ..pid:getStorageValue(ST).. "/" ..VL)
1329 else
1330 pid:setStorageValue(ST, (pid:getStorageValue(ST) + 1))
1331 pid:sendCancelMessage("@TaskMSG-0-" ..Name.. "-" ..pid:getStorageValue(ST).. "-" ..VL.. "-QUEST")
1332 pid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "[QUEST]: " ..Name.. " eliminado(a): " ..pid:getStorageValue(ST).. "/" ..VL)
1333 end
1334 end
1335 end
1336
1337 onLoadQuest(player, _MONSTER_LOOT[Name][00].QuestKill[01])
1338 end
1339 end
1340 end
1341
1342 local AtrDropChance = pid:getStorageValue(_SYSTEM.ATR_VALUES[02]) or 0
1343 local GoldAtrDrop = pid:getStorageValue(_SYSTEM.ATR_VALUES[03]) or 0
1344 local AmuletDrop = 0
1345 local CountCoin = 00
1346 local GoldMult = 1
1347 local RankPid = 1
1348 if pid:getStorageValue(_SYSTEM.AMULET_VALUES[00][02]) == 08 then
1349 AmuletDrop = pid:getStorageValue(_SYSTEM.AMULET_VALUES[00][03]) or 0
1350 end
1351 local lootsId = {
1352 [01] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1353 [02] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1354 [03] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1355 [04] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1356 [05] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1357 [06] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1358 [07] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1359 [08] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1360 [09] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1361 [10] = {UID = 0000, SLOT = 0000, RARE = 0000, STAR = 0000, QNT = 0000},
1362 }
1363
1364 local chance = math.random(00, 100) - AmuletDrop - AtrDropChance
1365 if _BONUS_EXTRA_TABLE[_cid] then
1366 local ID_BONUS = 33
1367 if _BONUS_EXTRA_TABLE[_cid][ID_BONUS] > 00 then
1368 chance = chance - _BONUS_EXTRA_TABLE[_cid][ID_BONUS]
1369 end
1370 end
1371 if _CHEATS.GOLD_MINER_UNLOCK then
1372 GoldMult = GoldMult * 2
1373 end
1374 if Game.getStorageValue(_GLOBAL_RANDOM.EVENTOS_TABLE[11].PILLAR_STEP) == 06 then
1375 GoldMult = GoldMult * 2
1376 end
1377 if pid:getStorageValue(_SYSTEM.SHOP_WARZONE) == 05 then
1378 GoldMult = GoldMult * 2
1379 end
1380
1381 if _MONSTER_LOOT[Name][00].Type == "Boss" and chance > 00 then
1382 local RANK_SELECT = pid:getStorageValue(_SYSTEM.COLISEU[06])
1383 local BOSS_SELECT = pid:getStorageValue(_SYSTEM.COLISEU[07])
1384 if RANK_SELECT < 00 then
1385 RANK_SELECT = 01
1386 end
1387 if BOSS_SELECT < 00 then
1388 BOSS_SELECT = 01
1389 end
1390 if RANK_SELECT <= 03 then
1391 RankPid = 01
1392 CountCoin = pid:getStorageValue(_SYSTEM.TASK[00].COUNT_WHITE)
1393 elseif RANK_SELECT <= 06 then
1394 RankPid = 02
1395 CountCoin = pid:getStorageValue(_SYSTEM.TASK[00].COUNT_YELLOW)
1396 else
1397 RankPid = 03
1398 CountCoin = pid:getStorageValue(_SYSTEM.TASK[00].COUNT_BLUE)
1399 end
1400
1401 if CountCoin >= ((RANK_SELECT + 17) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1402 chance = chance - 80
1403 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 80%.")
1404 elseif CountCoin >= ((RANK_SELECT + 16) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1405 chance = chance - 75
1406 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 75%.")
1407 elseif CountCoin >= ((RANK_SELECT + 15) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1408 chance = chance - 70
1409 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 70%.")
1410 elseif CountCoin >= ((RANK_SELECT + 14) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1411 chance = chance - 65
1412 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 65%.")
1413 elseif CountCoin >= ((RANK_SELECT + 13) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1414 chance = chance - 60
1415 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 60%.")
1416 elseif CountCoin >= ((RANK_SELECT + 12) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1417 chance = chance - 55
1418 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 55%.")
1419 elseif CountCoin >= ((RANK_SELECT + 11) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1420 chance = chance - 50
1421 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 50%.")
1422 elseif CountCoin >= ((RANK_SELECT + 10) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1423 chance = chance - 45
1424 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 45%.")
1425 elseif CountCoin >= ((RANK_SELECT + 09) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1426 chance = chance - 40
1427 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 40%.")
1428 elseif CountCoin >= ((RANK_SELECT + 08) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1429 chance = chance - 35
1430 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 35%.")
1431 elseif CountCoin >= ((RANK_SELECT + 07) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1432 chance = chance - 30
1433 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 30%.")
1434 elseif CountCoin >= ((RANK_SELECT + 06) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1435 chance = chance - 25
1436 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 25%.")
1437 elseif CountCoin >= ((RANK_SELECT + 05) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1438 chance = chance - 20
1439 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 20%.")
1440 elseif CountCoin >= ((RANK_SELECT + 04) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1441 chance = chance - 15
1442 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 15%.")
1443 elseif CountCoin >= ((RANK_SELECT + 03) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1444 chance = chance - 10
1445 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 10%.")
1446 elseif CountCoin >= ((RANK_SELECT + 02) * _SYSTEM.TASK.BOSSES[RANK_SELECT].BOSS[BOSS_SELECT].NEED_INN) then
1447 chance = chance - 05
1448 player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[BOSS DROP]: Auxilio de chance de drope de armas: 05%.")
1449 end
1450
1451 pid:setStorageValue(_SYSTEM.COLISEU[06], nil)
1452 pid:setStorageValue(_SYSTEM.COLISEU[07], nil)
1453 end
1454
1455 for X = 01, #_MONSTER_LOOT[Name] do
1456 local SelectItem = math.random(01, #_MONSTER_LOOT[Name])
1457 local SYSTEM = _MONSTER_LOOT[Name][SelectItem]
1458 if chance <= SYSTEM.Chance then
1459 if SYSTEM.ItemID[01] == _SYSTEM.GOLD_COIN then
1460 local GoldQnt = math.random(01, SYSTEM.Qnt) * GoldMult
1461 if pid:getStorageValue(_SYSTEM.INVENTARIO[01].UID_01) > 0 then
1462 if pid:getStorageValue(_SYSTEM.INVENTARIO[01].UID_01) == 1009 then
1463 local rareAmulet = pid:getStorageValue(_SYSTEM.INVENTARIO[01].UID_02)
1464 GoldQnt = GoldQnt * (rareAmulet + 02)
1465 end
1466 end
1467 if _BONUS_EXTRA_TABLE[_cid] then
1468 local ID_BONUS = 08
1469 if _BONUS_EXTRA_TABLE[_cid][ID_BONUS] > 00 then
1470 GoldQnt = GoldQnt + (math.floor(_BONUS_EXTRA_TABLE[_cid][ID_BONUS] * (GoldQnt / 100)))
1471 end
1472 end
1473 if GoldAtrDrop > 0 then
1474 GoldQnt = GoldQnt + math.random(05, (GoldAtrDrop + 05))
1475 end
1476 for _ADD = 01, #lootsId do
1477 if lootsId[_ADD].UID == 3001 then
1478 lootsId[_ADD].QNT = lootsId[_ADD].QNT + GoldQnt
1479 break
1480 elseif lootsId[_ADD].UID <= 0 then
1481 lootsId[_ADD].UID = 3001
1482 lootsId[_ADD].QNT = GoldQnt
1483 break
1484 end
1485 end
1486 else
1487 local itemid = SYSTEM.ItemID[01]
1488 local slot = SYSTEM.ItemID[02]
1489 local SET_RARE = 0
1490 if _ITEMS[itemid].RARE then
1491 SET_RARE = _ITEMS[itemid].RARE
1492 end
1493 local ext = 0
1494 local rare = SET_RARE
1495 local star = SYSTEM.ItemID[04]
1496 local qnt = math.random(01, SYSTEM.Qnt)
1497
1498 if itemid >= 10500 and itemid <= 10569 then -- Dificultando o Drop de livros de Skills
1499 if math.random(01, 100) > 10 then
1500 break
1501 end
1502 end
1503 if _MONSTER_LOOT[Name][00].Type == "Boss" then
1504 if slot == 4 then
1505 if RankPid == 01 then
1506 pid:setStorageValue(_SYSTEM.TASK[00].COUNT_WHITE, nil)
1507 elseif RankPid == 02 then
1508 pid:setStorageValue(_SYSTEM.TASK[00].COUNT_YELLOW, nil)
1509 else
1510 pid:setStorageValue(_SYSTEM.TASK[00].COUNT_BLUE, nil)
1511 end
1512 local GlobalChance = 01
1513 local RankBlacklist = pid:getStorageValue(_SYSTEM.TASK[00].RANK)
1514 if RankBlacklist < 01 then
1515 RankBlacklist = 01
1516 end
1517 local MaxRank = _SYSTEM.TASK.BOSSES[RankBlacklist].QNT_RANK
1518 local RankMonster = _MONSTER_LOOT[Name][00].QuestKill[01]
1519 if RankBlacklist == 09 then
1520 MaxRank = 10
1521 elseif RankBlacklist == RankMonster then
1522 local EXP = pid:getStorageValue(_SYSTEM.TASK[00].EXP)
1523 GlobalChance = GlobalChance + math.floor((EXP / 05))
1524 elseif RankBlacklist > _MONSTER_LOOT[Name][00].QuestKill[01] then
1525 MaxRank = _SYSTEM.TASK.BOSSES[RankMonster].QNT_RANK
1526 GlobalChance = GlobalChance + math.floor((MaxRank / 05))
1527 end
1528
1529 local LendRandom = math.random(00, MaxRank)
1530 if LendRandom <= GlobalChance then
1531 rare = math.random(00, 04)
1532 else
1533 local EpicRandom = math.random(00, MaxRank)
1534 if EpicRandom <= GlobalChance then
1535 rare = math.random(00, 03)
1536 else
1537 local RareRandom = math.random(00, MaxRank)
1538 if RareRandom <= GlobalChance then
1539 rare = math.random(00, 02)
1540 else
1541 local MelRandom = math.random(00, MaxRank)
1542 if MelRandom <= GlobalChance then
1543 rare = math.random(00, 01)
1544 else
1545 rare = 00
1546 end
1547 end
1548 end
1549 end
1550 end
1551 end
1552 for _ADD = 01, #lootsId do
1553 if lootsId[_ADD].UID > 0000 then
1554 if lootsId[_ADD].UID == itemid then
1555 break
1556 end
1557 else
1558 lootsId[_ADD].UID = itemid
1559 lootsId[_ADD].SLOT = slot
1560 lootsId[_ADD].RARE = rare
1561 lootsId[_ADD].STAR = star
1562 lootsId[_ADD].QNT = qnt
1563 break
1564 end
1565 end
1566 end
1567 end
1568 end
1569 for _DELIVERY = 1, #lootsId do
1570 local item = lootsId[_DELIVERY]
1571 if item and item.UID > 0 then
1572 if item.UID == 3001 then
1573 PlayerGoldCoins(pid, 2, item.QNT)
1574 else
1575 local itemid = item.UID
1576 local slot = item.SLOT
1577 local ext = 0
1578 local rare = item.RARE
1579 local star = item.STAR
1580 local qnt = item.QNT
1581 if doBackpack(pid, 0, slot, ext, 1) then
1582 if slot == 3 then
1583 pid:sendCancelMessage("@Analyser#02#" ..itemid.. "#" ..qnt.. "#" ..rare)
1584 doBackpack(pid, 3, slot, ext, 1, itemid)
1585 if doBackpack(pid, 1, slot, ext, 0, itemid, rare, star, qnt) then end
1586 else
1587 pid:sendCancelMessage("@Analyser#02#" ..itemid.. "#01".. "#" ..rare)
1588 if doBackpack(pid, 1, slot, ext, 0, itemid, rare, star) then end
1589 end
1590 else
1591 pid:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Su Backpack esta llena.")
1592 break
1593 end
1594 end
1595 end
1596 end
1597 end
1598 end
1599 end
1600 return true
1601end
1602
Top