Отлов момента, когда игрок забросил игру

Primo

Пользователь
26 Авг 2016
65
0
Собственно, из шапки понятно, нужно отловить момент, когда игрок полностью покинул игру, то бишь его
DOTA_CONNECTION_STATE
меняется на
DOTA_CONNECTION_STATE_ABANDONED
 
20 Дек 2016
892
170
Может можно проще, я так делаю:
Lua:
_G.PlayerConection = {}
GameRules:GetGameModeEntity():SetThink( function()
    for i = 0, PlayerResource:GetPlayerCount()-1 do
        if PlayerResource:IsValidPlayerID(i) then
            local connection = PlayerResource:GetConnectionState(i)
            if connection ~= PlayerConection[i] then
                PlayerConection[i] = connection
                if connection == DOTA_CONNECTION_STATE_ABANDONED then
                    Events:OnPlayerAbandoned(i) --здесь надо свою функцию вставить
                end
            end
        end
    end
    return 1/30
end, "ConnectionThink" )
 

Primo

Пользователь
26 Авг 2016
65
0
Через тинкер как-то тяжеловато для работы скрипта будет.
 

vulkantsk

Супермодератор
Команда форума
21 Июн 2017
1,149
196
www.dotabuff.com
Проект
Roshan defense
Реклама: