Class CharacterMovement
Behavior class that handles movement logic for character
Constructors
CharacterMovement(Rigidbody)
Behavior class that handles movement logic for character
Declaration
public CharacterMovement(Rigidbody rig)
Fields
AllowJumpWhenClimbing
Allow character jump when climbing
Declaration
[PropVisibility("ClimbAvailable", CompareMode.Equal)]
public readonly FrameBasedBool AllowJumpWhenClimbing
AllowSquatJump
Allow character jump when squatting, and keep squatting when jump in air
Declaration
[PropVisibility("JumpCount", CompareMode.GreaterThan, 0)]
public readonly FrameBasedBool AllowSquatJump
ClimbAvailable
Allow character to climb
Declaration
[PropGroup("Climb")]
public readonly FrameBasedBool ClimbAvailable
ClimbSpeedX
Horizontal speed when climbing
Declaration
[PropVisibility("ClimbAvailable", CompareMode.Equal)]
public readonly FrameBasedInt ClimbSpeedX
ClimbSpeedY
Vertical speed when climbing
Declaration
[PropVisibility("ClimbAvailable", CompareMode.Equal)]
public readonly FrameBasedInt ClimbSpeedY
CrashAvailable
Allow character crash
Declaration
[PropGroup("Crash")]
public readonly FrameBasedBool CrashAvailable
CrashDeceleration
Speed deceleration when character crashing
Declaration
[PropVisibility("CrashAvailable", CompareMode.Equal)]
public readonly FrameBasedInt CrashDeceleration
CrashDuration
How many frames does it takes for one crash
Declaration
[PropVisibility("CrashAvailable", CompareMode.Equal)]
public readonly FrameBasedInt CrashDuration
CrashRunDurationRequire
How many frames does it takes to make character crash
Declaration
[PropVisibility("CrashAvailable", CompareMode.And, "CrashWhenSlippy")]
public readonly FrameBasedInt CrashRunDurationRequire
CrashWhenSlippy
Make character crash when running too long on slippery ground or rush on slippery ground
Declaration
[PropVisibility("CrashAvailable", CompareMode.Equal)]
public readonly FrameBasedBool CrashWhenSlippy
DashAcceleration
Speed acceleration when dashing
Declaration
[PropVisibility("DashAvailable", CompareMode.Equal)]
public readonly FrameBasedInt DashAcceleration
DashAvailable
Allow character to dash (player hold down button and press jump button for once)
Declaration
[PropGroup("Dash")]
public readonly FrameBasedBool DashAvailable
DashCancelLoseRate
Speed multiply this rate when dash being cancel (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("DashAvailable", CompareMode.Equal)]
public readonly FrameBasedInt DashCancelLoseRate
DashCooldown
Frames length between prev dash end and next dash start
Declaration
[PropVisibility("DashAvailable", CompareMode.Equal)]
public readonly FrameBasedInt DashCooldown
DashDuration
How many frames does dash last
Declaration
[PropVisibility("DashAvailable", CompareMode.Equal)]
public readonly FrameBasedInt DashDuration
DashHeightAmount
Character hitbox height multiply this rate when dashing (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("DashAvailable", CompareMode.Equal)]
public readonly FrameBasedInt DashHeightAmount
DashPutoutFire
Allow character dash through fire to put it out
Declaration
[PropVisibility("DashAvailable", CompareMode.Equal)]
public readonly FrameBasedBool DashPutoutFire
DashSpeed
Movement speed for dashing
Declaration
[PropVisibility("DashAvailable", CompareMode.Equal)]
public readonly FrameBasedInt DashSpeed
DashWithRoll
Character roll when dashing
Declaration
[PropVisibility("DashAvailable", CompareMode.Equal)]
public readonly FrameBasedBool DashWithRoll
FirstJumpWithRoll
When character jump from ground, does it jump with rolling in air
Declaration
[PropVisibility("JumpCount", CompareMode.GreaterThan, 0)]
public readonly FrameBasedBool FirstJumpWithRoll
FlyAcceleration
Speed acceleration when flying
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedInt FlyAcceleration
FlyAvailable
Allow character to fly (player press jump button when no jump count left)
Declaration
[PropGroup("Fly")]
public readonly FrameBasedBool FlyAvailable
FlyCooldown
Character has to wait this many frames to fly again
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedInt FlyCooldown
FlyDeceleration
Speed deceleration when flying
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedInt FlyDeceleration
FlyFallSpeed
Fall down speed shen flying
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedInt FlyFallSpeed
FlyGravityFallRate
Gravity multiply this rate when flying and moving down (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedInt FlyGravityFallRate
FlyGravityRiseRate
Gravity multiply this rate when flying and moving up (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedInt FlyGravityRiseRate
FlyHeightAmount
Character hitbox height multiply this rate when flying (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedInt FlyHeightAmount
FlyMoveSpeed
Horizontal move speed when flying
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedInt FlyMoveSpeed
FlyRiseSpeed
Initial speed when fly start
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedInt FlyRiseSpeed
GlideOnFlying
When glide flying, character always move to the direction it facing
Declaration
[PropVisibility("FlyAvailable", CompareMode.Equal)]
public readonly FrameBasedBool GlideOnFlying
GrabFlipThroughDownAvailable
Allow character to flip through block downward (player press down when standing on top-grabable blocks)
Declaration
[PropVisibility("GrabTopAvailable", CompareMode.Equal)]
public readonly FrameBasedBool GrabFlipThroughDownAvailable
GrabFlipThroughDuration
How long does flip through takes in frames
Declaration
[PropVisibility("GrabTopAvailable", CompareMode.Equal)]
public readonly FrameBasedInt GrabFlipThroughDuration
GrabFlipThroughUpAvailable
Allow character to flip through block upward (player press up when top-grabbing)
Declaration
[PropVisibility("GrabTopAvailable", CompareMode.Equal)]
public readonly FrameBasedBool GrabFlipThroughUpAvailable
GrabMoveSpeedX
Horizontal move speed when top-grabbing
Declaration
[PropVisibility("GrabTopAvailable", CompareMode.Equal)]
public readonly FrameBasedInt GrabMoveSpeedX
GrabMoveSpeedY
Vertical move speed when side-grabbing
Declaration
[PropVisibility("GrabSideAvailable", CompareMode.Equal)]
public readonly FrameBasedInt GrabMoveSpeedY
GrabSideAvailable
Allow character grab on the side of blocks with Tag.GrabSide
Declaration
public readonly FrameBasedBool GrabSideAvailable
GrabSideHeightAmount
Character hitbox height multiply this rate when side-grabbing (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("GrabSideAvailable", CompareMode.Equal)]
public readonly FrameBasedInt GrabSideHeightAmount
GrabSideJumpKickSpeed
Horizontal initial speed when character jump when side-grabbing
Declaration
[PropVisibility("GrabSideAvailable", CompareMode.Equal)]
public readonly FrameBasedInt GrabSideJumpKickSpeed
GrabTopAvailable
Allow character grab on the bottom of blocks with Tag.GrabTop
Declaration
[PropGroup("Grab")]
public readonly FrameBasedBool GrabTopAvailable
GrabTopHeightAmount
Character hitbox height multiply this rate when top-grabbing (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("GrabTopAvailable", CompareMode.Equal)]
public readonly FrameBasedInt GrabTopHeightAmount
InWaterSpeedRate
When character inside water, the movement speed will multiply this rate (0 means 0%, 1000 means 100%)
Declaration
public readonly FrameBasedInt InWaterSpeedRate
JumpBoostFromMoveRate
When character start jump, if it's moving, the running speed will multiply this rate and add into the initial jump speed. (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("JumpCount", CompareMode.GreaterThan, 0)]
public readonly FrameBasedInt JumpBoostFromMoveRate
JumpBreakDash
Allow character jump when dashing and stop the dash
Declaration
[PropVisibility("JumpCount", CompareMode.GreaterThan, 0)]
public readonly FrameBasedBool JumpBreakDash
JumpBreakRush
Allow character jump when rushing and stop the rush
Declaration
[PropVisibility("JumpCount", CompareMode.GreaterThan, 0)]
public readonly FrameBasedBool JumpBreakRush
JumpCount
How many times can the character jump without touching ground
Declaration
[PropGroup("Jump")]
public readonly FrameBasedInt JumpCount
JumpDownThroughOneway
Allow character jump down and go through oneway gate (player holding down button and press jump button once)
Declaration
public readonly FrameBasedBool JumpDownThroughOneway
JumpReleaseSpeedRate
When character stop trying to jump (player release the jump button), and the character is still moving up, then the current speed will be multiply to this rate (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("JumpCount", CompareMode.GreaterThan, 0)]
public readonly FrameBasedInt JumpReleaseSpeedRate
JumpRiseGravityRate
Gravity applys on the character will multiply this rate when character moving up in air (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("JumpCount", CompareMode.GreaterThan, 0)]
public readonly FrameBasedInt JumpRiseGravityRate
JumpSpeed
Initial speed when character start to jump
Declaration
[PropVisibility("JumpCount", CompareMode.GreaterThan, 0)]
public readonly FrameBasedInt JumpSpeed
MovementHeight
Height of the character in global space when character is 160cm
Declaration
public readonly FrameBasedInt MovementHeight
MovementWidth
Default with of the character
Declaration
[PropGroup("Size")]
public readonly FrameBasedInt MovementWidth
PoundAvailable
Allow character ground pound in air (player press down button in air)
Declaration
[PropGroup("Pound")]
public readonly FrameBasedBool PoundAvailable
PoundPutoutFire
Allow character pound on fire to put it out
Declaration
[PropVisibility("PoundAvailable", CompareMode.Equal)]
public readonly FrameBasedBool PoundPutoutFire
PoundSpeed
Movement speed when pounding
Declaration
[PropVisibility("PoundAvailable", CompareMode.Equal)]
public readonly FrameBasedInt PoundSpeed
PushAvailable
Allow character push other rigidbody
Declaration
[PropGroup("Push")]
public readonly FrameBasedBool PushAvailable
PushSpeed
Movement speed when character pushing
Declaration
[PropVisibility("PushAvailable", CompareMode.Equal)]
public readonly FrameBasedInt PushSpeed
ResetJumpCountWhenGrab
Set jump count to 0 when character grabbing
Declaration
[PropVisibility("GrabTopAvailable", CompareMode.Or, "GrabSideAvailable")]
public readonly FrameBasedBool ResetJumpCountWhenGrab
ResetJumpCountWhenSlide
Set jump count to 0 when slide
Declaration
[PropVisibility("SlideAvailable", CompareMode.Equal)]
public readonly FrameBasedBool ResetJumpCountWhenSlide
RunAcceleration
Speed acceleration when character is running
Declaration
[PropVisibility("RunAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RunAcceleration
RunAvailable
Allow character to run
Declaration
[PropGroup("Run")]
public readonly FrameBasedBool RunAvailable
RunBrakeAcceleration
Speed acceleration when character is trying to run to the opposite direction
Declaration
[PropVisibility("RunAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RunBrakeAcceleration
RunDeceleration
Speed deceleration when character is running
Declaration
[PropVisibility("RunAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RunDeceleration
RunSpeed
How fast should the character run
Declaration
[PropVisibility("RunAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RunSpeed
RushAcceleration
Speed acceleration when rushing
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RushAcceleration
RushAvailable
Allow character to rush
Declaration
[PropGroup("Rush")]
public readonly FrameBasedBool RushAvailable
RushCooldown
How many frames does character has to wair after prev rush end to rush again
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RushCooldown
RushDeceleration
Speed deceleration when rushing
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RushDeceleration
RushDuration
How many frames does rush last
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RushDuration
RushHeightAmount
Character hitbox height multiply this rate when rushing (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RushHeightAmount
RushInAir
Allow character rush when not grounded
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedBool RushInAir
RushInWater
Allow character rush when inside water
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedBool RushInWater
RushPutoutFire
Allow character rush through fire to put it out
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedBool RushPutoutFire
RushSpeed
Movement speed when rushing
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RushSpeed
RushStiff
How many frames does character not allow to move after rush end
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RushStiff
RushStopSpeed
Movement speed when rush end
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedInt RushStopSpeed
RushWhenClimb
character rush when climb
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedBool RushWhenClimb
RushWhenSquat
character rush when squat
Declaration
[PropVisibility("RushAvailable", CompareMode.Equal)]
public readonly FrameBasedBool RushWhenSquat
SlideAvailable
Allow character to slide on wall
Declaration
[PropGroup("Slide")]
public readonly FrameBasedBool SlideAvailable
SlideDropSpeed
Drop down speed when sliding
Declaration
[PropVisibility("SlideAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SlideDropSpeed
SlideJumpKickSpeed
Horizontal initial speed when character jump when slide
Declaration
[PropVisibility("SlideAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SlideJumpKickSpeed
SlideOnAnyBlock
Allow character to slide on all type of blocks
Declaration
[PropVisibility("SlideAvailable", CompareMode.Equal)]
public readonly FrameBasedBool SlideOnAnyBlock
SlipAcceleration
Speed acceleration when moving on slippery ground
Declaration
[PropVisibility("SlipAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SlipAcceleration
SlipAvailable
Allow character slip when run on slippery ground
Declaration
[PropGroup("Slip")]
public readonly FrameBasedBool SlipAvailable
SlipDeceleration
Speed deceleration when moving on slippery ground
Declaration
[PropVisibility("SlipAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SlipDeceleration
SquatAcceleration
Movement acceleration when squat moving
Declaration
[PropVisibility("SquatAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SquatAcceleration
SquatAvailable
Allow character to squat
Declaration
[PropGroup("Squat")]
public readonly FrameBasedBool SquatAvailable
SquatDeceleration
Movement deceleration when squat moving
Declaration
[PropVisibility("SquatAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SquatDeceleration
SquatHeightAmount
Character hitbox height multiply this rate when squatting (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("SquatAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SquatHeightAmount
SquatMoveSpeed
Move speed when character squatting, set to 0 when not allow squat move
Declaration
[PropVisibility("SquatAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SquatMoveSpeed
SubsequentJumpWithRoll
When character jump from air, does it jump with rolling in air
Declaration
[PropVisibility("JumpCount", CompareMode.GreaterThan, 1)]
public readonly FrameBasedBool SubsequentJumpWithRoll
SwimAcceleration
Speed acceleration when chracter inside water
Declaration
[PropVisibility("SwimAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SwimAcceleration
SwimAvailable
Allow character swim in water
Declaration
[PropGroup("Swim")]
public readonly FrameBasedBool SwimAvailable
SwimDeceleration
Speed deceleration when chracter inside water
Declaration
[PropVisibility("SwimAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SwimDeceleration
SwimHeightAmount
Character hitbox height multiply this rate when swimming (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("SwimAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SwimHeightAmount
SwimJumpSpeed
Movement speed when character jump inside water
Declaration
[PropVisibility("SwimAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SwimJumpSpeed
SwimSpeed
Movement speed when character swimming
Declaration
[PropVisibility("SwimAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SwimSpeed
SwimWidthAmount
Character hitbox width multiply this rate when swimming (0 means 0%, 1000 means 100%)
Declaration
[PropVisibility("SwimAvailable", CompareMode.Equal)]
public readonly FrameBasedInt SwimWidthAmount
Target
Declaration
public readonly Rigidbody Target
TargetCharacter
Declaration
public readonly Character TargetCharacter
WalkAcceleration
Speed acceleration when character is walking
Declaration
[PropVisibility("WalkAvailable", CompareMode.Equal)]
public readonly FrameBasedInt WalkAcceleration
WalkAvailable
Allow character to walk
Declaration
[PropGroup("Walk")]
public readonly FrameBasedBool WalkAvailable
WalkBrakeAcceleration
Speed acceleration when character is trying to walk to the opposite direction
Declaration
[PropVisibility("WalkAvailable", CompareMode.Equal)]
public readonly FrameBasedInt WalkBrakeAcceleration
WalkDeceleration
Speed deceleration when character is walking
Declaration
[PropVisibility("WalkAvailable", CompareMode.Equal)]
public readonly FrameBasedInt WalkDeceleration
WalkSpeed
How fast should the character walk
Declaration
[PropVisibility("WalkAvailable", CompareMode.Equal)]
public readonly FrameBasedInt WalkSpeed
Properties
CollisionMask
Declaration
protected int CollisionMask { get; }
CurrentJumpCount
How many times does character jumps after touching ground
Declaration
public int CurrentJumpCount { get; set; }
FacingFront
True if character currently facing front
Declaration
public bool FacingFront { get; set; }
FacingRight
True if character currently facing right
Declaration
public bool FacingRight { get; set; }
Height
Declaration
protected int Height { get; set; }
InWater
Declaration
protected bool InWater { get; }
IntendedX
1 if character want to move right, -1 for left
Declaration
public int IntendedX { get; }
IntendedY
1 if character want to move up, -1 for down
Declaration
public int IntendedY { get; }
IsClimbing
True if character is climbing
Declaration
public bool IsClimbing { get; }
IsCrashing
True if character is crashing
Declaration
public bool IsCrashing { get; }
IsDashing
True if character is dashing
Declaration
public bool IsDashing { get; }
IsFlying
True if character is flying
Declaration
public bool IsFlying { get; }
IsGrabFlipping
True if character flipping through blocks
Declaration
public bool IsGrabFlipping { get; }
IsGrabFlippingDown
True if character flipping through blocks downward
Declaration
public bool IsGrabFlippingDown { get; }
IsGrabFlippingUp
True if character flipping through blocks upward
Declaration
public bool IsGrabFlippingUp { get; }
IsGrabbingSide
True if character is side-grabbing
Declaration
public bool IsGrabbingSide { get; }
IsGrabbingTop
True if character is top-grabbing
Declaration
public bool IsGrabbingTop { get; }
IsGrounded
Declaration
protected bool IsGrounded { get; }
IsInsideGround
Declaration
protected bool IsInsideGround { get; }
IsMoving
True if character is moving
Declaration
public bool IsMoving { get; }
IsPounding
True if character is pounding
Declaration
public bool IsPounding { get; }
IsRolling
True if character is rolling
Declaration
public bool IsRolling { get; }
IsRunning
True if character is running
Declaration
public bool IsRunning { get; }
IsRushing
True if character is rushing
Declaration
public bool IsRushing { get; }
IsSliding
True if character is sliding on wall
Declaration
public bool IsSliding { get; }
IsSquatting
True if character is squatting
Declaration
public bool IsSquatting { get; }
IsWalking
True if character is walking
Declaration
public bool IsWalking { get; }
LastClimbFrame
Last frame when character climb
Declaration
public int LastClimbFrame { get; }
LastCrashFrame
Last frame when character crash
Declaration
public int LastCrashFrame { get; }
LastDashFrame
Last frame when character start to dash
Declaration
public int LastDashFrame { get; }
LastEndMoveFrame
Last frame when character moving ends
Declaration
public int LastEndMoveFrame { get; }
LastFacingChangeFrame
Last frame when character change horizontal facing
Declaration
public int LastFacingChangeFrame { get; }
LastFlyFrame
Last frame when character start to fly
Declaration
public int LastFlyFrame { get; }
LastGrabCancelFrame
Last frame when character stop grabbing
Declaration
public int LastGrabCancelFrame { get; }
LastGrabFlipDownFrame
Last frame when character start to grab flip downward
Declaration
public int LastGrabFlipDownFrame { get; }
LastGrabFlipUpFrame
Last frame when character start to grab flip upward
Declaration
public int LastGrabFlipUpFrame { get; }
LastGrabbingFrame
Last frame when character is grabbing
Declaration
public int LastGrabbingFrame { get; }
LastGroundFrame
Last frame when character start touching ground
Declaration
public int LastGroundFrame { get; }
LastGroundingFrame
Last frame when character is touching ground
Declaration
public int LastGroundingFrame { get; }
LastJumpFrame
Last frame when character start to jump
Declaration
public int LastJumpFrame { get; }
LastMoveDirection
Direction for last movement
Declaration
public Int2 LastMoveDirection { get; }
LastPoundingFrame
Last frame when character is pounding
Declaration
public int LastPoundingFrame { get; }
LastRushStartFrame
Last frame when character start to rush
Declaration
public int LastRushStartFrame { get; }
LastSlidingFrame
Last frame when character is sliding on wall
Declaration
public int LastSlidingFrame { get; }
LastSlippyMoveStartFrame
Last frame when character start to move on slippery ground
Declaration
public int LastSlippyMoveStartFrame { get; }
LastSquatStartFrame
Last frame when character start to squat
Declaration
public int LastSquatStartFrame { get; }
LastSquattingFrame
Last frame when character is squatting
Declaration
public int LastSquattingFrame { get; }
LastStartMoveFrame
Last frame when character start to move
Declaration
public int LastStartMoveFrame { get; }
LastStartRunFrame
Last frame when character start to run
Declaration
public int LastStartRunFrame { get; }
MovementState
Current movement type
Declaration
public CharacterMovementState MovementState { get; set; }
OffsetX
Declaration
protected int OffsetX { get; set; }
OffsetY
Declaration
protected int OffsetY { get; set; }
Rect
Declaration
protected IRect Rect { get; }
ShouldRun
True if character want to run instead of walk when move
Declaration
public bool ShouldRun { get; }
SyncFromConfigFile
Does movement config sync with json file in game universe folder
Declaration
public virtual bool SyncFromConfigFile { get; }
VelocityX
Declaration
protected int VelocityX { get; set; }
VelocityY
Declaration
protected int VelocityY { get; set; }
Width
Declaration
protected int Width { get; set; }
X
Declaration
protected int X { get; set; }
Y
Declaration
protected int Y { get; set; }
Methods
CalculateMovementState(CharacterMovement)
Get current movement type base on current cached data
Declaration
public static CharacterMovementState CalculateMovementState(CharacterMovement movement)
Crash()
Perform crash (call this once when crash start)
Declaration
public virtual void Crash()
Dash()
Perform dash (call this once when dash start)
Declaration
public virtual void Dash()
GetMovementState()
Get current movement type base on current cached data
Declaration
protected virtual CharacterMovementState GetMovementState()
HoldJump(bool)
Is character holding jump (call this every frame no matter character is jumpping or not)
Declaration
public virtual void HoldJump(bool holding)
Jump(bool)
Perform jump (call this once when jump start)
Declaration
public virtual void Jump(bool isSquatJump = false)
Parameters
Type | Name | Description |
---|---|---|
bool | isSquatJump | Is this jump a squat jump or not |
LockFacingRight(bool, int)
Force character facing right or left for given frames
Declaration
public void LockFacingRight(bool facingRight, int duration = 1)
LockSquat(int)
Force character to squat for given frames
Declaration
public void LockSquat(int duration = 1)
Move(Direction3, Direction3, bool)
Move the character
Declaration
public virtual void Move(Direction3 x, Direction3 y, bool walk = false)
True if character want to walk instead of run
MoveLogic(int, int, bool)
Declaration
protected void MoveLogic(int x, int y, bool walk = false)
OnActivated()
Declaration
public virtual void OnActivated()
PhysicsUpdateGamePlay()
Declaration
public virtual void PhysicsUpdateGamePlay()
Pound()
Perform pound (call this once when pound start)
Declaration
public virtual void Pound()
ReloadMovementConfigFromFile()
Load movement data from json file inside game universe folder
Declaration
public void ReloadMovementConfigFromFile()
Rush()
Perform rush (call this once when rush start)
Declaration
public virtual void Rush()
SetSpeedRate(int, int)
Force movement speed rate for given frames
Declaration
public void SetSpeedRate(int newRate, int duration = 1)
Parameters
Type | Name | Description |
---|---|---|
int | newRate | 0 means 0%, 1000 means 100% |
Stop()
Stop current movement
Declaration
public virtual void Stop()
StopCrash()
Stop current crash
Declaration
public void StopCrash()
StopDash()
Stop current dashing
Declaration
public void StopDash()
StopRush()
Stop current rush
Declaration
public void StopRush()
UpdateLater()
Declaration
public virtual void UpdateLater()