]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/mutators/mutator_random_gravity.qc
Merge branch 'master' into Mario/monsters
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / mutators / mutator_random_gravity.qc
index bd14032fec6f569c91638fbe5a8173b6d858fdef..e2832ace2dc2f61824ec10dc9df76e16922b0250 100644 (file)
@@ -1,18 +1,13 @@
+// Random Gravity
+//
+// Mutator by Mario
+// Inspired by Player 2
+
 float gravity_delay;
-float old_gravity;
+
 MUTATOR_HOOKFUNCTION(gravity_StartFrame)
 {
-       if(gameover || !cvar("g_random_gravity"))
-       {
-               if(autocvar_sv_gravity != old_gravity)
-               {
-                       cvar_set("sv_gravity", ftos(old_gravity));
-                       old_gravity = autocvar_sv_gravity; // update now so it can be changed during match end
-               }
-               
-               return FALSE;
-       }
-               
+       if(gameover || !cvar("g_random_gravity")) return FALSE; 
        if(time < gravity_delay) return FALSE;
        if(time < game_starttime) return FALSE;
        if(round_handler_IsActive() && !round_handler_IsRoundStarted()) return FALSE;
@@ -49,12 +44,7 @@ MUTATOR_DEFINITION(mutator_random_gravity)
        
        MUTATOR_ONADD
        {
-               old_gravity = autocvar_sv_gravity;
-       }
-       
-       MUTATOR_ONREMOVE
-       {
-               cvar_set("sv_gravity", ftos(old_gravity));
+               cvar_settemp("sv_gravity", cvar_string("sv_gravity")); // settemp current gravity so it's restored on match end
        }
 
        return FALSE;