![]() |
TopDown Engine v4.3
|
Public Types | |
enum | Modes { OverTime , Instant } |
the possible modes for this feedback More... | |
Public Attributes | |
Modes | Mode = Modes.OverTime |
whether the feedback should affect the target property instantly or over a period of time More... | |
float | Duration = 0.2f |
how long the target property should change over time More... | |
bool | StartsOff = false |
whether or not that target property should be turned off on start More... | |
bool | RelativeValues = true |
whether or not the values should be relative or not More... | |
bool | AllowAdditivePlays = false |
if this is true, calling that feedback will trigger it, even if it's in progress. If it's false, it'll prevent any new Play until the current one is over More... | |
bool | DisableOnStop = false |
if this is true, the target object will be disabled on stop More... | |
![]() | |
bool | Active = true |
whether or not this feedback is active More... | |
string | Label = "MMFeedback" |
the name of this feedback to display in the inspector More... | |
float | Chance = 100f |
the chance of this feedback happening (in percent : 100 : happens all the time, 0 : never happens, 50 : happens once every two calls, etc) More... | |
MMFeedbackTiming | Timing |
a number of timing-related values (delay, repeat, etc) More... | |
bool | DebugActive = false |
whether or not this feedback is in debug mode More... | |
Static Public Attributes | |
static bool | FeedbackTypeAuthorized = true |
a static bool used to disable all feedbacks of this type at once More... | |
Protected Member Functions | |
override void | CustomInitialization (GameObject owner) |
On init we turn the target property off if needed More... | |
virtual void | PrepareTargets () |
Creates a new list, fills the targets, and initializes them More... | |
virtual void | OnValidate () |
On validate (if a value has changed in the inspector), we reinitialize what needs to be More... | |
abstract void | FillTargets () |
Fills our list of targets, meant to be extended More... | |
virtual void | InitializeTargets () |
Initializes each target in the list More... | |
override void | CustomPlayFeedback (Vector3 position, float feedbacksIntensity=1.0f) |
On Play we turn our target property on and start an over time coroutine if needed More... | |
virtual void | Instant () |
Plays an instant feedback More... | |
virtual IEnumerator | UpdateValueSequence (float feedbacksIntensity) |
This coroutine will modify the values on the target property More... | |
virtual void | SetValues (float time, float feedbacksIntensity) |
Sets the various values on the target property on a specified time (between 0 and 1) More... | |
override void | CustomStopFeedback (Vector3 position, float feedbacksIntensity=1) |
Turns the target property object off on stop if needed More... | |
virtual void | Turn (bool status) |
Turns the target object on or off More... | |
![]() | |
virtual void | OnEnable () |
virtual IEnumerator | PlayCoroutine (Vector3 position, float feedbacksIntensity=1.0f) |
An internal coroutine delaying the initial play of the feedback More... | |
virtual void | RegularPlay (Vector3 position, float feedbacksIntensity=1.0f) |
Triggers delaying coroutines if needed More... | |
virtual IEnumerator | InfinitePlay (Vector3 position, float feedbacksIntensity=1.0f) |
Internal coroutine used for repeated play without end More... | |
virtual IEnumerator | RepeatedPlay (Vector3 position, float feedbacksIntensity=1.0f) |
Internal coroutine used for repeated play More... | |
virtual IEnumerator | SequenceCoroutine (Vector3 position, float feedbacksIntensity=1.0f) |
A coroutine used to play this feedback on a sequence More... | |
virtual float | ApplyDirection (float normalizedTime) |
Returns a new value of the normalized time based on the current play direction of this feedback More... | |
virtual float | ApplyTimeMultiplier (float duration) |
Applies the host MMFeedbacks' time multiplier to this feedback More... | |
virtual void | CustomReset () |
This method describes what happens when the feedback gets reset More... | |
Protected Attributes | |
List< MMFeedbackBaseTarget > | _targets |
Coroutine | _coroutine = null |
![]() | |
float | _lastPlayTimestamp = -1f |
int | _playsLeft |
bool | _initialized = false |
Coroutine | _playCoroutine |
Coroutine | _infinitePlayCoroutine |
Coroutine | _sequenceCoroutine |
Coroutine | _repeatedPlayCoroutine |
int | _sequenceTrackID = 0 |
MMFeedbacks | _hostMMFeedbacks |
float | _beatInterval |
bool | BeatThisFrame = false |
int | LastBeatIndex = 0 |
int | CurrentSequenceIndex = 0 |
float | LastBeatTimestamp = 0f |
bool | _isHostMMFeedbacksNotNull |
MMChannelData | _channelData |
Properties | |
override float? | FeedbackDuration [getset] |
the duration of this feedback is the duration of the target property, or 0 if instant More... | |
![]() | |
GameObject | Owner [getset] |
the Owner of the feedback, as defined when calling the Initialization method More... | |
virtual IEnumerator | Pause [get] |
set this to true if your feedback should pause the execution of the feedback sequence More... | |
virtual bool | HoldingPause [get] |
if this is true, this feedback will wait until all previous feedbacks have run More... | |
virtual bool | LooperPause [get] |
if this is true, this feedback will wait until all previous feedbacks have run, then run all previous feedbacks again More... | |
virtual bool | ScriptDrivenPause [getset] |
if this is true, this feedback will pause and wait until Resume() is called on its parent MMFeedbacks to resume execution More... | |
virtual float | ScriptDrivenPauseAutoResume [getset] |
if this is a positive value, the feedback will auto resume after that duration if it hasn't been resumed via script already More... | |
virtual bool | LooperStart [get] |
if this is true, this feedback will wait until all previous feedbacks have run, then run all previous feedbacks again More... | |
virtual bool | InCooldown [get] |
returns true if this feedback is in cooldown at this time (and thus can't play), false otherwise More... | |
virtual bool | IsPlaying [getset] |
if this is true, this feedback is currently playing More... | |
float | FeedbackTime [get] |
the time (or unscaled time) based on the selected Timing settings More... | |
float | FeedbackDeltaTime [get] |
the delta time (or unscaled delta time) based on the selected Timing settings More... | |
float | TotalDuration [get] |
The total duration of this feedback : total = initial delay + duration * (number of repeats + delay between repeats) More... | |
virtual float | FeedbackStartedAt [get] |
virtual float | FeedbackDuration [getset] |
virtual bool | FeedbackPlaying [get] |
whether or not this feedback is playing right now More... | |
virtual bool | NormalPlayDirection [get] |
Returns true if this feedback should play normally, or false if it should play in rewind More... | |
virtual bool | ShouldPlayInThisSequenceDirection [get] |
Returns true if this feedback should play in the current parent MMFeedbacks direction, according to its MMFeedbacksDirectionCondition setting More... | |
virtual float? | FinalNormalizedTime [get] |
Returns the t value at which to evaluate a curve at the end of this feedback's play time More... | |
Additional Inherited Members | |
![]() | |
virtual MMChannelData | ChannelData (int channel) |
virtual void | Initialization (GameObject owner) |
Initializes the feedback and its timing related variables More... | |
virtual void | Play (Vector3 position, float feedbacksIntensity=1.0f) |
Plays the feedback More... | |
virtual void | Stop (Vector3 position, float feedbacksIntensity=1.0f) |
Stops all feedbacks from playing. Will stop repeating feedbacks, and call custom stop implementations More... | |
virtual void | ResetFeedback () |
Calls this feedback's custom reset More... | |
virtual void | SetSequence (MMSequence newSequence) |
Use this method to change this feedback's sequence at runtime More... | |
virtual void | SetDelayBetweenRepeats (float delay) |
Use this method to specify a new delay between repeats at runtime More... | |
virtual void | SetInitialDelay (float delay) |
Use this method to specify a new initial delay at runtime More... | |
|
protectedvirtual |
On init we turn the target property off if needed
owner |
Reimplemented from MoreMountains.Feedbacks.MMFeedback.
|
protectedvirtual |
On Play we turn our target property on and start an over time coroutine if needed
position | |
feedbacksIntensity |
Implements MoreMountains.Feedbacks.MMFeedback.
|
protectedvirtual |
Turns the target property object off on stop if needed
position | |
feedbacksIntensity |
Reimplemented from MoreMountains.Feedbacks.MMFeedback.
|
protectedpure virtual |
Fills our list of targets, meant to be extended
|
protectedvirtual |
Initializes each target in the list
|
protectedvirtual |
Plays an instant feedback
|
protectedvirtual |
On validate (if a value has changed in the inspector), we reinitialize what needs to be
|
protectedvirtual |
Creates a new list, fills the targets, and initializes them
|
protectedvirtual |
Sets the various values on the target property on a specified time (between 0 and 1)
time |
|
protectedvirtual |
Turns the target object on or off
status |
|
protectedvirtual |
This coroutine will modify the values on the target property
|
protected |
|
protected |
bool MoreMountains.Feedbacks.MMFeedbackBase.AllowAdditivePlays = false |
if this is true, calling that feedback will trigger it, even if it's in progress. If it's false, it'll prevent any new Play until the current one is over
bool MoreMountains.Feedbacks.MMFeedbackBase.DisableOnStop = false |
if this is true, the target object will be disabled on stop
float MoreMountains.Feedbacks.MMFeedbackBase.Duration = 0.2f |
how long the target property should change over time
|
static |
a static bool used to disable all feedbacks of this type at once
Modes MoreMountains.Feedbacks.MMFeedbackBase.Mode = Modes.OverTime |
whether the feedback should affect the target property instantly or over a period of time
bool MoreMountains.Feedbacks.MMFeedbackBase.RelativeValues = true |
whether or not the values should be relative or not
bool MoreMountains.Feedbacks.MMFeedbackBase.StartsOff = false |
whether or not that target property should be turned off on start
|
getset |
the duration of this feedback is the duration of the target property, or 0 if instant