Skip to content

OnSiegeWeaponFire

Usage

  • Return a non-null value to override default behavior

Example Autogenerated

csharp
private void OnSiegeWeaponFire( Ballista ballistaOwner, BasePlayer player )
{
    Puts( "OnSiegeWeaponFire works!" );
}
csharp
private void OnSiegeWeaponFire( BatteringRam instance, BasePlayer player )
{
    Puts( "OnSiegeWeaponFire works!" );
}
csharp
private void OnSiegeWeaponFire( Catapult instance, BasePlayer player )
{
    Puts( "OnSiegeWeaponFire works!" );
}

Location

  • BallistaGun::SERVER_FireClientProjectile(BaseEntity/RPCMessage msg)
  • BatteringRam::SERVER_WantsAttack(BaseEntity/RPCMessage msg)
  • Catapult::SERVER_WantsFire(BaseEntity/RPCMessage msg)
csharp
//---
	}
	if (player.InSafeZone())
	{
		return;
	}
	if (Interface.CallHook("OnSiegeWeaponFire", this.ballistaOwner, player) != null)
	{
		return;
	}
	ItemDefinition ammoType = this.magazine.ammoType;
	if (ammoType == null)
//---
csharp
//---
	}
	if (driver.InSafeZone())
	{
		return;
	}
	if (Interface.CallHook("OnSiegeWeaponFire", this, player) != null)
	{
		return;
	}
	base.ClientRPC(RpcTarget.NetworkGroup("CLIENT_Attack"));
	base.Invoke(delegate
//---
csharp
//---
	BasePlayer player = msg.player;
	if (!this.CanFire())
	{
		return;
	}
	if (Interface.CallHook("OnSiegeWeaponFire", this, player) != null)
	{
		return;
	}
	float force = this.reloadProgress;
	this.Fire(player, force);
//---

Released under the MIT License.