Add CScriptEMPulse

Former-commit-id: 7b161ca498
This commit is contained in:
Henrique Gemignani Passos Lima
2022-11-14 02:10:00 +02:00
parent 3ea4e6ec01
commit dac4cdd33c
6 changed files with 175 additions and 26 deletions

View File

@@ -28,6 +28,22 @@ enum EPlayerMovementState {
};
};
enum EPlayerOrbitRequest {
kOR_StopOrbit,
kOR_Respawn,
kOR_EnterMorphBall,
kOR_Default,
kOR_Four,
kOR_Five,
kOR_InvalidateTarget,
kOR_BadVerticalAngle,
kOR_ActivateOrbitSource,
kOR_ProjectileCollide,
kOR_Freeze,
kOR_DamageOnGrapple,
kOR_LostGrappleLineOfSight,
};
class CPlayer : public CPhysicsActor {
struct CVisorSteam {
float x0_curTargetAlpha;
@@ -93,21 +109,6 @@ public:
kOT_Far,
kOT_Default,
};
enum EPlayerOrbitRequest {
kOR_StopOrbit,
kOR_Respawn,
kOR_EnterMorphBall,
kOR_Default,
kOR_Four,
kOR_Five,
kOR_InvalidateTarget,
kOR_BadVerticalAngle,
kOR_ActivateOrbitSource,
kOR_ProjectileCollide,
kOR_Freeze,
kOR_DamageOnGrapple,
kOR_LostGrappleLineOfSight,
};
enum EPlayerZoneInfo {
kZI_Targeting,
kZI_Scan,
@@ -175,7 +176,7 @@ public:
// CPlayer
virtual bool IsTransparent();
CVector3f GetBallPosition() const;
CVector3f GetEyePosition() const;
float GetEyeHeight() const;
@@ -193,6 +194,7 @@ public:
void DecrementPhazon();
// GetMovementDirection2D__7CPlayerCFv ??
void SetOrbitTargetId(TUniqueId id, CStateManager& mgr);
void SetOrbitRequestForTarget(TUniqueId id, EPlayerOrbitRequest req, CStateManager& mgr);
void AddOrbitDisableSource(CStateManager& mgr, TUniqueId addId);
void RemoveOrbitDisableSource(TUniqueId uid);
void ResetAimTargetPrediction(TUniqueId target);
@@ -205,6 +207,8 @@ public:
CMorphBall* MorphBall() { return x768_morphball.get(); }
const CMorphBall* GetMorphBall() const { return x768_morphball.get(); }
float GetStaticTimer() const { return x740_staticTimer; }
ESurfaceRestraints GetCurrentSurfaceRestraint() const { return x2ac_surfaceRestraint; }
ESurfaceRestraints GetSurfaceRestraint() const {
return x2b0_outOfWaterTicks == 2 ? GetCurrentSurfaceRestraint() : kSR_Water;