Show / Hide Table of Contents

Class BlockScript

Base class for custom BlockBehaviours. It offers various callbacks and convenience properties to assist in writing the code for your blocks.

Inheritance
Object
ModBlockBehaviour
BlockScript
Inherited Members
ModBlockBehaviour.SafeAwake()
ModBlockBehaviour.OnPrefabCreation()
ModBlockBehaviour.OnBlockPlaced()
ModBlockBehaviour.BuildingUpdate()
ModBlockBehaviour.SimulateUpdateAlways()
ModBlockBehaviour.SimulateUpdateHost()
ModBlockBehaviour.SimulateUpdateClient()
ModBlockBehaviour.BuildingFixedUpdate()
ModBlockBehaviour.SimulateFixedUpdateAlways()
ModBlockBehaviour.SimulateFixedUpdateHost()
ModBlockBehaviour.SimulateFixedUpdateClient()
ModBlockBehaviour.BuildingLateUpdate()
ModBlockBehaviour.SimulateLateUpdateAlways()
ModBlockBehaviour.SimulateLateUpdateHost()
ModBlockBehaviour.SimulateLateUpdateClient()
ModBlockBehaviour.KeyEmulationUpdate()
ModBlockBehaviour.SendKeyEmulationUpdateHost()
ModBlockBehaviour.OnSimulateStart()
ModBlockBehaviour.OnSimulateStop()
ModBlockBehaviour.OnStartBurning()
ModBlockBehaviour.OnStopBurning(Boolean)
ModBlockBehaviour.OnSimulateCollisionEnter(Collision)
ModBlockBehaviour.OnSimulateCollisionStay(Collision)
ModBlockBehaviour.OnSimulateCollisionExit(Collision)
ModBlockBehaviour.OnSimulateTriggerEnter(Collider)
ModBlockBehaviour.OnSimulateTriggerStay(Collider)
ModBlockBehaviour.OnSimulateTriggerExit(Collider)
ModBlockBehaviour.OnSimulateParticleCollision(GameObject)
ModBlockBehaviour.OnSave(XDataHolder)
ModBlockBehaviour.OnLoad(XDataHolder)
ModBlockBehaviour.OnReloadAmmo(Int32, AmmoType, Boolean, Boolean)
ModBlockBehaviour.AddKey(String, String, KeyCode)
ModBlockBehaviour.AddKey(MKey)
ModBlockBehaviour.AddEmulatorKey(String, String, KeyCode)
ModBlockBehaviour.EmulateKeys(MKey[], MKey, Boolean)
ModBlockBehaviour.AddTeam(String, String, MPTeam)
ModBlockBehaviour.AddTeam(MTeam)
ModBlockBehaviour.AddText(String, String, String)
ModBlockBehaviour.AddText(MText)
ModBlockBehaviour.AddValue(String, String, Single)
ModBlockBehaviour.AddValue(String, String, Single, Single, Single)
ModBlockBehaviour.AddValue(MValue)
ModBlockBehaviour.AddSlider(String, String, Single, Single, Single)
ModBlockBehaviour.AddSliderUnclamped(String, String, Single, Single, Single)
ModBlockBehaviour.AddSlider(MSlider)
ModBlockBehaviour.AddColourSlider(String, String, Color, Boolean)
ModBlockBehaviour.AddColourSlider(MColourSlider)
ModBlockBehaviour.AddMenu(String, Int32, List<String>, Boolean)
ModBlockBehaviour.AddMenu(MMenu)
ModBlockBehaviour.AddToggle(String, String, Boolean)
ModBlockBehaviour.AddToggle(String, String, String, Boolean)
ModBlockBehaviour.AddToggle(MToggle)
ModBlockBehaviour.AddLimits(String, String, Single, Single, Single, FauxTransform)
ModBlockBehaviour.AddLimits(String, String, Single, Single, Single, FauxTransform, ILimitsDisplay)
ModBlockBehaviour.AddLimits(MLimits)
ModBlockBehaviour.AddCustom<T>(MCustom<T>)
ModBlockBehaviour.EmulatesAnyKeys
ModBlockBehaviour.IsBurning
ModBlockBehaviour.HasBurnedOut
ModBlockBehaviour.IsFrozen
ModBlockBehaviour.IsDestroyed
ModBlockBehaviour.HasRigidbody
ModBlockBehaviour.Rigidbody
ModBlockBehaviour.BlockBehaviour
ModBlockBehaviour.VisualController
ModBlockBehaviour.Renderer
ModBlockBehaviour.MainVis
ModBlockBehaviour.ShowDebugVisuals
ModBlockBehaviour.Flipped
ModBlockBehaviour.BlockId
ModBlockBehaviour.SimPhysics
ModBlockBehaviour.IsSimulating
ModBlockBehaviour.IsStripped
ModBlockBehaviour.Machine
ModBlockBehaviour.CanFlip
ModBlockBehaviour.DirectionArrow
Namespace: Modding
Assembly: Assembly-CSharp.dll
Syntax
public class BlockScript : ModBlockBehaviour, ILimitsDisplay
Remarks

The documentation for callbacks contains information about their behaviour in multiplayer. When writing your block script, keep in mind that most callbacks are also called if the game instance the script is running on does not handle physics currently.

You can use the SimPhysics property to determine whether you should handle physics, or use methods that are only called if physics should / should not be simulated.

Constructors

BlockScript()

Declaration
public BlockScript()

Methods

GetLimitsDisplay()

Declaration
public virtual Transform GetLimitsDisplay()
Returns
Type Description
UnityEngine.Transform

OnFlip()

Override to implement custom flipping behaviour on the block. Return value indicates whether the block was actually flipped, returning true causes the direction arrow to be flipped, if it is present.

Overriding this means the CanFlip XML element has no effect anymore.

Declaration
public virtual bool OnFlip()
Returns
Type Description
Boolean
Remarks

If you just want to change behaviour of the block based on whether it is currently flipped, also consider using the Flipped property instead.

Back to top Generated by DocFX