]> de.git.xonotic.org Git - voretournament/voretournament.git/blobdiff - data/qcsrc/server/vore.qc
Player size now influences a player's weight as well, alongside stomach load. Macros...
[voretournament/voretournament.git] / data / qcsrc / server / vore.qc
index e26b6a62d253c9de90b9dc039fe8a0a22e6b643f..e64eaab61b59fcf4e7fcaeb06e0145c73092f9bc 100644 (file)
@@ -159,6 +159,8 @@ void Vore_AutoDigest(entity e)
                return;\r
        if(g_rpg)\r
                return; // RPG is choice based, so don't do things automatically there\r
+       if(e.stomach_load)\r
+               return; // don't start digestion if we already ate someone, as that means we manually disabled it after the first prey and want it off\r
        if(clienttype(e) != CLIENTTYPE_REAL)\r
                return; // this feature is only for players, not bots\r
        if(Stomach_TeamMates_check(e))\r
@@ -207,7 +209,7 @@ void Vore_StomachLoad_Apply()
        self.stomach_load = final_load;\r
 \r
        // apply weight\r
-       self.gravity = 1 + (self.stomach_load / self.stomach_maxload) * cvar("g_balance_vore_load_pred_weight");\r
+       self.gravity = 1 * (cvar("g_healthsize") ? pow(self.scale, cvar("g_healthsize_weight")) : 1) + (self.stomach_load / self.stomach_maxload) * cvar("g_balance_vore_load_pred_weight");\r
        if(!self.gravity && self.stomach_load)\r
                self.gravity = 0.00001; // 0 becomes 1 for gravity, so do this to allow 0 gravity\r
 }\r
@@ -409,7 +411,7 @@ void Vore_Regurgitate(entity e)
        // apply velocities\r
        makevectors(e.predator.v_angle);\r
        e.velocity = v_forward * cvar("g_balance_vore_regurgitate_force") * scalediff;\r
-       e.predator.velocity = e.predator.velocity + (-v_forward * cvar("g_balance_vore_regurgitate_predatorforce") * scalediff); // don't use += here to avoid a fteqcc bug\r
+       e.predator.velocity += -v_forward * cvar("g_balance_vore_regurgitate_predatorforce") * scalediff;\r
        e.pusher = e.predator; // allows us to frag players by regurgitating them in deadly pits\r
        e.pushltime = time + cvar("g_maxpushtime");\r
 \r