function onSay(cid, words, param) local femaleOutfits = { ["citizen"]={136}, ["hunter"]={137}, ["mage"]={138}, ["knight"]={139}, ["nobleman"]={140}, ["summoner"]={141}, ["warrior"]={142}, ["barbarian"]={147}, ["druid"]={148}, ["wizard"]={149}, ["oriental"]={150}, ["pirate"]={155}, ["assassin"]={156}, ["beggar"]={157}, ["shaman"]={158}, ["norsewoman"]={252}, ["nightmare"]={269}, ["jester"]={270}, ["brotherhood"]={279}, ["demonhunter"]={288}, ["yalaharian"]={324}, ["warmaster"]={336}, ["wayfarer"]={366} } local maleOutfits = { ["citizen"]={128}, ["hunter"]={129}, ["mage"]={130}, ["knight"]={131}, ["nobleman"]={132},["summoner"]={133}, ["warrior"]={134}, ["barbarian"]={143}, ["druid"]={144}, ["wizard"]={145}, ["oriental"]={146}, ["pirate"]={151}, ["assassin"]={152}, ["beggar"]={153}, ["shaman"]={154}, ["norsewoman"]={251}, ["nightmare"]={268}, ["jester"]={273}, ["brotherhood"]={278}, ["demonhunter"]={289}, ["yalaharian"]={325}, ["warmaster"]={335}, ["wayfarer"]={367} } local msg = {"Lista De Nomes Disponivel No Canal Help!", "Nao Tem Item Nessessario Para Addon!", "Bad param!", "Pronto! Addon Adquirido!"} local param = string.lower(param) if (not isPremium(cid)) then doPlayerSendCancel(cid, "Compre Premium Account Antes!.") return TRUE end if(getPlayerItemCount(cid, 2400) > 0) then if(param ~= "" and maleOutfits[param] and femaleOutfits[param]) then doPlayerRemoveItem(cid, 2400, 1) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[4]) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_GIFT_WRAPS) if(getPlayerSex(cid) == 0)then doPlayerAddOutfit(cid, femaleOutfits[param][1], 3) else doPlayerAddOutfit(cid, maleOutfits[param][1], 3) end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[1]) end else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, msg[2]) end end
PROMOTE 2
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 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, 'test sorcerer') or msgcontains(msg, 'test sorc')) then selfSay('Deseja virar {test sorcerer} por 200 crystal coins?', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if(getPlayerItemCount(cid, 2160) >= 200) then doPlayerRemoveItem(cid, 2160, 200) doPlayerSetVocation(cid,9) selfSay('Vocação trocada com sucesso , Agora você é um test Sorcerer.', cid) else selfSay('Você não tem {crystal coins} Suficientes.', cid) end talkState[talkUser] = 0 elseif(msgcontains(msg, 'test druid') or msgcontains(msg, 'test druida')) then selfSay('Deseja virar {test druid} por 200 crystal coins?', cid) talkState[talkUser] = 2 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 2) then if(getPlayerItemCount(cid, 2160) >= 200) then doPlayerRemoveItem(cid, 2160, 200) doPlayerSetVocation(cid,10) selfSay('Vocação trocada com sucesso , Agora você é um test Druid.', cid) else selfSay('Você não tem {crystal coins} Suficientes.', cid) end talkState[talkUser] = 0 elseif(msgcontains(msg, 'test knight') or msgcontains(msg, 'test kina')) then selfSay('Deseja virar {test knight} por 200 crystal coins?', cid) talkState[talkUser] = 3 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 3) then if(getPlayerItemCount(cid, 2160) >= 200) then doPlayerRemoveItem(cid, 2160, 200) doPlayerSetVocation(cid,12) selfSay('Vocação trocada com sucesso , Agora você é um test Knight.', cid) else selfSay('Você não tem {crystal coins} Suficientes.', cid) end talkState[talkUser] = 0 elseif(msgcontains(msg, 'test paladin') or msgcontains(msg, 'test pala')) then selfSay('Deseja virar {test paladin} por 200 crystal coins?', cid) talkState[talkUser] = 4 elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 4) then if(getPlayerItemCount(cid, 2160) >= 200) then doPlayerRemoveItem(cid, 2160, 200) doPlayerSetVocation(cid,11) selfSay('Vocação trocada com sucesso , Agora você é um test Paladin.', cid) else selfSay('Você não tem {crystal coins} Suficientes.', cid) end talkState[talkUser] = 0 end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())