Спасибо если сделаешь буду признателен.
Я не стал пока с унхукам работать, может быть такой касяк после смерти команды в начале карты плагин не сработать... Так как команда вся уже подключена, ну если после смерти тоже надо чтоб все стояли, чиркани.
#include <sourcemod>
#pragma newdecls required
bool Player_Spawn_Stop = false;
public void OnMapStart()
{
if(!Player_Spawn_Stop)
{
HookEvent("player_spawn", Event_Player_Spawn);
Player_Spawn_Stop = true;
}
}
public Action Event_Player_Spawn(Event event, const char[] name, bool dontBroadcast)
{
UnhookEvent("player_spawn", Event_Player_Spawn);
Player_Spawn_Stop = false;
{
CreateTimer(4.0, MOVETYPENONE, GetClientOfUserId(GetEventInt(event, "userid")), TIMER_FLAG_NO_MAPCHANGE);
}
PrintToChatAll("Игрокам запрещено движение!")
}
public Action MOVETYPENONE(Handle timer)
{
for (int i = 1; i <= MaxClients; ++i)
{
if (IsClientInGame(i))
{
if(GetEntProp(i, Prop_Send, "m_zombieClass") == 6)
{
SetEntityMoveType(i, MOVETYPE_NONE);
}
}
}
CreateTimer(20.0, MOVETYPEWALK, TIMER_FLAG_NO_MAPCHANGE); // Через сколько сек можно будет ходить
}
public Action MOVETYPEWALK(Handle timer)
{
for (int i = 1; i <= MaxClients; ++i)
{
if (IsClientInGame(i))
{
if(GetEntProp(i, Prop_Send, "m_zombieClass") == 6)
{
SetEntityMoveType(i, MOVETYPE_WALK);
PrintToChat(i, "Игрокам разрешено движение!")
}
}
}
return Plugin_Stop;
}
Ещё может быть такой касяк, увидит только первый игрок сообщение Игрокам запрещено движение!. Тоже скажешь исправлю.