TopDown Engine
v4.2
|
A collection of MMFeedback, meant to be played altogether. This class provides a custom inspector to add and customize feedbacks, and public methods to trigger them, stop them, etc. You can either use it on its own, or bind it from another class and trigger it from there. More...
Public Types | |
enum | Directions { Directions.TopToBottom, Directions.BottomToTop } |
the possible directions MMFeedbacks can be played More... | |
enum | SafeModes { SafeModes.Nope, SafeModes.EditorOnly, SafeModes.RuntimeOnly, SafeModes.Full } |
enum | InitializationModes { InitializationModes.Script, InitializationModes.Awake, InitializationModes.Start, InitializationModes.OnEnable } |
Public Member Functions | |
virtual float | GetTime () |
virtual float | GetDeltaTime () |
virtual void | Initialization (bool forceInitIfPlaying=false) |
Initializes the MMFeedbacks, setting this MMFeedbacks as the owner More... | |
virtual void | Initialization (GameObject owner) |
A public method to initialize the feedback, specifying an owner that will be used as the reference for position and hierarchy by feedbacks More... | |
virtual void | PlayFeedbacks () |
Plays all feedbacks using the MMFeedbacks' position as reference, and no attenuation More... | |
virtual async System.Threading.Tasks.Task | PlayFeedbacksTask (Vector3 position, float feedbacksIntensity=1.0f, bool forceChangeDirection=false) |
Plays all feedbacks and awaits until completion More... | |
virtual async System.Threading.Tasks.Task | PlayFeedbacksTask () |
Plays all feedbacks and awaits until completion More... | |
virtual void | PlayFeedbacks (Vector3 position, float feedbacksIntensity=1.0f, bool forceChangeDirection=false) |
Plays all feedbacks, specifying a position and intensity. The position may be used by each Feedback and taken into account to spark a particle or play a sound for example. The feedbacks intensity is a factor that can be used by each Feedback to lower its intensity, usually you'll want to define that attenuation based on time or distance (using a lower intensity value for feedbacks happening further away from the Player). Additionally you can force the feedback to play in reverse, ignoring its current condition More... | |
virtual void | PlayFeedbacksInReverse () |
Plays all feedbacks using the MMFeedbacks' position as reference, and no attenuation, and in reverse (from bottom to top) More... | |
virtual void | PlayFeedbacksInReverse (Vector3 position, float feedbacksIntensity=1.0f, bool forceChangeDirection=false) |
Plays all feedbacks using the MMFeedbacks' position as reference, and no attenuation, and in reverse (from bottom to top) More... | |
virtual void | PlayFeedbacksOnlyIfReversed () |
Plays all feedbacks in the sequence, but only if this MMFeedbacks is playing in reverse order More... | |
virtual void | PlayFeedbacksOnlyIfReversed (Vector3 position, float feedbacksIntensity=1.0f, bool forceChangeDirection=false) |
Plays all feedbacks in the sequence, but only if this MMFeedbacks is playing in reverse order More... | |
virtual void | PlayFeedbacksOnlyIfNormalDirection () |
Plays all feedbacks in the sequence, but only if this MMFeedbacks is playing in normal order More... | |
virtual void | PlayFeedbacksOnlyIfNormalDirection (Vector3 position, float feedbacksIntensity=1.0f, bool forceChangeDirection=false) |
Plays all feedbacks in the sequence, but only if this MMFeedbacks is playing in normal order More... | |
virtual IEnumerator | PlayFeedbacksCoroutine (Vector3 position, float feedbacksIntensity=1.0f, bool forceChangeDirection=false) |
A public coroutine you can call externally when you want to yield in a coroutine of yours until the MMFeedbacks has stopped playing typically : yield return myFeedback.PlayFeedbacksCoroutine(this.transform.position, 1.0f, false); More... | |
virtual bool | HasFeedbackStillPlaying () |
Returns true if feedbacks are still playing More... | |
virtual void | StopFeedbacks () |
Stops all further feedbacks from playing, without stopping individual feedbacks More... | |
virtual void | StopFeedbacks (bool stopAllFeedbacks=true) |
Stops all feedbacks from playing, with an option to also stop individual feedbacks More... | |
virtual void | StopFeedbacks (Vector3 position, float feedbacksIntensity=1.0f, bool stopAllFeedbacks=true) |
Stops all feedbacks from playing, specifying a position and intensity that can be used by the Feedbacks More... | |
virtual void | ResetFeedbacks () |
Calls each feedback's Reset method if they've defined one. An example of that can be resetting the initial color of a flickering renderer. More... | |
virtual void | ChangeDirection () |
Changes the direction of this MMFeedbacks More... | |
virtual void | SetCanPlay (bool newState) |
Use this method to authorize or prevent this player from being played More... | |
virtual void | PauseFeedbacks () |
Pauses execution of a sequence, which can then be resumed by calling ResumeFeedbacks() More... | |
virtual void | ResumeFeedbacks () |
Resumes execution of a sequence if a script driven pause is in progress More... | |
virtual MMFeedback | AddFeedback (System.Type feedbackType, bool add=true) |
virtual void | RemoveFeedback (int id) |
virtual float | ApplyTimeMultiplier (float duration) |
Applies this feedback's time multiplier to a duration (in seconds) More... | |
virtual void | AutoRepair () |
Unity sometimes has serialization issues. This method fixes that by fixing any bad sync that could happen. More... | |
Public Attributes | |
List< MMFeedback > | Feedbacks = new List<MMFeedback>() |
a list of MMFeedback to trigger More... | |
InitializationModes | InitializationMode = InitializationModes.Start |
the chosen initialization mode More... | |
bool | AutoInitialization = true |
if you set this to true, the system will make changes to ensure that initialization always happens before play More... | |
SafeModes | SafeMode = SafeModes.Full |
the selected safe mode More... | |
Directions | Direction = Directions.TopToBottom |
the selected direction More... | |
bool | AutoChangeDirectionOnEnd = false |
whether or not this MMFeedbacks should invert its direction when all feedbacks have played More... | |
bool | AutoPlayOnStart = false |
whether or not to play this feedbacks automatically on Start More... | |
bool | AutoPlayOnEnable = false |
whether or not to play this feedbacks automatically on Enable More... | |
bool | ForceTimescaleMode = false |
if this is true, all feedbacks within that player will work on the specified ForcedTimescaleMode, regardless of their individual settings More... | |
TimescaleModes | ForcedTimescaleMode = TimescaleModes.Unscaled |
the time scale mode all feedbacks on this player should work on, if ForceTimescaleMode is true More... | |
float | DurationMultiplier = 1f |
a time multiplier that will be applied to all feedback durations (initial delay, duration, delay between repeats...) More... | |
float | TimescaleMultiplier = 1f |
a multiplier to apply to all timescale operations (1: normal, less than 1: slower operations, higher than 1: faster operations) More... | |
bool | RandomizeDuration = false |
if this is true, will expose a RandomDurationMultiplier. The final duration of each feedback will be : their base duration * DurationMultiplier * a random value between RandomDurationMultiplier.x and RandomDurationMultiplier.y More... | |
Vector2 | RandomDurationMultiplier = new Vector2(0.5f, 1.5f) |
if RandomizeDuration is true, the min (x) and max (y) values for the random duration multiplier More... | |
bool | DisplayFullDurationDetails = false |
if this is true, more editor-only, detailed info will be displayed per feedback in the duration slot More... | |
TimescaleModes | PlayerTimescaleMode = TimescaleModes.Unscaled |
the timescale at which the player itself will operate. This notably impacts sequencing and pauses duration evaluation. More... | |
bool | OnlyPlayIfWithinRange = false |
if this is true, this feedback will only play if its distance to RangeCenter is lower or equal to RangeDistance More... | |
Transform | RangeCenter |
when in OnlyPlayIfWithinRange mode, the transform to consider as the center of the range More... | |
float | RangeDistance = 5f |
when in OnlyPlayIfWithinRange mode, the distance to the center within which the feedback will play More... | |
bool | UseRangeFalloff = false |
when in OnlyPlayIfWithinRange mode, whether or not to modify the intensity of feedbacks based on the RangeFallOff curve More... | |
AnimationCurve | RangeFalloff = new AnimationCurve(new Keyframe(0f, 1f), new Keyframe(1f, 0f)) |
the animation curve to use to define falloff (on the x 0 represents the range center, 1 represents the max distance to it) More... | |
Vector2 | RemapRangeFalloff = new Vector2(0f, 1f) |
the values to remap the falloff curve's y axis' 0 and 1 More... | |
bool | IgnoreRangeEvents = false |
whether or not to ignore MMSetFeedbackRangeCenterEvent, used to set the RangeCenter from anywhere More... | |
float | CooldownDuration = 0f |
a duration, in seconds, during which triggering a new play of this MMFeedbacks after it's been played once will be impossible More... | |
float | InitialDelay = 0f |
a duration, in seconds, to delay the start of this MMFeedbacks' contents play More... | |
bool | CanPlay = true |
whether this player can be played or not, useful to temporarily prevent play from another class, for example More... | |
bool | CanPlayWhileAlreadyPlaying = true |
if this is true, you'll be able to trigger a new Play while this feedback is already playing, otherwise you won't be able to More... | |
float | ChanceToPlay = 100f |
the chance of this sequence happening (in percent : 100 : happens all the time, 0 : never happens, 50 : happens once every two calls, etc) More... | |
float | FeedbacksIntensity = 1f |
MMFeedbacksEvents | Events |
a number of UnityEvents that can be triggered at the various stages of this MMFeedbacks More... | |
bool | DebugActive = false |
whether or not this MMFeedbacks is in debug mode More... | |
virtual float | ElapsedTime => IsPlaying ? GetTime() - _lastStartAt : 0f |
if this MMFeedbacks is playing the time since it started playing More... | |
bool | InScriptDrivenPause |
whether or not the execution of this MMFeedbacks' sequence is being prevented and waiting for a Resume() call More... | |
virtual float | ComputedInitialDelay => ApplyTimeMultiplier(InitialDelay) |
Static Public Attributes | |
static bool | GlobalMMFeedbacksActive = true |
a global switch used to turn all feedbacks on or off globally More... | |
Protected Member Functions | |
virtual void | Awake () |
On Awake we initialize our feedbacks if we're in auto mode More... | |
virtual void | Start () |
On Start we initialize our feedbacks if we're in auto mode More... | |
virtual void | OnEnable () |
On Enable we initialize our feedbacks if we're in auto mode More... | |
virtual void | PlayFeedbacksInternal (Vector3 position, float feedbacksIntensity, bool forceChangeDirection=false) |
An internal method used to play feedbacks, shouldn't be called externally More... | |
virtual void | PreparePlay (Vector3 position, float feedbacksIntensity, bool forceChangeDirection=false) |
virtual void | CheckForPauses () |
virtual void | PlayAllFeedbacks (Vector3 position, float feedbacksIntensity, bool forceChangeDirection=false) |
virtual IEnumerator | HandleInitialDelayCo (Vector3 position, float feedbacksIntensity, bool forceChangeDirection=false) |
virtual void | Update () |
virtual IEnumerator | PausedFeedbacksCo (Vector3 position, float feedbacksIntensity) |
A coroutine used to handle the sequence of feedbacks if pauses are involved More... | |
virtual bool | EvaluateChance () |
Evaluates the chance of this feedback to play, and returns true if this feedback can play, false otherwise More... | |
virtual void | CheckForLoops () |
Checks whether or not this MMFeedbacks contains one or more looper feedbacks More... | |
bool | FeedbackCanPlay (MMFeedback feedback) |
This will return true if the conditions defined in the specified feedback's Timing section allow it to play in the current play direction of this MMFeedbacks More... | |
virtual void | ApplyAutoChangeDirection () |
Readies the MMFeedbacks to change direction on the next play More... | |
virtual void | OnDisable () |
On Disable we stop all feedbacks More... | |
virtual void | OnValidate () |
On validate, we make sure our DurationMultiplier remains positive More... | |
virtual void | OnDestroy () |
On Destroy, removes all feedbacks from this MMFeedbacks to avoid any leftovers More... | |
Protected Attributes | |
float | _startTime = 0f |
float | _holdingMax = 0f |
float | _lastStartAt = -float.MaxValue |
int | _lastStartFrame = -1 |
bool | _pauseFound = false |
float | _totalDuration = 0f |
bool | _shouldStop = false |
float | _randomDurationMultiplier = 1f |
float | _lastOnEnableFrame = -1 |
Static Protected Attributes | |
const float | _smallValue = 0.001f |
Properties | |
bool | IsPlaying [get, protected set] |
int | TimesPlayed [get, protected set] |
the amount of times this MMFeedbacks has been played More... | |
bool | ContainsLoop [get, set] |
true if this MMFeedbacks contains at least one loop More... | |
bool | ShouldChangeDirectionOnNextPlay [get, set] |
true if this feedback should change play direction next time it's played More... | |
bool | ForcingUnscaledTimescaleMode [get] |
true if this player is forcing unscaled mode More... | |
virtual float | TotalDuration [get] |
The total duration (in seconds) of all the active feedbacks in this MMFeedbacks. More... | |
A collection of MMFeedback, meant to be played altogether. This class provides a custom inspector to add and customize feedbacks, and public methods to trigger them, stop them, etc. You can either use it on its own, or bind it from another class and trigger it from there.
|
strong |
the possible directions MMFeedbacks can be played
Enumerator | |
---|---|
TopToBottom | |
BottomToTop |
the possible initialization modes. If you use Script, you'll have to initialize manually by calling the Initialization method and passing it an owner Otherwise, you can have this component initialize itself at Awake or Start, and in this case the owner will be the MMFeedbacks itself
Enumerator | |
---|---|
Script | |
Awake | |
Start | |
OnEnable |
|
strong |
the possible SafeModes (will perform checks to make sure no serialization error has damaged them)
Enumerator | |
---|---|
Nope | |
EditorOnly | |
RuntimeOnly | |
Full |
|
virtual |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
Readies the MMFeedbacks to change direction on the next play
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Applies this feedback's time multiplier to a duration (in seconds)
duration |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Unity sometimes has serialization issues. This method fixes that by fixing any bad sync that could happen.
|
protectedvirtual |
On Awake we initialize our feedbacks if we're in auto mode
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Changes the direction of this MMFeedbacks
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
Checks whether or not this MMFeedbacks contains one or more looper feedbacks
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
Evaluates the chance of this feedback to play, and returns true if this feedback can play, false otherwise
|
protected |
This will return true if the conditions defined in the specified feedback's Timing section allow it to play in the current play direction of this MMFeedbacks
feedback |
|
virtual |
|
virtual |
|
protectedvirtual |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Returns true if feedbacks are still playing
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Initializes the MMFeedbacks, setting this MMFeedbacks as the owner
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
A public method to initialize the feedback, specifying an owner that will be used as the reference for position and hierarchy by feedbacks
owner | |
feedbacksOwner |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
On Destroy, removes all feedbacks from this MMFeedbacks to avoid any leftovers
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
On Disable we stop all feedbacks
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
On Enable we initialize our feedbacks if we're in auto mode
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
On validate, we make sure our DurationMultiplier remains positive
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
A coroutine used to handle the sequence of feedbacks if pauses are involved
position | |
feedbacksIntensity |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Pauses execution of a sequence, which can then be resumed by calling ResumeFeedbacks()
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Plays all feedbacks using the MMFeedbacks' position as reference, and no attenuation
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Plays all feedbacks, specifying a position and intensity. The position may be used by each Feedback and taken into account to spark a particle or play a sound for example. The feedbacks intensity is a factor that can be used by each Feedback to lower its intensity, usually you'll want to define that attenuation based on time or distance (using a lower intensity value for feedbacks happening further away from the Player). Additionally you can force the feedback to play in reverse, ignoring its current condition
position | |
feedbacksOwner | |
feedbacksIntensity |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
A public coroutine you can call externally when you want to yield in a coroutine of yours until the MMFeedbacks has stopped playing typically : yield return myFeedback.PlayFeedbacksCoroutine(this.transform.position, 1.0f, false);
position | The position at which the MMFeedbacks should play |
feedbacksIntensity | The intensity of the feedback |
forceChangeDirection | Whether or not the MMFeedbacks should play in reverse or not |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Plays all feedbacks using the MMFeedbacks' position as reference, and no attenuation, and in reverse (from bottom to top)
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Plays all feedbacks using the MMFeedbacks' position as reference, and no attenuation, and in reverse (from bottom to top)
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
An internal method used to play feedbacks, shouldn't be called externally
position | |
feedbacksIntensity |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Plays all feedbacks in the sequence, but only if this MMFeedbacks is playing in normal order
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Plays all feedbacks in the sequence, but only if this MMFeedbacks is playing in normal order
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Plays all feedbacks in the sequence, but only if this MMFeedbacks is playing in reverse order
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Plays all feedbacks in the sequence, but only if this MMFeedbacks is playing in reverse order
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Plays all feedbacks and awaits until completion
|
virtual |
Plays all feedbacks and awaits until completion
position | |
feedbacksIntensity | |
forceChangeDirection |
|
protectedvirtual |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Calls each feedback's Reset method if they've defined one. An example of that can be resetting the initial color of a flickering renderer.
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Resumes execution of a sequence if a script driven pause is in progress
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Use this method to authorize or prevent this player from being played
newState |
|
protectedvirtual |
On Start we initialize our feedbacks if we're in auto mode
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Stops all further feedbacks from playing, without stopping individual feedbacks
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Stops all feedbacks from playing, with an option to also stop individual feedbacks
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
virtual |
Stops all feedbacks from playing, specifying a position and intensity that can be used by the Feedbacks
position | |
feedbacksIntensity |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protectedvirtual |
Reimplemented in MoreMountains.Feedbacks.MMF_Player.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
protected |
|
protected |
bool MoreMountains.Feedbacks.MMFeedbacks.AutoChangeDirectionOnEnd = false |
whether or not this MMFeedbacks should invert its direction when all feedbacks have played
bool MoreMountains.Feedbacks.MMFeedbacks.AutoInitialization = true |
if you set this to true, the system will make changes to ensure that initialization always happens before play
bool MoreMountains.Feedbacks.MMFeedbacks.AutoPlayOnEnable = false |
whether or not to play this feedbacks automatically on Enable
bool MoreMountains.Feedbacks.MMFeedbacks.AutoPlayOnStart = false |
whether or not to play this feedbacks automatically on Start
bool MoreMountains.Feedbacks.MMFeedbacks.CanPlay = true |
whether this player can be played or not, useful to temporarily prevent play from another class, for example
bool MoreMountains.Feedbacks.MMFeedbacks.CanPlayWhileAlreadyPlaying = true |
if this is true, you'll be able to trigger a new Play while this feedback is already playing, otherwise you won't be able to
float MoreMountains.Feedbacks.MMFeedbacks.ChanceToPlay = 100f |
the chance of this sequence happening (in percent : 100 : happens all the time, 0 : never happens, 50 : happens once every two calls, etc)
virtual float MoreMountains.Feedbacks.MMFeedbacks.ComputedInitialDelay => ApplyTimeMultiplier(InitialDelay) |
float MoreMountains.Feedbacks.MMFeedbacks.CooldownDuration = 0f |
a duration, in seconds, during which triggering a new play of this MMFeedbacks after it's been played once will be impossible
bool MoreMountains.Feedbacks.MMFeedbacks.DebugActive = false |
whether or not this MMFeedbacks is in debug mode
Directions MoreMountains.Feedbacks.MMFeedbacks.Direction = Directions.TopToBottom |
the selected direction
bool MoreMountains.Feedbacks.MMFeedbacks.DisplayFullDurationDetails = false |
if this is true, more editor-only, detailed info will be displayed per feedback in the duration slot
float MoreMountains.Feedbacks.MMFeedbacks.DurationMultiplier = 1f |
a time multiplier that will be applied to all feedback durations (initial delay, duration, delay between repeats...)
virtual float MoreMountains.Feedbacks.MMFeedbacks.ElapsedTime => IsPlaying ? GetTime() - _lastStartAt : 0f |
if this MMFeedbacks is playing the time since it started playing
MMFeedbacksEvents MoreMountains.Feedbacks.MMFeedbacks.Events |
a number of UnityEvents that can be triggered at the various stages of this MMFeedbacks
List<MMFeedback> MoreMountains.Feedbacks.MMFeedbacks.Feedbacks = new List<MMFeedback>() |
a list of MMFeedback to trigger
float MoreMountains.Feedbacks.MMFeedbacks.FeedbacksIntensity = 1f |
the intensity at which to play this feedback. That value will be used by most feedbacks to tune their amplitude. 1 is normal, 0.5 is half power, 0 is no effect. Note that what this value controls depends from feedback to feedback, don't hesitate to check the code to see what it does exactly.
TimescaleModes MoreMountains.Feedbacks.MMFeedbacks.ForcedTimescaleMode = TimescaleModes.Unscaled |
the time scale mode all feedbacks on this player should work on, if ForceTimescaleMode is true
bool MoreMountains.Feedbacks.MMFeedbacks.ForceTimescaleMode = false |
if this is true, all feedbacks within that player will work on the specified ForcedTimescaleMode, regardless of their individual settings
|
static |
a global switch used to turn all feedbacks on or off globally
bool MoreMountains.Feedbacks.MMFeedbacks.IgnoreRangeEvents = false |
whether or not to ignore MMSetFeedbackRangeCenterEvent, used to set the RangeCenter from anywhere
float MoreMountains.Feedbacks.MMFeedbacks.InitialDelay = 0f |
a duration, in seconds, to delay the start of this MMFeedbacks' contents play
InitializationModes MoreMountains.Feedbacks.MMFeedbacks.InitializationMode = InitializationModes.Start |
the chosen initialization mode
bool MoreMountains.Feedbacks.MMFeedbacks.InScriptDrivenPause |
whether or not the execution of this MMFeedbacks' sequence is being prevented and waiting for a Resume() call
bool MoreMountains.Feedbacks.MMFeedbacks.OnlyPlayIfWithinRange = false |
if this is true, this feedback will only play if its distance to RangeCenter is lower or equal to RangeDistance
TimescaleModes MoreMountains.Feedbacks.MMFeedbacks.PlayerTimescaleMode = TimescaleModes.Unscaled |
the timescale at which the player itself will operate. This notably impacts sequencing and pauses duration evaluation.
Vector2 MoreMountains.Feedbacks.MMFeedbacks.RandomDurationMultiplier = new Vector2(0.5f, 1.5f) |
if RandomizeDuration is true, the min (x) and max (y) values for the random duration multiplier
bool MoreMountains.Feedbacks.MMFeedbacks.RandomizeDuration = false |
if this is true, will expose a RandomDurationMultiplier. The final duration of each feedback will be : their base duration * DurationMultiplier * a random value between RandomDurationMultiplier.x and RandomDurationMultiplier.y
Transform MoreMountains.Feedbacks.MMFeedbacks.RangeCenter |
when in OnlyPlayIfWithinRange mode, the transform to consider as the center of the range
float MoreMountains.Feedbacks.MMFeedbacks.RangeDistance = 5f |
when in OnlyPlayIfWithinRange mode, the distance to the center within which the feedback will play
AnimationCurve MoreMountains.Feedbacks.MMFeedbacks.RangeFalloff = new AnimationCurve(new Keyframe(0f, 1f), new Keyframe(1f, 0f)) |
the animation curve to use to define falloff (on the x 0 represents the range center, 1 represents the max distance to it)
Vector2 MoreMountains.Feedbacks.MMFeedbacks.RemapRangeFalloff = new Vector2(0f, 1f) |
the values to remap the falloff curve's y axis' 0 and 1
SafeModes MoreMountains.Feedbacks.MMFeedbacks.SafeMode = SafeModes.Full |
the selected safe mode
float MoreMountains.Feedbacks.MMFeedbacks.TimescaleMultiplier = 1f |
a multiplier to apply to all timescale operations (1: normal, less than 1: slower operations, higher than 1: faster operations)
bool MoreMountains.Feedbacks.MMFeedbacks.UseRangeFalloff = false |
when in OnlyPlayIfWithinRange mode, whether or not to modify the intensity of feedbacks based on the RangeFallOff curve
|
getset |
true if this MMFeedbacks contains at least one loop
|
get |
true if this player is forcing unscaled mode
|
getprotected set |
whether or not this MMFeedbacks is playing right now - meaning it hasn't been stopped yet. if you don't stop your MMFeedbacks it'll remain true of course
|
getset |
true if this feedback should change play direction next time it's played
|
getprotected set |
the amount of times this MMFeedbacks has been played
|
get |
The total duration (in seconds) of all the active feedbacks in this MMFeedbacks.