OnTurretTarget
OxideCarbonTurretCalled when turret target occurs.
object OnTurretTarget(AutoTurret autoTurret, BaseCombatEntity targ)Method changed — check — the game method differs from the one the hook is recorded for in Oxide. The hook is still called, but its place may have shifted — worth checking after an update.
Parameters
- autoTurret
- AutoTurret
- targ
- BaseCombatEntity
Return value
objectReturn non-null to cancel the game action.
Example
object — you can affect the game: return a value to change or cancel the action.
private object OnTurretTarget(AutoTurret autoTurret, BaseCombatEntity targ)
{
Puts("OnTurretTarget");
// change nothing — the game continues as usual
return null;
// to affect the game:
// return false; // non-null cancels the game action
}Works in both Oxide and Carbon: Carbon loads Oxide plugins as is.
Injection point
Rust.opj (Oxide)
void AutoTurret.SetTarget(BaseCombatEntity)
Passes: AutoTurret autoTurret, BaseCombatEntity targ
Method changed — checkReturnBehavior: ExitWhenValidTypeArgumentBehavior: AllAssembly-CSharp.dll
Where it is called (this branch's game code)
public void SetTarget(BaseCombatEntity targ)
{
if (Interface.CallHook("OnTurretTarget", this, targ) != null)
{
return;
}
if (targ != target || targ.IsRealNull() != target.IsRealNull())
{
Effect.server.Run((targ == null) ? targetLostEffect.resourcePath : targetAcquiredEffect.resourcePath, transform.position, Vector3.up);
if (outputs != null && outputs.Length != 0 && outputs[0].connectedTo.Get() != null)
{
// …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.