Ir para conteúdo
  • 0

[Pedido] Npc Vocation (Por Item)


Bolinhoo28

Pergunta

Queria que alguem disponibilizasse um script de um npc que te da certa vocation.

 

Por exemplo, eu to pensando em fazer uma vocation, só que eu gostaria que o player só virasse a vocation com certo item.

 

Tem como alguem me ajudar? e_e

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Em data/npc crie um arquivo.xml nomeie para newvoc e adicione:

 

 

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

<npc name="Newvoc" script="data/npc/scripts/newvoc.lua" walkinterval="1000" floorchange="1">

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

<look type="302" head="114" body="114" legs="200" feet="114" addons="3"/>

<parameters>

<parameter key="message_greet" value="Deseja virar nova prof? "/>

</parameters>

</npc>

Em data/npc/scripts crie um arquivo.lua nomeie para newvoc 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, 'yes') or msgcontains(msg, 'sim')) then

selfSay('Diga newvoc.', cid)

talkState[talkUser] = 1

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

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

doPlayerRemoveItem(cid, 2160, 100)

doPlayerSetVocation(cid, 10)

selfSay('Agora você possui a nova vocação!', cid)

else

selfSay('Você não tem dinheiro!', cid)

end

talkState[talkUser] = 0

end

return true

end

 

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)

npcHandler:addModule(FocusModule:new())

Editando:

 

-Roxo: Looktype

-Verde escuro: Mensagem após falar hi

-Dourado: Mensagem que o player precisara dizer para o npc continuar

​-Vermelho: Próxima mensagem do npc

​-Verde claro: Próxima mensagem do player

-Marrom: Id do item a ser removido

-Violeta: Quantidade do item a ser removido

-Cinza: Id da vocação

-Azul Turco: Mensagem de confirmação

-Teal: Mensagem de cancelamento

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...