]> de.git.xonotic.org Git - voretournament/voretournament.git/blobdiff - data/qcsrc/server/miscfunctions.qc
No warmup stage or start delay in RPG
[voretournament/voretournament.git] / data / qcsrc / server / miscfunctions.qc
index 65af9b2c753a510ddadde4d3759c6975fc08b2d0..2f36d6073eb03ecbf85862c12395cb15aba0be5b 100644 (file)
@@ -616,6 +616,8 @@ void GetCvars(float f)
        GetCvars_handleFloat(s, f, cvar_cl_accuracy_data_receive, "cl_accuracy_data_receive");\r
        GetCvars_handleFloat(s, f, cvar_chase_active, "chase_active");\r
        GetCvars_handleFloat(s, f, cvar_cl_vore_stomachmodel, "cl_vore_stomachmodel");\r
+       GetCvars_handleFloat(s, f, cvar_cl_vore_swallowmodel, "cl_vore_swallowmodel");\r
+       GetCvars_handleFloat(s, f, cvar_cl_vore_autodigest, "cl_vore_autodigest");\r
 \r
        self.cvar_cl_accuracy_data_share = boolean(self.cvar_cl_accuracy_data_share);\r
        self.cvar_cl_accuracy_data_receive = boolean(self.cvar_cl_accuracy_data_receive);\r
@@ -852,7 +854,12 @@ float want_weapon(string cvarprefix, entity weaponinfo, float allguns)
        var float t = cvar(strcat(cvarprefix, weaponinfo.netname));\r
 \r
        if (t < 0) // "default" weapon selection\r
-               t = (i == WEP_GRABBER);\r
+       {\r
+               if(g_rpg) // no start weapons in RPG by default\r
+                       t = 0;\r
+               else\r
+                       t = (i == WEP_GRABBER);\r
+       }\r
 \r
        return t;\r
 }\r
@@ -868,7 +875,7 @@ void readplayerstartcvars()
        start_health = cvar("g_balance_health_start");\r
        start_armorvalue = cvar("g_balance_armor_start");\r
 \r
-       if (g_lms || g_ca)\r
+       if (g_lms)\r
        {\r
                start_ammo_fuel = cvar("g_lms_start_ammo_fuel");\r
                start_health = cvar("g_lms_start_health");\r
@@ -901,23 +908,20 @@ void readplayerstartcvars()
                warmup_start_armorvalue = start_armorvalue;\r
                warmup_start_weapons = start_weapons;\r
 \r
-               if (!g_ca)\r
+               if (cvar("g_use_ammunition"))\r
                {\r
-                       if (cvar("g_use_ammunition"))\r
-                       {\r
-                               warmup_start_ammo_fuel = cvar("g_warmup_start_ammo_fuel");\r
-                       }\r
-                       warmup_start_health = cvar("g_warmup_start_health");\r
-                       warmup_start_armorvalue = cvar("g_warmup_start_armor");\r
-                       warmup_start_weapons = 0;\r
-                       for (i = WEP_FIRST; i <= WEP_LAST; ++i)\r
+                       warmup_start_ammo_fuel = cvar("g_warmup_start_ammo_fuel");\r
+               }\r
+               warmup_start_health = cvar("g_warmup_start_health");\r
+               warmup_start_armorvalue = cvar("g_warmup_start_armor");\r
+               warmup_start_weapons = 0;\r
+               for (i = WEP_FIRST; i <= WEP_LAST; ++i)\r
+               {\r
+                       e = get_weaponinfo(i);\r
+                       if(want_weapon("g_start_weapon_", e, cvar("g_warmup_allguns")))\r
                        {\r
-                               e = get_weaponinfo(i);\r
-                               if(want_weapon("g_start_weapon_", e, cvar("g_warmup_allguns")))\r
-                               {\r
-                                       warmup_start_weapons |= e.weapons;\r
-                                       weapon_action(e.weapon, WR_PRECACHE);\r
-                               }\r
+                               warmup_start_weapons |= e.weapons;\r
+                               weapon_action(e.weapon, WR_PRECACHE);\r
                        }\r
                }\r
        }\r
@@ -1013,6 +1017,7 @@ void readlevelcvars(void)
        g_norecoil = cvar("g_norecoil");\r
        g_vampire = cvar("g_vampire");\r
        g_bloodloss = cvar("g_bloodloss");\r
+       g_balance_vore_swallow_limit = bound(1, cvar("g_balance_vore_swallow_limit"), 9); // may only range between 1 and 9\r
        sv_maxidle = cvar("sv_maxidle");\r
        sv_maxidle_spectatorsareidle = cvar("sv_maxidle_spectatorsareidle");\r
        sv_pogostick = cvar("sv_pogostick");\r
@@ -1026,7 +1031,7 @@ void readlevelcvars(void)
        g_warmup_allguns = cvar("g_warmup_allguns");\r
        g_warmup_allow_timeout = cvar("g_warmup_allow_timeout");\r
 \r
-       if ((g_race && g_race_qualifying == 2) || g_arena || g_assault || cvar("g_campaign"))\r
+       if ((g_race && g_race_qualifying == 2) || g_arena || g_assault || g_rpg || cvar("g_campaign"))\r
                inWarmupStage = 0; // these modes cannot work together, sorry\r
 \r
        g_pickup_respawntime_weapon = cvar("g_pickup_respawntime_weapon");\r
@@ -1078,7 +1083,7 @@ void readlevelcvars(void)
        if(g_ghost_items >= 1)\r
                g_ghost_items = 0.25; // default alpha value\r
 \r
-       if not(inWarmupStage && !g_ca)\r
+       if not(inWarmupStage && !g_ca && !g_rpg)\r
                game_starttime = cvar("g_start_delay");\r
 \r
        sv_pitch_min = cvar("sv_pitch_min");\r
@@ -1259,8 +1264,11 @@ void stopsound(entity e, float chan)
 void play2(entity e, string filename)\r
 {\r
     //stuffcmd(e, strcat("play2 ", filename, "\n"));\r
-    msg_entity = e;\r
-    soundtoat(MSG_ONE, world, '0 0 0', CHAN_AUTO, filename, VOL_BASE, ATTN_NONE);\r
+    if (clienttype(e) == CLIENTTYPE_REAL)\r
+    {\r
+        msg_entity = e;\r
+        soundtoat(MSG_ONE, world, '0 0 0', CHAN_AUTO, filename, VOL_BASE, ATTN_NONE);\r
+    }\r
 }\r
 \r
 // use this one if you might be causing spam (e.g. from touch functions that might get called more than once per frame)\r
@@ -1325,7 +1333,6 @@ void precache()
 {\r
     // gamemode related things\r
     precache_model ("models/misc/chatbubble.spr");\r
-    precache_model ("models/misc/teambubble.spr");\r
 \r
        // used by the waypoint editor\r
        precache_model ("models/rune.mdl");\r
@@ -1343,6 +1350,7 @@ void precache()
         precache_all_models("models/player/*.dpm");\r
         precache_all_models("models/player/*.md3");\r
         precache_all_models("models/player/*.psk");\r
+               precache_all_models("models/player/*.iqm");\r
         //precache_model("models/player/vixen.zym");\r
     }\r
 \r
@@ -1400,6 +1408,9 @@ void precache()
     precache_sound ("misc/gib_splat04.wav");\r
     precache_sound ("misc/hit.wav");\r
        precache_sound ("misc/typehit.wav");\r
+       precache_sound ("misc/unavailable.wav");\r
+       precache_sound ("misc/forbidden.wav");\r
+       precache_sound ("misc/beep.wav");\r
     PrecacheGlobalSound((globalsound_fall = "misc/hitground 4"));\r
     PrecacheGlobalSound((globalsound_metalfall = "misc/metalhitground 4"));\r
     precache_sound ("misc/null.wav");\r
@@ -1410,6 +1421,8 @@ void precache()
     precache_sound ("player/lava.wav");\r
     precache_sound ("player/slime.wav");\r
     precache_sound ("player/digest.wav");\r
+       precache_sound ("misc/health_regen.wav");\r
+       precache_sound ("misc/armor_regen.wav");\r
 \r
     if (g_jetpack)\r
         precache_sound ("misc/jetpack_fly.wav");\r
@@ -1429,10 +1442,10 @@ void precache()
     // common weapon precaches\r
     precache_sound ("weapons/weapon_switch.wav");\r
     precache_sound ("weapons/weaponpickup.wav");\r
-    precache_sound ("weapons/unavailable.wav");\r
-    precache_sound ("weapons/grabber_fire.wav"); // grabber\r
-    precache_sound ("weapons/grabber_impact.wav"); // grabber\r
-       precache_sound ("weapons/stomachkick.ogg");\r
+\r
+       float i;\r
+       for(i = 0; i < 8; i += 1)\r
+               precache_sound (strcat("weapons/hit", ftos(i), ".wav"));\r
 \r
     if (cvar("sv_precacheweapons"))\r
     {\r