Witam posiadam taką funkcje odpowiedzialną za kick ze spec. Posiada ona błedy mianowicie gdy wartość graczy jest stała działa bezproblemowo lecz gdy ilość graczy sie zmienia plugin nie działa poprawnie.
Opis:
Plugin wyrzuca gdy na serwerze jest przynajmniej 30 graczy.
Ma ktoś pomysł jak to naprawić?
public SpectatorCheck() { new plajery = get_playersnum(); new maxplayers = get_maxplayers(); new limit = maxplayers -2; new IP[33]; if(plajery < limit) return; static players[32], pcount; get_players(players, pcount, "h"); get_user_ip(0, IP, 32, 0); for(new i; i < pcount; i++) { if(get_bit(g_iBitValid, players[i])) { switch(get_pdata_int(players[i], 114)) { case 0, 3: if(++g_count[players[i]] >= limit) { get_user_name(players[i], name, charsmax(name)); ColorChat(0, NORMAL,"[SPECT]^x04 Gracz^x03 %s^x04 zostal wyrzucony ze spec. Powod: AFK", name); server_cmd("kick #%d ^"IP [%s] Spect Max to %d min^"", get_user_userid(players[i]), IP, MAX_SPECT_CHECK_PL); log_to_file("spec_kick.log", "Nick: %s Graczy: %d", name, plajery); } } } } }