Advertisement
hlmbugle

Untitled

Jul 29th, 2016
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.78 KB | None | 0 0
  1. -----------------------------------
  2. -- Area: Al'Taieu
  3. -- NM: Jailer of Love
  4. -----------------------------------
  5.  
  6. require("scripts/globals/status");
  7. require("scripts/globals/magic");
  8.  
  9. -----------------------------------
  10. -- onMobSpawn Action
  11. -----------------------------------
  12.  
  13. function onMobSpawn(mob)
  14. --setmob
  15. mob:setMod(MOD_REGEN, 500);--SBS
  16.  
  17. end;
  18.  
  19. -----------------------------------
  20. -- onMobEngaged
  21. -----------------------------------
  22.  
  23. function onMobEngaged(mob, target)
  24. mob:hideName(false);
  25. mob:untargetable(false);
  26. mob:AnimationSub(6);--SBS
  27. end;
  28.  
  29. -----------------------------------
  30. -- onMobFight Action
  31. -----------------------------------
  32.  
  33. function onMobFight(mob, target)
  34. -- Only 9 Qn'xzomit and 9 Qn'hpemde can be summoned. Ru'phuabo (Sharks) are unlimited.
  35. local XZOMITS = mob:getLocalVar("JoL_Qn_xzomit_Killed");
  36. local HPEMDES = mob:getLocalVar("JoL_Qn_hpemde_Killed");
  37.  
  38.  
  39. -- Spell selection SBS
  40. local lastSpell = mob:getLocalVar("last_spell");
  41.  
  42. if (os.time() - lastSpell > 20) then
  43. local SPELLSCAST = mob:getLocalVar("SPELLSCAST");
  44.  
  45. if (SPELLSCAST == 0) then
  46. local spellTimer = math.random(0,1)
  47. switch (spellTimer):caseof
  48. {
  49. [0] = function (x)
  50. mob:castSpell(157) --Aero IV
  51. mob:setMod(MOD_WIND_ABSORB, 100)
  52. end,
  53. [1] = function (x)
  54. mob:castSpell(147) --Fire IV
  55. end
  56.  
  57. }
  58.  
  59.  
  60. mob:setLocalVar("last_spell", os.time());
  61. mob:setLocalVar("SPELLSCAST", 1);
  62.  
  63. elseif (SPELLSCAST >= 1) then
  64. mob:setLocalVar("SPELLSCAST", 0);
  65. end;
  66. end;
  67.  
  68.  
  69. ---------------------------------------------------------------------
  70.  
  71. -- Increment these by 1 each time they are slain, in that mobs onMobDeath() script.
  72. if (mob:getLocalVar("JoL_Regen_Reduction") == 0) then
  73. if (mob:getLocalVar("JoL_Qn_xzomit_Killed") == 9
  74. and mob:getLocalVar("JoL_Qn_hpemde_Killed") == 9) then
  75. mob:setLocalVar("JoL_Regen_Reduction", 1);
  76. end
  77. end
  78. if (mob:getLocalVar("JoL_Regen_Reduction") == 1) then --SBS
  79. mob:setMod(MOD_REGEN, 100);
  80. end
  81.  
  82. local lastPop = mob:getLocalVar("pop_pets");
  83. if (os.time() - lastPop > 150) then
  84. local SPAWNS = mob:getLocalVar("SPAWNS");
  85. local phuabo1 = GetMobAction(16912849);
  86. local phuabo2 = GetMobAction(16912852);
  87. local phuabo3 = GetMobAction(16912855);
  88.  
  89. if (SPAWNS == 0) then -- Spawns first 3 xzomit
  90. SpawnMob(16912858, 300):updateEnmity(target);
  91. SpawnMob(16912859, 300):updateEnmity(target);
  92. SpawnMob(16912860, 300):updateEnmity(target);
  93. mob:setLocalVar("pop_pets", os.time());
  94. mob:setLocalVar("SPAWNS", 1);
  95. elseif (SPAWNS == 1) then -- spawns first 3 hpemde
  96. SpawnMob(16912867, 300):updateEnmity(target);
  97. SpawnMob(16912868, 300):updateEnmity(target);
  98. SpawnMob(16912869, 300):updateEnmity(target);
  99. mob:setLocalVar("pop_pets", os.time());
  100. mob:setLocalVar("SPAWNS", 2);
  101. mob:setLocalVar("JoL_Qn_xzomit_Killed", 3);--SBS
  102. elseif (SPAWNS == 2) then -- spawns first 3 phuabo
  103. SpawnMob(16912849, 300):updateEnmity(target);
  104. SpawnMob(16912850, 300):updateEnmity(target);
  105. SpawnMob(16912851, 300):updateEnmity(target);
  106. mob:setLocalVar("pop_pets", os.time());
  107. mob:setLocalVar("SPAWNS", 3);
  108. mob:setLocalVar("JoL_Qn_hpemde_Killed", 3);
  109. elseif (SPAWNS == 3) then -- Spawns second 3 xzomit
  110. SpawnMob(16912861, 300):updateEnmity(target);
  111. SpawnMob(16912862, 300):updateEnmity(target);
  112. SpawnMob(16912863, 300):updateEnmity(target);
  113. mob:setLocalVar("pop_pets", os.time());
  114. mob:setLocalVar("SPAWNS", 4);
  115. elseif (SPAWNS == 4) then -- spawns second 3 hpemde
  116. SpawnMob(16912870, 300):updateEnmity(target);
  117. SpawnMob(16912871, 300):updateEnmity(target);
  118. SpawnMob(16912872, 300):updateEnmity(target);
  119. mob:setLocalVar("pop_pets", os.time());
  120. mob:setLocalVar("SPAWNS", 5);
  121. mob:setLocalVar("JoL_Qn_xzomit_Killed", 6);
  122. elseif (SPAWNS == 5) then -- spawns second 3 phuabo
  123. SpawnMob(16912852, 300):updateEnmity(target);
  124. SpawnMob(16912853, 300):updateEnmity(target);
  125. SpawnMob(16912854, 300):updateEnmity(target);
  126. mob:setLocalVar("pop_pets", os.time());
  127. mob:setLocalVar("SPAWNS", 6);
  128. mob:setLocalVar("JoL_Qn_hpemde_Killed", 6);
  129. elseif (SPAWNS == 6) then -- Spawns last 3 xzomit
  130. SpawnMob(16912864, 300):updateEnmity(target);
  131. SpawnMob(16912865, 300):updateEnmity(target);
  132. SpawnMob(16912866, 300):updateEnmity(target);
  133. mob:setLocalVar("pop_pets", os.time());
  134. mob:setLocalVar("SPAWNS", 7);
  135. elseif (SPAWNS == 7) then -- spawns last 3 hpemde
  136. SpawnMob(16912873, 300):updateEnmity(target);
  137. SpawnMob(16912874, 300):updateEnmity(target);
  138. SpawnMob(16912875, 300):updateEnmity(target);
  139. mob:setLocalVar("pop_pets", os.time());
  140. mob:setLocalVar("SPAWNS", 8);
  141. mob:setLocalVar("JoL_Qn_xzomit_Killed", 9);
  142. elseif (SPAWNS >= 8) then -- switch to ONLY popping phuabo (still up to 3 at a time)
  143. if (phuabo1 == ACTION_NONE or phuabo1 == ACTION_SPAWN) then
  144. SpawnMob(16912849, 300):updateEnmity(target);
  145. SpawnMob(16912850, 300):updateEnmity(target);
  146. SpawnMob(16912851, 300):updateEnmity(target);
  147. mob:setLocalVar("pop_pets", os.time());
  148. mob:setLocalVar("JoL_Qn_hpemde_Killed", 9);
  149. elseif (phuabo2 == ACTION_NONE or phuabo2 == ACTION_SPAWN) then
  150. SpawnMob(16912852, 300):updateEnmity(target);
  151. SpawnMob(16912853, 300):updateEnmity(target);
  152. SpawnMob(16912854, 300):updateEnmity(target);
  153. mob:setLocalVar("pop_pets", os.time());
  154. elseif (phuabo3 == ACTION_NONE or phuabo3 == ACTION_SPAWN) then
  155. SpawnMob(16912855, 300):updateEnmity(target);
  156. SpawnMob(16912856, 300):updateEnmity(target);
  157. SpawnMob(16912857, 300):updateEnmity(target);
  158. mob:setLocalVar("pop_pets", os.time());
  159. end
  160. end
  161. end
  162. end;
  163.  
  164. -----------------------------------
  165. -- onMobDespawn
  166. -----------------------------------
  167.  
  168. function onMobDespawn(mob)
  169. local AV_CHANCE = 100; --set back to 25 after testing JoL mobs killed variables/regen effects on AV
  170. if (AV_CHANCE > math.random(0,99)) then
  171. SpawnMob(16912876, 180);
  172. end
  173. end;
  174.  
  175. -----------------------------------
  176. -- onMobDeath
  177. -----------------------------------
  178.  
  179. function onMobDeath(mob, player, isKiller)
  180. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement