RustTip

OnRentableShopOpened

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

Параметры

rentableShop
RentableShop
byPlayer
BasePlayer

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

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

Пример

private void OnRentableShopOpened(RentableShop rentableShop, BasePlayer byPlayer)
{
    Puts("OnRentableShopOpened");
}

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

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

Rust.opj (Oxide)
void RentableShop.OnShopOpened(BasePlayer)

Передаёт: RentableShop rentableShop, BasePlayer byPlayer

РаботаетReturnBehavior: ContinueArgumentBehavior: All (this)Assembly-CSharp.dll

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

// …
	nextRentDue = 3600f;
	InvokeRepeating(DeductRent, 60f, 60f);
	int num = Mathf.RoundToInt((float)InitialScrapFee * CurrentRentMultiplier);
	int openScrapCost = num;
	byPlayer.inventory.UseAmount(ItemManager.Items.Scrap, num);
	int num2 = Mathf.RoundToInt((float)ScrapPerHourRent * 12f * CurrentRentMultiplier);
	byPlayer.inventory.MoveItemsIntoContainer(ItemManager.Items.Scrap, num2, invisibleVendingMachine.inventory);
	Analytics.Azure.OnShopOpened(this, openScrapCost, num2);
Interface.CallHook("OnRentableShopOpened", this, byPlayer);
}

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