]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/common/turrets/turret/walker_weapon.qc
take3: format 903 files
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / turrets / turret / walker_weapon.qc
1 #include "walker_weapon.qh"
2
3 #ifdef SVQC
4
5 SOUND(WalkerTurretAttack_FIRE, W_Sound("electro_fire"));
6 METHOD(WalkerTurretAttack, wr_think, void(entity thiswep, entity actor, .entity weaponentity, int fire))
7 {
8         bool isPlayer = IS_PLAYER(actor);
9         if (fire & 1) {
10                 if (!isPlayer || weapon_prepareattack(thiswep, actor, weaponentity, false, WEP_CVAR_PRI(electro, refire))) {
11                         if (isPlayer) {
12                                 turret_initparams(actor);
13                                 W_SetupShot_Dir(actor, weaponentity, v_forward, false, 0, SND_WalkerTurretAttack_FIRE, CH_WEAPON_B, 0);
14                                 actor.tur_shotdir_updated = w_shotdir;
15                                 actor.tur_shotorg = w_shotorg;
16                                 actor.tur_head = actor;
17                                 weapon_thinkf(actor, weaponentity, WFRAME_FIRE1, WEP_CVAR_PRI(electro, animtime), w_ready);
18                         }
19                         sound(actor, CH_WEAPON_A, SND_UZI_FIRE, VOL_BASE, ATTEN_NORM);
20                         fireBullet(actor, weaponentity, actor.tur_shotorg, actor.tur_shotdir_updated, actor.shot_spread, 0, actor.shot_dmg, actor.shot_force, DEATH_TURRET_WALK_GUN.m_id, 0);
21                         Send_Effect(EFFECT_BLASTER_MUZZLEFLASH, actor.tur_shotorg, actor.tur_shotdir_updated * 1000, 1);
22                 }
23         }
24 }
25
26 #endif