123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554 |
- //CPlayer - [2020-04-13 11:57:47]
- #ifndef _CPLAYER_H_
- #define _CPLAYER_H_
- #include "common.h"
- #include "TAnimData.h"
- #include "TPlayerInfo.h"
- #include "CAnimManager.h"
- /*
- 0011DE8C CPlayer::SetPos(int,int)
- 00125D8C CPlayer::SetPos(TPoint3D)
- 00154314 CPlayer::GetDistance(TPoint)
- 0015432C CPlayer::GetDistanceSq(TPoint)
- 0015CBD0 CPlayer::SetPos(TPoint)
- 0016E630 CPlayer::UpdateFE()
- 0016E64E CPlayer::UpdateRot()
- 0016E6B0 CPlayer::UpdateHeadRot()
- 0016E7A4 CPlayer::UpdateFinalise()
- 0016E7C2 CPlayer::Update()
- 0016E81A CPlayer::UpdateSprint()
- 0016E874 CPlayer::UpdateFace()
- 0016E9BC CPlayer::UpdatePosVel()
- 0016EB6C CPlayer::UpdateFuturePos()
- 0016EB86 CPlayer::UpdateBallInHands()
- 0016EB88 CPlayer::SetPos(int,int,int)
- 0016EBDE CPlayer::SetPosDest()
- 0016EBE6 CPlayer::SetMoveDest(int,int)
- 0016EBF2 CPlayer::SetMoveDest(TPoint)
- 0016EBFE CPlayer::SetRotExplicit(int)
- 0016EC02 CPlayer::SetRot(int,bool)
- 0016EC0C CPlayer::SetRot(TPoint,bool)
- 0016EC20 CPlayer::GetRotPoint(TPoint)
- 0016EC34 CPlayer::SetFace(int)
- 0016EC3A CPlayer::SetFace(int,int)
- 0016EC48 CPlayer::SetFace(TPoint)
- 0016EC56 CPlayer::SetFaceDest()
- 0016EC7A CPlayer::Stop(int)
- 0016EC8E CPlayer::GetRotDest()
- 0016ECB6 CPlayer::GetRotPoint(TPoint3D)
- 0016ECCC CPlayer::GetRotBall()
- 0016ECF0 CPlayer::GetDistance(CPlayer*)
- 0016ED1C CPlayer::GetDistanceSq(CPlayer*)
- 0016ED40 CPlayer::SetSpaceRot(int,int)
- 0016ED8A CPlayer::GetMoveDistance()
- 0016ED96 CPlayer::Init()
- 0016EDD0 CPlayer::SetupGoally(int,TPlayerInfo *)
- 0016EEC6 CPlayer::SetupPlayer(int,int,TPlayerInfo *)
- 0016EFBC CPlayer::SetupStandard()
- 0016F008 CPlayer::SetupOfficial()
- 0016F044 CPlayer::Reset()
- 0016F114 CPlayer::CancelHeadInputControl()
- 0016F11C CPlayer::SetHeadRotRel(int,bool)
- 0016F12C CPlayer::GetBonePos(int)
- 0016F13C CPlayer::GetTimePos(int)
- 0016F280 CPlayer::AttributeInterpolate_Internal(EPlayerAttribute,int,int,int,int,int)
- 0016F324 CPlayer::UpdateAction()
- 0016F3D4 CPlayer::ActionTend(int,TPoint3D *)
- 0016F734 CPlayer::UpdateActionSlideTackleX(int)
- 0016FA40 CPlayer::UpdateActionSlideTackle(int)
- 0016FAAC CPlayer::UpdateActionConservativeTackle(int)
- 0016FB24 CPlayer::UpdateActionGKSave(int)
- 0016FB94 CPlayer::UpdateActionDeek(int)
- 0016FE80 CPlayer::UpdateActionControl(int)
- 0016FF24 CPlayer::UpdateActionKick(int)
- 0016FF78 CPlayer::UpdateActionGKKick(int)
- 0016FFC8 CPlayer::ClearAction()
- 0016FFD4 CPlayer::ActionCheckIsStillValidRange(int,int,int)
- 001700C0 CPlayer::KickFail()
- 001700E4 CPlayer::ActionUpdateDynamic()
- 0017012C CPlayer::ActionTendSetupDest(TPoint3D)
- 001701D0 CPlayer::ActionTendSetup(TActionSetup *,EACTION)
- 00170242 CPlayer::ActionGetPosFromDest()
- 001702B0 CPlayer::Animate(int)
- 0017039C CPlayer::ApplyRootBoneOfs(TAnimData *,int)
- 00170440 CPlayer::SetNextState(TAnimData *)
- 001704DC CPlayer::GetAnimData()
- 001704F4 CPlayer::SetAnim(int)
- 00170694 CPlayer::GetRootBoneMove(TPoint *)
- 0017077C CPlayer::GetTrueRot()
- 00170820 CPlayer::AnimBlendNeeded()
- 0017082C CPlayer::UpdateAnimCalcs()
- 001708D0 CPlayer::SetTrophyData(ETrophyPos,ushort,ushort)
- 001708DE CPlayer::ClearBlend()
- 001708E8 CPlayer::UpdateJostlePoint()
- 00170A14 CPlayer::SetReaction(int,int,int)
- 00170A50 CPlayer::UpdateAnimation()
- 00170BD0 CPlayer::OverrideAnimFrame(int)
- 00170C0C CPlayer::EnableIdleAnims(bool)
- 00170C14 CPlayer::SetAnimFromStateGen(int,int,int)
- 00170D10 CPlayer::SetAnimFromStateI()
- 00170DD4 CPlayer::GetRootBoneOfs(TPoint *,TAnimData *)
- 00170E50 CPlayer::UpdateActOKTime()
- 00170E98 CPlayer::GetActionTime()
- 00170EC8 CPlayer::GetAnimTime()
- 00170EE0 CPlayer::SetAnimFromStateAction(int,int,int,int,int,int,TActionSetup *,int,int)
- 001714E4 CPlayer::GetAnimActionPoint(TPoint *,TAnimData *,int,int)
- 00171534 CPlayer::GetActionPoint(TPoint3D *)
- 001715EC CPlayer::GetBonePosition(int,TPoint3D *)
- 00171798 CPlayer::GetHandPosition(TPoint3D *,bool)
- 001717A8 CPlayer::GetHandsPosition(int)
- 00171868 CPlayer::GetBoneOrientation(int,TPoint3D *)
- 00172634 CPlayer::GetDistanceSq(TPoint3D)
- 00172EB2 CPlayer::Fell(TPoint,bool)
- 00172EE4 CPlayer::Fell(int,bool)
- 00172F78 CPlayer::Trip(int,int)
- 00172FF8 CPlayer::UpdateLogic()
- 00173080 CPlayer::UpdateIdle()
- 00173188 CPlayer::UpdateReactions()
- 001731B8 CPlayer::UpdateBallReactions()
- 001731CA CPlayer::UpdateFall()
- 00173208 CPlayer::UpdateAvoid()
- 001733C4 CPlayer::IsWalking()
- 001733EC CPlayer::IsSprinting()
- 00173414 CPlayer::IsStanding()
- 0017341E CPlayer::IsFacing(int,int)
- 00173442 CPlayer::IsAtDest(TPoint *,int)
- 0017346C CPlayer::UpdateMovement()
- 00173DBA CPlayer::SetStateStand(bool)
- 00173DD4 CPlayer::SetStateLoco()
- 00173E58 CPlayer::SetAnimFromStateLoco(int,int,int)
- 00174074 CPlayer::CheckAvoid(TPoint *,int,int)
- 001741FC CPlayer::SetConstantSpeed(bool)
- 00174204 CPlayer::GetAverageRunSpeed()
- 00174260 CPlayer::SetAverageRunSpeed(int)
- 00174290 CPlayer::GetInterceptRunSpeed()
- 00174294 CPlayer::GetWalkSpeed()
- 001742B4 CPlayer::GetSprintSpeed()
- 00174310 CPlayer::GetTargetRunSpeed()
- 0017432C CPlayer::GetCurrentRunSpeed()
- 00174458 CPlayer::GetRunSpeed()
- 001744CC CPlayer::AttributeInterpolate(EPlayerAttribute,int,int)
- 001744E2 CPlayer::GetMoveSpeed()
- 001744E8 CPlayer::GetInterceptMaxHeight()
- 00174530 CPlayer::SetUrgency(int)
- 00174550 CPlayer::SetUrgencyTime(int,bool)
- 0017464C CPlayer::UpdateUrgency()
- 001746EE CPlayer::GetDirMoveX()
- 00174702 CPlayer::GetDirMoveY()
- 0017471E CPlayer::NewPlayerStateX(int,int,int)
- 0017472E CPlayer::NewPlayerStateXF(int,int,int,int)
- 00174778 CPlayer::NewPlayerStateGen(int)
- 001747A8 CPlayer::NewPlayerStateData(int,int,int,int)
- 001748A8 CPlayer::NewPlayerStateDataNIS(int,int,int,int)
- 001749A0 CPlayer::CheckBlockedOff(int)
- 00174A24 CPlayer::NewPlayerStateXFKick(TPoint3D,int,int,TActionSetup *,int,int)
- 00174ADC CPlayer::UpdateTake()
- 00174C9C CPlayer::ControlTakeBall(int)
- 00174FBC CPlayer::SetAnimControl(int,int,int,int,int,int,int,TActionSetup *)
- 0017555C CPlayer::ControlFinish(int,int,int)
- 00175968 CPlayer::SetAnimTurn(int,int,int,int,int,int,int,TActionSetup *)
- 00175B2C CPlayer::Turn(int,int,bool)
- 00178AAC CPlayer::operator=(CPlayer const&)
- 0x1A4
- */
- //-------------------------------------------------------------------------------------------------
- //长度至少是0x28
- struct TActionSetup {
- int field_0;
- int field_4;
- int field_8;
- volatile int field_C;
- TPoint3D tPoint3D_10;
- TPoint3D tPoint3D_1C;
- };
- //-------------------------------------------------------------------------------------------------
- enum EPlayerAttribute {
- EPlayerAttribute_0,
- EPlayerAttribute_1,
- EPlayerAttribute_2,
- EPlayerAttribute_3,
- EPlayerAttribute_4,
- EPlayerAttribute_5,
- EPlayerAttribute_6,
- EPlayerAttribute_7,
- EPlayerAttribute_8,
- EPlayerAttribute_9,
- EPlayerAttribute_10,
- EPlayerAttribute_11,
- EPlayerAttribute_12,
- EPlayerAttribute_13,
- EPlayerAttribute_14,
- EPlayerAttribute_15,
- EPlayerAttribute_16,
- };
- //-------------------------------------------------------------------------------------------------
- enum EACTION {
- EACTION_0,
- EACTION_1,
- EACTION_2,
- EACTION_3,
- EACTION_4,
- EACTION_5,
- EACTION_6,
- EACTION_7,
- EACTION_8,
- EACTION_9,
- EACTION_10,
- EACTION_11,
- };
- //-------------------------------------------------------------------------------------------------
- enum ETrophyPos {
- ETrophyPos_0,
- ETrophyPos_1,
- ETrophyPos_2,
- ETrophyPos_3,
- ETrophyPos_4,
- ETrophyPos_5,
- };
- //-------------------------------------------------------------------------------------------------
- struct TPlayerAI {
- float f_0;
- int field_4;
- float f_8;
- int field_C;
- int field_10;
- int field_14;
- int field_18;
- int field_1C;
- TPlayerAI &operator=(TPlayerAI const &other) {
- this->f_0 = other.f_0;
- this->field_4 = other.field_4;
- this->f_8 = other.f_8;
- this->field_C = other.field_C;
- if (this != &other) {
- this->field_10 = other.field_10;
- this->field_14 = other.field_14;
- }
- this->field_18 = other.field_18;
- this->field_1C = other.field_1C;
- return *this;
- };
- };
- //0x32
- #pragma pack(1)
- struct CPlayer_str_32 {
- uint8 uc_0; //0016F03E STRB.W R0, [R4,#0x44]
- uint8 uc_1;
- uint8 uc_2;
- uint8 uc_3;
- short s_4;
- short s_6;
- uint field_8; //00170606 这儿确定是无符号的
- uint16 s_C;
- short s_E;
- int field_10;
- int field_14;
- short s_18;
- short s_1A;
- int field_1C;
- int field_20;
- uint field_24;
- sint16 s_28;
- short s_2A;
- // union {
- // struct {
- // short ss_2C;
- // sint16 sBlend_2E; //0017033A
-
- // } s_2C;
- // int field_2C; //001705D4
- // } u_2C;
- short s_2C;
- sint16 sBlend_2E; //0017033A
- uint16 s_30;
- };
- #pragma pack()
- //0x58 大小确定,字段类型不确定
- struct CPlayer_str_58 {
- uchar uc_0;
- uchar uc_1;
- uchar uc_2;
- uchar uc_3;
- int field_4;
- int field_8;
- int field_C[14];
- int field_44;
- int field_48;
- short s_4C;
- short s_4E;
- union {
- struct {
- uint16 field_50; //LDRH.W R1, [R0,#0xF2] r0=CPlayer 可能有两个uint16
- uint16 field_52;
- }s_50;
- int ui_50;
- } u_50;
- int field_54;
- };
- //-------------------------------------------------------------------------------------------------
- class CPlayer {
- public:
- void SetPos(int, int); //0011DE8C
- void SetPos(TPoint3D); //00125D8C
- uint64_t GetDistance(TPoint); //00154314
- int GetDistanceSq(TPoint); //0015432C
- void SetPos(TPoint); //0015CBD0
- void UpdateFE(); //0016E630
- void UpdateRot(); //0016E64E
- void UpdateHeadRot(); //0016E6B0
- void UpdateFinalise(); //0016E7A4
- void Update(); //0016E7C2
- void UpdateSprint(); //0016E81A
- void UpdateFace(); //0016E874
- void UpdatePosVel(); //0016E9BC
- void UpdateFuturePos(); //0016EB6C
- void UpdateBallInHands(); //0016EB86
- void SetPos(int, int, int); //0016EB88
- void SetPosDest(); //0016EBDE
- void SetMoveDest(int, int); //0016EBE6
- void SetMoveDest(TPoint); //0016EBF2
- void SetRotExplicit(int); //0016EBFE
- void SetRot(int, bool); //0016EC02
- void SetRot(TPoint, bool); //0016EC0C
- ushort GetRotPoint(TPoint); //0016EC20
- void SetFace(int); //0016EC34
- void SetFace(int, int); //0016EC3A
- void SetFace(TPoint); //0016EC48
- void SetFaceDest(); //0016EC56
- void Stop(int); //0016EC7A
- int GetRotDest(); //0016EC8E
- ushort GetRotPoint(TPoint3D); //0016ECB6
- int GetRotBall(); //0016ECCC
- void GetDistance(CPlayer *); //0016ECF0
- void GetDistanceSq(CPlayer *); //0016ED1C
- void SetSpaceRot(int, int); //0016ED40
- void GetMoveDistance(); //0016ED8A
- void Init(); //0016ED96
- void SetupGoally(int, TPlayerInfo *); //0016EDD0
- void SetupPlayer(int, int, TPlayerInfo *); //0016EEC6
- void SetupStandard(); //0016EFBC
- void SetupOfficial(); //0016F008
- void Reset(); //0016F044
- void CancelHeadInputControl(); //0016F114
- void SetHeadRotRel(int, bool); //0016F11C
- TPoint3D GetBonePos(int); //0016F12C
- TPoint GetTimePos(int); //0016F13C
- int AttributeInterpolate_Internal(EPlayerAttribute, int, int, int, int, int); //0016F280
- void UpdateAction(); //0016F324
- int ActionTend(int, TPoint3D *); //0016F3D4
- void UpdateActionSlideTackleX(int); //0016F734
- void UpdateActionSlideTackle(int); //0016FA40
- void UpdateActionConservativeTackle(int); //0016FAAC
- void UpdateActionGKSave(int); //0016FB24
- void UpdateActionDeek(int); //0016FB94
- void UpdateActionControl(int); //0016FE80
- void UpdateActionKick(int); //0016FF24
- void UpdateActionGKKick(int); //0016FF78
- void ClearAction(); //0016FFC8
- bool ActionCheckIsStillValidRange(int, int, int); //0016FFD4
- void KickFail(); //001700C0
- void ActionUpdateDynamic(); //001700E4
- void ActionTendSetupDest(TPoint3D); //0017012C
- void ActionTendSetup(TActionSetup *, EACTION); //001701D0
- TPoint3D ActionGetPosFromDest(); //00170242
- void Animate(int); //001702B0
- void ApplyRootBoneOfs(TAnimData *, int); //0017039C
- void SetNextState(TAnimData *); //00170440
- TAnimData *GetAnimData(); //001704DC
- void SetAnim(int); //001704F4
- void GetRootBoneMove(TPoint *); //00170694
- short GetTrueRot(); //0017077C
- bool AnimBlendNeeded(); //00170820
- void UpdateAnimCalcs(); //0017082C
- void SetTrophyData(ETrophyPos, ushort, ushort); //001708D0
- void ClearBlend(); //001708DE
- void UpdateJostlePoint(); //001708E8
- bool SetReaction(int, int, int); //00170A14
- void UpdateAnimation(); //00170A50
- void OverrideAnimFrame(int); //00170BD0
- void EnableIdleAnims(bool); //00170C0C
- void SetAnimFromStateGen(int, int, int); //00170C14
- void SetAnimFromStateI(); //00170D10
- void GetRootBoneOfs(TPoint *, TAnimData *); //00170DD4
- void UpdateActOKTime(); //00170E50
- int GetActionTime(); //00170E98
- void GetAnimTime(); //00170EC8
- int SetAnimFromStateAction(int, int, int, int, int, int, TActionSetup *, int, int); //00170EE0
- void GetAnimActionPoint(TPoint *, TAnimData *, int, int); //001714E4
- void GetActionPoint(TPoint3D *); //00171534
- void GetBonePosition(int, TPoint3D *); //001715EC
- void GetHandPosition(TPoint3D *, bool); //00171798
- TPoint3D GetHandsPosition(int i1); //001717A8
- void GetBoneOrientation(int, TPoint3D *); //00171868
- int GetDistanceSq(TPoint3D); //00172634
- bool Fell(TPoint, bool); //00172EB2
- bool Fell(int, bool); //00172EE4
- bool Trip(int, int); //00172F78
- void UpdateLogic(); //00172FF8
- void UpdateIdle(); //00173080
- void UpdateReactions(); //00173188
- void UpdateBallReactions(); //001731B8
- void UpdateFall(); //001731CA
- void UpdateAvoid(); //00173208
- void IsWalking(); //001733C4
- bool IsSprinting(); //001733EC
- void IsStanding(); //00173414
- void IsFacing(int, int); //0017341E
- void IsAtDest(TPoint *, int); //00173442
- void UpdateMovement(); //0017346C
- void SetStateStand(bool); //00173DBA
- void SetStateLoco(); //00173DD4
- void SetAnimFromStateLoco(int, int, int); //00173E58
- void CheckAvoid(TPoint *, int, int); //00174074
- void SetConstantSpeed(bool); //001741FC
- int GetAverageRunSpeed(); //00174204
- void SetAverageRunSpeed(int); //00174260
- void GetInterceptRunSpeed(); //00174290
- void GetWalkSpeed(); //00174294
- int GetSprintSpeed(); //001742B4
- int GetTargetRunSpeed(); //00174310
- int GetCurrentRunSpeed(); //0017432C
- int GetRunSpeed(); //00174458
- int AttributeInterpolate(EPlayerAttribute, int, int); //001744CC
- float GetMoveSpeed(); //001744E2
- int GetInterceptMaxHeight(); //001744E8
- void SetUrgency(int); //00174530
- void SetUrgencyTime(int, bool); //00174550
- void UpdateUrgency(); //0017464C
- void GetDirMoveX(); //001746EE
- void GetDirMoveY(); //00174702
- void NewPlayerStateX(int, int, int); //0017471E
- void NewPlayerStateXF(int, int, int, int); //0017472E
- void NewPlayerStateGen(int); //00174778
- void NewPlayerStateData(int, int, int, int); //001747A8
- void NewPlayerStateDataNIS(int, int, int, int); //001748A8
- bool CheckBlockedOff(int); //001749A0
- bool NewPlayerStateXFKick(TPoint3D, int, int, TActionSetup *, int, int); //00174A24
- void UpdateTake(); //00174ADC
- void ControlTakeBall(int); //00174C9C
- void SetAnimControl(int, int, int, int, int, int, int, TActionSetup *); //00174FBC
- void ControlFinish(int, int, int); //0017555C
- void SetAnimTurn(int, int, int, int, int, int, int, TActionSetup *); //00175968
- bool Turn(int, int, bool); //00175B2C
- CPlayer &operator=(CPlayer const &); //00178AAC
- union {
- struct {
- sint16 s_0; //??? 001D1DAE 在这个地址是取4个字节,int, 存疑
- int16 s_2; //0018FC98确定类型
- } s_2_0;
- uint32 field_0; //0015BBDC 此处可以确定也可能是一个int
- } u_0;
- TPoint3D ballPosPrev_4;
- uint field_10;
- TPoint3D Point3D_14;
- TPoint point_20; //00170830 此处可以确定
- short s_28;
- short s_2A;
- sint16 s_2C;
- uint8 uc_2E;
- bool bool_2F;
- bool b_30;
- bool b_31;
- short s_32;
- TPoint point_34; //001708BE
- TPoint point_3C;
- CPlayer_str_32 tStr32_44; //00178B04 由此推断为数据结构,长度为0x32
- uint8 uc_76;
- uint8 uc_77;
- TPoint point_78;
- sint16 s_80;
- uint16 s_82;
- int dFace_84;
- uint8 uc_88;
- uint8 uc_89;
- uint8 uc_8A;
- uint8 uc_8B;
- int field_8C; //00178B70 ??? 通过此年观察可能是short
- //00170A28 此处代码显示 field_8C 为int
- short s_90;
- short s_92;
- short s_94;
- short s_96;
- TPoint point_98;
- CPlayer_str_58 tStr58_A0; //00178B90 此处可以确定是0x58
- TPlayerAI tTPlayerAI_F8;
- short s_118;
- short s_11A;
- int field_11C;
- sint16 field_120; //0016F09C 00173100 此处显示是short
- ushort us_122;
- uchar uc_124;
- uchar uc_125;
- uchar uc_126;
- uchar uc_127;
- uchar uc_128;
- uchar uc_129;
- uchar uc_12A;
- uchar uc_12B;
- uchar uc_12C;
- uchar uc_12D;
- uchar uc_12E;
- uchar uc_12F;
- uchar uc_130;
- uchar uc_131;
- uchar uc_132;
- uchar uc_133;
- uchar uc_134;
- uchar uc_135;
- uchar uc_136;
- uchar uc_137;
- TPoint point_138;
- int field_140;
- int field_144;
- int field_148;
- int field_14C;
- bool b_150;
- uchar uc_151;
- uchar uc_152;
- uchar uc_153;
- EACTION eAction_154;
- volatile sint16 s_158;
- volatile short s_15A;
- short s_15C;
- short s_15E;
- uchar uc_160;
- uchar uc_161;
- short s_162;
- TPoint3D point3D_164;
- int field_170;
- int field_174;
- //TriangleI triangle_178; //00178C6A 由空间中的三个点组成的数据结构,猜测是三角型
- TPoint3D aPoint3D_178[3];
- //TPoint3D point3D_184;
- //TPoint3D point3D_190;
- ETrophyPos eTrophyPos_19C;
- ushort s_1A0;
- ushort s_1A2;
- };
- extern int LOCO_SPEED_WALK_MIN; // 0033E988
- extern int LOCO_SPEED_WALK_MAX ; // 0033E98C
- extern int LOCO_SPEED_WALK_AVG; // 0033E990
- extern int LOCO_SPEED_JOG_MIN ; // 0033E994
- extern int LOCO_SPEED_JOG_MAX; // 0033E998
- extern int LOCO_SPEED_JOG_AVG; // 0033E99C
- extern int LOCO_SPEED_SPRINT_MIN; // 0033E9A0
- extern int LOCO_SPEED_SPRINT_MAX; // 0033E9A4
- extern int LOCO_SPEED_SPRINT_AVG; // 0033E9A8
- /*
- 0016EC34 STR.W R1, [R0,#0x84]
- */
- //-------------------------------------------------------------------------------------------------
- #endif //_CPLAYER_H_
|