]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Make the monster nade bounce off the roof
authorotta8634 <k9wolf@pm.me>
Mon, 10 Feb 2025 11:55:50 +0000 (19:55 +0800)
committerotta8634 <k9wolf@pm.me>
Wed, 12 Feb 2025 09:29:29 +0000 (17:29 +0800)
This prevents spawning monsters on the roof of the map, from where they would just start tweaking and be a bit useless.
Instead, the nade now bounces off the roof back down, like translocate and spawn nade.

qcsrc/common/mutators/mutator/nades/cl_nades.qc
qcsrc/common/mutators/mutator/nades/sv_nades.qc

index 2587e9cced67c6e1b0ced9bd00966175dc939d9b..945c1c2f18e4de730dced817648c980c8dad9a58 100644 (file)
@@ -56,7 +56,9 @@ MUTATOR_HOOKFUNCTION(cl_nades, EditProjectile)
        proj.avelocity = randomvec() * 720;
        proj.alphamod = nade_type.m_alpha;
 
-       if (nade_type == NADE_TYPE_TRANSLOCATE || nade_type == NADE_TYPE_SPAWN)
+       if (nade_type == NADE_TYPE_TRANSLOCATE
+       ||  nade_type == NADE_TYPE_SPAWN
+       ||  nade_type == NADE_TYPE_MONSTER)
                proj.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_PLAYERCLIP | DPCONTENTS_BOTCLIP;
        else
                proj.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY;
index 683871573d492382462238a352faba5f5eb755b4..34786c9b621311b6aa0685e3b19a01e02b7e3992 100644 (file)
@@ -383,7 +383,9 @@ void toss_nade(entity e, bool set_owner, vector _velocity, float _time)
        _nade.toss_time = time;
        _nade.solid = SOLID_CORPSE; //((STAT(NADE_BONUS_TYPE, _nade) == NADE_TYPE_TRANSLOCATE) ? SOLID_CORPSE : SOLID_BBOX);
 
-       if(STAT(NADE_BONUS_TYPE, _nade) == NADE_TYPE_TRANSLOCATE.m_id || STAT(NADE_BONUS_TYPE, _nade) == NADE_TYPE_SPAWN.m_id)
+       if(STAT(NADE_BONUS_TYPE, _nade) == NADE_TYPE_TRANSLOCATE.m_id
+       || STAT(NADE_BONUS_TYPE, _nade) == NADE_TYPE_SPAWN.m_id
+       || STAT(NADE_BONUS_TYPE, _nade) == NADE_TYPE_MONSTER.m_id)
                _nade.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_PLAYERCLIP | DPCONTENTS_BOTCLIP;
        else
                _nade.dphitcontentsmask = DPCONTENTS_SOLID | DPCONTENTS_BODY;