Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local keywordHandler = KeywordHandler:new()
- local npcHandler = NpcHandler:new(keywordHandler)
- NpcSystem.parseParameters(npcHandler)
- local talkState = {}
- function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
- function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
- function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
- function onThink() npcHandler:onThink() end
- local config = {
- --[Vocation] = ( Nova Vocation, New Outfit )
- [21] = { 22, 137},
- [254] = { 255, 351},
- [36] = { 37, 148},
- [51] = { 52, 144},
- [65] = { 66, 152},
- [378] = { 379, 451},
- [80] = { 81, 150},
- [93] = { 94, 150},
- [107] = { 108, 509},
- [118] = { 119, 118},
- [131] = { 132, 34},
- [144] = { 145, 15},
- [155] = { 156, 15},
- [167] = { 168, 173},
- [179] = { 180, 178},
- [191] = { 192, 184},
- [205] = { 206, 190},
- [217] = { 218, 221},
- [229] = { 230, 281},
- [242] = { 243, 60},
- [254] = { 255, 351},
- [265] = { 266, 334},
- [275] = { 276, 80},
- [286] = { 287, 338},
- [296] = { 297, 198},
- }
- function creatureSayCallback(cid, type, msg)
- if(not npcHandler:isFocused(cid)) then
- return false
- end
- local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
- if msgcontains(msg, 'reborn') and getPlayerStorageValue(cid,30025) == 4 then
- selfSay('You are reborn.', cid)
- focus = 0
- talk_start = 0
- elseif msgcontains(msg, 'reborn') and getPlayerLevel(cid) < 250 and getPlayerStorageValue(cid,30025) ~= 4 then
- selfSay('Hehe, I say If you READY. You do not have 250 level.', cid)
- elseif msgcontains(msg, 'reborn') then
- selfSay('Are you sure? {yes}', cid)
- talkState[talkUser] = 2
- elseif msgcontains(msg, 'yes') and talkState[talkUser] ==2 and getPlayerLevel(cid) == 250 then
- local voc = config[getPlayerVocation(cid)]
- doPlayerSetVocation(cid, voc[1])
- local outfit = {lookType = voc[2]}
- doCreatureChangeOutfit(cid, outfit)
- doPlayerAddExp(cid, -(getPlayerExperience(cid)-getExperienceForLevel(1)))
- setCreatureMaxHealth(cid, getCreatureMaxHealth(cid)+20000)
- setCreatureMaxMana(cid, getCreatureMaxMana(cid)+30000)
- doCreatureAddHealth(cid, getCreatureMaxHealth(cid))
- doCreatureAddMana(cid, getCreatureMaxMana(cid))
- setPlayerStorageValue(cid,30025,4)
- talkState[talkUser] = 0
- elseif msgcontains(msg, 'yes') and getPlayerLevel(cid) ~= 250 then
- selfSay('Desculpe, ' .. getCreatureName(cid) .. '! You need level 250 to reborn.', cid)
- talkState[talkUser] = 0
- elseif msgcontains(msg, 'yes') and talkState[talkUser] == 2 then
- selfSay('Sorry, ' .. getCreatureName(cid) .. '! You must revert or transform to reborn.', cid)
- talkState[talkUser] = 0
- elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then
- selfSay('Good bye.', cid)
- focus = 0
- talk_start = 0
- end
- return true
- end
- npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
- npcHandler:addModule(FocusModule:new())
Advertisement
Add Comment
Please, Sign In to add comment