RustTip

InitOxide

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

Параметры

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

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

voidПоведение не описано.

Пример

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

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

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

Rust.opj (Oxide)
void Bootstrap.Init_Tier0()

Передаёт: —

РаботаетAssembly-CSharp.dll

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

// …
}
AI.useUnityNavmesh = CommandLine.HasSwitch("-useOldNavmesh");
AI.checkTileValid = CommandLine.HasSwitch("-checkTileValid");
if (!UnityEngine.Application.isEditor)
{
	string text = CommandLine.Full.Replace(CommandLine.GetSwitch("-rcon.password", CommandLine.GetSwitch("+rcon.password", "RCONPASSWORD")), "******");
	WriteToLog("Command Line: " + text);
}
Interface.CallHook("InitOxide");
int parentProcessId = CommandLine.GetSwitchInt("-parent-pid", 0);
if (parentProcessId != 0)
{
	try
	{
		SynchronizationContext syncContext = SynchronizationContext.Current;
		Process processById = Process.GetProcessById(parentProcessId);
		processById.EnableRaisingEvents = true;
// …

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