Ir para conteúdo

Featured Replies

Postado

Olá pessoa, estou com um pequeno erro no meu anti-entrosa, se alguém ajudar a solucionar o erro, eu posto o sistema de anti entrosa para vocês !

 

Erro :

Spoiler

[Error - GlobalEvent Interface]
data/globalevents/scripts/antiEntrosaKillua.lua:onThink
Description:
data/globalevents/scripts/antiEntrosaKillua.lua:8: attempt to compare nil with number
stack traceback:
        data/globalevents/scripts/antiEntrosaKillua.lua:8: in function <data/globalevents/scripts/antiEntrosaKillua.lua:1>
[Error - GlobalEvents::think] Couldn't execute event: Anti Entrosa

 

Globalevents.

Spoiler

function onThink(interval, lastExecution, thinkInterval)
    local storages = {}
    for a,b in pairs(Entrosa.arenas) do
        storages[b.number] = b.storage
    end
    for x,y in pairs(storages) do
        local tab_sto = getGlobalTableStorage(y)
        if tonumber(tab_sto[4]) < os.time() then
            if tonumber(tab_sto[1]) <= os.time() then
                for _, pid in pairs(getPlayersOnline()) do
                    if getPlayerStorageValue(pid,Entrosa.sto) == x then
                        doPlayerSetStorageValue(pid,Entrosa.sto,-1)
                        doTeleportThing(pid,getTownTemplePosition(getPlayerTown(cid)))
                        doPlayerSendTextMessage(pid,MESSAGE_STATUS_CONSOLE_ORANGE,"A guerra entre as guilds acabou e você foi trazido para o templo.")
                    end
                end
                local newTab = {}
                for l,t in next, tab_sto do
                    newTab[l] = 0
                end
                setGlobalTableStorage(y,newTab)
            end
        end
    end
    return true
end
 

 

Agradeço desde de já.

Postado

@Gabrielk 

 

Tenta assim:

 

Spoiler

function onThink(interval, lastExecution, thinkInterval)
    local storages = {}
    for a,b in pairs(Entrosa.arenas) do
        storages[b.number] = b.storage
    end
    for x,y in pairs(storages) do
        local tab_sto = getGlobalTableStorage(y)
        if (not tab_sto[4]) or tonumber(tab_sto[4]) < os.time() then
            if (not tab_sto[1]) or tonumber(tab_sto[1]) <= os.time() then
                for _, pid in pairs(getPlayersOnline()) do
                    if getPlayerStorageValue(pid,Entrosa.sto) == x then
                        doPlayerSetStorageValue(pid,Entrosa.sto,-1)
                        doTeleportThing(pid,getTownTemplePosition(getPlayerTown(cid)))
                        doPlayerSendTextMessage(pid,MESSAGE_STATUS_CONSOLE_ORANGE,"A guerra entre as guilds acabou e você foi trazido para o templo.")
                    end
                end
                local newTab = {}
                for l,t in next, tab_sto do
                    newTab[l] = 0
                end
                setGlobalTableStorage(y,newTab)
            end
        end
    end
    return true
end
 

 

 

 

PS:.. não precisa postar o sistema .-.

  • 4 weeks later...

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