Переглянути джерело

player extendabilty flexpoints
set several variables and methods to prtected instead of private for ease of inheritance

AzaezelX 2 тижнів тому
батько
коміт
b8e135759f
2 змінених файлів з 7 додано та 5 видалено
  1. 1 0
      Engine/source/T3D/player.cpp
  2. 6 5
      Engine/source/T3D/player.h

+ 1 - 0
Engine/source/T3D/player.cpp

@@ -1582,6 +1582,7 @@ Player::Player()
    mActionAnimation.holdAtEnd = false;
    mActionAnimation.holdAtEnd = false;
    mActionAnimation.animateOnServer = false;
    mActionAnimation.animateOnServer = false;
    mActionAnimation.atEnd = false;
    mActionAnimation.atEnd = false;
+   mActionAnimation.useSynchedPos = true;
    mActionAnimation.callbackTripped = false;
    mActionAnimation.callbackTripped = false;
    mState = MoveState;
    mState = MoveState;
    mJetting = false;
    mJetting = false;

+ 6 - 5
Engine/source/T3D/player.h

@@ -517,6 +517,7 @@ protected:
       bool animateOnServer;
       bool animateOnServer;
       bool atEnd;
       bool atEnd;
       bool callbackTripped;
       bool callbackTripped;
+      bool useSynchedPos;
    } mActionAnimation;
    } mActionAnimation;
 
 
    struct ArmAnimation {
    struct ArmAnimation {
@@ -632,7 +633,7 @@ protected:
    virtual bool updatePos(const F32 travelTime = TickSec);
    virtual bool updatePos(const F32 travelTime = TickSec);
 
 
    // PATHSHAPE
    // PATHSHAPE
-   void updateAttachment();
+   virtual void updateAttachment();
    // PATHSHAPE END
    // PATHSHAPE END
    ///Update head animation
    ///Update head animation
    void updateLookAnimation(F32 dT = 0.f);
    void updateLookAnimation(F32 dT = 0.f);
@@ -805,7 +806,7 @@ public:
    void prepRenderImage( SceneRenderState* state ) override;
    void prepRenderImage( SceneRenderState* state ) override;
    virtual void renderConvex( ObjectRenderInst *ri, SceneRenderState *state, BaseMatInstance *overrideMat );   
    virtual void renderConvex( ObjectRenderInst *ri, SceneRenderState *state, BaseMatInstance *overrideMat );   
    void renderMountedImage( U32 imageSlot, TSRenderState &rstate, SceneRenderState *state ) override;
    void renderMountedImage( U32 imageSlot, TSRenderState &rstate, SceneRenderState *state ) override;
-private:
+protected:
    static void  afx_consoleInit();
    static void  afx_consoleInit();
    void         afx_init();
    void         afx_init();
    U32          afx_packUpdate(NetConnection*, U32 mask, BitStream*, U32 retMask);
    U32          afx_packUpdate(NetConnection*, U32 mask, BitStream*, U32 retMask);
@@ -835,7 +836,7 @@ public:
 public:
 public:
    bool ignore_updates;
    bool ignore_updates;
    void resetContactTimer() { mContactTimer = 0; }
    void resetContactTimer() { mContactTimer = 0; }
-private:
+protected:
    U8     move_trigger_states;
    U8     move_trigger_states;
    U32    fx_s_triggers;
    U32    fx_s_triggers;
    U32    mark_fx_c_triggers;
    U32    mark_fx_c_triggers;
@@ -868,7 +869,7 @@ public:
    };
    };
    U32  getClientEventTriggers() const { return fx_c_triggers; }
    U32  getClientEventTriggers() const { return fx_c_triggers; }
    U32  getServerEventTriggers() const { return fx_s_triggers; }
    U32  getServerEventTriggers() const { return fx_s_triggers; }
-private:
+protected:
    F32      speed_bias;
    F32      speed_bias;
    F32      speed_bias_goal;
    F32      speed_bias_goal;
    bool     override_movement;
    bool     override_movement;
@@ -880,7 +881,7 @@ public:
    void     setMovementSpeedBias(F32 bias);
    void     setMovementSpeedBias(F32 bias);
    U32      setMovementOverride(F32 bias, const Point3F* mov=0, U32 op=1);
    U32      setMovementOverride(F32 bias, const Point3F* mov=0, U32 op=1);
    void     restoreMovement(U32 tag);
    void     restoreMovement(U32 tag);
-private:
+protected:
    S32      footfallDecalOverride;
    S32      footfallDecalOverride;
    S32      footfallSoundOverride;
    S32      footfallSoundOverride;
    S32      footfallDustOverride;
    S32      footfallDustOverride;