BArtisan.Thrusters.BThrusterBase Class Reference
+ Inheritance diagram for BArtisan.Thrusters.BThrusterBase:

Detailed Description

The base thruster that contains all common functionalities. All helpers and controllers work only with this class, this way are compatible with all thruster types.

Common features are:

  • ignition state (on/off)
  • throttle (current and min/max)
  • faults (states that disable the engine)
  • common helper functions

Member Data Documentation

◆ accelerationThrottlePerFrame

float BArtisan.Thrusters.BThrusterBase.accelerationThrottlePerFrame = 1f

Default throttle update value for each time the Accelerate() function is called. Save value is used for Decelerate() but with a negative sign.

◆ debugLog

bool BArtisan.Thrusters.BBaseMonobehaviour.debugLog = false
inherited

Enable to debug this component. Warning: it may result in CPU intensive debug messages (each frame).

Property Documentation

◆ MinThrottle

float BArtisan.Thrusters.BThrusterBase.MinThrottle
getset

Minimum value (inclusive) of the throttle/engine power. Non-zero if you want the object never to be still.

◆ MaxThrottle

float BArtisan.Thrusters.BThrusterBase.MaxThrottle
getset

Maximum value (inclusive) of the throttle/engine power.

◆ IgnitionOn

bool BArtisan.Thrusters.BThrusterBase.IgnitionOn
getset

Ignition state of the thruster. If on means the throttle can be applied (if no faults are present).

◆ NormalizedThrottle

float BArtisan.Thrusters.BThrusterBase.NormalizedThrottle
getset

Get the current throttle value as a value between 0-1 (based on the min/max/current throttle).

◆ Normalized100Throttle

int BArtisan.Thrusters.BThrusterBase.Normalized100Throttle
getset

Get the current throttle value as a value between 0-100 (based on min/max/current throttle).

◆ Throttle

float BArtisan.Thrusters.BThrusterBase.Throttle
getset

The current raw value of the throttle. It is always clamped between min/max.

◆ acceleratedThisFrame

bool BArtisan.Thrusters.BThrusterBase.acceleratedThisFrame
get

Flag used to keep track if any controller accelerated (at least once) during the current frame.

Member Function Documentation

◆ TurnOn()

virtual void BArtisan.Thrusters.BThrusterBase.TurnOn ( )
virtual

Turn on the thruster (set the ignition on).

Referenced by BArtisan.Thrusters.Helpers.Controllers.BThrusterKeyController.Accelerate().

◆ TurnOff()

virtual void BArtisan.Thrusters.BThrusterBase.TurnOff ( )
virtual

Turn off the thruster (set the ignition off).

Referenced by BArtisan.Thrusters.Helpers.Controllers.BThrusterKeyController.Accelerate().

◆ ToggleOnOff()

virtual void BArtisan.Thrusters.BThrusterBase.ToggleOnOff ( )
virtual

Toggle the ignition, if it is On it will turn it off and viceversa.

Referenced by BArtisan.Thrusters.Helpers.Controllers.BThrusterKeyController.Accelerate().

◆ IsTurnedOnAndHasNoFaults()

virtual bool BArtisan.Thrusters.BThrusterBase.IsTurnedOnAndHasNoFaults ( )
virtual

Checks if the engine is actually running. The ignition must be on and free of problems.

Returns
true if the engine is working and there are no faults

◆ IsTurnedOn()

virtual bool BArtisan.Thrusters.BThrusterBase.IsTurnedOn ( )
virtual

The ignition is on, thruster is powered. It does NOT guarantee the thruster is working, see faults.

Returns

◆ IsTurnedOff()

virtual bool BArtisan.Thrusters.BThrusterBase.IsTurnedOff ( )
virtual

The ignition is off, thruster is not powered on.

Returns

◆ HasFaults()

virtual bool BArtisan.Thrusters.BThrusterBase.HasFaults ( )
virtual

Checks if the thruster has any problems/faults.

Returns
true if the thruster is temporarily broken.

◆ IsFreeOfFaults()

virtual bool BArtisan.Thrusters.BThrusterBase.IsFreeOfFaults ( )
virtual

Checks if the engine is free of problems/faults.

Returns

◆ AddFault()

virtual void BArtisan.Thrusters.BThrusterBase.AddFault ( string  faultUniqueID)
virtual

Add a new problem to this engine. It disables the engine until all the problems are removed.

Parameters
faultUniqueIDEach problem must have an unique string id.

Referenced by BArtisan.Thrusters.Helpers.Faults.BThrusterHelperFault.AddFault().

◆ RemoveFault()

virtual void BArtisan.Thrusters.BThrusterBase.RemoveFault ( string  faultUniqueID)
virtual

Remove a fault (problem). If the fault was the last one (in the list), and the ignition is on the thruster will resume it's effect.

Parameters
faultUniqueIDEach problem must have an unique string id.

Referenced by BArtisan.Thrusters.Helpers.Faults.BThrusterHelperFault.RemoveFault().

◆ RemoveAllFaults()

virtual void BArtisan.Thrusters.BThrusterBase.RemoveAllFaults ( )
virtual

Remove all current faults, restoring the thruster to its original state.

◆ GetFaults()

virtual List<string> BArtisan.Thrusters.BThrusterBase.GetFaults ( )
virtual

Get a list of all current fault ID's.

Returns
fault list clone with ID's.

◆ Accelerate()

virtual void BArtisan.Thrusters.BThrusterBase.Accelerate ( )
virtual

Increase the thruster throttle with the accelerationThrottlePerFrame. To modify the throttle with a specific value use AddThrottle(); The new value is always clamped between min and max throttle values.

Referenced by BArtisan.Thrusters.Helpers.Controllers.BThrusterKeyController.Accelerate().

◆ AddThrottle()

virtual void BArtisan.Thrusters.BThrusterBase.AddThrottle ( float  addValue)
virtual

Add (positive value) or substract (negative value) the throttle value. The new value is always clamped between min and max throttle values.

Parameters
addValuePositive to increase, negative to decrease the throttle.

◆ Decelerate()

virtual void BArtisan.Thrusters.BThrusterBase.Decelerate ( )
virtual

Decrease the thruster throttle with the accelerationThrottlePerFrame. To modify the throttle with a specific value use AddThrottle();

Referenced by BArtisan.Thrusters.Helpers.Controllers.BThrusterKeyController.Accelerate().

◆ SetThrottle()

virtual void BArtisan.Thrusters.BThrusterBase.SetThrottle ( float  newValue)
virtual

Set a new value of the throttle. The new value is always clamped between min and max throttle values.

Parameters
newValue

◆ SetThrottleNormalizedValue()

virtual void BArtisan.Thrusters.BThrusterBase.SetThrottleNormalizedValue ( float  newNormalized)
virtual

Set a new value of the throttle, based on a percent unit interval 0-1. The throttle value will be relative of min/max.

Parameters
newNormalized0 will set the throttle to the minimum value, 0.5f at half and 1f at maximum.

◆ SetThrottle100Value()

virtual void BArtisan.Thrusters.BThrusterBase.SetThrottle100Value ( int  newNormalized)
virtual

Set a new value of the throttle, based on a percent interval 0-100. /// The throttle value will be relative of min/max.

Parameters
newNormalized0 to set the minimum value, 50 to half and 100 to maximum.

◆ SetMinimumThrottle()

virtual void BArtisan.Thrusters.BThrusterBase.SetMinimumThrottle ( )
virtual

Set the throttle to it's minimum value (see MinThrottle). Usually min is 0 and this command is used for Stop.

Referenced by BArtisan.Thrusters.Helpers.Controllers.BThrusterKeyController.Accelerate(), and BArtisan.Thrusters.Helpers.Controllers.BThrusterContinuousController.RestartCoroutine().

◆ SetMaximumThrottle()

virtual void BArtisan.Thrusters.BThrusterBase.SetMaximumThrottle ( )
virtual

◆ GetThrottle()

virtual float BArtisan.Thrusters.BThrusterBase.GetThrottle ( )
virtual

Get the throttle raw value (absolute).

Returns

◆ IsAtMinimumThrottle()

virtual bool BArtisan.Thrusters.BThrusterBase.IsAtMinimumThrottle ( )
virtual

Easy check if the throttle value is equal to MinThrottle.

Returns
boolean

◆ IsAtMaximumThrottle()

virtual bool BArtisan.Thrusters.BThrusterBase.IsAtMaximumThrottle ( )
virtual

Easy check if the throttle value is equal to MaxThrottle.

Returns
boolean