OnSupplyDropLanded
OxideCarbonEntityCalled when a supply drop is landed.
void OnSupplyDropLanded(SupplyDrop supplyDrop)Метод изменился — проверить — код метода игры отличается от того, под который записан хук в Oxide. Хук всё равно вызывается, но место вызова могло сместиться — стоит проверить после обновления.
Параметры
- supplyDrop
- SupplyDrop
Возвращаемое значение
voidВозвращаемое значение игнорируется — хук только уведомляет.
Пример
private void OnSupplyDropLanded(SupplyDrop supplyDrop)
{
Puts("OnSupplyDropLanded");
}Работает и в Oxide, и в Carbon: Carbon загружает плагины Oxide без изменений.
Место встраивания
Rust.opj (Oxide)
void SupplyDrop.OnCollisionEnter(Collision)
Передаёт: SupplyDrop supplyDrop
Метод изменился — проверитьReturnBehavior: ContinueArgumentBehavior: JustThisAssembly-CSharp.dll
Где вызывается (код игры этой ветки)
private void OnCollisionEnter(Collision collision)
{
if (((1 << collision.collider.gameObject.layer) & 0x100200) > 0 && HasFlag(Flags.Reserved3) && collision.rigidbody != null && collision.rigidbody.collisionDetectionMode == CollisionDetectionMode.ContinuousDynamic)
{
collision.rigidbody.collisionDetectionMode = CollisionDetectionMode.ContinuousSpeculative;
}
bool flag = ((1 << collision.collider.gameObject.layer) & 0x40A10111) > 0;
bool flag2 = ((1 << collision.collider.gameObject.layer) & 0x8000000) > 0;
Interface.CallHook("OnSupplyDropLanded", this);
BaseEntity entity = collision.GetEntity();
if (flag2 && entity is Tugboat)
{
flag = true;
}
if (flag2 && (entity is BoatBuildingBlock || PlayerBoat.IsChildOfFinishedPlayerBoat(entity)))
{
flag = true;
// …Источники: Rust.opj из OxideMod/Oxide.Rust (MIT) и метаданные хуков документации Carbon (MIT). Код методов — декомпиляция сервера этой ветки.