tomemasterybixiewidget.lua 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. --[[
  2. Script Name : SpawnScripts/The Tower of the Drafling/tomemasterybixiewidget.lua
  3. Script Author : Dorbin
  4. Script Date : 2022.06.07 06:06:24
  5. Script Purpose :
  6. :
  7. --]]
  8. local LnLQuest = 5410
  9. local Book = 8630
  10. function spawn(NPC)
  11. Check(NPC,Spawn)
  12. SetPlayerProximityFunction(NPC, 10, "InRange", Spawn)
  13. end
  14. function respawn(NPC)
  15. spawn(NPC)
  16. end
  17. function InRange(NPC, Spawn)
  18. if HasItem(Spawn,Book,1) or HasCompletedQuest(Spawn,LnLQuest) then
  19. SetAccessToEntityCommand(Spawn,NPC,"Search bookcase", 0)
  20. SpawnSet(NPC, "show_command_icon", 0)
  21. SpawnSet(NPC, "display_hand_icon", 0)
  22. else
  23. SetAccessToEntityCommand(Spawn,NPC,"Search bookcase", 1)
  24. SpawnSet(NPC, "show_command_icon", 1)
  25. SpawnSet(NPC, "display_hand_icon", 1)
  26. end
  27. end
  28. function Check(NPC,Spawn)
  29. if HasItem(Spawn,Book,1) or HasCompletedQuest(Spawn,LnLQuest) then
  30. SpawnSet(NPC, "show_command_icon", 0)
  31. SpawnSet(NPC, "display_hand_icon", 0)
  32. SetAccessToEntityCommand(Spawn,NPC,"Search bookcase", 0)
  33. else
  34. SetAccessToEntityCommand(Spawn,NPC,"Search bookcase", 1)
  35. SpawnSet(NPC, "show_command_icon", 1)
  36. SpawnSet(NPC, "display_hand_icon", 1)
  37. end
  38. end
  39. function casted_on(NPC, Spawn, SpellName)
  40. if SpellName == 'Search bookcase' then
  41. SummonItem(Spawn,Book,1)
  42. AddTimer(NPC, 100, "Check", 1, Spawn)
  43. end
  44. end