RustTip

OnFireworkExhausted

OxideCarbonFirework

Called when a firework is exhausted.

void OnFireworkExhausted(BaseFirework baseFirework)
Works — the game method in this build is the one the hook was written for.

Parameters

baseFirework
BaseFirework

Return value

voidThe return value is ignored — the hook only notifies.

Example

private void OnFireworkExhausted(BaseFirework baseFirework)
{
    Puts("OnFireworkExhausted");
}

Works in both Oxide and Carbon: Carbon loads Oxide plugins as is.

Injection point

Rust.opj (Oxide)
void BaseFirework.OnExhausted()

Passes: BaseFirework baseFirework

WorksReturnBehavior: ContinueArgumentBehavior: JustThisAssembly-CSharp.dll

Where it is called (this branch's game code)

// …
	using (FlagsUpdateScope flagsUpdateScope = StartSetFlags(FlagsUpdateMode.Local))
	{
		flagsUpdateScope.Set(Flags.Reserved8, b: true);
		flagsUpdateScope.Set(Flags.OnFire, b: false);
		flagsUpdateScope.Set(Flags.On, b: false);
	}
	EnableGlobalBroadcast(wants: false);
	SendNetworkUpdate_Flags();
	Interface.CallHook("OnFireworkExhausted", this);
	Invoke(Cleanup, corpseDuration);
	_activeFireworks.Remove(this);
}

Sources: Rust.opj from OxideMod/Oxide.Rust (MIT) and hook metadata of the Carbon documentation (MIT). Method code is decompiled from this branch's server.