\r
// {{{ stomach\r
set g_balance_vore_load_capacity 100 "capacity percent a player's stomach has, influenced by player size"\r
+set g_balance_vore_load_mass 30 "prey mass, influenced by player size"\r
set g_balance_vore_swallow_range 140 "distance below which you can swallow another player when facing them"\r
set g_balance_vore_swallow_speed_fill 2.5 "how long it takes to swallow a player, 0 is instant"\r
set g_balance_vore_swallow_speed_fill_scalediff 0.5 "fill rate depends on predator size compared to prey size by this amount"\r
return FALSE;\r
}\r
\r
+float Prey_Mass(entity prey)\r
+{\r
+ float vore_mass;\r
+ vore_mass = cvar("g_balance_vore_load_mass");\r
+ if(cvar("g_healthsize"))\r
+ vore_mass *= prey.scale;\r
+ vore_mass = ceil(vore_mass);\r
+ return vore_mass;\r
+}\r
+\r
float Stomach_TeamMates_check(entity pred)\r
{\r
// checks if a player's stomach contains any team mates\r
PlayerSound(e.predator, playersound_swallow, CHAN_VOICE, VOICETYPE_PLAYERSOUND);\r
setanim(e.predator, e.predator.anim_pain1, FALSE, TRUE, TRUE); // looks good for swallowing / regurgitating\r
e.predator.punchangle_x -= cvar("g_balance_vore_swallow_punchangle");\r
- e.predator.stomach_load += 1;\r
+ e.predator.stomach_load += Prey_Mass(e);\r
e.predator.regurgitate_prepare = 0;\r
e.predator.spawnshieldtime = 0; // lose spawn shield when we vore\r
e.predator.hitsound += 1; // play this for team mates too, as we could be swallowing them to heal them\r
setanim(e.predator, e.predator.anim_pain1, FALSE, TRUE, TRUE); // looks good for swallowing / regurgitating\r
pointparticles(particleeffectnum("vore_regurgitate"), e.predator.origin, '0 0 0', 1);\r
e.predator.punchangle_x += cvar("g_balance_vore_regurgitate_punchangle");\r
- e.predator.stomach_load -= 1;\r
+ e.predator.stomach_load -= Prey_Mass(e);\r
e.predator.regurgitate_prepare = 0;\r
e.predator.action_delay = time + cvar("g_balance_vore_action_delay");\r
Vore_WeightApply(e.predator);\r
\r
// first release the prey from the predator, as dead prey needs to be attached differently\r
// the predator's stomach load is also decreased, as dead prey doesn't count any more\r
- e.predator.stomach_load -= 1;\r
+ e.predator.stomach_load -= Prey_Mass(e);\r
Vore_WeightApply(e.predator);\r
e.predator = world;\r
\r