libdo

Untitled

Sep 19th, 2017
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.32 KB | None | 0 0
  1. local keywordHandler = KeywordHandler:new()
  2. local npcHandler = NpcHandler:new(keywordHandler)
  3. NpcSystem.parseParameters(npcHandler)
  4.  
  5. function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
  6. function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
  7. function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
  8. function onThink() npcHandler:onThink() end
  9.  
  10. local function greetCallback(cid)
  11. return true
  12. end
  13.  
  14. function creatureSayCallback(cid, type, msg)
  15. if(not npcHandler:isFocused(cid)) then
  16. return false
  17. end
  18.  
  19. local player = Player(cid)
  20. local level = player:getLevel()
  21. local vocation = player:getVocation()
  22.  
  23. if (msgcontains(msg, "promotion") and npcHandler.topic[cid] == 0) then
  24. npcHandler:say("Isso te custará 20000 gold coins e você precisar ser Level 20 ou maior. Você deseja receber sua promotion?", cid)
  25. npcHandler.topic[cid] = 1
  26.  
  27. if (msgcontains(msg, "yes") and npcHandler.topic[cid] == 1) then
  28. if level < 20 then
  29. npcHandler:say("Você ainda não é tão experiente para receber sua promotion. Volte apenas quando for Level 20 ou maior.", cid)
  30. npcHandler.topic[cid] = 0
  31. return false
  32. elseif vocation > 4 then
  33. npcHandler:say("Você já foi promovido.", cid)
  34. npcHandler.topic[cid] = 0
  35. return false
  36. elseif player:removeMoney(20000) then
  37. npcHandler:say("PREPARE-SE! Eu aqui invoco agora todos os meus poderes para promover você! Parabéns!", cid)
  38. player:setVocation(Vocation(vocation[cid]+4))
  39. player:setStorageValue(40002, 1) -- Storage das portas destinadas pra players promovidos
  40. player:getPosition():sendMagicEffect(CONST_ME_MAGIC_BLUE)
  41. npcHandler:releaseFocus(cid)
  42. else
  43. npcHandler:say("Você não tem dinheiro suficiente.", cid)
  44. npcHandler.topic[cid] = 0
  45. return false
  46. end
  47. else
  48. npcHandler:say("Tudo bem então.", cid)
  49. npcHandler.topic[cid] = 0
  50. return false
  51. end
  52. else
  53. npcHandler:say("Hm? Do que você está falando?", cid)
  54. npcHandler.topic[cid] = 0
  55. return false
  56. end
  57. end
  58.  
  59. npcHandler:setCallback(CALLBACK_GREET, greetCallback)
  60. npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
  61. npcHandler:addModule(FocusModule:new())
Add Comment
Please, Sign In to add comment