123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- // CBall - [2020-04-13 11:57:46]
- #ifndef _CBALL_H_
- #define _CBALL_H_
- #include "common.h"
- #include "XMATH.h"
- #include "TGame.h"
- /*
- 00156E3C CBall::UpdateFrame()
- 00156F38 CBall::CheckEvents()
- 001575DC CBall::ClampSpeed(int,int)
- 00157648 CBall::Stop()
- 00157668 CBall::SetVel(int,int,int)
- 00157678 CBall::SetVelRel(int,int,int)
- 00157698 CBall::AdjustKickToPos(TPoint)
- 001577B4 CBall::SetBallMoveToPosSpin(TPoint3D *,int,int,TPoint3D,TPoint3D,int,int)
- 0015799E CBall::operator=(CBall const&)
- 00157A3C CBall::SetBallMoveToPosLowSpin(TPoint3D *,int,int,TPoint3D,TPoint3D,int,int)
- 00157C94 CBall::GetPassPowerX(int,int)
- 00157D08 CBall::GetPassLength(int,int)
- 00157DA4 CBall::SetBallMoveToPos(TPoint3D *,TPoint3D,TPoint3D,int,int,int)
- 00157EAC CBall::SetBallMoveToPosLow(TPoint3D *,TPoint3D,TPoint3D,int,int)
- 00157FF4 CBall::AirResistanceInit()
- 0015806C CBall::ProjectionPassLengthInit()
- 00158148 CBall::PlayNetSound()
- 0015818C CBall::CornerFlagCollision(int,int)
- 00158228 CBall::PointBallTest(TPoint *,int)
- 00158254 CBall::DoBallGoalBounce()
- 00158638 CBall::Deflect()
- 001586DC CBall::CheckPostXYCol(TPoint3D)
- 001588E8 CBall::CheckPostYZCol(TPoint3D)
- 0015897C CBall::DoBallPostCollisions()
- 001589CC CBall::BannerCollisionX(int)
- 00158A60 CBall::BannerCollisionY(int)
- 001592A0 CBall::CounterBallSpinZ(int)
- 001592F8 CBall::ApplySpin(TPoint3D *,TPoint3D *,int,int)
- 00159334 CBall::ApplyExactSpin(TPoint3D *,TPoint3D *,int,int)
- 00159370 CBall::ApplyGroundSpin(TPoint3D *,TPoint3D *)
- 00159404 CBall::CalcSpeed()
- 0015946C CBall::CalcVars()
- 001595A4 CBall::CheckBallInGoal()
- 0xDC
- */
- class CBall {
- public:
- void UpdateFrame(); // 00156E3C
- void CheckEvents(); // 00156F38
- void ClampSpeed(int, int); // 001575DC
- void Stop(); // 00157648
- __attribute__((noinline)) void SetVel(int, int, int); // 00157668
- void SetVelRel(int, int, int); // 00157678
- void AdjustKickToPos(TPoint); // 00157698
- int SetBallMoveToPosSpin(TPoint3D *, int, int, TPoint3D, TPoint3D, int, int); // 001577B4
- CBall &operator=(CBall const &); // 0015799E
- int SetBallMoveToPosLowSpin(TPoint3D *, int, int, TPoint3D, TPoint3D, int, int); // 00157A3C
- int GetPassPowerX(int, int); // 00157C94
- int GetPassLength(int, int); // 00157D08
- int SetBallMoveToPos(TPoint3D *, TPoint3D, TPoint3D, int, int, int); // 00157DA4
- int SetBallMoveToPosLow(TPoint3D *, TPoint3D, TPoint3D, int, int); // 00157EAC
- void AirResistanceInit(); // 00157FF4
- void ProjectionPassLengthInit(); // 0015806C
- void PlayNetSound(); // 00158148
- void CornerFlagCollision(int, int); // 0015818C
- int PointBallTest(TPoint *, int); // 00158228
- void DoBallGoalBounce(); // 00158254
- void Deflect(); // 00158638
- bool CheckPostXYCol(TPoint3D); // 001586DC
- bool CheckPostYZCol(TPoint3D); // 001588E8
- bool DoBallPostCollisions(); // 0015897C
- bool BannerCollisionX(int); // 001589CC
- bool BannerCollisionY(int); // 00158A60
- void CounterBallSpinZ(int); // 001592A0
- void ApplySpin(TPoint3D *, TPoint3D *, int, int); // 001592F8
- void ApplyExactSpin(TPoint3D *, TPoint3D *, int, int); // 00159334
- void ApplyGroundSpin(TPoint3D *, TPoint3D *); // 00159370
- void CalcSpeed(); // 00159404
- void CalcVars(); // 0015946C
- void CheckBallInGoal(); // 001595A4
- bool field_0;
- uint8 field_1;
- uint8 field_2;
- uint8 field_3;
- TPoint3D ballPosPrev_4; // 0016FB3E 此处可断定,类型为TPoint3D
- TPoint3D ballMovePrev_10;
- TPoint3D point3D_1C;
- uint speedXY_28; // point3D_10 的xy坐标的距离
- TPoint3D point3D_2C;
- TPoint3D point3D_38;
- TPoint3D point3D_44;
- uint speedXYZ_50; // point3D_10 的xyz坐标的距离
- TPoint3D point3D_54;
- TPoint point_60;
- TQuat quat_68;
- TPoint3D point3D_78;
- TPoint3D point3D_84;
- int field_90;
- int HeightTime_94;
- TPoint TimePos_98;
- int field_A0;
- int field_A4;
- int field_A8;
- int field_AC;
- int field_B0;
- int field_B4;
- int field_B8;
- int field_BC;
- int field_C0;
- TPoint TimePos_C4;
- int HeightTime_CC;
- TPoint TimePos_D0;
- int HeightTime_D8;
- static uint16 s_iAirResistanceDistMult[201];
- static int16 s_iAirResistanceMult[201];
- static int s_iPassProjectionLength[180][360];
- static int s_iPassProjectionLength_COKTime[360];
- };
- extern CBall cBall; // 00356A70
- extern TPoint G_vGoalPos[2];
- #endif //_CBALL_H_
|