Ir para conteúdo
  • 0

[Pedido] Npc quest (com mais de 2 quests nele)


morphred

Pergunta

Olá... eu não sei se tem, pois eu não encontrei (devo ter feito uma pesquisa meio apressada pq estou fazendo muitas cosias no momento, qualquer coisa continuarei minha pesquisa)

eu gostaria de um npc que para liberar a quest dele eu tenha que ter feito uma outra quest (bau ou de outro npc) e que nesse mesmo npc eu tenha 3-5 quests sendo que aós terminar uma, eu libere a seguinte e assim por diante!!

 

Sou basico dos basicos com script, então se puderem me enviar o script junto com as informações de onde por cada tag, cada parte e editá-los... seria muito agradecido!! obg!

 

 

Servidor: PDA

Base: Cyan

 

gostaria que fosse possivel editar no npc: a looktype, o pedido das quest (itens, matar X pokes em X qntidades, batalhar com npc X ... etc...) mas, um basico com apenas derrotar X pokes em X qntidades ou pedindo X itens já ajuda!! :)

 

 

(Ps: Se tiver alguma informação que precise que não dei me informe que editarei aki!!)


@Up ... =/ qualquer informação sobre esse npc (se já tiver algum link com eles por ai) me ajudaria muito!! obg

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Crie um arquivo chamado npcquest.lua em npcs/scripts/ e adicione:

 

 

 

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, 'quests')) then
selfSay('Voce deseja fazer a {primeira}, a {segunda} ou a {terceira missao}?', cid)
talkState[talkUser] = 1
elseif(msgcontains(msg, 'primeira') and talkState[talkUser] == 1) then
if(getPlayerStorageValue(cid, STORAGE) >= 1) then
selfSay('Traga-me ITEM1.', cid)
else
selfSay('Voce ainda nao realizou a QUESTREQUISITO.', cid)
end
elseif(msgcontains(msg, 'ITEM1') and talkState[talkUser] == 1) then
if(getPlayerStorageValue(cid, STORAGE) >= 1 and getPlayerItemCount(cid, ITEM1) >= QUANTIDADE DO ITEM1) then
doPlayerRemoveItem(cid, IDITEM1, QUANTIDADE)
setPlayerStorageValue(cid, 15401, 1)
selfSay('Voce terminou a primeira missao.', cid)
else
selfSay('Voce nao me trouxe o ITEM1.', cid)
end
talkState[talkUser] = 0
elseif(msgcontains(msg, 'segunda') and talkState[talkUser] == 1) then
if(getPlayerStorageValue(cid, 15401) >= 1) then
selfSay('Traga-me ITEM2.', cid)
else
selfSay('Voce ainda nao realizou a primeira missao.', cid)
end
elseif(msgcontains(msg, 'ITEM2') and talkState[talkUser] == 1) then
if(getPlayerStorageValue(cid, 15401) >= 1 and getPlayerItemCount(cid, ITEM2) >= QUANTIDADE DO ITEM2) then
doPlayerRemoveItem(cid, IDITEM2, QUANTIDADE)
setPlayerStorageValue(cid, 15402, 1)
selfSay('Voce terminou a segunda missao.', cid)
else
selfSay('Voce nao me trouxe o ITEM2.', cid)
end
talkState[talkUser] = 0
elseif(msgcontains(msg, 'terceira') and talkState[talkUser] == 1) then
if(getPlayerStorageValue(cid, 15402) >= 1) then
selfSay('Traga-me ITEM3.', cid)
else
selfSay('Voce ainda nao realizou a segunda missao.', cid)
end
elseif(msgcontains(msg, 'ITEM3') and talkState[talkUser] == 1) then
if(getPlayerStorageValue(cid, 15402) >= 1 and getPlayerStorageValue(cid, 15403) == 0 and getPlayerItemCount(cid, ITEM3) >= QUANTIDADE DO ITEM3) then
doPlayerRemoveItem(cid, IDITEM3, QUANTIDADE)
doPlayerAddItem(cid, IDRECOMPENSA, QUANTIDADE)
setPlayerStorageValue(cid, 15403, 1)
selfSay('Voce terminou a terceira missao. Recebeu uma bela recompensa por isso!', cid)
else
selfSay('Voce nao me trouxe o ITEM3.', cid)
end
talkState[talkUser] = 0
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

Agora, em npcs/, crie um arquivo chamado Missioner.xml e adicione:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Missioner" script="data/npc/scripts/npcquest.lua" walkinterval="0" lookdir="3">
<health now="100" max="100"/>
<look type="130" head="0" body="10" legs="10" feet="0" addons="0"/>
<parameters>
<parameter key="message_greet" value="Bem-vindo, |PLAYERNAME|! Quer realizar minhas {quests}?"/>
</parameters>
</npc>
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...