RustTip

OnFogOfWarImageUpdate

OxideCarbonPlayer
object OnFogOfWarImageUpdate(BasePlayer basePlayer, uint uInt32, uint uInt32, byte[] byte[], object l3, object l5)
Метод изменился — проверить — код метода игры отличается от того, под который записан хук в Oxide. Хук всё равно вызывается, но место вызова могло сместиться — стоит проверить после обновления.

Параметры

basePlayer
BasePlayer
uInt32
uint
uInt32
uint
byte[]
byte[]
l3
object
l5
object

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

objectВерните не null, чтобы отменить действие игры.

Пример

object — можно повлиять на игру: вернуть значение, чтобы изменить или отменить действие.

private object OnFogOfWarImageUpdate(BasePlayer basePlayer, uint uInt32, uint uInt32, byte[] byte[], object l3, object l5)
{
    Puts("OnFogOfWarImageUpdate");

    // ничего не меняем — игра продолжит как обычно
    return null;

    // повлиять на игру:
    // return false; // не null — действие игры отменяется
}

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

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

Rust.opj (Oxide)
void BasePlayer.FogImageUpdate(BaseEntity.RPCMessage)

Передаёт: BasePlayer basePlayer, uint uInt32, uint uInt32, byte[] byte[], object l3, object l5

Метод изменился — проверитьReturnBehavior: ExitWhenNonNullArgumentBehavior: UseArgumentString (this, l0, l1, l2, l3, l5)Assembly-CSharp.dll

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