]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blob - qcsrc/common/mutators/mutator/vampire/sv_vampire.qc
Merge branch 'TimePath/gamerules' into 'master'
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / mutators / mutator / vampire / sv_vampire.qc
1 #include "sv_vampire.qh"
2
3 REGISTER_MUTATOR(vampire, cvar("g_vampire") && !cvar("g_instagib"));
4
5 MUTATOR_HOOKFUNCTION(vampire, PlayerDamage_SplitHealthArmor)
6 {
7         entity frag_attacker = M_ARGV(1, entity);
8         entity frag_target = M_ARGV(2, entity);
9         float damage_take = M_ARGV(4, float);
10
11         if(time >= frag_target.spawnshieldtime)
12         if(frag_target != frag_attacker)
13         if(!IS_DEAD(frag_target))
14         {
15                 frag_attacker.health += bound(0, damage_take, frag_target.health);
16                 frag_attacker.health = bound(0, frag_attacker.health, autocvar_g_balance_health_limit);
17         }
18 }
19
20 MUTATOR_HOOKFUNCTION(vampire, BuildMutatorsString)
21 {
22         M_ARGV(0, string) = strcat(M_ARGV(0, string), ":Vampire");
23 }
24
25 MUTATOR_HOOKFUNCTION(vampire, BuildMutatorsPrettyString)
26 {
27         M_ARGV(0, string) = strcat(M_ARGV(0, string), ", Vampire");
28 }