área errada.
o npc só vai teleportar o jogador uma vez? ou o jogador sempre que pagar 500gp pro ncp recebe 30 diamonds e é teleportado?
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

área errada.
o npc só vai teleportar o jogador uma vez? ou o jogador sempre que pagar 500gp pro ncp recebe 30 diamonds e é teleportado?
info
Grupo: Campones
Registrado: 22/03/08
Posts: 46
Reputação: +9
Char no Tibia: Nagumo Utsunomiya

sim somente uma vez, ao pagar 500gps o jogador e teleportado e ganha 30 diamonds.
na verdade esse npc era pra ser posto no saffari para server de pokemon ![]()
no lugar dos gps se der para por logo dollar e no lugar da diamonds as pokebolas ajudaria
obrigadão vodkart
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

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 SellItem(cid, message, keywords, parameters, node)
if(not npcHandler:isFocused(cid)) then
return false
end
if getPlayerStorageValue(cid, parameters.storage) <= 0 then
if doPlayerRemoveMoney(cid, parameters.price) == TRUE then
setPlayerStorageValue(cid, parameters.storage, 1)
doPlayerAddItem(cid,parameters.item,parameters.count)
doTeleportThing(cid, parameters.teleport)
else
npcHandler:say('Sorry, you dont have ' .. parameters.price .. ' gps!', cid)
end
else
npcHandler:say('Sorry,I already gave the items for you!', cid)
end
npcHandler:resetNpc()
return true
end
local node1 = keywordHandler:addKeyword({'reward'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Do you want buy 30 ' .. getItemNameById(2146) .. 's for 500 gps?'})
node1:addChildKeyword({'yes'}, SellItem, {price = 500,item = 2146,count = 30,teleport = {x = 160, y = 54, z = 7},storage = 90897})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
npcHandler:addModule(FocusModule:new())
Editado Fevereiro 16 por Vodkart
info
Grupo: Campones
Registrado: 22/03/08
Posts: 46
Reputação: +9
Char no Tibia: Nagumo Utsunomiya

desculpa mas ta dando erro quando vo adiciona no mapa
da erro de formato..
desculpa nao ter avisado mais to usando versão 8.54
teria como da uma arrumada?
a maioria tem isso +-
ex :
<?xml version="1.0" encoding="UTF-8"?> <npc name="Pablo" script="loot.lua" walkinterval="2000" floorchange="0"> <health now="150" max="150"/> <look type="159" head="132" body="79" legs="97" feet="132" corpse="2212"/>
no decorrer do script tem muitos <><><><><>
brigadão pela atenção vodkart.. se resolver do 2rep++ ![]()
Editado Fevereiro 16 por infernity
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

ta errado mesmo,não é esse o XML do npc
NOME DO SEU NPC.xml
<?xml version="1.0"?>
<npc name="NOME DO SEU NPC" script="data/npc/scripts/nome do seu script.lua" walkinterval="5000" floorchange="0">
<health now="100" max="100"/>
<look type="134" head="78" body="88" legs="0" feet="88" addons="3"/>
<parameters>
<parameter key="message_greet" value="Hello |PLAYERNAME|. I can {reward} you..." />
</parameters>
</npc>
ai em npc/script
nome do seu script.lua
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 SellItem(cid, message, keywords, parameters, node)
if(not npcHandler:isFocused(cid)) then
return false
end
if getPlayerStorageValue(cid, parameters.storage) <= 0 then
if doPlayerRemoveMoney(cid, parameters.price) == TRUE then
setPlayerStorageValue(cid, parameters.storage, 1)
doPlayerAddItem(cid,parameters.item,parameters.count)
doTeleportThing(cid, parameters.teleport)
else
npcHandler:say('Sorry, you dont have ' .. parameters.price .. ' gps!', cid)
end
else
npcHandler:say('Sorry,I already gave the items for you!', cid)
end
npcHandler:resetNpc()
return true
end
local node1 = keywordHandler:addKeyword({'reward'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Do you want buy 30 ' .. getItemNameById(2146) .. 's for 500 gps?'})
node1:addChildKeyword({'yes'}, SellItem, {price = 500,item = 2146,count = 30,teleport = {x = 160, y = 54, z = 7},storage = 90897})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
npcHandler:addModule(FocusModule:new())
Editado Fevereiro 16 por Vodkart
info
Grupo: Campones
Registrado: 22/03/08
Posts: 46
Reputação: +9
Char no Tibia: Nagumo Utsunomiya

vlw ae vodkart ja dei seu rep++
agora so uma duvida..
22:56 Shirou Fubuki: Sorry,I already gave the items for you!
não teria como compra novamete esse item? e quando esses 30 diamonds acabassem o player fosse teleportado para outro lugar.
tipo oque vc fez ja ta bom, so queria o complemeto...
o complemento seria:
compra novamente esses 30 diamonds, player nao poderia compra os 30 diamonds se tivesse com esse item de id na mochila:2150 e quando as diamonds acabassem o player fosse teleportado para outro local.
diamonds = pokeball
vlw ae, desculpa o encomodo..
sabe como eh ne? xD
Editado Fevereiro 17 por infernity
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

deixa eu ve se eu entendi direito oque vc quer...
O npc só vai vender novamente os diamond se o jogador não tiver nenhum diamond na bag é isso?
caso contrario ele compra os diamond e é teleportado denovo?
info
Grupo: Campones
Registrado: 22/03/08
Posts: 46
Reputação: +9
Char no Tibia: Nagumo Utsunomiya

sim, o npc so vendera os diamonds novamente se o player não tiver com os 30 diamond na bag.
no meu utimo anuncio colokei o id errado
desculpas...
id: 2146
valeu ae ![]()
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

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 SellItem(cid, message, keywords, parameters, node)
if(not npcHandler:isFocused(cid)) then
return false
end
if (getPlayerItemCount(cid, 2146) < parameters.count) then
if doPlayerRemoveMoney(cid, parameters.price) == TRUE then
doPlayerAddItem(cid,parameters.item,parameters.count)
doTeleportThing(cid, parameters.teleport)
else
npcHandler:say('Sorry, you dont have ' .. parameters.price .. ' gps!', cid)
end
else
npcHandler:say('Sorry,you already have 30 diamonds!', cid)
end
npcHandler:resetNpc()
return true
end
local node1 = keywordHandler:addKeyword({'reward'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Do you want buy 30 ' .. getItemNameById(2146) .. 's for 500 gps?'})
node1:addChildKeyword({'yes'}, SellItem, {price = 500,item = 2146,count = 30,teleport = {x = 160, y = 54, z = 7}})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Ok, then.', reset = true})
npcHandler:addModule(FocusModule:new())
info
Grupo: Campones
Registrado: 22/03/08
Posts: 46
Reputação: +9
Char no Tibia: Nagumo Utsunomiya

VALEEEUU VODKARTTTT DUVIDA RESOLVIDAAA
agora so uma coisinha teria como o player ser teleportado para outro local quando os diamonds acabassem da muchila dele? ![]()
VALEU SE N TIVER COMO DEIXA KETOO
AJUDO MUITOOOO
Editado Fevereiro 18 por infernity
info
Grupo: Campones
Registrado: 22/03/08
Posts: 46
Reputação: +9
Char no Tibia: Nagumo Utsunomiya
Eu gostaria de pedir um escript, queria ele da seguinte maneira:
o player fala com o npc e paga 500gps em troca disso ele e recompensado com um 30 diamantes de id: 2146
ao ser pago os 500gps e ele ganha as 30 diamonds ele e teleportado para uma determinada area.
gostaria de que alguem me ajudasse com esse script, sei que e facil para quem ja intende do assunto.
vlw a todos
rep+ pra quem ajuda!!