iw4x-client/src/Components/Modules/Movement.hpp

47 lines
2.1 KiB
C++
Raw Normal View History

2021-11-07 06:16:56 -05:00
#pragma once
namespace Components
{
class Movement : public Component
{
public:
Movement();
private:
2022-01-18 19:49:50 -05:00
enum BouncesSettings { DISABLED, ENABLED, DOUBLE };
2021-11-07 06:16:56 -05:00
static Dvar::Var PlayerDuckedSpeedScale;
static Dvar::Var PlayerLastStandCrawlSpeedScale;
static Dvar::Var PlayerProneSpeedScale;
2022-01-07 06:20:43 -05:00
static Dvar::Var PlayerSpectateSpeedScale;
static Dvar::Var CGUfoScaler;
static Dvar::Var CGNoclipScaler;
2022-01-18 19:49:50 -05:00
static Dvar::Var BGBouncesAllAngles;
2022-02-05 11:24:59 -05:00
static Dvar::Var BGRocketJump;
2022-02-09 13:02:42 -05:00
static Dvar::Var BGPlayerEjection;
static Dvar::Var BGPlayerCollision;
2022-01-18 19:49:50 -05:00
// Can't use Var class inside assembly stubs
static Game::dvar_t* BGBounces;
2021-11-07 06:16:56 -05:00
2022-01-07 06:20:43 -05:00
static float PM_CmdScaleForStance(const Game::pmove_s* move);
static void PM_CmdScaleForStanceStub();
2021-11-11 08:38:51 -05:00
2022-01-07 06:20:43 -05:00
static float PM_MoveScale(Game::playerState_s* ps, float forwardmove, float rightmove, float upmove);
static void PM_MoveScaleStub();
2022-01-18 19:49:50 -05:00
// Bounce logic
static void PM_StepSlideMoveStub();
static void PM_ProjectVelocityStub(const float* velIn, const float* normal, float* velOut);
2022-02-13 19:09:46 -05:00
static void Jump_ClearState_Hk(Game::playerState_s* ps);
2022-01-18 19:49:50 -05:00
2022-02-05 11:24:59 -05:00
static Game::gentity_s* Weapon_RocketLauncher_Fire_Hk(Game::gentity_s* ent, unsigned int weaponIndex, float spread, Game::weaponParms* wp, const float* gunVel, Game::lockonFireParms* lockParms, bool a7);
2022-02-09 13:02:42 -05:00
// Player collison
static int StuckInClient_Hk(Game::gentity_s* self);
static void CM_TransformedCapsuleTrace_Hk(Game::trace_t* results, const float* start, const float* end, const Game::Bounds* bounds, const Game::Bounds* capsule, int contents, const float* origin, const float* angles);
static Game::dvar_t* Dvar_RegisterLastStandSpeedScale(const char* dvarName, float value, float min, float max, unsigned __int16 flags, const char* description);
static Game::dvar_t* Dvar_RegisterSpectateSpeedScale(const char* dvarName, float value, float min, float max, unsigned __int16 flags, const char* description);
2021-11-07 06:16:56 -05:00
};
}