OnSwitchToggle
Usage
- Return a non-null value to override default behavior
Example Autogenerated
csharp
private object OnSwitchToggle( ElectricSwitch instance, BasePlayer player )
{
Puts( "OnSwitchToggle works!" );
return null;
}csharp
private object OnSwitchToggle( FuelGenerator instance, BasePlayer player )
{
Puts( "OnSwitchToggle works!" );
return null;
}csharp
private object OnSwitchToggle( IndustrialConveyor instance, BasePlayer player )
{
Puts( "OnSwitchToggle works!" );
return null;
}Location
- ElectricSwitch::RPC_Switch(BaseEntity.RPCMessage msg)
- FuelGenerator::RPC_EngineSwitch(BaseEntity.RPCMessage msg)
- IndustrialConveyor::SvSwitch(BaseEntity.RPCMessage msg)
csharp
[RPC_Server.IsVisible(3f)]
[RPC_Server]
public void RPC_Switch(RPCMessage msg)
{
if (Interface.CallHook("OnSwitchToggle", this, msg.player) == null)
{
bool flag = msg.read.Bool();
SetSwitch(flag);
Interface.CallHook("OnSwitchToggled", this, msg.player);
}
//---csharp
[RPC_Server.IsVisible(3f)]
[RPC_Server]
public void RPC_EngineSwitch(RPCMessage msg)
{
if (Interface.CallHook("OnSwitchToggle", this, msg.player) == null)
{
bool generatorState = msg.read.Bit();
SetGeneratorState(generatorState);
Interface.CallHook("OnSwitchToggled", this, msg.player);
}
//---csharp
[RPC_Server]
[RPC_Server.IsVisible(3f)]
[RPC_Server.CallsPerSecond(2uL)]
private void SvSwitch(RPCMessage msg)
{
if (Interface.CallHook("OnSwitchToggle", this, msg.player) == null)
{
SetSwitch(!IsOn());
Interface.CallHook("OnSwitchToggled", this, msg.player);
}
}