BaseGnoll1.lua 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. --[[
  2. Script Name : SpawnScripts/Generic/MonsterCallouts/BaseGnoll1.lua
  3. Script Author : Dorbin
  4. Script Date : 2022.07.10 11:07:28
  5. Script Purpose : Basic Gnoll Callouts v1
  6. :
  7. --]]
  8. local HealthCallout = false --REDUCES Half-Health Spam
  9. local CalloutTimer = false --REDUCES Callout Spam
  10. function ResetTimer(NPC) -- 7 SECOND PAUSE BETWEEN VOs
  11. SetTempVariable(NPC, "CalloutTimer", "false")
  12. end
  13. function HealthReset (NPC) -- SO HALF HEALTH DOESN'T SPAM
  14. SetTempVariable(NPC, "HealthCallout", "false")
  15. end
  16. function Garbled(NPC,Player)
  17. local choice = MakeRandomInt(1,5)
  18. if choice == 1 then
  19. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_1_garbled_2f8caa7b.mp3", "Krovel grarggt ereverrrn", "", 3999652656, 427507713, Player, 18)
  20. elseif choice == 2 then
  21. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_2_garbled_fe1eedd8.mp3", "Rrrrevvvvnarrr jahht ttekkkman", "", 1674950709, 3936377565, Player, 18)
  22. elseif choice == 3 then
  23. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_garbled_fad67c0f.mp3", "Grrrolven brakth kerrtt", "", 2579932316, 1973717234, Player, 18)
  24. elseif choice == 4 then
  25. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_garbled_3eefc118.mp3", "Vologrrren aggart renevenn", "", 3980060701, 1422372699, Player, 18)
  26. elseif choice == 5 then
  27. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_2_garbled_2f8caa7b.mp3", "Krovel grarggt ereverrrn", "", 2385604574, 3717589402, Player, 18)
  28. end
  29. end
  30. function aggro(NPC,Player)
  31. AddTimer(NPC,math.random(14000,31000),"FifteenCall")
  32. SetTempVariable(NPC, "CalloutTimer", "false")
  33. if GetTempVariable(NPC, "CalloutTimer")== "false" and math.random(0,100) <=75 and IsPlayer(Player) then
  34. SetTempVariable(NPC, "CalloutTimer", "true")
  35. AddTimer(NPC,10000,"ResetTimer")
  36. if not HasLanguage(Player,18 )then
  37. Garbled(NPC,Player)
  38. else
  39. local choice = MakeRandomInt(1,8)
  40. if choice == 1 then
  41. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_1_aggro_75cd5d19.mp3", "Not allowed here!", "", 1292107958, 2335134714, Player, 18)
  42. elseif choice == 2 then
  43. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_2_aggro_75cd5d19.mp3", "Not allowed here!", "", 1266801616, 137145352, Player, 18)
  44. elseif choice == 3 then
  45. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_aggro_75cd5d19.mp3", "Not allowed here!", "", 942309136, 3095091783, Player, 18)
  46. elseif choice == 4 then
  47. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_1_aggro_d81be55c.mp3", "Bite! Show sharp teeth!", "", 612586564, 102929785, Player, 18)
  48. elseif choice == 5 then
  49. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_2_aggro_d81be55c.mp3", "Bite! Show sharp teeth!", "", 3848163428, 3270249405, Player, 18)
  50. elseif choice == 6 then
  51. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_aggro_d81be55c.mp3", "Bite! Show sharp teeth!", "", 3276849474, 2846177216, Player, 18)
  52. elseif choice == 7 then
  53. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_1_aggro_fda03a16.mp3", "Spin, weave, dodge, attack!!!", "", 1347636574, 484324781, Player, 18)
  54. elseif choice == 8 then
  55. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_aggro_fda03a16.mp3", "Spin, weave, dodge, attack!!!", "", 1516290828, 3143203494, Player, 18)
  56. end
  57. end
  58. end
  59. end
  60. -- Doesn't Work PlayFlavor(NPC, "voiceover/english/optional5/gnoll_base_2/ft/gnoll/gnoll_base_2_1_aggro_959e4683.mp3", "Intruder!", "", 1672215946, 3521592402, Player, 18)
  61. function death(NPC,Player)
  62. if GetTempVariable(NPC, "CalloutTimer")== "false" and IsPlayer(Player) then
  63. if math.random(0,100)<=35 then
  64. if not HasLanguage(Player,18 )then
  65. Garbled(NPC,Player)
  66. else
  67. local choice = MakeRandomInt(1,5)
  68. if choice == 1 then
  69. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_1_death_9c1f07cb.mp3", "Another member of the pack down!", "", 782807197, 154562007, Player, 18)
  70. elseif choice == 2 then
  71. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_1_death_138a3058.mp3", "That one never mate!", "", 3110437136, 1206351893, Player, 18)
  72. elseif choice == 3 then
  73. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_death_138a3058.mp3", "That one will never mate!", "", 216068291, 510666258, Player, 18)
  74. elseif choice == 4 then
  75. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_2_death_9c1f07cb.mp3", "Another member of the pack down!", "", 3426629421, 3660282518, Player, 18)
  76. elseif choice == 5 then
  77. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_death_9c1f07cb.mp3", "Another member of the pack down!", "", 869495756, 2144000535, Player, 18)
  78. end
  79. end
  80. end
  81. end
  82. end
  83. -- DOES NOT WORK PlayFlavor(NPC, "voiceover/english/optional5/gnoll_base_2/ft/gnoll/gnoll_base_2_1_death_7cbd3c71.mp3", "I'll rip your throat open!", "", 134141978, 4165685331, Spawn, 18)
  84. function FifteenCall(NPC,Player)
  85. if IsInCombat(NPC)==true then
  86. if IsAlive(NPC) and GetTempVariable(NPC, "CalloutTimer")== "false" and math.random(0,100) <=33 and IsPlayer(Player) then
  87. SetTempVariable(NPC, "CalloutTimer", "true")
  88. AddTimer(NPC,10000,"ResetTimer")
  89. if not HasLanguage(Player,18 )then
  90. Garbled(NPC,Player)
  91. else
  92. local choice = MakeRandomInt(1,4)
  93. if choice == 1 then
  94. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_2_everyfifteenseconds_m_dbbe969a.mp3", "Grrrrrrrrrr! Yip!", "", 3107536729, 1468959623, Player, 18)
  95. elseif choice == 2 then
  96. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_2_everyfifteenseconds_7c69417c.mp3", "Nip at their heels when they flee!", "", 4292535613, 1359167400, Player, 18)
  97. elseif choice == 3 then
  98. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_1_battle_m_2b13fb2e.mp3", "For the pack!", "", 2513141586, 2807818416, Player, 18)
  99. elseif choice == 4 then
  100. if GetClass(Player) >=21 and GetClass(Player) <=30 then
  101. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_maomage_8fb8565d.mp3", "Yip! Watch out for their magic!", "", 1674162517, 4259121980, Spawn, 18)
  102. else
  103. PlayFlavor(NPC, "voiceover/english/optional5/gnoll_base_2/ft/gnoll/gnoll_base_2_1_battle_m_5c7913bb.mp3", "Bah! You smell horrible!", "", 687847219, 3365844906, Spawn, 18)
  104. end
  105. end
  106. end
  107. if IsAlive(NPC)then
  108. AddTimer(NPC,math.random(14000,31000),"FifteenCall")
  109. end
  110. end
  111. end
  112. end
  113. function healthchanged(NPC, Player)
  114. if GetTempVariable(NPC, "HealthCallout")== "false" and IsPlayer(Player) then
  115. if GetHP(NPC) < GetMaxHP(NPC) * 0.55 and GetHP(NPC) > GetMaxHP(NPC) * 0.45 then
  116. SetTempVariable(NPC, "HealthCallout", "true")
  117. AddTimer(NPC,10000,"HealthReset")
  118. if not HasLanguage(Player,18 )then
  119. Garbled(NPC,Player)
  120. else
  121. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_halfhealth_d093de2d.mp3", "Yip yip yip!", "", 166674284, 1395857397, Player, 18)
  122. end
  123. end
  124. end
  125. end
  126. function victory(NPC,Player)
  127. if IsPlayer(Player)and not HasLanguage(Player,18 )then
  128. Garbled(NPC,Player)
  129. elseif IsPlayer(Player) and HasLanguage(Player,18 )then
  130. local choice = MakeRandomInt(1,3)
  131. if choice == 1 then
  132. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_3_victory_e4520926.mp3", "Packmate not happy with scrawny catch.", "", 1321865956, 173648139, Player, 18)
  133. elseif choice == 2 then
  134. PlayFlavor(NPC, "voiceover/english/optional5/gnoll_base_2/ft/gnoll/gnoll_base_2_1_victory_8e18fe38.mp3", "Your fight is hopeless!", "", 2306110016, 2442076674, Player, 18)
  135. elseif choice == 3 then
  136. PlayFlavor(NPC, "voiceover/english/gnoll_base_1/ft/gnoll/gnoll_base_1_1_victory_f225e591.mp3", "One to bring back to lair!", "", 3397285495, 2608729760,Player,18)
  137. end
  138. end
  139. end