Map configs [Вопрос]

MaZa

Участник
Сообщения
1,732
Реакции
980
Map configs
[Любая игра] - Extended Map configs v1.0


Возможно или кто нибудь пробывал делать чтобы вначале или после первого раунда ( на 2 раунде )
включился дм ( из .cfg ) и на 3 раунд он отключился?.

Помогите если можно реализовать.
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
если можно реализовать
Бессмысленно. В режиме DM, как минимум, удаляются зоны закупки и это останется до конца карты, хоть вообще выгрузи все его модули. Нужно их восстанавливать, "паблик" далее уже не получится, всё не так просто.
 

MaZa

Участник
Сообщения
1,732
Реакции
980
Бессмысленно. В режиме DM, как минимум, удаляются зоны закупки и это останется до конца карты, хоть вообще выгрузи все его модули. Нужно их восстанавливать, "паблик" далее уже не получится, всё не так просто.
Мне без разницы dm не dm.. мне просто чтобы cfg грузило какой нибудь на 2м раунде..
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
cfg грузило какой нибудь на 2м раунде
PHP:
#define ROUND_NEWCONFIG        2
#define ROUND_OLDCONFIG        3

int g_iRounds;

public void OnPluginStart()
{
    HookEvent("round_start", Event_RoundStart, EventHookMode_PostNoCopy);
}

public void OnMapStart()
{
    g_iRounds = 0;
}

public void Event_RoundStart(Event event, const char[] Name, bool dontBroacast)
{
    if(++g_iRounds == ROUND_NEWCONFIG) ServerCommand("exec newconfig.cfg");
    else if(g_iRounds == ROUND_OLDCONFIG) ServerCommand("exec oldconfig.cfg");
}
ROUND_NEWCONFIG - раунд для выполнения первого (нового) конфига newconfig.cfg (папка cfg);
ROUND_OLDCONFIG - раунд для выполнения второго (старого) конфига oldconfig.cfg (папка cfg).
В конфиге могут быть указаны любые переменные и некоторые команды (возможные к выполнению от имени сервера).
 
Последнее редактирование:
  • Мне нравится
Реакции: MaZa

MaZa

Участник
Сообщения
1,732
Реакции
980
PHP:
#define ROUND_NEWCONFIG        2
#define ROUND_OLDCONFIG        3

int g_iRounds;

public void OnPluginStart()
{
    HookEvent("round_start", Event_RoundStart, EventHookMode_PostNoCopy);
}

public void OnMapStart()
{
    g_iRounds = 0;
}

public void Event_RoundStart(Event event, const char[] Name, bool dontBroacast)
{
    if(++g_iRounds == ROUND_NEWCONFIG) ServerCommand("exec newconfig.cfg");
    else if(g_iRounds == ROUND_OLDCONFIG) ServerCommand("exec oldconfig.cfg");
}
ROUND_NEWCONFIG - раунд для выполнения первого (нового) конфига newconfig.cfg (папка cfg);
ROUND_OLDCONFIG - раунд для выполнения второго (старого) конфига oldconfig.cfg (папка cfg).
В конфиге могут быть указаны любые переменные и некоторые команды (возможные к выполнению от имени сервера).
Разминка заканчивается и на счете общих команд ( 0:0 по раундам ) активируются кфг,в чем проблема?

Надо заменить:
#define ROUND_NEWCONFIG 2
#define ROUND_OLDCONFIG 3

На:
#define ROUND_NEWCONFIG 3
#define ROUND_OLDCONFIG 4

Я правильно понял?
И да.. не подскажешь как вывести текст? например этот раунд " Дм "
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
#define ROUND_NEWCONFIG 3
#define ROUND_OLDCONFIG 4
Да. Разминка тоже считается за раунд (удобно и тем, что можно выполнить конфиг как раз во время него).
этот раунд " Дм "
PHP:
#pragma newdecls required

#define ROUND_NEWCONFIG		3
#define ROUND_OLDCONFIG		4

int g_iRounds;

public void OnPluginStart()
{
	HookEvent("round_start", Event_RoundStart, EventHookMode_PostNoCopy);
}

public void OnMapStart()
{
	g_iRounds = 0;
}

public void Event_RoundStart(Event event, const char[] Name, bool dontBroadcast)
{
	if(++g_iRounds == ROUND_NEWCONFIG)
	{
		ServerCommand("exec newconfig.cfg");
		PrintToChatAll("Этот раунд - ДМ.");
	}
	else if(g_iRounds == ROUND_OLDCONFIG)
	{
		ServerCommand("exec oldconfig.cfg");
		PrintToChatAll("Этот и последующие раунды - обычные.");
	}
}
 
  • Мне нравится
Реакции: MaZa

MaZa

Участник
Сообщения
1,732
Реакции
980
Да. Разминка тоже считается за раунд (удобно и тем, что можно выполнить конфиг как раз во время него).
PHP:
#pragma newdecls required

#define ROUND_NEWCONFIG        3
#define ROUND_OLDCONFIG        4

int g_iRounds;

public void OnPluginStart()
{
    HookEvent("round_start", Event_RoundStart, EventHookMode_PostNoCopy);
}

public void OnMapStart()
{
    g_iRounds = 0;
}

public void Event_RoundStart(Event event, const char[] Name, bool dontBroadcast)
{
    if(++g_iRounds == ROUND_NEWCONFIG)
    {
        ServerCommand("exec newconfig.cfg");
        PrintToChatAll("Этот раунд - ДМ.");
    }
    else if(g_iRounds == ROUND_OLDCONFIG)
    {
        ServerCommand("exec oldconfig.cfg");
        PrintToChatAll("Этот и последующие раунды - обычные.");
    }
}
Оффтоп
--- Добавлено позже ---
Да. Разминка тоже считается за раунд (удобно и тем, что можно выполнить конфиг как раз во время него).
PHP:
#pragma newdecls required

#define ROUND_NEWCONFIG        3
#define ROUND_OLDCONFIG        4

int g_iRounds;

public void OnPluginStart()
{
    HookEvent("round_start", Event_RoundStart, EventHookMode_PostNoCopy);
}

public void OnMapStart()
{
    g_iRounds = 0;
}

public void Event_RoundStart(Event event, const char[] Name, bool dontBroadcast)
{
    if(++g_iRounds == ROUND_NEWCONFIG)
    {
        ServerCommand("exec newconfig.cfg");
        PrintToChatAll("Этот раунд - ДМ.");
    }
    else if(g_iRounds == ROUND_OLDCONFIG)
    {
        ServerCommand("exec oldconfig.cfg");
        PrintToChatAll("Этот и последующие раунды - обычные.");
    }
}
[OFF]Спасибо[/OFF]
--- Добавлено позже ---
Можно ли вывести на экран? текст) и чтобы во время дм моргало пока не закончится дм?


C-подобный:
        PrintCenterText("Этот и последующие раунды - обычные. Правила действуют");
Пробывал так вывести не получается.
 
Последнее редактирование:

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
PHP:
PrintCenterTextAll
Либо:
PHP:
PrintHintTextToAll
Только в начале обычно выводятся стандартные фразы, поэтому, может не отобразится.
чтобы во время дм моргало пока не закончится дм
Потребуется таймер. Не советую вообще, т.к. будет перебивать и всю остальную информацию.
 
  • Мне нравится
Реакции: MaZa

MaZa

Участник
Сообщения
1,732
Реакции
980
PHP:
PrintCenterTextAll
Либо:
PHP:
PrintHintTextToAll
Только в начале обычно выводятся стандартные фразы, поэтому, может не отобразится.Потребуется таймер. Не советую вообще, т.к. будет перебивать и всю остальную информацию.
Подскажите как сделать музыку в течение времени ДМ(А)
 

MaZa

Участник
Сообщения
1,732
Реакции
980
PHP:
PrintCenterTextAll
Либо:
PHP:
PrintHintTextToAll
Только в начале обычно выводятся стандартные фразы, поэтому, может не отобразится.Потребуется таймер. Не советую вообще, т.к. будет перебивать и всю остальную информацию.
в чем проблемка перестало выводить сообщение?.
 
Сверху Снизу