Всем привет ребята нужен плагин. Суть плагина от определенного количества игроков чтоб менялась конфигурация например на сервере 7 человек зашел еще один то есть уже 8 играет сразу изменился квар и в обратном случаи, вышел один игрок настройки поменялись на ранее.
Спойлер: [Любая игра] Простейший конфигуратор по количеству игроков PHP: #define PEOPLE_NEWCONFIG 8public OnClientPostAdminCheck(client){ if(GetClientCount() == PEOPLE_NEWCONFIG) ServerCommand("mp_friendlyfire 1");}public OnClientDisconnect(client){ if(IsClientInGame(client)) if(GetClientCount() == PEOPLE_NEWCONFIG) ServerCommand("mp_friendlyfire 0");} Где: PEOPLE_NEWCONFIG - минимальное количество зашедших на сервер игроков, при котором в силу вступают новые настройки (и наоборот). "mp_friendlyfire 1" - указать любые переменные и консольные команды через точку с запятой. Например: "mp_fraglimit 60;mp_freezetime 2;mp_roundtime 7". Можно и из файла брать все настройки - одинаково просто.
Спасибо большое вроде работает=). Я вот добавил рекламу но она очень много спамится, можно как нибудь исправит? Оффтоп PHP: #define PEOPLE_NEWCONFIG 6#include <colors>public OnClientPostAdminCheck(client){ if(GetClientCount() == PEOPLE_NEWCONFIG) ServerCommand("sm_cvar z_difficulty Hard");// CPrintToChatAll("{blue}Превышенный лимит игроков смена сложности на {green}Мастер{blue}!");}public OnClientDisconnect(client){ if(IsClientInGame(client)) if(GetClientCount() == PEOPLE_NEWCONFIG) ServerCommand("sm_cvar z_difficulty Normal");// CPrintToChatAll("{blue}Состав команды уменьшился смена сложности на {green}Нормально{blue}!");}
Писать надо внутри, после проверки: Спойлер PHP: #include <colors>#define PEOPLE_NEWCONFIG 6public OnClientPostAdminCheck(client){ if(GetClientCount() == PEOPLE_NEWCONFIG) { ServerCommand("sm_cvar z_difficulty Hard"); CPrintToChatAll("{blue}Превышенный лимит игроков, смена сложности на {green}Мастер{blue}!"); }}public OnClientDisconnect(client){ if(IsClientInGame(client)) if(GetClientCount() == PEOPLE_NEWCONFIG) { ServerCommand("sm_cvar z_difficulty Normal"); CPrintToChatAll("{blue}Состав команды уменьшился, смена сложности на {green}Нормально{blue}!"); }}
Боты есть? Учти, что их тоже считает. Поэтому, если стало 8 игроков (включая ботов), люди вышли, а боты - нет, то и сбрасывать не станет. Проверил - у меня стабильно, даже с ботами.
Как я пробовал в настройках стоит 6 чел. зашел на сервер играло четверо настройка поменялась, вышел из сервера настройка осталась включенной=)
Как-то математика хромает, тебе не кажется? Если четверо + ты, то от 5 не включится. Либо ещё бот появился, либо кто-то подключался в этот момент (качал карту, звуки, модели) и его посчитало. Может, когда ты вышел, ещё начал кто-то подключаться к серверу и настройка сохранилась. Проверяй по занятым слотам ещё, они покажут "подключенцев".
Шутник как всегда) Я с тобой согласен если он считает и зараженных боссов тогда ты прав=), ну а если это простой баг опять же+)?
Босы - эти те же боты, конечно считает. Если же ты хочешь, чтобы считало только людей, так и скажи. Тут тоже ненамного больше писанины.
Спойлер: [Любая игра] Простой конфигуратор по количеству людей PHP: #include <colors>#define PEOPLE_NEWCONFIG 6new bool:g_bPlayerLoaded[MAXPLAYERS + 1], g_iPlayers;public OnMapEnd() g_iPlayers = 0;public OnClientPostAdminCheck(client){ if (!IsFakeClient(client)) { g_bPlayerLoaded[client] = true; if (++g_iPlayers == PEOPLE_NEWCONFIG) { ServerCommand("sm_cvar z_difficulty Hard"); CPrintToChatAll("{blue}Превышенный лимит игроков, смена сложности на {green}Мастер{blue}!"); } }}public OnClientDisconnect_Post(client){ if (g_bPlayerLoaded[client]) { g_bPlayerLoaded[client] = false; if (--g_iPlayers == PEOPLE_NEWCONFIG - 1) { ServerCommand("sm_cvar z_difficulty Normal"); CPrintToChatAll("{blue}Состав команды уменьшился, смена сложности на {green}Нормально{blue}!"); } }} Где: PEOPLE_NEWCONFIG - минимальное количество зашедших на сервер игроков, при котором в силу вступают новые настройки (и наоборот). "sm_cvar z_difficulty Hard" - указать любые переменные и консольные команды через точку с запятой. Например: "mp_fraglimit 60;mp_freezetime 2;mp_roundtime 7". Из-за окраски чата не забудьте файл colors.inc! Этот конфигуратор, на сей раз, считает только полностью подключившихся к серверу игроков (скачавших карту, звуки, модели т.п.). Оффтоп Грубо говоря.