Hoje tava procurando um script de NPC que vende spell, e achei um usuário,
DeathSpells
, com um script de um NPC que vende spells,
que não estava funcionando, e então, outro usuário,
Vodkart
, corrigiu o script dele, e estou disponibilizando aqui, para vocês acharem com mais facilidade.
Então vamos ao script.
Vá até seuot/data/npc
e crie um arquivo.xml e nomeie para: Marvik.xml
Agora abra o arquivo, e coloque o seguinte script:
Bom, se você ainda não sabe mexer com NPC's, voce pode ver este tutorial:
- A Magia dos NPC's
Voltando...
Agora você vai até: Vá até seuot/data/npc/scripts
e vai criar um arquivo.lua com o nome spells.lua
E vai colocar o seguinte script:
- Legenda:
Cor de Pele: local node, a cada magia que voce adicionar, voce tem que aumentar o node1, exemplo, se voce colocar outra madia, todos os node1 que terão, você tera de adicionar +1, ou seja
node2.
Laranja: É o nome da spells que o player vai ter que dizer para aprende-la.
Vermelho: Fala do NPC após o player falar o nome da magia que quer aprender.
Roxo: Nome da magia configurado no spells.xml.
Verde Musgo: ID da vocação que é necessaria para aprender a magia.
Azul: Preço que o player ira pagar na magia.
Verde: Level necessário para aprender a magia.
DeathSpells
, com um script de um NPC que vende spells,
que não estava funcionando, e então, outro usuário,
Vodkart
, corrigiu o script dele, e estou disponibilizando aqui, para vocês acharem com mais facilidade.
Então vamos ao script.
Vá até seuot/data/npc
e crie um arquivo.xml e nomeie para: Marvik.xml
Agora abra o arquivo, e coloque o seguinte script:
<?xml version="1.0" encoding="UTF-8"?>
<npc name="Marvik" script="data/npc/scripts/spells.lua" walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="130" head="0" body="101" legs="120" feet="95" addons="0"/>
<parameters>
<parameter key="message_greet" value="Be greeted, |PLAYERNAME|. I can teach {spells} for druids."/>
<parameter key="message_farewell" value="Farewell..."/>
<parameter key="message_walkaway" value="Farewell..." />
<parameter key="module_keywords" value="1" />
<parameter key="keywords" value="15;9;8;spells" />
<parameter key="keyword_reply1" value="I can teach you, light healing" />
<parameter key="keyword_reply2" value="I can teach you, find person" />
</parameters>
</npc>
Bom, se você ainda não sabe mexer com NPC's, voce pode ver este tutorial:
- A Magia dos NPC's
Voltando...
Agora você vai até: Vá até seuot/data/npc/scripts
e vai criar um arquivo.lua com o nome spells.lua
E vai colocar o seguinte script:
Spoiler
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
-- OTServ event handling functions start
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
-- OTServ event handling functions end
local node1 = keywordHandler:addKeyword({'light healing'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Would you like to learn light healing for 170 gp?'})
node1:addChildKeyword({'yes'}, StdModule.learnSpell, {npcHandler = npcHandler, premium = false, spellName = 'light healing',vocation = 2, price = 170, level = 9})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Cant you handle the power of the spell?', reset = true})
-- Makes sure the npc reacts when you say hi, bye etc.
npcHandler:addModule(FocusModule:new())
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
-- OTServ event handling functions start
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
-- OTServ event handling functions end
local node1 = keywordHandler:addKeyword({'light healing'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Would you like to learn light healing for 170 gp?'})
node1:addChildKeyword({'yes'}, StdModule.learnSpell, {npcHandler = npcHandler, premium = false, spellName = 'light healing',vocation = 2, price = 170, level = 9})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Cant you handle the power of the spell?', reset = true})
-- Makes sure the npc reacts when you say hi, bye etc.
npcHandler:addModule(FocusModule:new())
- Legenda:
Cor de Pele: local node, a cada magia que voce adicionar, voce tem que aumentar o node1, exemplo, se voce colocar outra madia, todos os node1 que terão, você tera de adicionar +1, ou seja
node2.
Laranja: É o nome da spells que o player vai ter que dizer para aprende-la.
Vermelho: Fala do NPC após o player falar o nome da magia que quer aprender.
Roxo: Nome da magia configurado no spells.xml.
Verde Musgo: ID da vocação que é necessaria para aprender a magia.
Azul: Preço que o player ira pagar na magia.
Verde: Level necessário para aprender a magia.
nao pego aki xD
ResponderExcluirda tudo sertim mais na hora de compra ele nem remove o dinheiro e nem da o item