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

39 lines
1.0 KiB
C++

#pragma once
namespace Components
{
class Bullet : public Component
{
public:
Bullet();
private:
static Dvar::Var BGSurfacePenetration;
// Can't use Var class inside assembly stubs
static Game::dvar_t* BGBulletRange;
static float ContactPointSave[];
static float VCSave[];
static float CalcRicochetSave[];
static float ColorYellow[];
static float ColorBlue[];
static float ColorOrange[];
static float BG_GetSurfacePenetrationDepthStub(const Game::WeaponDef* weapDef, int surfaceType);
static void Bullet_FireStub();
static void BG_srand_Hk(unsigned int* pHoldrand);
static void BulletRicochet_Save(const float* contactPoint);
static void BulletRicochet_Stub();
static void CalcRicochet_Stub(const float* incoming, const float* normal, float* result);
static void _VectorMA_Stub(float* va, float scale, float* vb, float* vc);
static int Bullet_Fire_Stub(Game::gentity_s* attacker, float spread, Game::weaponParms* wp, Game::gentity_s* weaponEnt, Game::PlayerHandIndex hand, int gameTime);
};
}