Hello, I have a plugin that when someone in retry, you have to wait 20 seconds to reconnect again. But when I wait 20 seconds and try to reconnect, for example looks like this: -1 -2 -3 -4 -5 and so forward! Anyone know any solution for this?
thanks
PHP Code:
#include <amxmodx>
new Trie:g_SteamID, g_NoReconnectTime;
public plugin_init()
{
register_plugin("PUG NoRetry", "1.0.2", "Joao Krames");
g_NoReconnectTime = register_cvar("amx_noretry", "0");
g_SteamID = TrieCreate();
}
public plugin_end()
TrieDestroy(g_SteamID);
public client_authorized(Client)
{
new Float:NoReconnectTime = get_pcvar_float(g_NoReconnectTime);
if (!NoReconnectTime)
return;
new SteamID[32];
get_user_authid(Client, SteamID, 31);
if (!TrieKeyExists(g_SteamID, SteamID))
return;
new Float:Time, Reason[64];
TrieGetCell(g_SteamID, SteamID, Time);
Time = NoReconnectTime - (get_gametime() - Time);
formatex(Reason, 63, "Sem retry. Aguarde %d para reconectar-se.", floatround(Time));
Disconnect(Client, Reason);
set_task(NoReconnectTime, "RemoveSteamID", _, SteamID, 32);
}
public client_disconnect(Client)
{
new SteamID[32];
get_user_authid(Client, SteamID, 31);
TrieSetCell(g_SteamID, SteamID, get_gametime());
}
public RemoveSteamID(SteamID[32])
TrieDeleteKey(g_SteamID, SteamID);
stock Disconnect(const Client, const Reason[] = "")
{
message_begin(MSG_ONE, SVC_DISCONNECT, _, Client);
write_string(Reason);
message_end();
}
__________________