mirror of https://github.com/AxioDL/metaforce.git
164 lines
3.2 KiB
C++
164 lines
3.2 KiB
C++
#pragma once
|
|
|
|
#include <string_view>
|
|
|
|
namespace metaforce {
|
|
namespace pas {
|
|
enum class ELocomotionType {
|
|
Invalid = -1,
|
|
Crouch = 0,
|
|
Relaxed = 1,
|
|
Lurk = 2,
|
|
Combat = 3,
|
|
Internal4 = 4,
|
|
Internal5 = 5,
|
|
Internal6 = 6,
|
|
Internal7 = 7,
|
|
Internal8 = 8,
|
|
Internal9 = 9,
|
|
Internal10 = 10,
|
|
Internal11 = 11,
|
|
Internal12 = 12,
|
|
Internal13 = 13,
|
|
Internal14 = 14
|
|
};
|
|
|
|
enum class ELocomotionAnim { Invalid = -1, Idle, Walk, Run, BackUp, StrafeLeft, StrafeRight, StrafeUp, StrafeDown };
|
|
|
|
enum class EAnimationState {
|
|
Invalid = -1,
|
|
Fall = 0,
|
|
Getup = 1,
|
|
LieOnGround = 2,
|
|
Step = 3,
|
|
Death = 4,
|
|
Locomotion = 5,
|
|
KnockBack = 6,
|
|
MeleeAttack = 7,
|
|
Turn = 8,
|
|
LoopAttack = 9,
|
|
LoopReaction = 10,
|
|
GroundHit = 11,
|
|
Generate = 12,
|
|
Jump = 13,
|
|
Hurled = 14,
|
|
Slide = 15,
|
|
Taunt = 16,
|
|
Scripted = 17,
|
|
ProjectileAttack = 18,
|
|
Cover = 19,
|
|
WallHang = 20,
|
|
AdditiveIdle = 21,
|
|
AdditiveAim = 22,
|
|
AdditiveFlinch = 23,
|
|
AdditiveReaction = 24
|
|
};
|
|
|
|
std::string_view AnimationStateToStr(EAnimationState state);
|
|
|
|
enum class EHurledState {
|
|
Invalid = -1,
|
|
KnockIntoAir,
|
|
KnockLoop,
|
|
KnockDown,
|
|
StrikeWall,
|
|
StrikeWallFallLoop,
|
|
OutOfStrikeWall,
|
|
Six,
|
|
Seven
|
|
};
|
|
|
|
enum class EFallState { Invalid = -1, Zero, One, Two };
|
|
|
|
enum class EReactionType { Invalid = -1, Zero, One, Two, Three };
|
|
|
|
enum class EAdditiveReactionType { Invalid = -1, Electrocution, One, Two, IceBreakout, Four, Five, Six, Seven };
|
|
|
|
enum class EJumpType { Normal, One, Ambush };
|
|
|
|
enum class EJumpState { Invalid = -1, IntoJump, AmbushJump, Loop, OutOfJump, WallBounceLeft, WallBounceRight };
|
|
|
|
enum class EStepDirection { Invalid = -1, Forward = 0, Backward = 1, Left = 2, Right = 3, Up = 4, Down = 5 };
|
|
|
|
enum class EStepType { Normal = 0, Dodge = 1, BreakDodge = 2, RollDodge = 3 };
|
|
enum class ESeverity {
|
|
Invalid = -1,
|
|
Zero = 0,
|
|
One = 1,
|
|
Two = 2,
|
|
Three = 3,
|
|
Four = 4,
|
|
Five = 5,
|
|
Six = 6,
|
|
Seven = 7,
|
|
Eight = 8
|
|
};
|
|
|
|
enum class EGetupType { Invalid = -1, Zero = 0, One = 1, Two = 2 };
|
|
|
|
enum class ELoopState { Invalid = -1, Begin, Loop, End };
|
|
|
|
enum class ELoopAttackType { Invalid = -1, Zero, One, Two, Three };
|
|
|
|
enum class EGenerateType { Invalid = -1, Zero, One, Two, Three, Four, Five, Six, Seven, Eight };
|
|
|
|
enum class ESlideType { Invalid = -1, Zero = 0 };
|
|
|
|
enum class ETauntType { Invalid = -1, Zero, One, Two };
|
|
|
|
enum class ECoverState { Invalid = -1, IntoCover, Cover, Lean, OutOfCover };
|
|
|
|
enum class ECoverDirection { Invalid = -1, Left, Right };
|
|
|
|
enum class ETurnDirection { Invalid = -1, Right, Left };
|
|
|
|
enum class EWallHangState {
|
|
Invalid = -1,
|
|
IntoJump,
|
|
JumpArc,
|
|
JumpAirLoop,
|
|
IntoWallHang,
|
|
WallHang,
|
|
Five,
|
|
OutOfWallHang,
|
|
OutOfWallHangTurn,
|
|
DetachJumpLoop,
|
|
DetachOutOfJump
|
|
};
|
|
} // namespace pas
|
|
|
|
enum class EBodyType { Invalid, BiPedal, Restricted, Flyer, Pitchable, RestrictedFlyer, WallWalker, NewFlyer };
|
|
|
|
enum class EBodyStateCmd {
|
|
Getup,
|
|
Step,
|
|
Die,
|
|
KnockDown,
|
|
KnockBack,
|
|
MeleeAttack,
|
|
ProjectileAttack,
|
|
LoopAttack,
|
|
LoopReaction,
|
|
LoopHitReaction,
|
|
ExitState,
|
|
LeanFromCover,
|
|
NextState,
|
|
MaintainVelocity,
|
|
Generate,
|
|
Hurled,
|
|
Jump,
|
|
Slide,
|
|
Taunt,
|
|
Scripted,
|
|
Cover,
|
|
WallHang,
|
|
Locomotion,
|
|
AdditiveIdle,
|
|
AdditiveAim,
|
|
AdditiveFlinch,
|
|
AdditiveReaction,
|
|
StopReaction
|
|
};
|
|
|
|
} // namespace metaforce
|