]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/cl_player.qc
Add player argument to FixPlayermodel
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / cl_player.qc
index 1c17abdd34b19449bd471b59f3ab1c99060bc902..3435c2b2960e5c47b976580d4ed33f8040762119 100644 (file)
@@ -126,15 +126,15 @@ void CopyBody(entity this, float keepvelocity)
        animdecide_setframes(clone, false, frame, frame1time, frame2, frame2time);
 }
 
-void player_setupanimsformodel()
-{SELFPARAM();
+void player_setupanimsformodel(entity this)
+{
        // load animation info
-       animdecide_load_if_needed(self);
-       animdecide_setstate(self, 0, false);
+       animdecide_load_if_needed(this);
+       animdecide_setstate(this, 0, false);
 }
 
-void player_anim ()
-{SELFPARAM();
+void player_anim(entity this)
+{
        int deadbits = (this.anim_state & (ANIMSTATE_DEAD1 | ANIMSTATE_DEAD2));
        if(IS_DEAD(this)) {
                if (!deadbits) {
@@ -384,10 +384,9 @@ void PlayerDamage(entity this, entity inflictor, entity attacker, float damage,
                save = v.y;
        }
 
-       frag_damage = damage;
-       MUTATOR_CALLHOOK(PlayerDamage_SplitHealthArmor, inflictor, attacker, this, force, take, save);
-       take = bound(0, damage_take, this.health);
-       save = bound(0, damage_save, this.armorvalue);
+       MUTATOR_CALLHOOK(PlayerDamage_SplitHealthArmor, inflictor, attacker, this, force, take, save, deathtype, damage);
+       take = bound(0, M_ARGV(4, float), this.health);
+       save = bound(0, M_ARGV(5, float), this.armorvalue);
        excess = max(0, damage - take - save);
 
        if(sound_allowed(MSG_BROADCAST, attacker))
@@ -552,8 +551,8 @@ void PlayerDamage(entity this, entity inflictor, entity attacker, float damage,
        if(accuracy_isgooddamage(attacker, this))
         attacker.accuracy.(accuracy_frags[w.m_id-1]) += 1;
 
-               MUTATOR_CALLHOOK(PlayerDies, inflictor, attacker, this, deathtype);
-               excess = frag_damage;
+               MUTATOR_CALLHOOK(PlayerDies, inflictor, attacker, this, deathtype, excess);
+               excess = M_ARGV(4, float);
 
                Weapon wep = PS(this).m_weapon;
                WITHSELF(this, wep.wr_playerdeath(wep, this));
@@ -637,7 +636,7 @@ void PlayerDamage(entity this, entity inflictor, entity attacker, float damage,
 
                // reset fields the weapons may use just in case
                FOREACH(Weapons, it != WEP_Null, LAMBDA(
-                       WITHSELF(this, it.wr_resetplayer(it, this));
+                       it.wr_resetplayer(it, this);
                        for(int slot = 0; slot < MAX_WEAPONSLOTS; ++slot)
                        {
                                ATTACK_FINISHED_FOR(this, it.m_id, slot) = 0;
@@ -705,7 +704,7 @@ int Say(entity source, int teamsay, entity privatesay, string msgin, bool floodc
        // for now, just give "say" back and only handle say_team
        if(!teamsay)
        {
-               clientcommand(self, strcat("say ", msgin));
+               clientcommand(source, strcat("say ", msgin));
                return;
        }
        */