RustTip

OnServerShutdown

OxideCarbonServer

Called when server shutdown occurs.

void OnServerShutdown()
Работает — метод игры в этой сборке тот же, под который написан хук.

Параметры

Без параметров.

Возвращаемое значение

voidВозвращаемое значение игнорируется — хук только уведомляет.

Пример

private void OnServerShutdown()
{
    Puts("OnServerShutdown");
}

Работает и в Oxide, и в Carbon: Carbon загружает плагины Oxide без изменений.

Где вызывается

ядро Oxide (Oxide.Rust)
RustCore::IOnServerShutdown()

Код ядра Oxide — отсюда вызывается хук

private void IOnServerShutdown()
{
    Interface.Oxide.CallHook("OnServerShutdown");
    Interface.Oxide.OnShutdown();
    Covalence.PlayerManager.SavePlayerData();
}

Место встраивания

Rust.opj (Oxide)
void ServerMgr.Shutdown()

Встроен служебный хук IOnServerShutdown — этот хук вызывает его обработчик в ядре Oxide/Carbon

РаботаетReturnBehavior: ContinueArgumentBehavior: NoneAssembly-CSharp.dll

Где вызывается (код игры этой ветки)

internal void Shutdown()
{
	Interface.CallHook("IOnServerShutdown");
	BasePlayer[] array = BasePlayer.activePlayerList.ToArray();
	for (int i = 0; i < array.Length; i++)
	{
		array[i].Kick("Server Shutting Down");
	}
	ConsoleSystem.Run(ConsoleSystem.Option.Server, "server.save");
	try
	{
// …

Источники: Rust.opj из OxideMod/Oxide.Rust (MIT) и метаданные хуков документации Carbon (MIT). Код методов — декомпиляция сервера этой ветки.