Postado Agosto 18, 2014 10 anos Autor 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 ITEM_ID = 7632 local ITEM_COUNT = 10 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, "promotion") then selfSay("I can promote you for ".. ITEM_COUNT .." ".. (ITEM_COUNT > 1 and getItemInfo(ITEM_ID).plural or getItemNameById(ITEM_ID)) ..". Do you want to be promoted?", cid) talkState[talkUser] = 1 end if talkState[talkUser] == 1 then if msgcontains(msg, "yes") then if doPlayerRemoveItem(cid, ITEM_ID, ITEM_COUNT) then selfSay("Congratulations! You are now promoted!", cid) doPlayerSetPromotionLevel(cid, 1) else selfSay("Sorry, but you don't have ".. ITEM_COUNT .." ".. (ITEM_COUNT > 1 and getItemInfo(ITEM_ID).plural or getItemNameById(ITEM_ID)) ..".") talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end elseif msgcontains(msg, "no") then selfSay("Alright then, come back when you are ready.") talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Primeiramente, desculpem repostar, mas eu encontrei uma pequena falha no script e precisava comunicar.. Garou, o Script como eu disse, funcionou perfeitamente, mas há um problema, a Promotion no meu server, é apenas para Players premium account, e com esse Script, mesmo não sendo premium, eu perco os 10x Items, o NPC diz "congratulations[...]" mas não sou promovido, poderia colocar uma função em que o NPC falasse "Sorry, you must be Premium Account to this feature." caso o player não fosse premium?! Obrigado!!
Postado Agosto 18, 2014 10 anos 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 ITEM_ID = 7632 local ITEM_COUNT = 10 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, "promotion") then selfSay("I can promote you for ".. ITEM_COUNT .." ".. (ITEM_COUNT > 1 and getItemInfo(ITEM_ID).plural or getItemNameById(ITEM_ID)) ..". Do you want to be promoted?", cid) talkState[talkUser] = 1 end if talkState[talkUser] == 1 then if msgcontains(msg, "yes") then if doPlayerRemoveItem(cid, ITEM_ID, ITEM_COUNT) and isPremium(cid) then selfSay("Congratulations! You are now promoted!", cid) doPlayerSetPromotionLevel(cid, 1) else selfSay("Sorry, but you don't have premium or ".. ITEM_COUNT .." ".. (ITEM_COUNT > 1 and getItemInfo(ITEM_ID).plural or getItemNameById(ITEM_ID)) ..".") talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end elseif msgcontains(msg, "no") then selfSay("Alright then, come back when you are ready.") talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Ajudei = REP+ Não dou suporte por PM qualquer dúvida procure no fórum,caso não encontre oque procura crie um tópico. [email protected]" /> | TFS 0.4 DEV | %5Bcreaturescript%5D Icones no minimap com descrição%5Btalkaction%5D Adicionar ou remover VIP do player.%5Bcreaturescripts%5D Senha para porta%5Btalkaction%5D Mandar mensagem para pasta do servidorMapa Evento War Castle%5Baction%5D Canoa em MovimentoTeleport Scroll System%5Bcreaturescripts%5D Recompensa por level para X vocations%5Btalkaction%5D Adicionar X item para o player%5Btalkactions%5D Adicionar item para todos players online%5Baction%5D Item que teleporta o player para house[action+movement] Passaporte para entrar no barco
Postado Agosto 19, 2014 10 anos Autor 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 ITEM_ID = 7632 local ITEM_COUNT = 10 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, "promotion") then selfSay("I can promote you for ".. ITEM_COUNT .." ".. (ITEM_COUNT > 1 and getItemInfo(ITEM_ID).plural or getItemNameById(ITEM_ID)) ..". Do you want to be promoted?", cid) talkState[talkUser] = 1 end if talkState[talkUser] == 1 then if msgcontains(msg, "yes") then if doPlayerRemoveItem(cid, ITEM_ID, ITEM_COUNT) and isPremium(cid) then selfSay("Congratulations! You are now promoted!", cid) doPlayerSetPromotionLevel(cid, 1) else selfSay("Sorry, but you don't have premium or ".. ITEM_COUNT .." ".. (ITEM_COUNT > 1 and getItemInfo(ITEM_ID).plural or getItemNameById(ITEM_ID)) ..".") talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end elseif msgcontains(msg, "no") then selfSay("Alright then, come back when you are ready.") talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Ele envia a mensagem "Sorry, but you don't have premium or 10 Collossus Orbs.", não promove o Player, mas tira os 10x Items do Player!! @up
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.