Jump to content


Photo

#lock сервера в скрипте


Best Answer SteelRat , 14 October 2017 - 21:42

у меня работает, должно и у вас, что то делаете не так.

Это серверные команды, они должны исполняться только на сервере.

 

 

 


порезались скрины, не читаемо)

if (time >= _restartTime) then {
	ServerRestart = true;
	getText(configfile >> "ServerConfig" >> "Restart" >> "Message" >> "restartServer") remoteExec ["systemchat", -2];
} else {

	if (time >= _serverLockTime && !_serverLocked) then {
		private _v = _serverCommandPassword serverCommand "#lock";
		if (_v) then {
			_serverLocked = true;
			getText(configfile >> "ServerConfig" >> "Restart" >> "Message" >> "serverLocked") remoteExec ["systemchat", -2];
		};
	};

	if (time >= _initRestartTime && {_loopTimeMsg != _initRestartLoopTimeMsg}) then {
		_loopTimeMsg = _initRestartLoopTimeMsg;
		_restartLoopTime = _initRestartLoopTimeMsg;
		_restartTimeMsg = time;
	};

	if (time >= _restartTimeMsg) then {
		private _msg = getText(configfile >> "ServerConfig" >> "Restart" >> "Message" >> "restartServerIn");
		private _time = round(_restartTime - time);
		_msg = format["%1 %2", _msg, [_time, "HH:MM:SS"] call BIS_fnc_secondsToString];
		_msg remoteExec ["systemchat", -2];
		_restartTimeMsg = time + _loopTimeMsg;
	};
};
{
	if (alive _x) then {
		_serverCommandPassword serverCommand format["#kick %1", owner _x];
	};
} foreach (allplayers - entities "HeadlessClient_F");

_timeout = diag_tickTime + 30;
//_serverCommandPassword serverCommand "#restartserver";
_serverCommandPassword serverCommand "#shutdown";
Go to the full post


  • Please log in to reply
1 reply to this topic

#1 OFFLINE   GordonFr

GordonFr

    Рядовой

  • Пользователи
  • 9 posts
  • Откуда:Иркутск

Posted 10 October 2017 - 08:12

И снова здравствуйте.
Подскажите как закрыть сервер на время выполнения скрипта (В самом скрипте).
Пытался что то типо: "password" serverCommand "#lock"; в самом скрипте, не работает


  • 0

#2 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 posts
  • Откуда:РФ

Posted 14 October 2017 - 21:42   Best Answer

у меня работает, должно и у вас, что то делаете не так.

Это серверные команды, они должны исполняться только на сервере.

 

Attached File  screenday_01.jpg   67.91KB   0 downloads

Attached File  screenday_02.jpg   55.36KB   0 downloads

Attached File  screenday_03.jpg   53.05KB   0 downloads

 

 


порезались скрины, не читаемо)

if (time >= _restartTime) then {
	ServerRestart = true;
	getText(configfile >> "ServerConfig" >> "Restart" >> "Message" >> "restartServer") remoteExec ["systemchat", -2];
} else {

	if (time >= _serverLockTime && !_serverLocked) then {
		private _v = _serverCommandPassword serverCommand "#lock";
		if (_v) then {
			_serverLocked = true;
			getText(configfile >> "ServerConfig" >> "Restart" >> "Message" >> "serverLocked") remoteExec ["systemchat", -2];
		};
	};

	if (time >= _initRestartTime && {_loopTimeMsg != _initRestartLoopTimeMsg}) then {
		_loopTimeMsg = _initRestartLoopTimeMsg;
		_restartLoopTime = _initRestartLoopTimeMsg;
		_restartTimeMsg = time;
	};

	if (time >= _restartTimeMsg) then {
		private _msg = getText(configfile >> "ServerConfig" >> "Restart" >> "Message" >> "restartServerIn");
		private _time = round(_restartTime - time);
		_msg = format["%1 %2", _msg, [_time, "HH:MM:SS"] call BIS_fnc_secondsToString];
		_msg remoteExec ["systemchat", -2];
		_restartTimeMsg = time + _loopTimeMsg;
	};
};
{
	if (alive _x) then {
		_serverCommandPassword serverCommand format["#kick %1", owner _x];
	};
} foreach (allplayers - entities "HeadlessClient_F");

_timeout = diag_tickTime + 30;
//_serverCommandPassword serverCommand "#restartserver";
_serverCommandPassword serverCommand "#shutdown";

  • 1




Яндекс.Метрика