Criando Um Npc Para Reparar Soft Boots

Pessotto
em Tutoriais de Scripting

Pessotto

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 18/08/07Posts: 43Char no Tibia: Verme Master

Após muitas buscas, consegui finalmente fazer um NPC que reparasse a soft boots

 

----------------

 

Vamos ao que interesa:

 

1. Vá em data\npc;

2. Copie e cole um arquivo XML qualquer, renomeando-o para Soft Boots Repair

3. Abra o código fonte e insira

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Soft Boots Repair" script="data/npc/scripts/softbootsrepair.lua"  walkinterval="2000" floorchange="0">
<health now="100" max="100"/>
<look type="134" head="55" body="60" legs="50" feet="75" addons="3"/>

</npc>

4. Vá em data\npc\scripts e crie ou copie um arquivo .lua com o nome de softbootsrepair

5. Abra o código fonte e insira, novamente

<?xml version="1.0" encoding="UTF-8"?>
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)

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 rechargesoftboots(cid, message, keywords, parameters, node)
if(not npcHandler:isFocused(cid)) then
return false
end

npcHandler:addModule(FocusModule:new())
local playermoney = getPlayerMoney(cid)
if playermoney >= [color="#FF0000"]40000[/color] then
if doPlayerRemoveItem(cid,6530,1) == 1 then
doPlayerAddItem(cid, 6132, 1)
doPlayerRemoveMoney(cid, [color="#FF0000"]40000[/color])
npcHandler:say("Here are your new soft boots!", cid)
else
npcHandler:say("You don't have worn soft boots.", cid)
end
else
npcHandler:say("You don't have enough money.", cid)
end
keywordHandler:moveUp(1)
return true
end
local node1 = keywordHandler:addKeyword({'soft boots'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Do you want to repair your soft boots for [color="#FF0000"]40000[/color] gold coins?'})
node1:addChildKeyword({'yes'}, rechargesoftboots, {blessing = 1})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, moveup = 1, text = 'Then not.'})

keywordHandler:addKeyword({'repair soft boots'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "I can repair a pair of worn {soft boots} for [color="#FF0000"]40000[/color] gold coins. For that say {soft boots}"})
keywordHandler:addKeyword({'help'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = "I can repair a pair of worn {soft boots} for [color="#FF0000"]40000[/color] gold coins."})
npcHandler:addModule(FocusModule:new())>

todos os valores acima em vermelho podem ser trocados, indica a quantidade de dinheiro (em gold coins) que um player irá pagar pelo reparo da boots

6. Salve os arquivos e bom proveito... (Lembre-se que para dar respawn do NPC precisa editar o mapa editor)

 

-------------------------------------------------------

 

Editando mapa editor

1. Se seu mapa editor for o RME, vá em C:\Arquivos de programas\Remere's Map Editor\data\840

2. Abra o código fonte do arquivo CREATURES.XML

3. Vá a ultima linha, antes de </creatures>

4. La escreva

   <creature name="Soft Boots Repair" type="npc" looktype="133" lookhead="39" lookbody="0" looklegs="19" lookfeet="20" /> 

ficando assim

  <creature name="Mad Scientist" type="monster" looktype="133" lookhead="39" lookbody="0" looklegs="19" lookfeet="20" /> 
 <creature name="Soft Boots Repair" type="npc" looktype="133" lookhead="39" lookbody="0" looklegs="19" lookfeet="20" /> 
 </creatures> 

Para selecionar o npc, vá em

4.1 Criature Pallete

4.2 NPCs

5. Crie respawn e salve.

 

Se seu mapa editor não for o RME, siga o seguinte prossedimento

1. Abra a pasta onde contem os arquivos do Mapa Editor

2. Faça os tópicos 2., 3., e 4,. ( NÃO FAÇA O 4.1 E O 4.2 )

3. Selecione a categoria NPC

4. Crie o respawn, salve.

 

 

Espero ter ajudado.

Qualquer duvida pm ou post aqui.

Créditos (75% Pessotto)



(25% Às fontes que procurei)

 

 

Att,

Pessotto


Metas

[X]1post
[X]5 posts (SERVO)
[X]10 posts (CAMPONÊS)
[X]25 posts (CAÇADOR)
[X]50 posts (CAVALEIRO)
[ ]100 posts (BARONETE)
[ ]200 posts (BARÃO)
[ ]300 posts (VISCONDE)
[ ]400 posts (DUQUE)
[ ]600 posts (ARQUEDUQUE)
[ ]800 posts (ARISTOCRATA)
[ ]1000 posts (REGENTE)
[ ]1400 posts (SÁBIO)
[ ]1800 posts (SACERDOTE)
[ ]2500 posts (PRÍNCIPE)

Pessotto

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 18/08/07Posts: 43Char no Tibia: Verme Master

PELO AMOR DE DEUS ALGUEM PODE COMENTAR JA FORAM 32 VISUALIZAÇÕES E NINGUEM COMENTA

 

 

(desculpa o flood =P)


Metas

[X]1post
[X]5 posts (SERVO)
[X]10 posts (CAMPONÊS)
[X]25 posts (CAÇADOR)
[X]50 posts (CAVALEIRO)
[ ]100 posts (BARONETE)
[ ]200 posts (BARÃO)
[ ]300 posts (VISCONDE)
[ ]400 posts (DUQUE)
[ ]600 posts (ARQUEDUQUE)
[ ]800 posts (ARISTOCRATA)
[ ]1000 posts (REGENTE)
[ ]1400 posts (SÁBIO)
[ ]1800 posts (SACERDOTE)
[ ]2500 posts (PRÍNCIPE)

lelorox

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 10/04/07Posts: 5

Otimo o tutorial me ajudou bastante :)

está de parabéns :p

I used to roll the dice
Feel the fear in my enemy's eyes
Listen as the crowd would sing:

"Now the old king is dead! Long live the king!"

satan666

Antichrist Superstar
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 07/05/08Posts: 612Char no Tibia: leviana luciferiana
PELO AMOR DE DEUS ALGUEM PODE COMENTAR JA FORAM 32 VISUALIZAÇÕES E NINGUEM COMENTA

 

 

(desculpa o flood =P)

 

 

 

é mas isso foi proposital entao voce poderia ser alertado por isso.

 

dei uma olhada no script e achei muito bom mas tal script ja tem em muitos ots seria bom voce da uma ajustada pra tanto ele recarregar a soft boots quanto a firewalker boots.

creationb.jpg

"Um Deus que usasse seu poder para criar seres humanos que de antemão sabia que seriam atormentados eternamente, e que os predestinasse a isso,



não poderia ser sábio, nem justo e tampouco amoroso.

Além de nos submeter a isso vim a nos julgar e condenar por nossos atos aos tormentos do inferno.

pra minha pessoa isso não é um Deus Pai amoroso e bondoso como o chaman, seu padrão seria muito mais inferior do que o de muitos homens."

Dare Devil

Ex-Coordenador de Imprensa
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 27/06/07Posts: 598Gênero: Masculino

É lamentável ter que lhe alertar sua intenção não era fazer flood, mas se caso não tomar-se está atitude ia se começar os flood.

 

Usuário alertado em 10%.

Atenciosamente,

Dare Devil.

 

Siga-me no Twitter,

@LucasPassosCDR

GoDTrinity

Psy Rapper
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 15/12/08Posts: 14

Mtu Bom ! Me ajudou mtu !

By Psy Victor ! ;)

satan666

Antichrist Superstar
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 07/05/08Posts: 612Char no Tibia: leviana luciferiana

a meu ver isso não deveria ser considerado tutorial.

se fosse assim tudo quanto e tipo de npc eu colocaria um tutorial pra todos.

ensinando como por um npc que vende sword.

ensinando como por um npc que vende axe. ¬¬

creationb.jpg

"Um Deus que usasse seu poder para criar seres humanos que de antemão sabia que seriam atormentados eternamente, e que os predestinasse a isso,



não poderia ser sábio, nem justo e tampouco amoroso.

Além de nos submeter a isso vim a nos julgar e condenar por nossos atos aos tormentos do inferno.

pra minha pessoa isso não é um Deus Pai amoroso e bondoso como o chaman, seu padrão seria muito mais inferior do que o de muitos homens."

luiz master

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 06/01/07Posts: 1

Amigo, gostei de sua explicaçao, mas aki em ksa fica aparecendo umas paradinhas de mostrar spoil, podes manda o topico sem isso para mim?

Grato, rafael_elisio@hotmail.com ou luiznt_10@hotmail.com