[Pedido] Npc Vocation (Por Item)

Bolinhoo28
em Scripts

Bolinhoo28

Eu sou um bolinho de arroz.. (8)
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 30/01/12Posts: 49

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

Newtonnotwen

Só quero saber o porque, o resto são detalhes.
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 04/08/12Posts: 762

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

b5feb15da83eca8bd379039567f3992860f398f765aea98c57dcd2a1ffb0d35ca20603caaf7d9f03da39a3ee5e6b4b0d3255bfef95601890afd807098c4de7dfec2a3351efcdaa9ed8451e6c.gif