Corgi Engine
v9.0
|
Add this component to a character and it'll be able to hang from ledges and climb up Animator parameters : LedgeHanging, LedgeClimbing More...
Public Member Functions | |
override string | HelpBoxText () |
This method is only used to display a helpbox text at the beginning of the ability's inspector. More... | |
override void | ProcessAbility () |
Every frame we make sure we don't have to detach from the ledge More... | |
virtual void | OnMMEvent (LedgeEvent ledgeEvent) |
When getting a ledge event, we make sure it's this Character, and if it is, we grab the ledge More... | |
virtual void | StartGrabbingLedge (Ledge ledge) |
Grabs the ledge if possible More... | |
virtual void | DetachFromLedge () |
Detaches the Character from the ledge, losing any reference to it, and restoring permissions More... | |
override void | UpdateAnimator () |
At the end of each cycle, we send our current LookingUp status to the animator More... | |
override void | ResetAbility () |
On reset ability, we cancel all the changes made More... | |
Public Member Functions inherited from MoreMountains.CorgiEngine.CharacterAbility | |
virtual void | SetInputManager (InputManager inputManager) |
Sets a new input manager for this ability to get input from More... | |
virtual void | BindAnimator () |
Binds the animator from the character and initializes the animator parameters More... | |
virtual void | ResetInput () |
Resets all input for this ability. Can be overridden for ability specific directives More... | |
virtual void | EarlyProcessAbility () |
The first of the 3 passes you can have in your ability. Think of it as EarlyUpdate() if it existed More... | |
virtual void | LateProcessAbility () |
The last of the 3 passes you can have in your ability. Think of it as LateUpdate() More... | |
virtual void | PermitAbility (bool abilityPermitted) |
Changes the status of the ability's permission More... | |
virtual void | Flip () |
Override this to specify what should happen in this ability when the character flips More... | |
virtual void | PlayAbilityStartFeedbacks () |
Plays the ability start sound effect More... | |
virtual void | StopStartFeedbacks () |
Stops the ability used sound effect More... | |
virtual void | PlayAbilityStopFeedbacks () |
Plays the ability stop sound effect More... | |
virtual void | RegisterAnimatorParameter (string parameterName, AnimatorControllerParameterType parameterType, out int parameter) |
Registers a new animator parameter to the list More... | |
Public Member Functions inherited from MoreMountains.Tools.MMEventListener< LedgeEvent > | |
void | OnMMEvent (T eventType) |
Public Attributes | |
string | IdleAnimationName = "Idle" |
the name of the animation to play after the climb animation is complete (usually your Idle animation) More... | |
float | ClimbingAnimationDuration = 0.5f |
the duration of your climbing animation, after this it'll transition to IdleAnimationName automatically More... | |
float | MinimumHangingTime = 0.2f |
the minimum time the Character must have been LedgeHanging before it can LedgeClimb. 0.2s (or more) will prevent any glitches and unwanted input conflicts More... | |
bool | Hanging => _hanging |
Public Attributes inherited from MoreMountains.CorgiEngine.CharacterAbility | |
MMFeedbacks | AbilityStartFeedbacks |
the feedbacks to play when the ability starts More... | |
MMFeedbacks | AbilityStopFeedbacks |
the feedbacks to play when the ability stops More... | |
bool | AbilityPermitted = true |
if true, this ability can perform as usual, if not, it'll be ignored. You can use this to unlock abilities over time for example More... | |
CharacterStates.MovementStates[] | BlockingMovementStates |
an array containing all the blocking movement states. If the Character is in one of these states and tries to trigger this ability, it won't be permitted. Useful to prevent this ability from being used while Idle or Swimming, for example. More... | |
CharacterStates.CharacterConditions[] | BlockingConditionStates |
an array containing all the blocking condition states. If the Character is in one of these states and tries to trigger this ability, it won't be permitted. Useful to prevent this ability from being used while dead, for example. More... | |
Weapon.WeaponStates[] | BlockingWeaponStates |
an array containing all the blocking weapon states. If one of the character's weapons is in one of these states and yet the character tries to trigger this ability, it won't be permitted. Useful to prevent this ability from being used while attacking, for example. More... | |
Protected Member Functions | |
override void | Initialization () |
On Start() we grab a few components for storage More... | |
override void | HandleInput () |
Every frame, we check the input for a up input, in case we're hanging More... | |
virtual void | HandleLedge () |
Every frame, if we're hanging from a ledge, we prevent any force from moving our character, prevent flip and force our position to the ledge's offset More... | |
virtual IEnumerator | Climb () |
This coroutine handles the climb sequence More... | |
override void | InitializeAnimatorParameters () |
Initializes the LedgeHanging and LedgeClimbing animator parameters More... | |
override void | OnEnable () |
On enable, we start listening for LedgeEvents More... | |
override void | OnDisable () |
On disable, we stop listening for ledge events More... | |
Protected Member Functions inherited from MoreMountains.CorgiEngine.CharacterAbility | |
virtual void | Start () |
On Start(), we call the ability's intialization More... | |
virtual void | InternalHandleInput () |
Internal method to check if an input manager is present or not More... | |
virtual void | OnRespawn () |
Override this to describe what should happen to this ability when the character respawns More... | |
virtual void | OnDeath () |
Override this to describe what should happen to this ability when the character respawns More... | |
virtual void | OnHit () |
Override this to describe what should happen to this ability when the character takes a hit More... | |
Protected Attributes | |
bool | _hanging = false |
Ledge | _ledge = null |
CharacterJump | _characterJump |
WaitForSeconds | _climbingAnimationDelay |
float | _ledgeHangingStartedTimestamp |
int | _ledgeHangingAnimationParameter |
int | _ledgeClimbingAnimationParameter |
int | _idleAnimationParameter |
Protected Attributes inherited from MoreMountains.CorgiEngine.CharacterAbility | |
Character | _character |
Transform | _characterTransform |
Health | _health |
CharacterHorizontalMovement | _characterHorizontalMovement |
CorgiController | _controller |
InputManager | _inputManager |
CameraController | _sceneCamera |
Animator | _animator |
CharacterStates | _state |
SpriteRenderer | _spriteRenderer |
MMStateMachine< CharacterStates.MovementStates > | _movement |
MMStateMachine< CharacterStates.CharacterConditions > | _condition |
bool | _abilityInitialized = false |
CharacterGravity | _characterGravity |
float | _verticalInput |
float | _horizontalInput |
bool | _startFeedbackIsPlaying = false |
List< CharacterHandleWeapon > | _handleWeaponList |
Static Protected Attributes | |
const string | _ledgeHangingAnimationParameterName = "LedgeHanging" |
const string | _ledgeClimbingAnimationParameterName = "LedgeClimbing" |
Additional Inherited Members | |
Properties inherited from MoreMountains.CorgiEngine.CharacterAbility | |
virtual bool | AbilityAuthorized [get] |
virtual bool | AbilityInitialized [get] |
true if the ability has already been initialized More... | |
Add this component to a character and it'll be able to hang from ledges and climb up Animator parameters : LedgeHanging, LedgeClimbing
|
protectedvirtual |
This coroutine handles the climb sequence
|
virtual |
Detaches the Character from the ledge, losing any reference to it, and restoring permissions
|
protectedvirtual |
Every frame, we check the input for a up input, in case we're hanging
Reimplemented from MoreMountains.CorgiEngine.CharacterAbility.
|
protectedvirtual |
Every frame, if we're hanging from a ledge, we prevent any force from moving our character, prevent flip and force our position to the ledge's offset
|
virtual |
This method is only used to display a helpbox text at the beginning of the ability's inspector.
Reimplemented from MoreMountains.CorgiEngine.CharacterAbility.
|
protectedvirtual |
On Start() we grab a few components for storage
Reimplemented from MoreMountains.CorgiEngine.CharacterAbility.
|
protectedvirtual |
Initializes the LedgeHanging and LedgeClimbing animator parameters
Reimplemented from MoreMountains.CorgiEngine.CharacterAbility.
|
protectedvirtual |
On disable, we stop listening for ledge events
Reimplemented from MoreMountains.CorgiEngine.CharacterAbility.
|
protectedvirtual |
On enable, we start listening for LedgeEvents
Reimplemented from MoreMountains.CorgiEngine.CharacterAbility.
|
virtual |
When getting a ledge event, we make sure it's this Character, and if it is, we grab the ledge
ledgeEvent |
|
virtual |
Every frame we make sure we don't have to detach from the ledge
Reimplemented from MoreMountains.CorgiEngine.CharacterAbility.
|
virtual |
On reset ability, we cancel all the changes made
Reimplemented from MoreMountains.CorgiEngine.CharacterAbility.
|
virtual |
Grabs the ledge if possible
ledge |
|
virtual |
At the end of each cycle, we send our current LookingUp status to the animator
Reimplemented from MoreMountains.CorgiEngine.CharacterAbility.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
protected |
|
staticprotected |
|
protected |
float MoreMountains.CorgiEngine.CharacterLedgeHang.ClimbingAnimationDuration = 0.5f |
the duration of your climbing animation, after this it'll transition to IdleAnimationName automatically
bool MoreMountains.CorgiEngine.CharacterLedgeHang.Hanging => _hanging |
string MoreMountains.CorgiEngine.CharacterLedgeHang.IdleAnimationName = "Idle" |
the name of the animation to play after the climb animation is complete (usually your Idle animation)
float MoreMountains.CorgiEngine.CharacterLedgeHang.MinimumHangingTime = 0.2f |
the minimum time the Character must have been LedgeHanging before it can LedgeClimb. 0.2s (or more) will prevent any glitches and unwanted input conflicts