Ir para conteúdo

[Encerrado] Problema no script


DaniloARodrigues

Posts Recomendados

function onSay(cid, words, param)
local shop = compra[param]
local minlevel = 50 -- level minimo para usar o comando
local idmoeda = 12372 -- id da moeda para comprar os itens -- 2148 é gold coin
local compra = {
["megastaff"] = {id = 7424, count = 1, price = 10}, --- [nome do item que aparecerá na loja] = id do item, quantidade, preço em idmoeda
["megaclub"] = {id = 7423, count = 1, price = 10},
["megasword"] = {id = 7417, count = 1, price = 10},
["megaaxe"] = {id = 2441, count = 1, price = 10},
["megadistance"] = {id = 5907, count = 1, price = 10},
["megaarmor"] = {id = 8877, count = 1, price = 12},
["megarobe"] = {id = 12618, count = 1, price = 12},
["megashield"] = {id = 12194, count = 1, price = 12},
["megaorb"] = {id = 12608, count = 1, price = 12},
["megaboots"] = {id = 2358, count = 1, price = 15},
["megapacc1"] = {id = 6087, count = 1, price = 7},
["megapacc2"] = {id = 6088, count = 1, price = 10},
["megapacc3"] = {id = 6089, count = 1, price = 20},
["scoin"] = {id = 2159, count = 1, price = 1},
["keyvip"] = {id = 8978, count = 1, price = 5},
["ringxp"] = {id = 7708, count = 1, price = 1},
["pkclean"] = {id = 5350, count = 1, price = 1},
}
if (shop) then
if getPlayerLevel(cid) >= minlevel then
if doPlayerRemoveItem(cid, idmoeda, compra[param:lower()].price) == TRUE then
doPlayerAddItem(cid, compra[param:lower()].id, compra[param:lower()].count)
doSendMagicEffect(getCreaturePosition(cid),13)
doCreatureSay(cid, "Voce comprou " .. compra[param:lower()].count .." " .. param:lower() .. "!", TALKTYPE_ORANGE_1)
else
doPlayerSendTextMessage(cid, 22,"Você deve ter ".. compra[param:lower()].price .." ".. getItemNameById(idmoeda) .." para comprar esse item.")
end
else
doPlayerSendTextMessage(cid, 22,"Você deve ter level " .. minlevel .. " ou mais para poder comprar na loja.")
end
end
return true
end
function onSay(cid, words, param)
if param == "" then
local itensCompra = {"megastaff", "megaclub", "megasword", "megaaxe", "megadistance", "megaarmor", "megarobe", "megashield", "megaorb", "megaboots", "megapacc1", "megapacc2", "megapacc3", "scoin", "keyvip", "ringcp", "pkclean"}
local text = ""

for i=1, #itensCompra do
if i == 1 then
     text = i.." - ".. itensCompra[i] .."\n"
else
     text = text.. i .." - ".. itensCompra[i] .."\n"
end
end
doShowTextDialog(cid,9004,text)
return TRUE
end
end

Peguei esse script para vendei itens por uma moeda própria. Porém, ele não compra nada. Se eu digitar só !buy ele mostra a lista dos itens, mas quando coloco buy e algum nome de um item, não ele n troca '-'

Alguém pode me dizer o que tá errado?

 

 

 

 

Esse é a tag no xml do talk

<talkaction log="yes" words="!buy" event="script" value="shoplothus.lua"/>
Link para o comentário
Compartilhar em outros sites


function onSay(cid, words, param)

local shop = compra[param]

local minlevel = 50 -- level minimo para usar o comando

local idmoeda = 12372 -- id da moeda para comprar os itens -- 2148 é gold coin

local compra = {

["megastaff"] = {id = 7424, count = 1, price = 10}, --- [nome do item que aparecerá na loja] = id do item, quantidade, preço em idmoeda

["megaclub"] = {id = 7423, count = 1, price = 10},

["megasword"] = {id = 7417, count = 1, price = 10},

["megaaxe"] = {id = 2441, count = 1, price = 10},

["megadistance"] = {id = 5907, count = 1, price = 10},

["megaarmor"] = {id = 8877, count = 1, price = 12},

["megarobe"] = {id = 12618, count = 1, price = 12},

["megashield"] = {id = 12194, count = 1, price = 12},

["megaorb"] = {id = 12608, count = 1, price = 12},

["megaboots"] = {id = 2358, count = 1, price = 15},

["megapacc1"] = {id = 6087, count = 1, price = 7},

["megapacc2"] = {id = 6088, count = 1, price = 10},

["megapacc3"] = {id = 6089, count = 1, price = 20},

["scoin"] = {id = 2159, count = 1, price = 1},

["keyvip"] = {id = 8978, count = 1, price = 5},

["ringxp"] = {id = 7708, count = 1, price = 1},

["pkclean"] = {id = 5350, count = 1, price = 1},

}

 

if param == "" then

local itensCompra = {"megastaff", "megaclub", "megasword", "megaaxe", "megadistance", "megaarmor", "megarobe", "megashield", "megaorb", "megaboots", "megapacc1", "megapacc2", "megapacc3", "scoin", "keyvip", "ringcp", "pkclean"}

local text = ""

 

for i=1, #itensCompra do

if i == 1 then

text = i.." - ".. itensCompra .."\n"

else

text = text.. i .." - ".. itensCompra .."\n"

end

end

doShowTextDialog(cid,9004,text)

return TRUE

elseif (shop) then

if getPlayerLevel(cid) >= minlevel then

if doPlayerRemoveItem(cid, idmoeda, compra[param:lower()].price) == TRUE then

doPlayerAddItem(cid, compra[param:lower()].id, compra[param:lower()].count)

doSendMagicEffect(getCreaturePosition(cid),13)

doCreatureSay(cid, "Voce comprou " .. compra[param:lower()].count .." " .. param:lower() .. "!", TALKTYPE_ORANGE_1)

else

doPlayerSendTextMessage(cid, 22,"Você deve ter ".. compra[param:lower()].price .." ".. getItemNameById(idmoeda) .." para comprar esse item.")

end

else

doPlayerSendTextMessage(cid, 22,"Você deve ter level " .. minlevel .. " ou mais para poder comprar na loja.")

end

end

return true

end

 

Link para o comentário
Compartilhar em outros sites

function onSay(cid, words, param)
local shop = compra[param]
local minlevel = 50 -- level minimo para usar o comando
local idmoeda = 12372 -- id da moeda para comprar os itens -- 2148 é gold coin
local compra = {
["megastaff"] = {id = 7424, count = 1, price = 10}, --- [nome do item que aparecerá na loja] = id do item, quantidade, preço em idmoeda
["megaclub"] = {id = 7423, count = 1, price = 10},
["megasword"] = {id = 7417, count = 1, price = 10},
["megaaxe"] = {id = 2441, count = 1, price = 10},
["megadistance"] = {id = 5907, count = 1, price = 10},
["megaarmor"] = {id = 8877, count = 1, price = 12},
["megarobe"] = {id = 12618, count = 1, price = 12},
["megashield"] = {id = 12194, count = 1, price = 12},
["megaorb"] = {id = 12608, count = 1, price = 12},
["megaboots"] = {id = 2358, count = 1, price = 15},
["megapacc1"] = {id = 6087, count = 1, price = 7},
["megapacc2"] = {id = 6088, count = 1, price = 10},
["megapacc3"] = {id = 6089, count = 1, price = 20},
["scoin"] = {id = 2159, count = 1, price = 1},
["keyvip"] = {id = 8978, count = 1, price = 5},
["ringxp"] = {id = 7708, count = 1, price = 1},
["pkclean"] = {id = 5350, count = 1, price = 1},
}

if param == "" then
	local itensCompra = {"megastaff", "megaclub", "megasword", "megaaxe", "megadistance", "megaarmor", "megarobe", "megashield", "megaorb", "megaboots", "megapacc1", "megapacc2", "megapacc3", "scoin", "keyvip", "ringcp", "pkclean"}
	local text = ""

	for i=1, #itensCompra do
		if i == 1 then
			 text = i.." - ".. itensCompra[i] .."\n"
		else
			 text = text.. i .." - ".. itensCompra[i] .."\n"
		end
	end
	doShowTextDialog(cid,9004,text)
	return TRUE
elseif (shop) then
if getPlayerLevel(cid) >= minlevel then
if doPlayerRemoveItem(cid, idmoeda, compra[param:lower()].price) == TRUE then
doPlayerAddItem(cid, compra[param:lower()].id, compra[param:lower()].count)
doSendMagicEffect(getCreaturePosition(cid),13)
doCreatureSay(cid, "Voce comprou " .. compra[param:lower()].count .." " .. param:lower() .. "!", TALKTYPE_ORANGE_1)
else
doPlayerSendTextMessage(cid, 22,"Você deve ter ".. compra[param:lower()].price .." ".. getItemNameById(idmoeda) .." para comprar esse item.")
end
else
doPlayerSendTextMessage(cid, 22,"Você deve ter level " .. minlevel .. " ou mais para poder comprar na loja.")
end
end
return true
end

 

Funcionou não '-' Mas já arrumei outro script ^^ Muito obrigado pela tentativa

Link para o comentário
Compartilhar em outros sites

  • 4 years later...
A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...