Skip to content

OnAmmoSwitch

Usage

  • Return a non-null value to override default behavior

Example Autogenerated

csharp
private object OnAmmoSwitch( BaseProjectile instance, BasePlayer basePlayer, ItemDefinition itemDefinition )
{
    Puts( "OnAmmoSwitch works!" );
    return null;
}

Location

  • BaseProjectile::SwitchAmmoTo(BaseEntity.RPCMessage msg)
csharp
//---
	if (itemDefinition == null)
	{
		return;
	}
	ItemModProjectile component = itemDefinition.GetComponent<ItemModProjectile>();
	if ((bool)component && component.IsAmmo(primaryMagazine.definition.ammoTypes) && Interface.CallHook("OnAmmoSwitch", this, ownerPlayer, itemDefinition) == null)
	{
		if (primaryMagazine.contents > 0)
		{
			ownerPlayer.GiveItem(ItemManager.CreateByItemID(primaryMagazine.ammoType.itemid, primaryMagazine.contents, 0uL));
			SetAmmoCount(0);
//---

Released under the MIT License.