Guest User

nova.lua

a guest
Apr 7th, 2014
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.23 KB | None | 0 0
  1. local arrrr = {
  2. {1,0,1},
  3. {0,2,0},
  4. {1,0,1},
  5. }
  6. local areaaa = createCombatArea(arrrr)
  7.  
  8. function returnNova(target)
  9. if not isCreature(target) then
  10. return true
  11. end
  12. local pos = getThingPos(target)
  13. local pos1 = {x = pos.x - 1, y = pos.y - 1, z = pos.z}
  14. local pos2 = {x = pos.x - 1, y = pos.y + 1, z = pos.z}
  15. local pos3 = {x = pos.x + 1, y = pos.y - 1, z = pos.z}
  16. local pos4 = {x = pos.x + 1, y = pos.y + 1, z = pos.z}
  17.  
  18. doSendDistanceShoot(pos1, pos, 35)
  19. doSendDistanceShoot(pos2, pos, 35)
  20. doSendDistanceShoot(pos3, pos, 35)
  21. doSendDistanceShoot(pos4, pos, 35)
  22. doAreaCombatHealth(cid, COMBAT_ENERGYDAMAGE, getThingPos(target), areaaa, - 50, - 25, 255)
  23. return true
  24. end
  25.  
  26. local arrr = {
  27. {0,1,0},
  28. {1,2,1},
  29. {0,1,0},
  30. }
  31. local areaa = createCombatArea(arrr)
  32.  
  33. function rebornNova(target)
  34. if not isCreature(target) then
  35. return true
  36. end
  37. local pos = getThingPos(target)
  38. local pos1 = {x = pos.x - 1, y = pos.y, z = pos.z}
  39. local pos2 = {x = pos.x, y = pos.y + 1, z = pos.z}
  40. local pos3 = {x = pos.x + 1, y = pos.y, z = pos.z}
  41. local pos4 = {x = pos.x, y = pos.y - 1, z = pos.z}
  42.  
  43. doSendDistanceShoot(pos1, pos2, 35)
  44. doSendDistanceShoot(pos2, pos3, 35)
  45. doSendDistanceShoot(pos3, pos4, 35)
  46. doSendDistanceShoot(pos4, pos1, 35)
  47. doAreaCombatHealth(cid, COMBAT_ENERGYDAMAGE, getThingPos(target), areaa, - 50, - 25, 255)
  48. addEvent(returnNova, 500, target)
  49. return true
  50. end
  51.  
  52. local arr = {
  53. {0,0,0,0,0,1,0,0,0,0,0},
  54. {0,1,0,0,0,1,0,0,0,1,0},
  55. {0,0,1,0,0,1,0,0,1,0,0},
  56. {0,0,0,1,0,1,0,1,0,0,0},
  57. {0,0,0,0,1,1,1,0,0,0,0},
  58. {1,1,1,1,1,2,1,1,1,1,1},
  59. {0,0,0,0,1,1,1,0,0,0,0},
  60. {0,0,0,1,0,1,0,1,0,0,0},
  61. {0,0,1,0,0,1,0,0,1,0,0},
  62. {0,1,0,0,0,1,0,0,0,1,0},
  63. {0,0,0,0,0,1,0,0,0,0,0}
  64. }
  65. local area = createCombatArea(arr)
  66.  
  67. function onCastSpell(cid)
  68.  
  69. local configs = {
  70. charge = 2,
  71. }
  72.  
  73. rebornNova(cid)
  74. for a = 1, configs.charge do
  75. addEvent(rebornNova, a * 1000, cid)
  76. end
  77.  
  78.  
  79. function novaExplosion(cid)
  80. for a=0,7 do
  81. doSendDistanceShoot(getThingPos(cid), getPositionByDirection(getThingPos(cid), a, a > 3 and 4 or 5), 35)
  82. end
  83. doAreaCombatHealth(cid, COMBAT_ENERGYDAMAGE, getThingPos(cid), area, - 2000, - 1000, 255)
  84. return true
  85. end
  86.  
  87. addEvent(novaExplosion, configs.charge * 1300, cid)
  88. return true
  89. end
Advertisement
Add Comment
Please, Sign In to add comment