Ir para conteúdo
Banner com Efeitos

Featured Replies

  • Respostas 41
  • Visualizações 2.8k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Em data/lib/050-function.lua, coloque as seguintes funções: function compareTables(c, d)     for i = 1, #c do         if not isInArray(d, c[i]) then             return false         end     end    

  • Globalevent: local config = {     cash = xxx,                                    --Valor inicial da loteria.     limit = {1, 200},                              --Número mínimo e máximo da loteria.  

  • Ops, como testei a loteria com apenas um vencedor, não presenciei este erro. Enfim, corrigido. Sobre as outras alterações, as farei e editarei os códigos. EDIT: Pronto, códigos alterados. Não se esq

Postado

Muito bom, agora tem os pontos seprando os numeros,  :palmas: 
Muito bom, está aparecendo o total acumulado na mensagem inicial.  :palmas: 

Por outro lado temos uns erros, quando falamos !apostar sem dinheiro, não aparece mensagem nenhuma dizendo que precisa de dinheiro para apostar, simplesmente aparece no default como se não existisse nenhum comando!  :facepalm: 

O dinheiro não está indo pro banco, mt menos pro personagem.  :facepalm: 
O erro de aparecer so um vencedor permanece.  :facepalm: 
 

 

Prêmio (individual): 35.500.000 gold. Vencedores: [ ADMIN ] e 268446765.

 

Postado

Não conheço as funções do banco. Se esta não funcionou, então não sei.

Sobre o nome não aparecer, alterei o da primeira página e esqueci desta. Corrigido.

Já quando o comando é usado sem dinheiro, erros no console?

Editado por zipter98 (veja o histórico de edições)

não respondo pms solicitando suporte em programação/scripting

Postado
  • Autor

Teria como da uma facilitada?
Tipo queria que o player escolhesse 10 números de 1 a 100

e se ele acerta 5 desses 10 ele seria o ganhador.
Teria como? obrigado!

Ajudei? da um Rep+, não custa nada. ;D:P

 

Servidor de PokeTibia ja online.

Pagina: https://www.facebook.com/PokemonxStore?ref=bookmarks

Grupo: https://www.facebook.com/groups/257989224406246/

Site: http://pokexstore.wix.com/pokexstore

Postado

Não conheço as funções do banco. Se esta não funcionou, então não sei.

Sobre o nome não aparecer, alterei o da primeira página e esqueci desta. Corrigido.

Já quando o comando é usado sem dinheiro, erros no console?

Nenhum erro, so aparece no default normal, antes nao dava isso...

@edit 

A pessoa ta podendo jogar só 1x, queria deixa para a pessoa jogar quantas vezes quisesse!

Tem erro sim, perdão. Segue na imagem:

s3k6c6.png

Será que mudei algo errado? O meu está assim:

Talkactions

 

 

local config = {

    limit = {1, 2},                              --Número mínimo e máximo da loteria.
    numbers = 1,                                   --Quantos números o player deve escolher.
    price = 1000000,                                   --Preço para participar da loteria.
    storages = {9571, 9572, 9573},
}    
function onSay(cid, words, param)
    if getGlobalStorageValue(config.storages[1]) < 1 then
        doPlayerSendCancel(cid, "A loteria está fechada.")
    elseif getPlayerStorageValue(cid, config.storages[3]) ~= -1 then
        doPlayerSendCancel(cid, "{MEGA-SENA} Você já fez sua aposta.")
    elseif param == "" then
        doPlayerSendCancel(cid, "{MEGA-SENA} !apostar number1")
    elseif getPlayerMoney(cid) < config.price then
        doPlayerSendCancel(cid, "{MEGA-SENA} Você precisa de, no mínimo, "..config.minCash.." gold para apostar.")
    else
        local numbers = param:explode(" ")
        if #numbers ~= config.numbers then
            doPlayerSendCancel(cid, "{MEGA-SENA} Escolha "..config.numbers.." números, entre "..config.limit[1].." - "..config.limit[2]..".")
        else           
            local str = ""
            for i = 1, #numbers do
                numbers = tonumber(numbers)
                if not numbers or numbers < config.limit[1] or numbers > config.limit[2] then
                    return doPlayerSendCancel(cid, "{MEGA-SENA} Escolha números válidos ["..config.limit[1].." - "..config.limit[2].."].")
                end
                if str == "" then
                    str = numbers
                else
                    str = str..(i == #numbers and " e " or ", ")..numbers
                end
            end
            doPlayerRemoveMoney(cid, config.price)
            doPlayerSendTextMessage(cid, 27, "{MEGA-SENA} Você escolheu os números: "..str..".")
            for i = 0, config.numbers - 1 do
                setPlayerStorageValue(cid, config.storages[3] + i, numbers[i + 1])
            end
            addGlobalStorageValue(config.storages[2], config.price)
        end
    end
    return true
end

Globalevents

 

 

local config = {

    cash = 10000000,                                    --Valor inicial da loteria.
    limit = {1, 2},                              --Número mínimo e máximo da loteria.
    numbers = 1,                                   --Quantos números o player deve escolher.
    startTime = 1,                                 --Tempo para as apostas serem fechadas/anunciar vencedor, em minutos.
    messages = {                                   --Mensagens.
        "{MEGA-SENA} Está aberta para apostas! As apostas serão encerrada em: %d minuto(s).\nDinheiro acumulado até agora: %s.",
        "{MEGA-SENA} Está fechada para apostas!\nPrêmio (individual): %s gold. Vencedor%s: %s.",
        "{MEGA-SENA} Sem vencedores!\nDinheiro acumulado: %s gold.",
    },
    storages = {9571, 9572, 9573},
}
function onThink()
    setGlobalStorageValue(config.storages[1], 1)
    if getGlobalStorageValue(config.storages[2]) < 0 then
        setGlobalStorageValue(config.storages[2], config.cash)
    end
    broadcastMessage(config.messages[1]:format(config.startTime, pointNumber(getGlobalStorageValue(config.storages[2]))), MESSAGE_INFO_DESCR)
    for i = 1, config.startTime do
        addEvent(function()
            if i ~= config.startTime then
                broadcastMessage(config.messages[1]:format(config.startTime - i), MESSAGE_INFO_DESCR)
            else
                local sortedNumbers = {}
                for i = 1, config.numbers do
                    local value = math.random(config.limit[1], config.limit[2])
                    if isInArray(sortedNumbers, value) then
                        while isInArray(sortedNumbers, value) do
                            value = math.random(config.limit[1], config.limit[2])
                        end
                    end
                    table.insert(sortedNumbers, value)
                end
                setGlobalStorageValue(config.storages[1], -1)
                local winners, str = getLotteryWinners(sortedNumbers, config.numbers), ""
                local prize = math.floor(getGlobalStorageValue(config.storages[2]) / #winners)
                if #winners > 0 then
                    for i = 1, #winners do
                        if str == "" then
                            str = getCreatureName(winners)
                        else
                            str = str..(i == #winners and " e " or ", ")..getCreatureName(winners)
                        end
                    end
                end
                if str == "" then
                    broadcastMessage(config.messages[3]:format(pointNumber(getGlobalStorageValue(config.storages[2]))), MESSAGE_INFO_DESCR)
                else
                    broadcastMessage(config.messages[2]:format(pointNumber(prize), #winners > 1 and "es" or "", str), MESSAGE_INFO_DESCR)
                    setGlobalStorageValue(config.storages[2], -1)
                    for i = 1, #winners do
                        if isPlayer(winners) then
                            doPlayerDepositMoney(winners, prize)
                            doPlayerSendTextMessage(winners, MESSAGE_STATUS_CONSOLE_ORANGE, "Por vencer a loteria, você recebeu: "..prize.." gold.")
                        end
                    end
                end
                resetStorage(config.storages[3], config.numbers)
            end
        end, i * 60 * 1000)
    end
    return true
end

Veja:::
 
14:36 {MEGA-SENA} Está aberta para apostas! As apostas serão encerrada em: 1 minuto(s).
Dinheiro acumulado até agora: 11.000.000.
14:37 {MEGA-SENA} Está fechada para apostas!
Prêmio (individual): 12.000.000 gold. Vencedor: [ ADMIN ].

E não foi nenhum dinheiro pro Banco: 

14:38 [ ADMIN ] [600]: balance
14:38 Banco: Your account balance is 1.000.000 gold.

Obs: esse 1.000.000 eu ja tinha no banco (Esse é até aquele banco que vc me deu suporte, lembra? rsrs)

E nada foi pra backpack, o premio SUMIIIIU??   :blink:   :hum:

Editado por brendoonh (veja o histórico de edições)

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo