aGruttoothprovider.lua 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353
  1. --[[
  2. Script Name : SpawnScripts/IsleRefuge1/aGruttoothprovider.lua
  3. Script Author : LordPazuzu
  4. Script Date : 2022.09.05 07:09:59
  5. Script Purpose :
  6. :
  7. --]]
  8. dofile("SpawnScripts/Generic/MonsterCallouts/BaseGoblin1.lua")
  9. require "SpawnScripts/Generic/NPCModule"
  10. function spawn(NPC, Spawn)
  11. NPCModule(NPC, Spawn)
  12. ChooseMovement(NPC)
  13. end
  14. function ChooseMovement(NPC)
  15. if GetSpawnLocationID(NPC)==133774837 then
  16. MovementLoopAddLocation(NPC, 175.9, 1.34, 54.84, 2, 15 , "InitialPause")
  17. MovementLoopAddLocation(NPC, 180.33, 1.13, 54.46, 2, 0)
  18. MovementLoopAddLocation(NPC, 186.01, 1.1, 59.5, 2, 0)
  19. MovementLoopAddLocation(NPC, 190.24, 1.09, 62.3, 2, 0)
  20. MovementLoopAddLocation(NPC, 201.44, 1.25, 58.55, 2, 15 , "InitialPause")
  21. MovementLoopAddLocation(NPC, 201.6, 1.25, 59.91, 2, 15 , "InitialPause")
  22. MovementLoopAddLocation(NPC, 198.28, 1.26, 46.35, 2, 15 , "InitialPause")
  23. MovementLoopAddLocation(NPC, 194.95, 1.27, 48.29, 2, 15 , "InitialPause")
  24. MovementLoopAddLocation(NPC, 192.19, 1.29, 43.45, 2, 0)
  25. MovementLoopAddLocation(NPC, 192.19, 1.29, 43.45, 2, 15 , "InitialPause")
  26. MovementLoopAddLocation(NPC, 182.46, 1.12, 49.55, 2, 0)
  27. MovementLoopAddLocation(NPC, 176.25, 1.34, 50.8, 2, 15 , "InitialPause")
  28. MovementLoopAddLocation(NPC, 175.55, 1.34, 53.52, 2, 15 , "InitialPause")
  29. MovementLoopAddLocation(NPC, 171.7, 1.36, 50.67, 2, 15 , "InitialPause")
  30. MovementLoopAddLocation(NPC, 171.72, 1.36, 53.69, 2, 15 , "InitialPause")
  31. MovementLoopAddLocation(NPC, 171.7, 1.36, 50.67, 2, 15 , "InitialPause")
  32. MovementLoopAddLocation(NPC, 175.55, 1.34, 53.52, 2, 15 , "InitialPause")
  33. MovementLoopAddLocation(NPC, 176.25, 1.34, 50.8, 2, 15 , "InitialPause")
  34. MovementLoopAddLocation(NPC, 182.46, 1.12, 49.55, 2, 0)
  35. MovementLoopAddLocation(NPC, 192.19, 1.29, 43.45, 2, 15 , "InitialPause")
  36. MovementLoopAddLocation(NPC, 192.19, 1.29, 43.45, 2, 0)
  37. MovementLoopAddLocation(NPC, 194.95, 1.27, 48.29, 2, 15 , "InitialPause")
  38. MovementLoopAddLocation(NPC, 198.28, 1.26, 46.35, 2, 15 , "InitialPause")
  39. MovementLoopAddLocation(NPC, 201.6, 1.25, 59.91, 2, 15 , "InitialPause")
  40. MovementLoopAddLocation(NPC, 201.44, 1.25, 58.55, 2, 15 , "InitialPause")
  41. MovementLoopAddLocation(NPC, 190.24, 1.09, 62.3, 2, 0)
  42. MovementLoopAddLocation(NPC, 186.01, 1.1, 59.5, 2, 0)
  43. MovementLoopAddLocation(NPC, 180.33, 1.13, 54.46, 2, 0)
  44. MovementLoopAddLocation(NPC, 175.9, 1.34, 54.84, 2, 15 , "InitialPause")
  45. elseif GetSpawnLocationID(NPC)==133774722 then
  46. MovementLoopAddLocation(NPC, 186.15, 1.31, 46.77, 2, 15 , "InitialPause")
  47. MovementLoopAddLocation(NPC, 180.41, 1.13, 44.64, 2, 0)
  48. MovementLoopAddLocation(NPC, 174.82, 1.35, 38.93, 2, 15 , "InitialPause")
  49. MovementLoopAddLocation(NPC, 171.83, 1.36, 44.16, 2, 15 , "InitialPause")
  50. MovementLoopAddLocation(NPC, 174.63, 1.35, 46.27, 2, 15 , "InitialPause")
  51. MovementLoopAddLocation(NPC, 179.73, 1.13, 47.31, 2, 0)
  52. MovementLoopAddLocation(NPC, 178.82, 1.13, 35.57, 2, 0)
  53. MovementLoopAddLocation(NPC, 187.43, 1.31, 26.64, 2, 15 , "InitialPause")
  54. MovementLoopAddLocation(NPC, 190.82, 1.29, 30.64, 2, 15 , "InitialPause")
  55. MovementLoopAddLocation(NPC, 186.49, 1.31, 30.48, 2, 15 , "InitialPause")
  56. MovementLoopAddLocation(NPC, 178.45, 1.14, 31.81, 2, 0)
  57. MovementLoopAddLocation(NPC, 181.5, 1.12, 37.67, 2, 0)
  58. MovementLoopAddLocation(NPC, 182.51, 1.12, 43.65, 2, 0)
  59. MovementLoopAddLocation(NPC, 185.48, 1.31, 46.22, 2, 0)
  60. MovementLoopAddLocation(NPC, 191.27, 1.29, 45.01, 2, 0)
  61. MovementLoopAddLocation(NPC, 193.77, 1.3, 39.39, 2, 15 , "InitialPause")
  62. MovementLoopAddLocation(NPC, 191.45, 1.29, 38.13, 2, 15 , "InitialPause")
  63. MovementLoopAddLocation(NPC, 191.51, 1.29, 41.12, 2, 0)
  64. MovementLoopAddLocation(NPC, 187.29, 1.3, 45.11, 2, 0)
  65. MovementLoopAddLocation(NPC, 191.51, 1.29, 41.12, 2, 0)
  66. MovementLoopAddLocation(NPC, 191.45, 1.29, 38.13, 2, 15 , "InitialPause")
  67. MovementLoopAddLocation(NPC, 193.77, 1.3, 39.39, 2, 15 , "InitialPause")
  68. MovementLoopAddLocation(NPC, 191.27, 1.29, 45.01, 2, 0)
  69. MovementLoopAddLocation(NPC, 185.48, 1.31, 46.22, 2, 0)
  70. MovementLoopAddLocation(NPC, 182.51, 1.12, 43.65, 2, 0)
  71. MovementLoopAddLocation(NPC, 181.5, 1.12, 37.67, 2, 0)
  72. MovementLoopAddLocation(NPC, 178.45, 1.14, 31.81, 2, 0)
  73. MovementLoopAddLocation(NPC, 186.49, 1.31, 30.48, 2, 15 ,"InitialPause")
  74. MovementLoopAddLocation(NPC, 190.82, 1.29, 30.64, 2, 15 , "InitialPause")
  75. MovementLoopAddLocation(NPC, 187.43, 1.31, 26.64, 2, 15 , "InitialPause")
  76. MovementLoopAddLocation(NPC, 178.82, 1.13, 35.57, 2, 0)
  77. MovementLoopAddLocation(NPC, 179.73, 1.13, 47.31, 2, 0)
  78. MovementLoopAddLocation(NPC, 174.63, 1.35, 46.27, 2, 15 , "InitialPause")
  79. MovementLoopAddLocation(NPC, 171.83, 1.36, 44.16, 2, 15 , "InitialPause")
  80. MovementLoopAddLocation(NPC, 174.82, 1.35, 38.93, 2, 15 , "InitialPause")
  81. MovementLoopAddLocation(NPC, 180.41, 1.13, 44.64, 2, 0)
  82. MovementLoopAddLocation(NPC, 186.15, 1.31, 46.77, 2, 15 , "InitialPause")
  83. elseif GetSpawnLocationID(NPC)==133774723 then
  84. MovementLoopAddLocation(NPC, 166.81, 1.38, 48.55, 2, 15 , "InitialPause")
  85. MovementLoopAddLocation(NPC, 165.48, 1.38, 47.37, 2, 15 ,"InitialPause")
  86. MovementLoopAddLocation(NPC, 167.78, 1.37, 50.92, 2, 15 , "InitialPause")
  87. MovementLoopAddLocation(NPC, 163.52, 1.39, 50.15, 2, 0)
  88. MovementLoopAddLocation(NPC, 152.09, 1.23, 49.58, 2, 0)
  89. MovementLoopAddLocation(NPC, 147.07, 1.25, 58.02, 2, 0)
  90. MovementLoopAddLocation(NPC, 141.14, 1.27, 66.28, 2, 0)
  91. MovementLoopAddLocation(NPC, 129.08, 1.51, 70.55, 2, 15 , "InitialPause")
  92. MovementLoopAddLocation(NPC, 126.54, 1.52, 75.56, 2, 15 , "InitialPause")
  93. MovementLoopAddLocation(NPC, 130.77, 1.51, 71.09, 2, 15 , "InitialPause")
  94. MovementLoopAddLocation(NPC, 135.12, 1.32, 63.93, 2, 0)
  95. MovementLoopAddLocation(NPC, 133.59, 1.15, 59.45, 2, 15 , "InitialPause")
  96. MovementLoopAddLocation(NPC, 130.32, 1.48, 52.14, 2, 15 , "InitialPause")
  97. MovementLoopAddLocation(NPC, 136.85, 1.49, 53.43, 2, 15 , "InitialPause")
  98. MovementLoopAddLocation(NPC, 142.24, 1.26, 60.9, 2, 0)
  99. MovementLoopAddLocation(NPC, 145, 1.25, 58.43, 2, 0)
  100. MovementLoopAddLocation(NPC, 149.63, 1.24, 52.65, 2, 0)
  101. MovementLoopAddLocation(NPC, 156.22, 1.42, 48.93, 2, 0)
  102. MovementLoopAddLocation(NPC, 159.21, 1.41, 47.87, 2, 15 , "InitialPause")
  103. MovementLoopAddLocation(NPC, 160.91, 1.4, 50.9, 2, 15 , "InitialPause")
  104. MovementLoopAddLocation(NPC, 159.21, 1.41, 47.87, 2, 15 ,"InitialPause")
  105. MovementLoopAddLocation(NPC, 156.22, 1.42, 48.93, 2, 0)
  106. MovementLoopAddLocation(NPC, 149.63, 1.24, 52.65, 2, 0)
  107. MovementLoopAddLocation(NPC, 145, 1.25, 58.43, 2, 0)
  108. MovementLoopAddLocation(NPC, 142.24, 1.26, 60.9, 2, 0)
  109. MovementLoopAddLocation(NPC, 136.85, 1.49, 53.43, 2, 15 , "InitialPause")
  110. MovementLoopAddLocation(NPC, 130.32, 1.48, 52.14, 2, 15 , "InitialPause")
  111. MovementLoopAddLocation(NPC, 133.59, 1.15, 59.45, 2, 15 , "InitialPause")
  112. MovementLoopAddLocation(NPC, 135.12, 1.32, 63.93, 2, 0)
  113. MovementLoopAddLocation(NPC, 130.77, 1.51, 71.09, 2, 15 , "InitialPause")
  114. MovementLoopAddLocation(NPC, 126.54, 1.52, 75.56, 2, 15 , "InitialPause")
  115. MovementLoopAddLocation(NPC, 129.08, 1.51, 70.55, 2, 15 , "InitialPause")
  116. MovementLoopAddLocation(NPC, 141.14, 1.27, 66.28, 2, 0)
  117. MovementLoopAddLocation(NPC, 147.07, 1.25, 58.02, 2, 0)
  118. MovementLoopAddLocation(NPC, 152.09, 1.23, 49.58, 2, 0)
  119. MovementLoopAddLocation(NPC, 163.52, 1.39, 50.15, 2, 0)
  120. MovementLoopAddLocation(NPC, 167.78, 1.37, 50.92, 2, 15 , "InitialPause")
  121. MovementLoopAddLocation(NPC, 165.48, 1.38, 47.37, 2, 15 , "InitialPause")
  122. MovementLoopAddLocation(NPC, 166.81, 1.38, 48.55, 2, 15 , "InitialPause")
  123. elseif GetSpawnLocationID(NPC)==133774719 then
  124. MovementLoopAddLocation(NPC, 167.76, 1.38, 40.95, 2, 15 , "InitialPause")
  125. MovementLoopAddLocation(NPC, 171.08, 1.36, 37.6, 2, 0)
  126. MovementLoopAddLocation(NPC, 172.58, 1.36, 37.7, 2, 15 , "InitialPause")
  127. MovementLoopAddLocation(NPC, 175.8, 1.15, 33.51, 2, 0)
  128. MovementLoopAddLocation(NPC, 172.59, 1.16, 29.76, 2, 0)
  129. MovementLoopAddLocation(NPC, 167.85, 1.18, 29.09, 2, 0)
  130. MovementLoopAddLocation(NPC, 159.53, 1.21, 31.52, 2, 0)
  131. MovementLoopAddLocation(NPC, 154.35, 1.23, 35.7, 2, 0)
  132. MovementLoopAddLocation(NPC, 143.85, 1.44, 34.18, 2, 0)
  133. MovementLoopAddLocation(NPC, 138.42, 1.49, 31.86, 2, 15 , "InitialPause")
  134. MovementLoopAddLocation(NPC, 133.77, 1.2, 34.23, 2, 15 , "InitialPause")
  135. MovementLoopAddLocation(NPC, 137.95, 1.49, 35.1, 2, 15 , "InitialPause")
  136. MovementLoopAddLocation(NPC, 142.89, 1.47, 39.42, 2, 15 , "InitialPause")
  137. MovementLoopAddLocation(NPC, 149.52, 1.24, 38.7, 2, 0)
  138. MovementLoopAddLocation(NPC, 152.63, 1.23, 34.96, 2, 0)
  139. MovementLoopAddLocation(NPC, 160.52, 1.2, 29.28, 2, 0)
  140. MovementLoopAddLocation(NPC, 171.43, 1.16, 28.09, 2, 0)
  141. MovementLoopAddLocation(NPC, 173.07, 1.36, 37.79, 2, 15 , "InitialPause")
  142. MovementLoopAddLocation(NPC, 168.56, 1.37, 35.65, 2, 15 , "InitialPause")
  143. MovementLoopAddLocation(NPC, 170.91, 1.36, 42.47, 2, 15 , "InitialPause")
  144. MovementLoopAddLocation(NPC, 168.56, 1.37, 35.65, 2, 15 , "InitialPause")
  145. MovementLoopAddLocation(NPC, 173.07, 1.36, 37.79, 2, 15 , "InitialPause")
  146. MovementLoopAddLocation(NPC, 171.43, 1.16, 28.09, 2, 0)
  147. MovementLoopAddLocation(NPC, 160.52, 1.2, 29.28, 2, 0)
  148. MovementLoopAddLocation(NPC, 152.63, 1.23, 34.96, 2, 0)
  149. MovementLoopAddLocation(NPC, 149.52, 1.24, 38.7, 2, 0)
  150. MovementLoopAddLocation(NPC, 142.89, 1.47, 39.42, 2, 15 , "InitialPause")
  151. MovementLoopAddLocation(NPC, 137.95, 1.49, 35.1, 2, 15 , "InitialPause")
  152. MovementLoopAddLocation(NPC, 133.77, 1.2, 34.23, 2, 15 , "InitialPause")
  153. MovementLoopAddLocation(NPC, 138.42, 1.49, 31.86, 2, 15 , "InitialPause")
  154. MovementLoopAddLocation(NPC, 143.85, 1.44, 34.18, 2, 0)
  155. MovementLoopAddLocation(NPC, 154.35, 1.23, 35.7, 2, 0)
  156. MovementLoopAddLocation(NPC, 159.53, 1.21, 31.52, 2, 0)
  157. MovementLoopAddLocation(NPC, 167.85, 1.18, 29.09, 2, 0)
  158. MovementLoopAddLocation(NPC, 172.59, 1.16, 29.76, 2, 0)
  159. MovementLoopAddLocation(NPC, 175.8, 1.15, 33.51, 2, 0)
  160. MovementLoopAddLocation(NPC, 172.58, 1.36, 37.7, 2, 15 , "InitialPause")
  161. MovementLoopAddLocation(NPC, 171.08, 1.36, 37.6, 2, 0)
  162. MovementLoopAddLocation(NPC, 167.76, 1.38, 40.95, 2, 15 , "InitialPause")
  163. elseif GetSpawnLocationID(NPC)==133774720 then
  164. MovementLoopAddLocation(NPC, 163.07, 1.39, 39.8, 2, 15 , "InitialPause")
  165. MovementLoopAddLocation(NPC, 162.97, 1.39, 35.05, 2, 15 , "InitialPause")
  166. MovementLoopAddLocation(NPC, 164.66, 1.39, 40.25, 2, 15 , "InitialPause")
  167. MovementLoopAddLocation(NPC, 159.6, 1.41, 40.53, 2, 15 , "InitialPause")
  168. MovementLoopAddLocation(NPC, 162.97, 1.39, 36.33, 2, 15 , "InitialPause")
  169. MovementLoopAddLocation(NPC, 158.4, 1.41, 23.42, 2, 0)
  170. MovementLoopAddLocation(NPC, 155.26, 1.43, 23.59, 2, 15 , "InitialPause")
  171. MovementLoopAddLocation(NPC, 150.81, 1.22, 23.03, 2, 15 , "InitialPause")
  172. MovementLoopAddLocation(NPC, 153.18, 1.43, 26.48, 2, 15 , "InitialPause")
  173. MovementLoopAddLocation(NPC, 157.68, 1.42, 24.73, 2, 0)
  174. MovementLoopAddLocation(NPC, 163.85, 1.39, 34.01, 2, 15 , "InitialPause")
  175. MovementLoopAddLocation(NPC, 160.13, 1.4, 38.31, 2, 15 , "InitialPause")
  176. MovementLoopAddLocation(NPC, 163.85, 1.39, 34.01, 2, 15 , "InitialPause")
  177. MovementLoopAddLocation(NPC, 157.68, 1.42, 24.73, 2, 0)
  178. MovementLoopAddLocation(NPC, 153.18, 1.43, 26.48, 2, 15 , "InitialPause")
  179. MovementLoopAddLocation(NPC, 150.81, 1.22, 23.03, 2, 15 , "InitialPause")
  180. MovementLoopAddLocation(NPC, 155.26, 1.43, 23.59, 2, 15 , "InitialPause")
  181. MovementLoopAddLocation(NPC, 158.4, 1.41, 23.42, 2, 0)
  182. MovementLoopAddLocation(NPC, 162.97, 1.39, 36.33, 2, 15 , "InitialPause")
  183. MovementLoopAddLocation(NPC, 159.6, 1.41, 40.53, 2, 15 , "InitialPause")
  184. MovementLoopAddLocation(NPC, 164.66, 1.39, 40.25, 2, 15 , "InitialPause")
  185. MovementLoopAddLocation(NPC, 162.97, 1.39, 35.05, 2, 15 , "InitialPause")
  186. MovementLoopAddLocation(NPC, 163.07, 1.39, 39.8, 2, 15 , "InitialPause")
  187. elseif GetSpawnLocationID(NPC)==133774721 then
  188. MovementLoopAddLocation(NPC, 152.56, 1.36, 29.72, 2, 15 , "InitialPause")
  189. MovementLoopAddLocation(NPC, 143.2, 1.06, 27.27, 2, 15 , "InitialPause")
  190. MovementLoopAddLocation(NPC, 141.82, 0.94, 22.81, 2, 15 , "InitialPause")
  191. MovementLoopAddLocation(NPC, 145.98, 0.48, 22.2, 2, 15 , "InitialPause")
  192. MovementLoopAddLocation(NPC, 144.77, 1.26, 31.45, 2, 15 , "InitialPause")
  193. MovementLoopAddLocation(NPC, 152.5, 1.23, 32.68, 2, 0)
  194. MovementLoopAddLocation(NPC, 156.33, 1.22, 30.41, 2, 0)
  195. MovementLoopAddLocation(NPC, 166.78, 1.18, 26.31, 2, 0)
  196. MovementLoopAddLocation(NPC, 171.64, 1.16, 28.21, 2, 0)
  197. MovementLoopAddLocation(NPC, 179.59, 1.13, 35.99, 2, 0)
  198. MovementLoopAddLocation(NPC, 181.48, 1.12, 45.44, 2, 0)
  199. MovementLoopAddLocation(NPC, 183.18, 1.12, 55.45, 2, 0)
  200. MovementLoopAddLocation(NPC, 189.35, 1.09, 61.04, 2, 0)
  201. MovementLoopAddLocation(NPC, 189.93, 1.09, 61.62, 2, 2)
  202. MovementLoopAddLocation(NPC, 191.32, 1.08, 63.08, 2, 0)
  203. MovementLoopAddLocation(NPC, 184.83, 1.11, 60.74, 2, 0)
  204. MovementLoopAddLocation(NPC, 180.73, 1.12, 53.17, 2, 0)
  205. MovementLoopAddLocation(NPC, 179.95, 1.13, 41.35, 2, 0)
  206. MovementLoopAddLocation(NPC, 179.17, 1.13, 36.97, 2, 0)
  207. MovementLoopAddLocation(NPC, 172.16, 1.16, 29.61, 2, 0)
  208. MovementLoopAddLocation(NPC, 166.16, 1.18, 28.48, 2, 0)
  209. MovementLoopAddLocation(NPC, 155.3, 1.22, 34.34, 2, 0)
  210. MovementLoopAddLocation(NPC, 151.74, 1.23, 49.81, 2, 0)
  211. MovementLoopAddLocation(NPC, 146.3, 1.25, 59.18, 2, 0)
  212. MovementLoopAddLocation(NPC, 141.62, 1.27, 66.38, 2, 0)
  213. MovementLoopAddLocation(NPC, 141.52, 1.27, 66.6, 2, 2)
  214. MovementLoopAddLocation(NPC, 135.2, 1.49, 66.72, 2, 15 , "InitialPause")
  215. MovementLoopAddLocation(NPC, 135.87, 1.41, 64.3, 2, 15 , "InitialPause")
  216. MovementLoopAddLocation(NPC, 140.52, 1.27, 64.29, 2, 0)
  217. MovementLoopAddLocation(NPC, 148.77, 1.24, 52.35, 2, 0)
  218. MovementLoopAddLocation(NPC, 151.82, 1.24, 34.51, 2, 0)
  219. MovementLoopAddLocation(NPC, 153.94, 1.23, 31.79, 2, 0)
  220. MovementLoopAddLocation(NPC, 151.82, 1.24, 34.51, 2, 0)
  221. MovementLoopAddLocation(NPC, 148.77, 1.24, 52.35, 2, 0)
  222. MovementLoopAddLocation(NPC, 140.52, 1.27, 64.29, 2, 0)
  223. MovementLoopAddLocation(NPC, 135.87, 1.41, 64.3, 2, 15 , "InitialPause")
  224. MovementLoopAddLocation(NPC, 135.2, 1.49, 66.72, 2, 15 , "InitialPause")
  225. MovementLoopAddLocation(NPC, 141.52, 1.27, 66.6, 2, 2)
  226. MovementLoopAddLocation(NPC, 141.62, 1.27, 66.38, 2, 0)
  227. MovementLoopAddLocation(NPC, 146.3, 1.25, 59.18, 2, 0)
  228. MovementLoopAddLocation(NPC, 151.74, 1.23, 49.81, 2, 0)
  229. MovementLoopAddLocation(NPC, 155.3, 1.22, 34.34, 2, 0)
  230. MovementLoopAddLocation(NPC, 166.16, 1.18, 28.48, 2, 0)
  231. MovementLoopAddLocation(NPC, 172.16, 1.16, 29.61, 2, 0)
  232. MovementLoopAddLocation(NPC, 179.17, 1.13, 36.97, 2, 0)
  233. MovementLoopAddLocation(NPC, 179.95, 1.13, 41.35, 2, 0)
  234. MovementLoopAddLocation(NPC, 180.73, 1.12, 53.17, 2, 0)
  235. MovementLoopAddLocation(NPC, 184.83, 1.11, 60.74, 2, 0)
  236. MovementLoopAddLocation(NPC, 191.32, 1.08, 63.08, 2, 0)
  237. MovementLoopAddLocation(NPC, 189.93, 1.09, 61.62, 2, 2)
  238. MovementLoopAddLocation(NPC, 189.35, 1.09, 61.04, 2, 0)
  239. MovementLoopAddLocation(NPC, 183.18, 1.12, 55.45, 2, 0)
  240. MovementLoopAddLocation(NPC, 181.48, 1.12, 45.44, 2, 0)
  241. MovementLoopAddLocation(NPC, 179.59, 1.13, 35.99, 2, 0)
  242. MovementLoopAddLocation(NPC, 171.64, 1.16, 28.21, 2, 0)
  243. MovementLoopAddLocation(NPC, 166.78, 1.18, 26.31, 2, 0)
  244. MovementLoopAddLocation(NPC, 156.33, 1.22, 30.41, 2, 0)
  245. MovementLoopAddLocation(NPC, 152.5, 1.23, 32.68, 2, 0)
  246. MovementLoopAddLocation(NPC, 144.77, 1.26, 31.45, 2, 15 , "InitialPause")
  247. MovementLoopAddLocation(NPC, 145.98, 0.48, 22.2, 2, 15 , "InitialPause")
  248. MovementLoopAddLocation(NPC, 141.82, 0.94, 22.81, 2, 15 , "InitialPause")
  249. MovementLoopAddLocation(NPC, 143.2, 1.06, 27.27, 2, 15 , "InitialPause")
  250. MovementLoopAddLocation(NPC, 152.56, 1.36, 29.72, 2, 15 , "InitialPause")
  251. end
  252. end
  253. function InitialPause(NPC)
  254. math.randomseed(os.time())
  255. local pause = math.random (1, 4)
  256. if pause == 1 then
  257. AddTimer(NPC, 100, "stop_gathering")
  258. else
  259. AddTimer(NPC, 1000, "Gather")
  260. end
  261. end
  262. function Gather(NPC)
  263. SpawnSet(NPC, "visual_state", "2809") -- Start gathering
  264. AddTimer(NPC, 8000, "Collect") -- for 5 seconds, then stop
  265. end
  266. function Collect(NPC)
  267. SpawnSet(NPC, "visual_state", "2810") -- Start gathering
  268. AddTimer(NPC, 2000, "stop_gathering") -- for 5 seconds, then stop
  269. end
  270. function stop_gathering(NPC)
  271. SpawnSet(NPC, "visual_state", "0") -- Stop gathering
  272. end
  273. function aggro(NPC,Spawn)
  274. SpawnSet(NPC, "visual_state", "0") -- Stop gathering
  275. end
  276. --[[ local route = math.random(1,4)
  277. if route == 1 then
  278. RouteOne(NPC, Spawn)
  279. elseif route == 2 then
  280. RouteTwo(NPC, Spawn)
  281. elseif route == 3 then
  282. RouteThree(NPC, Spawn)
  283. elseif route == 4 then
  284. RouteFour(NPC, Spawn)
  285. end
  286. end
  287. function RouteOne(NPC, Spawn)
  288. local X = GetX(NPC)
  289. local Y = GetY(NPC)
  290. local Z = GetZ(NPC)
  291. MovementLoopAddLocation(NPC, X, Y, Z, 2, math.random(5,10))
  292. MovementLoopAddLocation(NPC, X + 12, Y, Z, 2,math.random(5,10))
  293. MovementLoopAddLocation(NPC, X + 12, Y, Z + 4, 2, math.random(5,10))
  294. MovementLoopAddLocation(NPC, X + 14, Y, Z, 2, math.random(5,10))
  295. MovementLoopAddLocation(NPC, X + 5, Y, Z + 4, 2, math.random(5,10))
  296. MovementLoopAddLocation(NPC, X, Y, Z, 2, math.random(5,10))
  297. end
  298. function RouteTwo(NPC, Spawn)
  299. local X = GetX(NPC)
  300. local Y = GetY(NPC)
  301. local Z = GetZ(NPC)
  302. MovementLoopAddLocation(NPC, X, Y, Z, 2, math.random(5,10))
  303. MovementLoopAddLocation(NPC, X - 5, Y, Z, 2, math.random(5,10))
  304. MovementLoopAddLocation(NPC, X - 14, Y, Z - 4, 2, math.random(5,10))
  305. MovementLoopAddLocation(NPC, X - 12, Y, Z, 2, math.random(5,10))
  306. MovementLoopAddLocation(NPC, X - 12, Y, Z - 4, 2, math.random(5,10))
  307. MovementLoopAddLocation(NPC, X, Y, Z, 1, 0)
  308. end
  309. function RouteThree(NPC, Spawn)
  310. local X = GetX(NPC)
  311. local Y = GetY(NPC)
  312. local Z = GetZ(NPC)
  313. MovementLoopAddLocation(NPC, X, Y, Z, 2, math.random(5,10))
  314. MovementLoopAddLocation(NPC, X + 12, Y, Z, 2, math.random(5,10))
  315. MovementLoopAddLocation(NPC, X + 5, Y, Z - 4, 2, math.random(5,10))
  316. MovementLoopAddLocation(NPC, X + 14, Y, Z, 2, math.random(5,10))
  317. MovementLoopAddLocation(NPC, X + 12, Y, Z - 4, 2, math.random(5,10))
  318. MovementLoopAddLocation(NPC, X, Y, Z, 2, math.random(5,10))
  319. end
  320. function RouteFour(NPC, Spawn)
  321. local X = GetX(NPC)
  322. local Y = GetY(NPC)
  323. local Z = GetZ(NPC)
  324. MovementLoopAddLocation(NPC, X, Y, Z, 2, math.random(5,10))
  325. MovementLoopAddLocation(NPC, X - 12, Y, Z, 2, math.random(5,10))
  326. MovementLoopAddLocation(NPC, X - 5, Y, Z + 4, 2, math.random(5,10))
  327. MovementLoopAddLocation(NPC, X - 14, Y, Z, 2, math.random(5,10))
  328. MovementLoopAddLocation(NPC, X - 12, Y, Z + 4, 2, math.random(5,10))
  329. MovementLoopAddLocation(NPC, X, Y, Z, 2, math.random(5,10))
  330. end
  331. ]]--
  332. function respawn(NPC, Spawn)
  333. spawn(NPC)
  334. end
  335. function hailed(NPC, Spawn)
  336. FaceTarget(NPC, Spawn)
  337. end