//========= Copyright (c) 1996-2002, Valve LLC, All rights reserved. ============ // // Purpose: // // $NoKeywords: $ //============================================================================= #pragma once #if !defined ( EV_HLDMH ) #define EV_HLDMH // bullet types typedef enum { BULLET_NONE = 0, BULLET_PLAYER_9MM, // glock BULLET_PLAYER_MP5, // mp5 BULLET_PLAYER_357, // python BULLET_PLAYER_BUCKSHOT, // shotgun BULLET_PLAYER_BUCKSHOT_DOUBLE, // modif de Julien BULLET_PLAYER_CROWBAR, // crowbar swipe BULLET_MONSTER_9MM, BULLET_MONSTER_MP5, BULLET_MONSTER_12MM, //modif de Julien BULLET_PLAYER_M16, BULLET_PLAYER_SNIPER, BULLET_PLAYER_IRGUN, }Bullet; enum glock_e { GLOCK_IDLE1 = 0, GLOCK_IDLE2, GLOCK_IDLE3, GLOCK_SHOOT, GLOCK_SHOOT_EMPTY, GLOCK_RELOAD, GLOCK_RELOAD_NOT_EMPTY, GLOCK_DRAW, GLOCK_HOLSTER, GLOCK_ADD_SILENCER }; enum shotgun_e { SHOTGUN_IDLE = 0, SHOTGUN_IDLE_DEEP, SHOTGUN_DRAW, SHOTGUN_FIRE, SHOTGUN_FIRE2, SHOTGUN_START_RELOAD, SHOTGUN_RELOAD, SHOTGUN_PUMP }; enum mp5_e { MP5_LONGIDLE = 0, MP5_IDLE1, MP5_LAUNCH, MP5_RELOAD, MP5_DEPLOY, MP5_FIRE1, MP5_FIRE2, MP5_FIRE3 }; //modif de Julien enum m16_e { M16_LONGIDLE = 0, M16_IDLE1, M16_RELOAD, M16_DEPLOY, M16_FIRE1, }; //modif de Julien enum fsniper_e { FSNIPER_LONGIDLE = 0, FSNIPER_IDLE1, FSNIPER_RELOAD, FSNIPER_DEPLOY, FSNIPER_FIRE1, FSNIPER_FIDGET, }; // modif de Julien enum irgun_e { IRGUN_FIDGET = 0, IRGUN_RELOAD_EMPTY, IRGUN_IDLE1, IRGUN_DRAW, IRGUN_FIRE1, IRGUN_IDLE_IR, IRGUN_FIRE_EMPTY, IRGUN_RELOAD }; //modif de Julien enum python_e { /* PYTHON_IDLE1 = 0, PYTHON_FIDGET, PYTHON_FIRE1, PYTHON_RELOAD, PYTHON_HOLSTER, PYTHON_DRAW, PYTHON_IDLE2, PYTHON_IDLE3 */ PYTHON_DRAW = 0, PYTHON_IDLE1, PYTHON_IDLE2, PYTHON_IDLE3, PYTHON_FIRE1, PYTHON_FIRE_EMPTY, PYTHON_RELOAD_EMPTY, PYTHON_RELOAD }; #define GAUSS_PRIMARY_CHARGE_VOLUME 256// how loud gauss is while charging #define GAUSS_PRIMARY_FIRE_VOLUME 450// how loud gauss is when discharged enum gauss_e { GAUSS_IDLE = 0, GAUSS_IDLE2, GAUSS_FIDGET, GAUSS_SPINUP, GAUSS_SPIN, GAUSS_FIRE, GAUSS_FIRE2, GAUSS_HOLSTER, GAUSS_DRAW }; void EV_HLDM_GunshotDecalTrace( pmtrace_t *pTrace, char *decalName ); void EV_HLDM_DecalGunshot( pmtrace_t *pTrace, int iBulletType ); int EV_HLDM_CheckTracer( int idx, float *vecSrc, float *end, float *forward, float *right, int iBulletType, int iTracerFreq, int *tracerCount ); void EV_HLDM_FireBullets( int idx, float *forward, float *right, float *up, int cShots, float *vecSrc, float *vecDirShooting, float flDistance, int iBulletType, int iTracerFreq, int *tracerCount, float flSpreadX, float flSpreadY, int iTraverseMur = 0 ); void EV_HLDM_FireBulletsVect( int idx, float *forward, float *right, float *up, int cShots, float *vecSrc, float *vecDirShooting, float *vecSpread, float flDistance, int iBulletType, int iTracerFreq, int *tracerCount, int iTraverseMur = 0 ){ //Julien's code uses old version of this function that took vector definitions like this, so we need to convert the Vector vec3_t into floats. This way we can keep using definitions, modif de Roy float flSpreadX = vecSpread[0]; float flSpreadY = vecSpread[1]; return EV_HLDM_FireBullets(idx,forward,right,up,cShots,vecSrc,vecDirShooting,flDistance,iBulletType,iTracerFreq,tracerCount,flSpreadX,flSpreadY,iTraverseMur); } #endif // EV_HLDMH