Creditos: Apocarai e MatheusMkalo
Bom o script funciona assim, des de que tenha um tal item no script voce pode compra-lo por um tal preço e se for agrupavel voce pode escolher a quantidade.
Como usar:
/buyitem gold nugget,50
Onde esta 50 é a quantidade de gold nugget que voce ira comprar.
Bom, vá na pasta data/talkactions/scripts e crie um arquivo.lua chamado buyitens e bote este script dentro:
------Script by MatheusMkalo and apocarai------- ------Exclusivo para o Xtibia-------- function onSay(cid, words, param) local a = { [2472] = {price = 160000, countmax = 1}, [2157] = {price = 13000, countmax = 100}, [2466] = {price = 60000, countmax = 1}, [2494] = {price = 150000, countmax = 1} } local b = string.explode(param, ",") if a[getItemIdByName(b[1])] then if isNumber(b[2]) then if tonumber(b[2]) > 0 then if tonumber(b[2]) <= a[getItemIdByName(b[1])].countmax then if getPlayerMoney(cid) >= (a[getItemIdByName(b[1])].price*tonumber(b[2])) then doPlayerRemoveMoney(cid,(a[getItemIdByName(b[1])].price*tonumber(b[2]))) doPlayerAddItem(cid, getItemIdByName(b[1]),b[2]) doPlayerSendTextMessage(cid,25,"You have bought " .. tonumber(b[2]) .. " " .. getItemNameById(getItemIdByName(b[1])) .. " for " .. (a[getItemIdByName(b[1])].price*tonumber(b[2])) .. " gold pieces.") else doPlayerSendCancel(cid,"You have not enough money.") end else doPlayerSendCancel(cid,"You have informed a quantity higher than count max.") end else doPlayerSendCancel(cid,"You have informed a quantity lower than 0") end else doPlayerSendCancel(cid,"Quantity must be a number.") end end return TRUE end
Depois salve-o e va em talkactions.xml e bote a seguinte tag:
<talkaction words="/buyitens" event="script" value="buyitens.lua"/>
Adicionando mais itens:
Para isso voce tera que botar mais uma linha nas tables. assim olha
Normal:
local a = { [2472] = {price = 160000, countmax = 1}, [2157] = {price = 13000, countmax = 100}, [2466] = {price = 60000, countmax = 1}, [2494] = {price = 150000, countmax = 1} }
Item adicionado:
local a = {[2472] = {price = 160000, countmax = 1},
[2157] = {price = 13000, countmax = 100},
[2466] = {price = 60000, countmax = 1},
[2147] = {price = 600, countmax = 100},
[2494] = {price = 150000, countmax = 1}
}
Legendas:
Vermelho: O id do item que ira poder comprar entre colchetes "[]"
Rosa: O preço por cada unidade de item que ira comprar
Azul: A quantidade maxima que voce podera comprar (nao pode ultrapassar de 100)
AVISO IMPORTANTE!
Se voce botar quantidade maior que 1 em um item nao agrupavel, ou seja, nao da para juntar em 100, a pessoa ira tentar comprar 2 itens, ira pagar por 2 itens mais so recebera 1 item.
BETA VERSION!
Sujeito a mudanças...
Achou bugs? Duvidas? Sugestoes? Aceitamos aqui ou por PM.
NAO POSTE EM OUTRO FORUM, POIS SERA CONSIDERADO RIPPING