RustTip

OnDestroyUI

OxideCarbonCUI

Called when destroy UI occurs.

void OnDestroyUI(BasePlayer player, string name)

Параметры

player
BasePlayer
name
string

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

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

Пример

private void OnDestroyUI(BasePlayer player, string name)
{
    Puts("OnDestroyUI");
}

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

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

ядро Oxide (Oxide.Rust)
JsonWriterResources::DestroyUi(BasePlayer player, string elem)

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

public static bool DestroyUi(BasePlayer player, string elem)
{
    if (player?.net != null)
    {
        Interface.CallHook("OnDestroyUI", player, elem);
        CommunityEntity.ServerInstance.ClientRPC(RpcTarget.Player("DestroyUI", player.net.connection), elem);
        return true;
    }

    return false;
}

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

Carbon
Oxide.Game.Rust.Cui.CuiHelper.DestroyUi
Внутри CarbonCarbon.Common

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