I was able to solve it with set_task:
PHP Code:
public AdminVoiceOn(id)
{
if( !g_bAdmin[id] || is_user_alive(id) )
{
return PLUGIN_CONTINUE
}
g_bAdminVoice[id] = true
return PLUGIN_CONTINUE
}
public AdminVoiceOff(id)
{
if(!g_bAdminVoice[id])
return PLUGIN_CONTINUE
if(!task_exists(id))
{
set_task(2.0, "AdminVoiceOffDelay", id)
}
else
{
remove_task(id)
set_task(2.0, "AdminVoiceOffDelay", id)
}
return PLUGIN_CONTINUE
}
public AdminVoiceOffDelay(id)
{
g_bAdminVoice[id] = false
remove_task(id)
}
public client_disconnect(id)
{
if(task_exists(id))
{
remove_task(id)
}
}