1#pragma once
2
3namespace al {
4class FootPrintHolder;
5class HitSensor;
6} // namespace al
7
8class HackCap;
9class IUsePlayerCeilingCheck;
10class PlayerAnimator;
11class PlayerBindKeeper;
12class PlayerCapManHeroEyesControl;
13class PlayerCarryKeeper;
14class PlayerCostumeInfo;
15class PlayerCounterIceWater;
16class PlayerDamageKeeper;
17class PlayerDemoActionFlag;
18class PlayerEquipmentUser;
19class PlayerFormSensorCollisionArranger;
20class PlayerHackKeeper;
21class PlayerInput;
22class PlayerJointControlKeeper;
23class PlayerJudgeActiveCameraSubjective;
24class PlayerJudgeCameraInWater;
25class PlayerJudgeDead;
26class PlayerJudgeDeadWipeStart;
27class PlayerJudgeDrawForward;
28class PlayerJudgeEnableGuideArrow;
29class PlayerJudgeEnablePeachAmiibo;
30class PlayerJudgeFailureCameraSubjective;
31class PlayerJudgePlaySwitchOnAreaWaitAnim;
32class PlayerJudgeSafetyPointRecovery;
33class PlayerJudgeSameNerve;
34class PlayerJudgeSameNerve;
35class PlayerJudgeSameNerve;
36class PlayerJudgeSameNerve;
37class PlayerJudgeSleep;
38class PlayerJudgeStatusPoleClimb;
39class PlayerJudgeTalkGround;
40class PlayerJudgeTalkSwim;
41class PlayerModelChangerHakoniwa;
42class PlayerModelHolder;
43class PlayerOxygen;
44class PlayerRecoverySafetyPoint;
45class PlayerStainControl;
46class WorldEndBorderKeeper;
47
48class PlayerInfo {
49public:
50 PlayerInfo();
51
52private:
53 PlayerModelChangerHakoniwa* mModelChangerHakoniwa = nullptr;
54 PlayerOxygen* mOxygen = nullptr;
55 PlayerAnimator* mAnimator = nullptr;
56 PlayerBindKeeper* mBindKeeper = nullptr;
57 PlayerDamageKeeper* mDamageKeeper = nullptr;
58 PlayerDemoActionFlag* mDemoActionFlag = nullptr;
59 PlayerEquipmentUser* mEquipmentUser = nullptr;
60 HackCap* mHackCap = nullptr;
61 WorldEndBorderKeeper* mWorldEndBorderKeeper = nullptr;
62 PlayerCarryKeeper* mCarryKeeper = nullptr;
63 PlayerJointControlKeeper* mJointControlKeeper = nullptr;
64 PlayerCounterIceWater* mCounterIceWater = nullptr;
65 PlayerStainControl* mStainControl = nullptr;
66 al::FootPrintHolder* mFootPrintHolder = nullptr;
67 al::HitSensor* mBodyHitSensor = nullptr;
68 PlayerFormSensorCollisionArranger* mFormSensorCollisionArranger = nullptr;
69 PlayerInput* mInput = nullptr;
70 IUsePlayerCeilingCheck* mCeilingCheck = nullptr;
71 PlayerModelHolder* mModelHolder = nullptr;
72 PlayerHackKeeper* mHackKeeper = nullptr;
73 PlayerCapManHeroEyesControl* mCapManHeroEyesControl = nullptr;
74 PlayerRecoverySafetyPoint* mRecoverySafetyPoint = nullptr;
75 PlayerCostumeInfo* mCostumeInfo = nullptr;
76 PlayerJudgeCameraInWater* mJudgeCameraInWater = nullptr;
77 PlayerJudgeTalkGround* mJudgeTalkGround = nullptr;
78 PlayerJudgeTalkSwim* mJudgeTalkSwim = nullptr;
79 PlayerJudgeDead* mJudgeDead = nullptr;
80 PlayerJudgeDeadWipeStart* mJudgeDeadWipeStart = nullptr;
81 PlayerJudgeDrawForward* mJudgeDrawForward = nullptr;
82 PlayerJudgeSameNerve* mJudgeNrvPoleClimb = nullptr;
83 PlayerJudgeSameNerve* mJudgeNrvGrabCeil = nullptr;
84 PlayerJudgeSameNerve* mJudgeNrvWallCatch = nullptr;
85 PlayerJudgeActiveCameraSubjective* mJudgeActiveCameraSubjective = nullptr;
86 PlayerJudgeSameNerve* mJudgeNrvSwim = nullptr;
87 PlayerJudgeFailureCameraSubjective* mJudgeFailureCameraSubjective = nullptr;
88 PlayerJudgeSafetyPointRecovery* mJudgeSafetyPointRecovery = nullptr;
89 PlayerJudgeStatusPoleClimb* mJudgeStatusPoleClimb = nullptr;
90 PlayerJudgePlaySwitchOnAreaWaitAnim* mJudgePlaySwitchOnAreaWaitAnim = nullptr;
91 PlayerJudgeSleep* mJudgeSleep = nullptr;
92 PlayerJudgeEnableGuideArrow* mJudgeEnableGuideArrow = nullptr;
93 PlayerJudgeEnablePeachAmiibo* mJudgeEnablePeachAmiibo = nullptr;
94 bool mIsMoon = false;
95};
96
97static_assert(sizeof(PlayerInfo) == 0x150);
98