Messages and Kick in 0.3x
#1

I have 4 functions that will kick a player in casse smth happens. I have login kicker, locked server kicked, fps kicker and ping kicker, 2 of them are called in onplayerconnect and i get the message with the kick message with the reason, however the other 2 are called in onplayerupdate and i dont get the message.

Код:
public OnPlayerConnect(playerid) {
	Players[playerid][Kicked] = false;

	// Login
	if (!Players[playerid][LogIn]) { // /login <Password>
		SetTimerEx("Update_Login_Kicker", 30000, 0, "i", playerid);

		format(cmdstr, 150, "[Account Info] You have 30 Seconds to type /login <Password>");
		SendClientMessage(playerid, ACC_COLOR, cmdstr); }

	// Server Lock
	if (Server[Lock]) {
		SetTimerEx("Update_Lock_Kicker", 30000, 0, "i", playerid);

		SendClientMessage(playerid, SERVER_COLOR, "[Server Info] You have 30 Seconds to type /pass <Password>"); }

	return 1; }

public OnPlayerDisconnect(playerid, reason) {
	if (!Players[playerid][Kicked]) switch (reason) {
		case 0: format(cmdstr, 150, "*** %s has left the server (Timeout)", Players[playerid][Name]);
		case 1:	format(cmdstr, 150, "*** %s has left the server (Leaving)", Players[playerid][Name]);
		case 2:	format(cmdstr, 150, "*** %s has left the server (Kicked/Banned)", Players[playerid][Name]); }

	SendClientMessageToAll(COLOR, cmdstr);

	return 1; }

public OnPlayerUpdate(playerid) {
	Update_FPS_Kicker(playerid);
	Update_Ping_Kicker(playerid);
	return 1; }

Update_FPS_Kicker (playerid) {
	...
	if (!Players[playerid][Kicked] && Players[playerid][FPSWarnings] > 50) {
		format(cmdstr, 150, "*** %s has left the server (Kicked || Reason: Low FPS)", Players[playerid][Name]);
        SendClientMessageToAll(COLOR, cmdstr);

        Players[playerid][Kicked] = true;
        SetTimerEx("KickPlayer", 1, false, "i", playerid); }

	return 1; }

Update_Ping_Kicker (playerid) {
	...
	if (!Players[playerid][Kicked] && Players[playerid][PingWarnings] > 5) {
		format(cmdstr, 150, "*** %s has left the server (Kicked || Reason: High Ping)", Players[playerid][Name]);
        SendClientMessageToAll(COLOR, cmdstr);

        Players[playerid][Kicked] = true;
        SetTimerEx("KickPlayer", 1, false, "i", playerid); }

	return 1; }

forward Update_Login_Kicker (playerid);
public Update_Login_Kicker (playerid) {
    if (!Players[playerid][Kicked] && !Players[playerid][LogIn]) {
	    format(cmdstr, 150, "*** %s has left the server (Kicked || Reason: Fail Login)", Players[playerid][Name]);
        SendClientMessageToAll(COLOR, cmdstr);

        Players[playerid][Kicked] = true;
        SetTimerEx("KickPlayer", 1, false, "i", playerid); }

	return 1; }

forward Update_Lock_Kicker (playerid);
public Update_Lock_Kicker (playerid) {
    if (!Players[playerid][Kicked] && !Players[playerid][Unlock] && Server[Lock]) {
	    format(cmdstr, 150, "*** %s has left the server (Kicked || Reason: Server Lock)", Players[playerid][Name]);
        SendClientMessageToAll(COLOR, cmdstr);

        Players[playerid][Kicked] = true;
        SetTimerEx("KickPlayer", 1, false, "i", playerid); }

	return 1; }
I already tried to call Update_FPS_Kicker and Update_Ping_Kicker with a time and it didnt worked either...
Plus in the 4 cases everytime someone is kicked by this 4 function the kick message appears 2 times. Like:
*** P3DRO has left the server (Kicked || Reason: Server Lock)
*** P3DRO has left the server (Kicked || Reason: Server Lock)

Pls help
Reply


Messages In This Thread
Messages and Kick in 0.3x - by P3DRO - 16.03.2013, 03:34
Re: Messages and Kick in 0.3x - by Alvord - 16.03.2013, 03:59
Re: Messages and Kick in 0.3x - by P3DRO - 16.03.2013, 04:00
Re: Messages and Kick in 0.3x - by Alvord - 16.03.2013, 04:05
Re: Messages and Kick in 0.3x - by P3DRO - 16.03.2013, 04:09
Re: Messages and Kick in 0.3x - by P3DRO - 17.03.2013, 14:53
Re: Messages and Kick in 0.3x - by kamzaf - 17.03.2013, 15:15
Re: Messages and Kick in 0.3x - by P3DRO - 17.03.2013, 15:20
Re: Messages and Kick in 0.3x - by kamzaf - 17.03.2013, 15:32
Re: Messages and Kick in 0.3x - by P3DRO - 17.03.2013, 15:45

Forum Jump:


Users browsing this thread: 2 Guest(s)