SK
pedido

Talkaction comprar

Por SkyDarkyes, 11 de fev. de 2013 em Scripts

resolvido
10
862
11 de fevereiro de 2013 às 12:28

Assim o player

 

Vai fala, !kageshuriken,ali ele compra a kage shuriken por x item e por x quantidade do item

murilo103M
11 de fevereiro de 2013 às 12:39

Crie um arquivo em Talkactions/scripts/buyitem.lua

local valor = 15000

local item = 2160

local quantidade = 1

 

function onSay(cid, words, param)

if doPlayerRemoveMoney(cid, valor) == TRUE then

doPlayerAddItem(cid,item,quantidade)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você comprou o item tal")

doSendMagicEffect(getPlayerPosition(cid), 28)

else

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce nao tem dinheiro para comprar o item.")

doSendMagicEffect(getPlayerPosition(cid), 2)

end

end

no Talkaction.Xml coloque:

<talkaction words="!kageshuriken;/kageshuriken" event="script" value="buyitem.lua"/>

11 de fevereiro de 2013 às 12:45

Mas ai ta em forma de grana,nao da pra trocar para um item que eu quero?local valor = 15000

GearsG
11 de fevereiro de 2013 às 12:58

Mas ai ta em forma de grana,nao da pra trocar para um item que eu quero?local valor = 15000

Não testei :(

 

 

local buy = 2161 -- Id do item
local item = 2160
local quantidade = 1

function onSay(cid, words, param)
if doPlayerRemoveItem(cid,buy,1)   == TRUE then
doPlayerAddItem(cid,item,quantidade)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você comprou o item tal")
doSendMagicEffect(getPlayerPosition(cid), 28)
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você não tem o item necessário para fazer essa compra.")
doSendMagicEffect(getPlayerPosition(cid), 2)
end
end

murilo103M
11 de fevereiro de 2013 às 13:02

 

local valor = 15000

local fitem = 2160 -- ID DO ITEM QUE SER RETIRADO

local sitem = 2161 -- ID DO ITEM QUE QR COMPRAR

local fquantidade = 1

local squantidade = 1

 

function onSay(cid, words, param)

if(getPlayerItemCount(cid, fitem,fquantidade) and doPlayerRemoveItem(cid, fitem, fquantidade)) then

doPlayerAddItem(cid,sitem,squantidade)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você comprou o item tal")

doSendMagicEffect(getPlayerPosition(cid), 28)

else

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce nao tem item suficiente para fazer a troca do item.")

doSendMagicEffect(getPlayerPosition(cid), 2)

end

end

Se funcionar me avise!!

11 de fevereiro de 2013 às 13:17

Murilo seu script deu certo brigado ae,mals limite de rep hj

murilo103M
11 de fevereiro de 2013 às 13:50

Melhorando um pouco o Script:

 

 

 

Crie um arquivo em Talkactions/scripts/buyitem.lua

local config = {

fitem = 2160 -- ID DO ITEM QUE SER RETIRADO

fquantidade = 1

sitem = 2161 -- ID DO ITEM QUE QR COMPRAR

squantidade = 1

}

 

function onSay(cid, words, param)

if(getPlayerItemCount(cid, config.fitem,config.fquantidade) and doPlayerRemoveItem(cid, config.fitem, config.fquantidade)) then

doPlayerAddItem(cid,config.sitem,config.squantidade)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você comprou o item tal")

doSendMagicEffect(getPlayerPosition(cid), 28)

else

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce nao tem item suficiente para fazer a troca do item.")

doSendMagicEffect(getPlayerPosition(cid), 2)

end

end

no Talkaction.Xml coloque:

 

<talkaction words="!kageshuriken;/kageshuriken" event="script" value="buyitem.lua"/>

 

 

Até mais :)

Editado Fevereiro 11 por murilo103

11 de fevereiro de 2013 às 13:51

ow eu criei o post http://www.xtibia.com/forum/topic/207340-ml-1000/page__fromsearch__1

murilo103M
11 de fevereiro de 2013 às 14:17

Dúvida sanada, reportado para que movam a dúvidas sanadas.

caoticC
11 de fevereiro de 2013 às 14:18

Tópico movido para a seção de dúvidas e pedidos resolvidos.