]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/common/mutators/mutator/vampire/vampire.qc
9eb7e0046bf538bab828044ed77d4f7906cfc538
[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         return false;
19 }
20
21 MUTATOR_HOOKFUNCTION(vampire, BuildMutatorsString)
22 {
23         ret_string = strcat(ret_string, ":Vampire");
24         return 0;
25 }
26
27 MUTATOR_HOOKFUNCTION(vampire, BuildMutatorsPrettyString)
28 {
29         ret_string = strcat(ret_string, ", Vampire");
30         return 0;
31 }
32 #endif