Aí galera, meu segundo script, fiz para responder um pedido e alterei algumas coisas, mas não queria deixar mofando no pc =P Acho que deve ter alguns scripts parecidos mas tentei fazer um de fácil configuração, quanto mais opções melhor não é mesmo? Diante mão, obrigado ao Jhon992 por me ensinar a usar o comando doShowTextDialog (ainda tô começando ^^). Vamos ao script:
Em talkactions>scripts crie um arquivo.lua e cole isto dentro:
-- Script Loja [Comando !buy] by Leoxtibia -- local minlevel = 50 -- level minimo para usar o comando local idmoeda = 2148 -- id da moeda para comprar os itens -- 2148 é gold coin local compra = { ["superuh"] = {id = 2310, count = 100, price = 10}, --- [nome do item que aparecerá na loja] = id do item, quantidade, preço em idmoeda ["magicprison"] = {id = 2290, count = 100, price = 100} } function onSay(cid, words, param) local shop = compra[param] 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 = {"superuh","magicprison"} 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
Agora em talkactions.xml cole a tag:
<talkaction log="yes" words="!buy" event="script" value="nomedoseuarquivo.lua"/>
Para usar o comando é só falar !buy + nome do item. Exemplo: !buy superuh // Para ver os itens da loja use somente !buy.
Para adicionar mais itens que poderão ser comprados adicione mais linhas:
["suddendeath"] = {id = 1234, count = 100, price = 100},
Lembrando que a última linha não tem vírgula. Para adicionar os items que serão mostrados na loja, adicione os nomes na linha, sempre "entre aspas":
local itensCompra = {"superuh","magicprison", "suddendeath"}
Então é isso aí, espero que ajude alguém =D Vlw, abraços.