FA
pedido

[Pedido] Ficar Free e Perder a House

Por Farathor, 10 de fev. de 2016 em Scripts

3
779
FarathorF
10 de fevereiro de 2016 às 02:03

Eu vi um cara fazendo um pedido parecido com o meu, só que para PDA, mas o meu script seria um pouco diferente, vou explicar.

 

Todo dia 10, o script iria fazer uma checagem, e todos os jogadores Free Account, que tiverem houses, iriam perda-las.

 

VLW

zipter98Z
12 de fevereiro de 2016 às 21:09
Melhor resposta

data/globalevents/scripts:

local check_day = 10

function onTime() 
    if os.date("%d") ~= check_day then return true end
    
    local report, houses_info, houses_count = "Houses cleaned this month:", db.getResult("SELECT id, owner FROM houses"), 0
    
    if houses_info:getID() == -1 then
        print(houses_info.." "..houses_count)
        return true
    end
    
    repeat
        local player_info = db.getResult("SELECT account_id FROM players WHERE id = "..houses_info:getDataInt("owner"))
        
        if player_info:getID() > -1 then
            local account_info = db.getResult("SELECT premdays FROM accounts WHERE id = "..player_info:getDataInt("account_id"))
            
            if account_info:getDataInt("premdays") == 0 then
                houses_count = houses_count + 1
                setHouseOwner(houses_info:getDataInt("id"), 0)
            end
            
            player_info:free()
            account_info:free()
        end
    until not houses_info:next()
    
    print(houses_info.." "..houses_count)
    houses_info:free()
    return true
end

Tag:

<globalevent name="clean_houses" time="00:00" event="script" value="nome_do_arquivo.lua"/>
FurabioF
16 de fevereiro de 2016 às 18:12

Tópico Movido
Este tópico foi movido de "OTServScriptingSuporte Scripting"
para "OTServScriptingSuporte ScriptingPedidos e dúvidas resolvidos - Scripting".