Ir para conteúdo

Featured Replies

Postado

Olá... Se Estou Abrindo este Tópico na Area Incorreta>Favor Corrigir; Obrigado!

 

Pessoal, Estou Precisando Muito de um NPC que funciona da Seguinte Maneira....:

 

Vamos Supor que voce explore o Mapa e encontre 3 Chaves...

 

Mais essas 3 Chaves, terão apenas 1 Utilidade que no caso seria Trocá-las....

 

Entao preciso de um NPC, que troque 3  Chaves por uma Outra Chave...

 

ou seja voce vai la e conversa com o NPC, dai ele te pergunta se voce quer fazer uma troca voce, responde "Yes", "Sim"

 

Entao ele retira as 3 Chaves necessárias de Voce e te entrega uma Chave para abrir uma Porta ou Baú!

 

no caso se o jogador for la só com 2, 1 ou Nenhuma Chave, ele nao faz a Troca...

 

 

 

Se Poderem Me Ajudar Agradeço, Obrigado!

Postado

add esse na pasta do npc>script, cria uma aquivo keys.lua

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, 'yes')) then
        selfSay('traga 3 chaves. {keys}', cid)
        talkState[talkUser] = 1
    elseif(msgcontains(msg, 'keys')) then
        if(talkState[talkUser] == 1) then
            if(getPlayerItemCount(cid, 2674) == 3) then  --- > aqui ele checa o item que o player ta 
               doPlayerRemoveItem(cid, 2674, 3) -- > aqui ele remove o item 
                
                doPlayerAddItem(cid, 2465, 1) -- > aqui o item que ele vai ganhar 
                selfSay('Oh, Thank You so mutch!', cid)        
                talkState[talkUser] = 0
            else
 
                selfSay('Come back, when you collect all items...', cid)
                talkState[talkUser] = 0
            end
        end
        talkState[talkUser] = 0
    elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser])) then
        selfSay('Ok then.', cid)
        talkState[talkUser] = 0
    end

    return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())  

esse em npc.xml

<?xml version="1.0" encoding="UTF-8"?>
<npc name="exeplo" script="keys.lua" walkinterval="0" floorchange="0">
	<health now="100" max="100"/>
	<look type="293" corpse="3128"/>
	<parameters>
		<parameter key="message_greet" value="Hello |PLAYERNAME| will you help me?"/>
	</parameters>
</npc>

Editado por Golf (veja o histórico de edições)

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo