MMFeedbacks
v1.6
|
This feedback will instantiate the associated object (usually a VFX, but not necessarily), optionnally creating an object pool of them for performance More...
Public Types | |
enum | PositionModes { PositionModes.FeedbackPosition, PositionModes.Transform, PositionModes.WorldPosition, PositionModes.Script } |
Public Attributes | |
GameObject | VfxToInstantiate |
sets the inspector color for this feedback More... | |
PositionModes | PositionMode = PositionModes.FeedbackPosition |
the chosen way to position the object More... | |
Transform | TargetTransform |
the transform at which to instantiate the object More... | |
Vector3 | TargetPosition |
the transform at which to instantiate the object More... | |
Vector3 | VfxPositionOffset |
the position offset at which to instantiate the vfx object More... | |
bool | VfxCreateObjectPool |
whether or not we should create automatically an object pool for this vfx More... | |
int | VfxObjectPoolSize = 5 |
the initial and planned size of this object pool More... | |
Public Attributes inherited from MoreMountains.Feedbacks.MMFeedback | |
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... | |
Protected Member Functions | |
override void | CustomInitialization (GameObject owner) |
On init we create an object pool if needed More... | |
override void | CustomPlayFeedback (Vector3 position, float attenuation=1.0f) |
On Play we instantiate the specified object, either from the object pool or from scratch More... | |
virtual Vector3 | GetPosition (Vector3 position) |
Protected Member Functions inherited from MoreMountains.Feedbacks.MMFeedback | |
virtual IEnumerator | PlayCoroutine (Vector3 position, float attenuation=1.0f) |
An internal coroutine delaying the initial play of the feedback More... | |
virtual void | RegularPlay (Vector3 position, float attenuation=1.0f) |
Triggers delaying coroutines if needed More... | |
virtual IEnumerator | InfinitePlay (Vector3 position, float attenuation=1.0f) |
Internal coroutine used for repeated play without end More... | |
virtual IEnumerator | RepeatedPlay (Vector3 position, float attenuation=1.0f) |
Internal coroutine used for repeated play More... | |
virtual IEnumerator | SequenceCoroutine (Vector3 position, float attenuation=1.0f) |
A coroutine used to play this feedback on a sequence More... | |
virtual void | CustomStopFeedback (Vector3 position, float attenuation=1.0f) |
This method describes what happens when the feedback gets stopped More... | |
virtual void | CustomReset () |
This method describes what happens when the feedback gets reset More... | |
Protected Attributes | |
MMMiniObjectPooler | _objectPool |
GameObject | _newGameObject |
Protected Attributes inherited from MoreMountains.Feedbacks.MMFeedback | |
WaitForSeconds | _initialDelayWaitForSeconds |
WaitForSeconds | _betweenDelayWaitForSeconds |
WaitForSeconds | _sequenceDelayWaitForSeconds |
float | _lastPlayTimestamp = -1f |
int | _playsLeft |
bool | _initialized = false |
Coroutine | _playCoroutine |
Coroutine | _infinitePlayCoroutine |
Coroutine | _sequenceCoroutine |
Coroutine | _repeatedPlayCoroutine |
int | _sequenceTrackID = 0 |
float | _beatInterval |
bool | BeatThisFrame = false |
int | LastBeatIndex = 0 |
int | CurrentSequenceIndex = 0 |
float | LastBeatTimestamp = 0f |
Additional Inherited Members | |
Public Member Functions inherited from MoreMountains.Feedbacks.MMFeedback | |
virtual void | Initialization (GameObject owner) |
Initializes the feedback and its timing related variables More... | |
virtual void | Play (Vector3 position, float attenuation=1.0f) |
Plays the feedback More... | |
virtual void | Stop (Vector3 position, float attenuation=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... | |
Properties inherited from MoreMountains.Feedbacks.MMFeedback | |
GameObject | Owner [get, set] |
the Owner of the feedback, as defined when calling the Initialization method More... | |
virtual YieldInstruction | 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 | 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... | |
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... | |
virtual float | FeedbackStartedAt [get] |
virtual float | FeedbackDuration [get] |
virtual bool | FeedbackPlaying [get] |
whether or not this feedback is playing right now More... | |
This feedback will instantiate the associated object (usually a VFX, but not necessarily), optionnally creating an object pool of them for performance
the different ways to position the instantiated object :
Enumerator | |
---|---|
FeedbackPosition | |
Transform | |
WorldPosition | |
Script |
|
protectedvirtual |
On init we create an object pool if needed
owner |
Reimplemented from MoreMountains.Feedbacks.MMFeedback.
|
protectedvirtual |
On Play we instantiate the specified object, either from the object pool or from scratch
position | |
attenuation |
Implements MoreMountains.Feedbacks.MMFeedback.
|
protectedvirtual |
|
protected |
|
protected |
PositionModes MoreMountains.Feedbacks.MMFeedbackInstantiateObject.PositionMode = PositionModes.FeedbackPosition |
the chosen way to position the object
Vector3 MoreMountains.Feedbacks.MMFeedbackInstantiateObject.TargetPosition |
the transform at which to instantiate the object
Transform MoreMountains.Feedbacks.MMFeedbackInstantiateObject.TargetTransform |
the transform at which to instantiate the object
bool MoreMountains.Feedbacks.MMFeedbackInstantiateObject.VfxCreateObjectPool |
whether or not we should create automatically an object pool for this vfx
int MoreMountains.Feedbacks.MMFeedbackInstantiateObject.VfxObjectPoolSize = 5 |
the initial and planned size of this object pool
Vector3 MoreMountains.Feedbacks.MMFeedbackInstantiateObject.VfxPositionOffset |
the position offset at which to instantiate the vfx object
GameObject MoreMountains.Feedbacks.MMFeedbackInstantiateObject.VfxToInstantiate |
sets the inspector color for this feedback
the vfx object to instantiate