Skip to content

OnRfFrequencyChange

Usage

  • Return a non-null value to override default behavior

Example Autogenerated

csharp
private object OnRfFrequencyChange( Detonator instance, int freq, BasePlayer player )
{
    Puts( "OnRfFrequencyChange works!" );
    return null;
}
csharp
private object OnRfFrequencyChange( PagerEntity instance, int num, BasePlayer player )
{
    Puts( "OnRfFrequencyChange works!" );
    return null;
}
csharp
private object OnRfFrequencyChange( RFBroadcaster instance, int num, BasePlayer player )
{
    Puts( "OnRfFrequencyChange works!" );
    return null;
}
csharp
private object OnRfFrequencyChange( RFReceiver instance, int num, BasePlayer player )
{
    Puts( "OnRfFrequencyChange works!" );
    return null;
}

Location

  • Detonator::ServerSetFrequency(BasePlayer player, int freq)
  • PagerEntity::ServerSetFrequency(BaseEntity.RPCMessage msg)
  • RFBroadcaster::ServerSetFrequency(BaseEntity.RPCMessage msg)
  • RFReceiver::ServerSetFrequency(BaseEntity.RPCMessage msg)
csharp
//---
	{
		RFManager.ReserveErrorPrint(player);
	}
	else
	{
		if (Interface.CallHook("OnRfFrequencyChange", this, freq, player) != null)
		{
			return;
		}
		Item ownerItem = GetOwnerItem();
		RFManager.ChangeFrequency(frequency, freq, this, isListener: false, IsOn());
//---
csharp
//---
{
	if (!(msg.player == null) && msg.player.CanBuild() && !(Time.time < nextChangeTime))
	{
		nextChangeTime = Time.time + 2f;
		int num = msg.read.Int32();
		if (Interface.CallHook("OnRfFrequencyChange", this, num, msg.player) == null)
		{
			RFManager.ChangeFrequency(frequency, num, this, isListener: true);
			frequency = num;
			SendNetworkUpdateImmediate();
			Interface.CallHook("OnRfFrequencyChanged", this, num, msg.player);
//---
csharp
//---
		int num = RFManager.ClampFrequency(msg.read.Int32());
		if (RFManager.IsReserved(num))
		{
			RFManager.ReserveErrorPrint(msg.player);
		}
		else if (Interface.CallHook("OnRfFrequencyChange", this, num, msg.player) == null)
		{
			SetFrequency(num);
			Hurt(MaxHealth() * 0.01f, DamageType.Decay, this);
			Interface.CallHook("OnRfFrequencyChanged", this, num, msg.player);
		}
//---
csharp
//---
public void ServerSetFrequency(RPCMessage msg)
{
	if (!(msg.player == null) && msg.player.CanBuild())
	{
		int num = RFManager.ClampFrequency(msg.read.Int32());
		if (Interface.CallHook("OnRfFrequencyChange", this, num, msg.player) == null)
		{
			SetFrequency(num);
			Interface.CallHook("OnRfFrequencyChanged", this, num, msg.player);
		}
	}
//---

Released under the MIT License.