]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/hook.qc
Transifex autosync
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / hook.qc
index 51e5803704b779e63fb9ab7d2eb670dd5f2e1618..e734addfaae91615d0dd6e53d6ad17199eacb16d 100644 (file)
@@ -161,7 +161,9 @@ void GrapplingHookThink(entity this)
                error("Owner lost the hook!\n");
                return;
        }
-       if(LostMovetypeFollow(this) || game_stopped || (round_handler_IsActive() && !round_handler_IsRoundStarted()) || ((this.aiment.flags & FL_PROJECTILE) && this.aiment.classname != "nade"))
+       if((this.move_movetype == MOVETYPE_FOLLOW && LostMovetypeFollow(this))
+               || game_stopped || (round_handler_IsActive() && !round_handler_IsRoundStarted())
+               || ((this.aiment.flags & FL_PROJECTILE) && this.aiment.classname != "nade"))
        {
                RemoveHook(this);
                return;
@@ -429,9 +431,10 @@ PRECACHE(GrappleHookInit)
        {
                Weapon w = WEP_HOOK;
                w.wr_init(w);
-               hook_shotorigin[0] = shotorg_adjust_values(CL_Weapon_GetShotOrg(WEP_HOOK.m_id), false, false, 1);
-               hook_shotorigin[1] = shotorg_adjust_values(CL_Weapon_GetShotOrg(WEP_HOOK.m_id), false, false, 2);
-               hook_shotorigin[2] = shotorg_adjust_values(CL_Weapon_GetShotOrg(WEP_HOOK.m_id), false, false, 3);
-               hook_shotorigin[3] = shotorg_adjust_values(CL_Weapon_GetShotOrg(WEP_HOOK.m_id), false, false, 4);
+               vector vecs = CL_Weapon_GetShotOrg(WEP_HOOK.m_id);
+               hook_shotorigin[0] = shotorg_adjust(vecs, false, false, 1);
+               hook_shotorigin[1] = shotorg_adjust(vecs, false, false, 2);
+               hook_shotorigin[2] = shotorg_adjust(vecs, false, false, 3);
+               hook_shotorigin[3] = shotorg_adjust(vecs, false, false, 4);
        }
 }