Ir para conteúdo

[Resolvido] Problema No Script


MatheusGlad

Posts Recomendados

Tipo o script eh o seguinte, uma talkaction que a pessoa fala !apostar e randomiza varios ids para serem dados, e tira dinheiro.

 

O erro eh o seguinte: Quando eu uso a talkaction tira o dinheiro e n da o item =/

 

Script:

-- Script por MatheusMkalo(Xtibia) --

function onSay(cid, words, param)

local itemsid = {2076,5797}

if doPlayerRemoveMoney(cid, 100) == 1 then

doPlayerAddItem(cid, math.random(#itemsid))

else

doPlayerSendCancel(cid, 'Voce nao tem dinheiro para apostar!')

 

end

return TRUE

end

 

Ajuda ai n to consiguindo oO

Quero botar no Xtibia pras pessoas usarem, como n tem nenhum aki no xtibia

 

Ps: Irei botar creditos de quem ajudar é claro.

Editado por MatheusMkalo
Link para o comentário
Compartilhar em outros sites

Nao funcionou =/

Botei assim:

function onSay(cid, words, param)

local items ={2076,5797}

 

if doPlayerRemoveMoney(cid, 100) == 1 then

doPlayerAddItem(cid, items[math.random(#items)])

else

doPlayerSendCancel(cid, 'Voce nao tem dinheiro para apostar!')

 

end

return TRUE

end

Link para o comentário
Compartilhar em outros sites

Testa ae e ve se vai:

 

function onSay(cid, words, param)
local items = {2076,5797}
local price = 100
local chance = math.random(1, table.maxn(items))
     if getPlayerMoney(cid) >= price then
                if doPlayerRemoveMoney(cid, price) then
                   doPlayerAddItem(cid, items[chance], 1)
                else
                   doPlayerSendCancel(cid, "Você não tem dinheiro para apostar. O preço é " .. price .. " gold pieces.")
                end
                else
                   doPlayerSendCancel(cid, "Você não tem dinheiro para apostar. O preço é " .. price .. " gold pieces.") 

                   end
                   return TRUE
                   end

 

 

Ps: tomei a liberdade de adicionar condições a mais no script para maior segurança.

 

flw

Editado por apocarai
Link para o comentário
Compartilhar em outros sites

Valeu lesk pela ajuda

So queria pedir mais uma coisa, tava tentando aki fazer com que ele desce fail as vezes so que n to consiguindo.

 

Tipo voce fala !apostar e tem 50% chance de acerta e se errar falar Fail!

 

Como vo botar no xtibia o negocio da chance se voce puder fazer assim

"local acerto ="

pra eu poder indicar aonde mudar xD

 

Seria mais ou menos assim

50% de chance de dar acerto e se der acerto randomizar um dos itens do local items

Editado por MatheusMkalo
Link para o comentário
Compartilhar em outros sites

Assim então:

 

function onSay(cid, words, param)
local items = {2076,5797}
local price = 100
local chance = math.random(1, table.maxn(items))

     if getPlayerMoney(cid) >= price then
                if doPlayerRemoveMoney(cid, price) then
                   if math.random(100) >= 50 then
                   doPlayerAddItem(cid, items[chance], 1)
                   else
                       doPlayerSendCancel(cid, "Você não obteve sucesso.")
                       end
                       else
                           doPlayerSendCancel(cid, "Você não tem dinheiro para apostar. O preço é " .. tonumber(price) .. " gold pieces.")
                        end
                        else
                            doPlayerSendCancel(cid, "Você não tem dinheiro para apostar. O preço é " .. tonumber(price) .. " gold pieces.") 

                            end
                            return TRUE
                            end

 

 

flw

Link para o comentário
Compartilhar em outros sites

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