]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/common/turrets/turret/hk.qc
Merge branch 'Mirio/balance' into 'master'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / turrets / turret / hk.qc
1 #include "hk.qh"
2
3 #ifdef IMPLEMENTATION
4
5 #ifdef SVQC
6
7 #ifdef TURRET_DEBUG_HK
8 .float atime;
9 #endif
10
11 spawnfunc(turret_hk) { if(!turret_initialize(this, TUR_HK)) delete(this); }
12
13 METHOD(HunterKiller, tr_think, void(HunterKiller thistur, entity it))
14 {
15     if (it.tur_head.frame != 0)
16         it.tur_head.frame = it.tur_head.frame + 1;
17
18     if (it.tur_head.frame > 5)
19         it.tur_head.frame = 0;
20 }
21
22 bool turret_hk_addtarget(entity this, entity e_target,entity e_sender);
23 METHOD(HunterKiller, tr_setup, void(HunterKiller this, entity it))
24 {
25     it.ammo_flags = TFL_AMMO_ROCKETS | TFL_AMMO_RECHARGE;
26     it.aim_flags = TFL_AIM_SIMPLE;
27     it.target_select_flags = TFL_TARGETSELECT_LOS | TFL_TARGETSELECT_PLAYERS | TFL_TARGETSELECT_TRIGGERTARGET | TFL_TARGETSELECT_RANGELIMITS | TFL_TARGETSELECT_TEAMCHECK;
28     it.firecheck_flags = TFL_FIRECHECK_DEAD | TFL_FIRECHECK_TEAMCHECK  | TFL_FIRECHECK_REFIRE | TFL_FIRECHECK_AFF;
29     it.shoot_flags = TFL_SHOOT_CLEARTARGET;
30     it.target_validate_flags = TFL_TARGETSELECT_PLAYERS | TFL_TARGETSELECT_TEAMCHECK;
31
32     it.turret_addtarget = turret_hk_addtarget;
33 }
34
35 bool turret_hk_addtarget(entity this, entity e_target,entity e_sender)
36 {
37     if (e_target)
38     {
39         if (turret_validate_target(this,e_target,this.target_validate_flags) > 0)
40         {
41             this.enemy = e_target;
42             return true;
43         }
44     }
45
46     return false;
47 }
48
49 #endif // SVQC
50 #endif