Ir para conteúdo

Npc


kadevidaloka

Posts Recomendados

Quero pedir 1 npc que troca 100 itens do id 9020 por 1 item id 7633.

 

player:hi

seller trade:Ola player name,eu troco 100 vip coins por 1 vip stone.

player:trade

seller trade:voce deseja mesmo trocar 100 vip coins por 1 vip stone?

player:yes

seller trade:ai esta.

 

 

ai quando o player nao tiver as 100 vip coin o npc fala:Voce precisa de 100 vip coin para trocar em uma vip stone!

 

Aguardando!

Link para o comentário
Compartilhar em outros sites

Vá em data/npc, copie um arquivo lua e coloque isso:

 

<?xml version="1.0" encoding="UTF-8"?>

<npc name="Assistente VIP" script="data/npc/scripts/assistente vip.lua" access="5" walkinterval="2000">

<health now="200" max="200"/>

<look type="73" head="20" body="30" legs="40" feet="50" corpse="6080"/>

<parameters>

<parameter key="message_greet" value="Ola, |PLAYERNAME|. Eu troco 100 vip coins por 1 vip stone."/>

<parameter key="message_farewell" value="Ok, ate logo |PLAYERNAME|." />

<parameter key="message_walkaway" value="Hmm, argh..." />

<parameter key="message_onsendtrade" value="Nao vendo nada, apenas troco vip coins por vip stones."/>

</parameters>

</npc>

 

Renomeie o arquivo para Assistente VIP, agora vá em data/npc/scripts, copie um arquivo lua e ponha isto:

 

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, 'vip stone') or msgcontains(msg, 'vip coin')) then

selfSay('Posso trocar 100 vip coin por 1 vip stone, voce concorda?', cid)

talkState[talkUser] = 1

elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) then

if(getPlayerItemCount(cid, 9020) >= 100) then

doPlayerRemoveItem(cid, 9020, 100)

doPlayerAddItem(cid, 7633, 1)

selfSay('Ok. Aqui esta.', cid)

else

selfSay('Voce nao tem o que eu preciso. Me traga 100 vip coins e faremos negocio.', cid)

end

talkState[talkUser] = 0

elseif(msgcontains(msg, 'no') and isInArray({1}, talkState[talkUser]) == TRUE) then

talkState[talkUser] = 0

selfSay('Tudo bem, sempre estou disposto a fazer negocio.', cid)

end

 

return true

end

 

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

 

Renomeie o arquivo para assistente vip.

 

O Script é bem fácil de editar. Você pode mudar o nome e a aparência no primeiro script. No segundo, as frases de resposta, os ids dos items e as ações do npc.

 

Espero ter ajudado!

 

Feliz natal ae fera :party:

 

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...