RolonaSteinhold.lua 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. --[[
  2. Script Name : SpawnScripts/Graystone/RolonaSteinhold.lua
  3. Script Author : Dorbin
  4. Script Date : 2022.07.07 06:07:41
  5. Script Purpose :
  6. :
  7. --]]
  8. dofile("SpawnScripts/Generic/UnknownLanguage.lua")
  9. dofile("SpawnScripts/Generic/GenericEcologyVoiceOvers.lua")
  10. function spawn(NPC)
  11. SetPlayerProximityFunction(NPC, 5, "InRange", "LeaveRange")
  12. waypoints(NPC)
  13. end
  14. function hailed(NPC, Spawn)
  15. FaceTarget(NPC, Spawn)
  16. if not HasLanguage(Spawn,3)then
  17. Garbled(NPC,Spawn)
  18. else
  19. GenericEcologyHail(NPC, Spawn, faction)
  20. end
  21. end
  22. function InRange(NPC, Spawn)
  23. if GetFactionAmount(Spawn,11)<0 then
  24. PlayFlavor(NPC,"","","shakefist",0,0)
  25. FaceTarget(NPC,Spawn)
  26. end
  27. end
  28. function waypoints(NPC)
  29. MovementLoopAddLocation(NPC, 902.09, -25.45, -117.2, 2, 1)
  30. MovementLoopAddLocation(NPC, 902.09, -25.45, -117.2, 2, 30,"Drink")
  31. MovementLoopAddLocation(NPC, 902.09, -25.45, -117.2, 2, 30,"Drink")
  32. MovementLoopAddLocation(NPC, 902.42, -25.45, -117.81, 2, 0)
  33. MovementLoopAddLocation(NPC, 901.96, -25.45, -116.05, 2, 0)
  34. MovementLoopAddLocation(NPC, 900.84, -25.45, -111.79, 2, 0)
  35. MovementLoopAddLocation(NPC, 895.53, -25.45, -109.23, 2, 0)
  36. MovementLoopAddLocation(NPC, 892.22, -25.45, -106.98, 2, 0)
  37. MovementLoopAddLocation(NPC, 890.12, -25.45, -103.73, 2, 0)
  38. MovementLoopAddLocation(NPC, 883.08, -25.04, -105.38, 2, 1)
  39. MovementLoopAddLocation(NPC, 883.08, -25.04, -105.38, 2, 28,"EcologyEmotes")
  40. MovementLoopAddLocation(NPC, 879.25, -24.97, -101.48, 2, 0)
  41. MovementLoopAddLocation(NPC, 876.37, -24.95, -101.92, 2, 0)
  42. MovementLoopAddLocation(NPC, 876.92, -23.68, -105.91, 2, 0)
  43. MovementLoopAddLocation(NPC, 867.65, -20, -107.64, 2, 0)
  44. MovementLoopAddLocation(NPC, 867.77, -20.01, -112.21, 2, 2,"Door")
  45. MovementLoopAddLocation(NPC, 868.44, -20.06, -116.45, 2, 0)
  46. MovementLoopAddLocation(NPC, 866.01, -20.06, -119.77, 2, 0)
  47. MovementLoopAddLocation(NPC, 866.19, -20.56, -126.54, 2, 1)
  48. MovementLoopAddLocation(NPC, 866.19, -20.56, -126.54, 2, 30,"Drink")
  49. MovementLoopAddLocation(NPC, 866.19, -20.56, -126.54, 2, 30,"Drink")
  50. MovementLoopAddLocation(NPC, 866.24, -20.56, -127.12, 2, 0)
  51. MovementLoopAddLocation(NPC, 865.11, -20.06, -120.13, 2, 0)
  52. MovementLoopAddLocation(NPC, 868.06, -20.06, -117.38, 2, 0)
  53. MovementLoopAddLocation(NPC, 868.3, -20.06, -116.37, 2, 2,"Door")
  54. MovementLoopAddLocation(NPC, 867.83, -20.01, -111.88, 2, 0)
  55. MovementLoopAddLocation(NPC, 867.21, -20.01, -108.72, 2, 0)
  56. MovementLoopAddLocation(NPC, 876.97, -23.66, -107.1, 2, 0)
  57. MovementLoopAddLocation(NPC, 877.88, -24.97, -101.55, 2, 0)
  58. MovementLoopAddLocation(NPC, 879.28, -24.97, -101.63, 2, 0)
  59. MovementLoopAddLocation(NPC, 881.03, -24.97, -104.81, 2, 0)
  60. MovementLoopAddLocation(NPC, 889.51, -25.45, -103.99, 2, 0)
  61. MovementLoopAddLocation(NPC, 893.44, -25.45, -108.23, 2, 0)
  62. MovementLoopAddLocation(NPC, 894.11, -25.45, -117.38, 2, 0)
  63. MovementLoopAddLocation(NPC, 897.36, -25.45, -120.55, 2, 0)
  64. MovementLoopAddLocation(NPC, 894.97, -25.45, -131.14, 2, 0)
  65. MovementLoopAddLocation(NPC, 892.03, -25.45, -137.72, 2, 1)
  66. MovementLoopAddLocation(NPC, 892.03, -25.45, -137.72, 2, 18,"EcologyEmotes")
  67. MovementLoopAddLocation(NPC, 892.93, -25.45, -138.8, 2, 0)
  68. MovementLoopAddLocation(NPC, 896.04, -25.45, -127.76, 2, 0)
  69. MovementLoopAddLocation(NPC, 897.81, -25.45, -120.49, 2, 0)
  70. MovementLoopAddLocation(NPC, 901.22, -25.45, -117.4, 2, 0)
  71. end
  72. function Door(NPC,Spawn)
  73. local door = GetSpawn(NPC, 2350075)
  74. UseWidget(door)
  75. end
  76. function Drink(NPC)
  77. PlayFlavor(NPC,"","","drinking_idle",0,0)
  78. AddTimer(NPC,8000, "Drink2")
  79. end
  80. function Drink2(NPC)
  81. choice = math.random(1,4)
  82. if choice == 1 then
  83. PlayFlavor(NPC,"","","yawn",0,0)
  84. elseif choice == 2 then
  85. PlayFlavor(NPC,"","","drinking_idle",0,0)
  86. elseif choice == 3 then
  87. PlayFlavor(NPC,"","","confused",0,0)
  88. else
  89. PlayFlavor(NPC,"","","happy",0,0)
  90. end
  91. AddTimer(NPC,6000, "Drink3")
  92. end
  93. function Drink3(NPC)
  94. PlayFlavor(NPC,"","","drinking_idle",0,0)
  95. end