TopDown Engine
v4.1
|
Add this class to a trigger collider and it will let you apply a movement speed multiplier to characters entering it More...
Classes | |
class | MovementZoneCollidingEntity |
A class used to store a movement zone's settings More... | |
Public Member Functions | |
override void | Initialization () |
On init, we initialize our list More... | |
override void | TriggerButtonAction () |
When the button is pressed we start modifying the timescale More... | |
virtual void | ChangeSpeed () |
Changes the speed of CharacterMovement equipped characters that enter the zone More... | |
override void | TriggerExitAction (GameObject collider) |
When exiting, and if needed, we reset the character's speed and remove it from our list More... | |
Public Member Functions inherited from MoreMountains.TopDownEngine.ButtonActivated | |
virtual void | MakeActivable () |
Makes the zone activable More... | |
virtual void | MakeUnactivable () |
Makes the zone unactivable More... | |
virtual void | ToggleActivable () |
Makes the zone activable if it wasn't, unactivable if it was activable. More... | |
virtual void | PromptError () |
Triggers an error More... | |
virtual void | ShowPrompt () |
Shows the button A prompt. More... | |
virtual void | HidePrompt () |
Hides the button A prompt. More... | |
virtual void | DisableZone () |
Disables the button activated zone More... | |
virtual void | EnableZone () |
Enables the button activated zone More... | |
virtual bool | CheckNumberOfUses () |
Checks the remaining number of uses and eventual delay between uses and returns true if the zone can be activated. More... | |
Public Attributes | |
float | MovementSpeedMultiplier = 0.5f |
the new movement multiplier to apply More... | |
Public Attributes inherited from MoreMountains.TopDownEngine.ButtonActivated | |
ButtonActivatedRequirements | ButtonActivatedRequirement = ButtonActivatedRequirements.Either |
if this is true, objects with a ButtonActivator class will be able to interact with this zone More... | |
bool | RequiresPlayerType = true |
if this is true, this can only be activated by player Characters More... | |
bool | RequiresButtonActivationAbility = true |
if this is true, this zone can only be activated if the character has the required ability More... | |
bool | Activable = true |
if this is false, the zone won't be activable More... | |
bool | AutoActivation = false |
if true, the zone will activate whether the button is pressed or not More... | |
float | AutoActivationDelay = 0f |
the delay, in seconds, during which the character has to be within the zone to activate it More... | |
bool | AutoActivationDelayResetsOnExit = true |
if this is true, exiting the zone will reset the auto activation delay More... | |
bool | CanOnlyActivateIfGrounded = false |
if this is set to false, the zone won't be activable while not grounded More... | |
bool | ShouldUpdateState = true |
Set this to true if you want the CharacterBehaviorState to be notified of the player's entry into the zone. More... | |
bool | OnlyOneActivationAtOnce = true |
if this is true, enter won't be retriggered if another object enters, and exit will only be triggered when the last object exits More... | |
LayerMask | TargetLayerMask = ~0 |
a layermask with all the layers that can interact with this specific button activated zone More... | |
bool | UnlimitedActivations = true |
if this is set to false, your number of activations will be MaxNumberOfActivations More... | |
int | MaxNumberOfActivations = 0 |
the number of times the zone can be interacted with More... | |
int | NumberOfActivationsLeft |
the amount of remaining activations on this zone More... | |
float | DelayBetweenUses = 0f |
the delay (in seconds) after an activation during which the zone can't be activated More... | |
bool | DisableAfterUse = false |
if this is true, the zone will disable itself (forever or until you manually reactivate it) after its last use More... | |
InputTypes | InputType = InputTypes.Default |
the selected input type (default, button or key) More... | |
string | InputButton = "Interact" |
the selected button string used to activate this zone More... | |
KeyCode | InputKey = KeyCode.Space |
the key used to activate this zone More... | |
string | AnimationTriggerParameterName |
an (absolutely optional) animation parameter that can be triggered on the character when activating the zone More... | |
bool | UseVisualPrompt = true |
if this is true, a prompt will be shown if setup properly More... | |
ButtonPrompt | ButtonPromptPrefab |
the gameobject to instantiate to present the prompt More... | |
string | ButtonPromptText = "A" |
the text to display in the button prompt More... | |
Color | ButtonPromptColor = MMColors.LawnGreen |
the text to display in the button prompt More... | |
Color | ButtonPromptTextColor = MMColors.White |
the color for the prompt's text More... | |
bool | AlwaysShowPrompt = true |
If true, the "buttonA" prompt will always be shown, whether the player is in the zone or not. More... | |
bool | ShowPromptWhenColliding = true |
If true, the "buttonA" prompt will be shown when a player is colliding with the zone. More... | |
bool | HidePromptAfterUse = false |
If true, the prompt will hide after use. More... | |
Vector3 | PromptRelativePosition = Vector3.zero |
the position of the actual buttonA prompt relative to the object's center More... | |
Vector3 | PromptRotation = Vector3.zero |
the rotation of the actual buttonA prompt More... | |
MMFeedbacks | ActivationFeedback |
a feedback to play when the zone gets activated More... | |
MMFeedbacks | DeniedFeedback |
a feedback to play when the zone tries to get activated but can't More... | |
MMFeedbacks | EnterFeedback |
a feedback to play when the zone gets entered More... | |
MMFeedbacks | ExitFeedback |
a feedback to play when the zone gets exited More... | |
UnityEvent | OnActivation |
a UnityEvent to trigger when this zone gets activated More... | |
UnityEvent | OnExit |
a UnityEvent to trigger when this zone gets exited More... | |
UnityEvent | OnStay |
a UnityEvent to trigger when a character is within the zone More... | |
Protected Attributes | |
List< MovementZoneCollidingEntity > | CollidingEntities |
Protected Attributes inherited from MoreMountains.TopDownEngine.ButtonActivated | |
Animator | _buttonPromptAnimator |
ButtonPrompt | _buttonPrompt |
Collider | _collider |
Collider2D | _collider2D |
bool | _promptHiddenForever = false |
CharacterButtonActivation | _characterButtonActivation |
float | _lastActivationTimestamp |
List< GameObject > | _collidingObjects |
Character | _currentCharacter |
bool | _staying = false |
Coroutine | _autoActivationCoroutine |
Additional Inherited Members | |
Public Types inherited from MoreMountains.TopDownEngine.ButtonActivated | |
enum | ButtonActivatedRequirements { ButtonActivatedRequirements.Character, ButtonActivatedRequirements.ButtonActivator, ButtonActivatedRequirements.Either, ButtonActivatedRequirements.None } |
enum | InputTypes { InputTypes.Default, InputTypes.Button, InputTypes.Key } |
Protected Member Functions inherited from MoreMountains.TopDownEngine.ButtonActivated | |
virtual void | OnEnable () |
On Enable, we initialize our ButtonActivated zone More... | |
virtual void | OnDisable () |
On disable we disable our input action if needed More... | |
virtual IEnumerator | TriggerButtonActionCo () |
virtual void | Update () |
virtual void | ActivateZone () |
Activates the zone More... | |
virtual void | OnTriggerEnter2D (Collider2D collidingObject) |
Handles enter collision with 2D triggers More... | |
virtual void | OnTriggerExit2D (Collider2D collidingObject) |
Handles enter collision with 2D triggers More... | |
virtual void | OnTriggerEnter (Collider collidingObject) |
Handles enter collision with 2D triggers More... | |
virtual void | OnTriggerExit (Collider collidingObject) |
Handles enter collision with 2D triggers More... | |
virtual void | TriggerEnter (GameObject collider) |
Triggered when something collides with the button activated zone More... | |
virtual void | TriggerExit (GameObject collider) |
Triggered when something exits the water More... | |
virtual bool | TestForLastObject (GameObject collider) |
Tests if the object exiting our zone is the last remaining one More... | |
virtual bool | CheckConditions (GameObject collider) |
Determines whether or not this zone should be activated More... | |
Properties inherited from MoreMountains.TopDownEngine.ButtonActivated | |
virtual bool | AutoActivationInProgress [get, set] |
virtual float | AutoActivationStartedAt [get, set] |
bool | InputActionPerformed [get] |
Add this class to a trigger collider and it will let you apply a movement speed multiplier to characters entering it
|
virtual |
Changes the speed of CharacterMovement equipped characters that enter the zone
|
virtual |
On init, we initialize our list
Reimplemented from MoreMountains.TopDownEngine.ButtonActivated.
|
virtual |
When the button is pressed we start modifying the timescale
Reimplemented from MoreMountains.TopDownEngine.ButtonActivated.
|
virtual |
When exiting, and if needed, we reset the character's speed and remove it from our list
collider |
Reimplemented from MoreMountains.TopDownEngine.ButtonActivated.
|
protected |
float MoreMountains.TopDownEngine.MovementZone.MovementSpeedMultiplier = 0.5f |
the new movement multiplier to apply