Planes
Потерявшиеся точка с запятой
- Сообщения
- 356
- Реакции
- 97
Пробую делать свой первый таймер который запрещает менять команду.
Нужна помощь в создании .
При переходе за наблюдателей создается таймер на N секунд. Пока таймер не закончится, нельзя выбрать команду.
Но вот, почему то текст о запрете есть, но команда все равно меняется
За любую помощь буду благодарен
Нужна помощь в создании .
При переходе за наблюдателей создается таймер на N секунд. Пока таймер не закончится, нельзя выбрать команду.
Но вот, почему то текст о запрете есть, но команда все равно меняется
PHP:
#pragma semicolon 1
#include <sourcemod>
public Plugin:myinfo =
{
name = "[HS] Блокировка смены команд",
author = "High SKill",
description = "Плагин запрещает менять команду игрокам",
version = "1b"
};
Handle g_hTimer[MAXPLAYERS+1];
bool g_iBlock;
public OnPluginStart()
{
AddCommandListener(Command_CheckJoin, "jointeam");
}
public Action:Command_CheckJoin(client, const String:command[], args)
{
new String:teamString[3];
GetCmdArg(1, teamString, sizeof(teamString));
new Target_Team = StringToInt(teamString);
new Current_Team = GetClientTeam(client);
if (!g_hTimer[client])
{
if (Current_Team == 1 && Target_Team == 2 && g_iBlock)
{
PrintToChat(client, "\x03[SM] \x01Сейчас вам нельзя сменить команду!"); // Уведомление для игрока
return Plugin_Handled;
}else{
if (Current_Team == 2 && Target_Team == 3 || Current_Team == 3 && Target_Team == 2) // Запрет смены команды
{
PrintToChat(client, "\x03[SM] \x01Нельзя менять комманду!"); // Уведомление для игрока
return Plugin_Handled;
}
if (Target_Team == 1) // Проверка на выбор игроком команду Наблюдателей
{
PrintToChat(client, "\x03[SM] \x01Вы перешли в наблюдатели!"); // Уведомление для игрока
CreateTimer(10.0, timerChange, GetClientUserId(client), TIMER_FLAG_NO_MAPCHANGE); // Установка таймера
g_iBlock = true;
return Plugin_Continue;
}
return Plugin_Handled;
}
}
return Plugin_Continue;
}
public Action:timerChange(Handle hTimer, any UserId)
{
int iClient = GetClientOfUserId(UserId);
if (iClient)
{
PrintToChat(iClient, "\x03[SM] \x01Вы снова можете сменить команду!"); // Уведомление для игрока
g_hTimer[iClient] = null;
g_iBlock = false;
}
return Plugin_Continue;
}
Последнее редактирование: