У меня в коде таймер убивается в конце раунда
Код
new Handle:timer_pos[MAXPLAYERS+1];
...
public Action:Command_wcs_settimer(args)
{
...
timer_pos[user] = CreateTimer(1.0, savepos, user, TIMER_REPEAT);
return Plugin_Handled;
}
...
public OnClientDisconnect(client)
{
if (timer_pos[client] != INVALID_HANDLE)
{
KillTimer(timer_pos[client]);
timer_pos[client] = INVALID_HANDLE;
}
}
public round_end(Handle:event, const String:name[], bool:dontBroadcast)
{
for (new i = 1; i <= MaxClients; i++)
{
if (timer_pos[i] != INVALID_HANDLE)
{
KillTimer(timer_pos[i]);
timer_pos[i] = INVALID_HANDLE;
}
}
}
Выдает ошибку в логах:
Код
L 10/22/2016 - 00:07:06: [SM] Exception reported: Invalid timer handle bfe0029c (error 3)
L 10/22/2016 - 00:07:06: [SM] Blaming: WCS_ultimate_backtime.smx
L 10/22/2016 - 00:07:06: [SM] Call stack trace:
L 10/22/2016 - 00:07:06: [SM] [0] KillTimer
L 10/22/2016 - 00:07:06: [SM] [1] Line 41, D:\wcsource\csgo\addons\sourcemod\scripting\WCS_ultimate_backtime.sp::round_end
Кто знает что нужно исправить? Проверка вроде стоит так что я хз...