TopDown Engine v4.5
Loading...
Searching...
No Matches
MoreMountains.Feedbacks.MMF_SquashAndStretchSpring Class Reference

This feedback will let you animate the scale of the target object over time, with a spring + squash and stretch effect. More...

Inheritance diagram for MoreMountains.Feedbacks.MMF_SquashAndStretchSpring:
MoreMountains.Feedbacks.MMF_Feedback

Public Types

enum  Modes { MoveTo , MoveToAdditive , Bump }
enum  PossibleAxis {
  XtoYZ , XtoY , XtoZ , YtoXZ ,
  YtoX , YtoZ , ZtoXZ , ZtoX ,
  ZtoY
}

Public Attributes

Transform AnimateScaleTarget
 the object to animate
float DeclaredDuration = 0f
 spring duration is determined by the spring (and could be impacted real time), so it's up to you to determine how long this feedback should last, from the point of view of its parent MMF Player
PossibleAxis Axis = PossibleAxis.XtoYZ
 the axis on which to operate squashing and stretching
float Damping = 0.4f
 the dumping ratio determines how fast the spring will evolve after a disturbance. At a low value, it'll oscillate for a long time, while closer to 1 it'll stop oscillating quickly
float Frequency = 6f
 the frequency determines how fast the spring will oscillate when disturbed, low frequency means less oscillations per second, high frequency means more oscillations per second
Modes Mode = Modes.Bump
 the chosen mode for this spring. MoveTo will move the target the specified scale (randomized between min and max). MoveToAdditive will add the specified scale (randomized between min and max) to the target's current scale. Bump will bump the target's scale by the specified power (randomized between min and max)
float MoveToMin = 1f
 the min value from which to pick a random target value when in MoveTo or MoveToAdditive modes
float MoveToMax = 2f
 the max value from which to pick a random target value when in MoveTo or MoveToAdditive modes
float BumpScaleMin = 20f
 the min value from which to pick a random bump amount when in Bump mode
float BumpScaleMax = 30f
 the max value from which to pick a random bump amount when in Bump mode

Static Public Attributes

static bool FeedbackTypeAuthorized = true
 a static bool used to disable all feedbacks of this type at once

Protected Member Functions

override void AutomateTargetAcquisition ()
 A method meant to be implemented per feedback letting you specify what happens (usually setting a target)
override void CustomInitialization (MMF_Player owner)
 On init we store our initial scale.
virtual void GetInitialValues ()
 Stores initial scale for future use.
override void CustomPlayFeedback (Vector3 position, float feedbacksIntensity=1.0f)
 On Play, triggers the scale animation.
virtual IEnumerator Spring ()
 a coroutine running on the Owner used to move the spring
virtual void UpdateSpring ()
 Updates the spring's values.
virtual void ApplyValue ()
 Applies the current spring value to the target.
override void CustomStopFeedback (Vector3 position, float feedbacksIntensity=1.0f)
 On stop, we interrupt movement if it was active.
override void CustomSkipToTheEnd (Vector3 position, float feedbacksIntensity=1.0f)
 Skips to the end, matching the target value.
override void CustomRestoreInitialValues ()
 On restore, we restore our initial state.

Protected Attributes

float _currentValue = 0f
float _targetValue = 0f
float _velocity = 0f
Coroutine _coroutine
float _velocityLowThreshold = 0.001f
Vector3 _newScale
Vector3 _initialScale

Properties

override bool HasAutomatedTargetAcquisition [get]
 sets the inspector color for this feedback
override bool CanForceInitialValue [get]
override float FeedbackDuration [get, set]
 the duration of this feedback is the duration of the scale animation
override bool HasRandomness [get]
virtual bool LowVelocity [get]

Additional Inherited Members

Detailed Description

This feedback will let you animate the scale of the target object over time, with a spring + squash and stretch effect.

Member Enumeration Documentation

◆ Modes

Enumerator
MoveTo 
MoveToAdditive 
Bump 

◆ PossibleAxis

Enumerator
XtoYZ 
XtoY 
XtoZ 
YtoXZ 
YtoX 
YtoZ 
ZtoXZ 
ZtoX 
ZtoY 

Member Function Documentation

◆ ApplyValue()

virtual void MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.ApplyValue ( )
protectedvirtual

Applies the current spring value to the target.

◆ AutomateTargetAcquisition()

override void MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.AutomateTargetAcquisition ( )
protectedvirtual

A method meant to be implemented per feedback letting you specify what happens (usually setting a target)

Reimplemented from MoreMountains.Feedbacks.MMF_Feedback.

◆ CustomInitialization()

override void MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.CustomInitialization ( MMF_Player owner)
protectedvirtual

On init we store our initial scale.

Parameters
owner

Reimplemented from MoreMountains.Feedbacks.MMF_Feedback.

◆ CustomPlayFeedback()

override void MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.CustomPlayFeedback ( Vector3 position,
float feedbacksIntensity = 1::0f )
protected

On Play, triggers the scale animation.

Parameters
position
feedbacksIntensity

◆ CustomRestoreInitialValues()

override void MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.CustomRestoreInitialValues ( )
protectedvirtual

On restore, we restore our initial state.

Reimplemented from MoreMountains.Feedbacks.MMF_Feedback.

◆ CustomSkipToTheEnd()

override void MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.CustomSkipToTheEnd ( Vector3 position,
float feedbacksIntensity = 1::0f )
protectedvirtual

Skips to the end, matching the target value.

Parameters
position
feedbacksIntensity

Reimplemented from MoreMountains.Feedbacks.MMF_Feedback.

◆ CustomStopFeedback()

override void MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.CustomStopFeedback ( Vector3 position,
float feedbacksIntensity = 1::0f )
protectedvirtual

On stop, we interrupt movement if it was active.

Parameters
position
feedbacksIntensity

Reimplemented from MoreMountains.Feedbacks.MMF_Feedback.

◆ GetInitialValues()

virtual void MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.GetInitialValues ( )
protectedvirtual

Stores initial scale for future use.

◆ Spring()

virtual IEnumerator MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.Spring ( )
protectedvirtual

a coroutine running on the Owner used to move the spring

Returns

◆ UpdateSpring()

virtual void MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.UpdateSpring ( )
protectedvirtual

Updates the spring's values.

Member Data Documentation

◆ _coroutine

Coroutine MoreMountains.Feedbacks.MMF_SquashAndStretchSpring._coroutine
protected

◆ _currentValue

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring._currentValue = 0f
protected

◆ _initialScale

Vector3 MoreMountains.Feedbacks.MMF_SquashAndStretchSpring._initialScale
protected

◆ _newScale

Vector3 MoreMountains.Feedbacks.MMF_SquashAndStretchSpring._newScale
protected

◆ _targetValue

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring._targetValue = 0f
protected

◆ _velocity

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring._velocity = 0f
protected

◆ _velocityLowThreshold

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring._velocityLowThreshold = 0.001f
protected

◆ AnimateScaleTarget

Transform MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.AnimateScaleTarget

the object to animate

◆ Axis

PossibleAxis MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.Axis = PossibleAxis.XtoYZ

the axis on which to operate squashing and stretching

◆ BumpScaleMax

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.BumpScaleMax = 30f

the max value from which to pick a random bump amount when in Bump mode

◆ BumpScaleMin

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.BumpScaleMin = 20f

the min value from which to pick a random bump amount when in Bump mode

◆ Damping

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.Damping = 0.4f

the dumping ratio determines how fast the spring will evolve after a disturbance. At a low value, it'll oscillate for a long time, while closer to 1 it'll stop oscillating quickly

◆ DeclaredDuration

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.DeclaredDuration = 0f

spring duration is determined by the spring (and could be impacted real time), so it's up to you to determine how long this feedback should last, from the point of view of its parent MMF Player

◆ FeedbackTypeAuthorized

bool MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.FeedbackTypeAuthorized = true
static

a static bool used to disable all feedbacks of this type at once

◆ Frequency

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.Frequency = 6f

the frequency determines how fast the spring will oscillate when disturbed, low frequency means less oscillations per second, high frequency means more oscillations per second

◆ Mode

Modes MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.Mode = Modes.Bump

the chosen mode for this spring. MoveTo will move the target the specified scale (randomized between min and max). MoveToAdditive will add the specified scale (randomized between min and max) to the target's current scale. Bump will bump the target's scale by the specified power (randomized between min and max)

◆ MoveToMax

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.MoveToMax = 2f

the max value from which to pick a random target value when in MoveTo or MoveToAdditive modes

◆ MoveToMin

float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.MoveToMin = 1f

the min value from which to pick a random target value when in MoveTo or MoveToAdditive modes

Property Documentation

◆ CanForceInitialValue

override bool MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.CanForceInitialValue
get

◆ FeedbackDuration

override float MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.FeedbackDuration
getset

the duration of this feedback is the duration of the scale animation

◆ HasAutomatedTargetAcquisition

override bool MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.HasAutomatedTargetAcquisition
get

sets the inspector color for this feedback

◆ HasRandomness

override bool MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.HasRandomness
get

◆ LowVelocity

virtual bool MoreMountains.Feedbacks.MMF_SquashAndStretchSpring.LowVelocity
getprotected

The documentation for this class was generated from the following file:
  • H:/Code/MoreMountains/topdownengine/Assets/TopDownEngine/ThirdParty/MoreMountains/MMFeedbacks/MMFeedbacks/Feedbacks/MMF_SquashAndStretchSpring.cs