void spawnfunc_weapon_shotgun(void) { weapon_defaultspawnfunc(WEP_SHOTGUN.m_id); }
void W_Shotgun_Attack(float isprimary)
-{
+{SELFPARAM();
float sc;
entity flash;
// muzzle flash for 1st person view
flash = spawn();
- setmodel(flash, "models/uziflash.md3"); // precision set below
+ setmodel(flash, MDL_SHOTGUN_MUZZLEFLASH); // precision set below
flash.think = SUB_Remove;
flash.nextthink = time + 0.06;
flash.effects = EF_ADDITIVE | EF_FULLBRIGHT | EF_LOWPRECISION;
.float swing_prev;
.entity swing_alreadyhit;
void W_Shotgun_Melee_Think(void)
-{
+{SELFPARAM();
// declarations
float i, f, swing, swing_factor, swing_damage, meleetime, is_player;
entity target_victim;
}
void W_Shotgun_Attack2(void)
-{
+{SELFPARAM();
sound(self, CH_WEAPON_A, W_Sound("shotgun_melee"), VOL_BASE, ATTEN_NORM);
weapon_thinkf(WFRAME_FIRE2, WEP_CVAR_SEC(shotgun, animtime), w_ready);
// alternate secondary weapon frames
void W_Shotgun_Attack3_Frame2()
-{
+{SELFPARAM();
if (!WEP_ACTION(self.weapon, WR_CHECKAMMO2))
if (!(self.items & IT_UNLIMITED_WEAPON_AMMO))
{
weapon_thinkf(WFRAME_FIRE1, WEP_CVAR_SEC(shotgun, alt_animtime), w_ready);
}
void W_Shotgun_Attack3_Frame1()
-{
+{SELFPARAM();
if (!WEP_ACTION(self.weapon, WR_CHECKAMMO2))
if (!(self.items & IT_UNLIMITED_WEAPON_AMMO))
{
.float shotgun_primarytime;
float W_Shotgun(float req)
-{
+{SELFPARAM();
float ammo_amount;
switch(req)
{
}
case WR_INIT:
{
- precache_model("models/uziflash.md3");
- precache_model(W_Model("g_shotgun.md3"));
- precache_model(W_Model("v_shotgun.md3"));
- precache_model(W_Model("h_shotgun.iqm"));
precache_sound("misc/itempickup.wav");
precache_sound(W_Sound("shotgun_fire"));
precache_sound(W_Sound("shotgun_melee"));
#ifdef CSQC
.float prevric;
float W_Shotgun(float req)
-{
+{SELFPARAM();
switch(req)
{
case WR_IMPACTEFFECT: