]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/common/mutators/mutator/vampire/vampire.qc
Update spectatee_status in the server immediately, it fixes various glitches in the...
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / mutators / mutator / vampire / vampire.qc
1 #ifdef IMPLEMENTATION
2 REGISTER_MUTATOR(vampire, cvar("g_vampire") && !cvar("g_instagib"));
3
4 MUTATOR_HOOKFUNCTION(vampire, PlayerDamage_SplitHealthArmor)
5 {
6         entity frag_attacker = M_ARGV(1, entity);
7         entity frag_target = M_ARGV(2, entity);
8         float damage_take = M_ARGV(4, float);
9
10         if(time >= frag_target.spawnshieldtime)
11         if(frag_target != frag_attacker)
12         if(!IS_DEAD(frag_target))
13         {
14                 frag_attacker.health += bound(0, damage_take, frag_target.health);
15                 frag_attacker.health = bound(0, frag_attacker.health, autocvar_g_balance_health_limit);
16         }
17 }
18
19 MUTATOR_HOOKFUNCTION(vampire, BuildMutatorsString)
20 {
21         M_ARGV(0, string) = strcat(M_ARGV(0, string), ":Vampire");
22 }
23
24 MUTATOR_HOOKFUNCTION(vampire, BuildMutatorsPrettyString)
25 {
26         M_ARGV(0, string) = strcat(M_ARGV(0, string), ", Vampire");
27 }
28 #endif