Postado Fevereiro 17, 2013 12 anos o ot tem 2 promotion a primeira é para quem não é vip por exemplo um elite knight vira member knight, e a segunda é só pra quem é vip, então eu estava querendo um script de npc.lua para estas funções : vender promotion só se tiver a 1ª promotion vender só se tiver level vender só se tiver money para comprar falas : player : hi npc: Welcome, Usuario! I have been expecting you! player : promotion / vip promotion npc : You want to be promoted vip for 80000000 gold coins? ou You are already promoted, good bye... (npc sai da conversa) player : yes npc : you don't have 80000000 gold coins to be promoted vip, good bye... (npc sai da conversa) ou Sorry, you need to have the first promotion to be promoted vip, good bye... (npc sai da conversa) ou Congratulations! You were promoted vip! good bye! (npc sai da conversa) +++REP pra quem ajudar ai galera ! valeu ! Editado Fevereiro 17, 2013 12 anos por serj100 (veja o histórico de edições)
Postado Fevereiro 17, 2013 12 anos Assim? 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 local price = 80000000 if(msgcontains(msg, 'promotion') or msgcontains(msg, 'member promotion')) then selfSay('Você quer ser promovido member por '..price..' moedas? {yes} ', cid) talkState[talkUser] = 1 elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then if doPlayerRemoveMoney(cid,price) then if getPlayerVocation(cid) == 1 or getPlayerVocation(cid) == 2 or getPlayerVocation(cid) == 3 or getPlayerVocation(cid) == 4 then doPlayerSetVocation(cid, getPlayerVocation(cid) + 4) selfSay('Parabens! Você foi promovido member! ', cid) talkState[talkUser] = 0 else selfSay('Desculpe, você precisa ter a primeira promotion para ser promovido member.', cid) talkState[talkUser] = 0 end else selfSay('Você não tem ' .. price .. ' moedas para ser promovido member...', cid) talkState[talkUser] = 0 end elseif msg == "no" and talkState[talkUser] >= 1 then selfSay("Then not", cid) talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Postado Fevereiro 18, 2013 12 anos Autor este script é um pouco parecido com o que uso mas ainda ta dando o bug de quando loga, e com as mesmas falas :s
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.