Перейти к содержанию
Авторизация  
ruslan14141414

Помогите с афк

Рекомендуемые сообщения

ruslan14141414
CALLBACK: AFK(playerid)
{
	if(PlayerInfo[playerid][pAFKStat] == 1)
	{
		PlayerInfo[playerid][pAFKStat] = 0;   // Если равен одному, то есть игрок в игре, даём значение нуля.
		PlayerInfo[playerid][pAFKTime] = 0;
		if(PlayerInfo[playerid][pAFKTextStat] != 55555) // если уже был создан текст над головой, удаляем
		{
			Delete3DTextLabel(PlayerInfo[playerid][pAFKText]);
			PlayerInfo[playerid][pAFKTextStat] = 55555;
		}
	}
	else
	{
		PlayerInfo[playerid][pAFKTime]++; //переменная равна нулю, значит игрок в афк
		new string[128];
		format(string, sizeof(string),"{2292FB}(( {FDFDFD}ESC: %d Секунд {2292FB}))",PlayerInfo[playerid][pAFKTime]);
		if(PlayerInfo[playerid][pAFKTime] == 1)
		{
			PlayerInfo[playerid][pAFKText] = Create3DTextLabel(string, COLOR_WHITE, 0.0, 0.0, 0.0, 20.0, 0, 1);
			Attach3DTextLabelToPlayer(PlayerInfo[playerid][pAFKText],playerid, 0.0, 0.0, 0.4);
			PlayerInfo[playerid][pAFKTextStat] = 0;
		}
		else
		{
			Update3DTextLabelText(PlayerInfo[playerid][pAFKText], COLOR_WHITE, string);
			if(PlayerInfo[playerid][pAFKTime] == 1800) // 300 это время в секундах через которое игрока кикнет, можно заменить на своё.
			{
				Delete3DTextLabel(PlayerInfo[playerid][pAFKText]);
				PlayerInfo[playerid][pAFKTextStat] = 55555;
				new sendername[MAX_PLAYER_NAME];
				GetPlayerName(playerid,sendername,sizeof(sendername));
				format(string, sizeof(string), "{33aa33}[Сервер]: {ff0000}%s {FFFFFF}был кикнут сервером за AFK больше чем 30 мин.", sendername);
				SCMToAll(0xD30505AA, string);
				Kick(playerid);
			}
		}
	}
}

дело в том что когда становиться в афк игрока не кикает , просто пишет был кикнут сервером за AFK больше чем 30 мин

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Aleksandr_Fedosov

@ruslan14141414

CALLBACK: AFK(playerid)
{
    if(PlayerInfo[playerid][pAFKStat] == 1)
    {
        PlayerInfo[playerid][pAFKStat] = 0;   // Если равен одному, то есть игрок в игре, даём значение нуля.
        PlayerInfo[playerid][pAFKTime] = 0;
        if(PlayerInfo[playerid][pAFKTextStat] != 55555) // если уже был создан текст над головой, удаляем
        {
            Delete3DTextLabel(PlayerInfo[playerid][pAFKText]);
            PlayerInfo[playerid][pAFKTextStat] = 55555;
        }
    }
    else
    {
        PlayerInfo[playerid][pAFKTime]++; //переменная равна нулю, значит игрок в афк
        new string[128];
        format(string, sizeof(string),"{2292FB}(( {FDFDFD}ESC: %d Секунд {2292FB}))",PlayerInfo[playerid][pAFKTime]);
        if(PlayerInfo[playerid][pAFKTime] == 1)
        {
            PlayerInfo[playerid][pAFKText] = Create3DTextLabel(string, COLOR_WHITE, 0.0, 0.0, 0.0, 20.0, 0, 1);
            Attach3DTextLabelToPlayer(PlayerInfo[playerid][pAFKText],playerid, 0.0, 0.0, 0.4);
            PlayerInfo[playerid][pAFKTextStat] = 0;
        }
        else
        {
            Update3DTextLabelText(PlayerInfo[playerid][pAFKText], COLOR_WHITE, string);
            if(PlayerInfo[playerid][pAFKTime] >= 1800) // 300 это время в секундах через которое игрока кикнет, можно заменить на своё.
            {
                Delete3DTextLabel(PlayerInfo[playerid][pAFKText]);
                PlayerInfo[playerid][pAFKTextStat] = 55555;
                new sendername[MAX_PLAYER_NAME];
                GetPlayerName(playerid,sendername,sizeof(sendername));
                format(string, sizeof(string), "{33aa33}[Сервер]: {ff0000}%s {FFFFFF}был кикнут сервером за AFK больше чем 30 мин.", sendername);
                SCMToAll(0xD30505AA, string);
                Kick(playerid);
            }
        }
    }
}

Попробуйте так

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vlad_Miroshnicov

@Aleksandr_Fedosov,а в чём разница 1 кода? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Aleksandr_Fedosov

, В проверке где игрока должно кикать ">= 1800" А у него "== 1800"

Изменено пользователем Aleksandr_Fedosov
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Max_Eitzen

Вопрос решен?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.