set g_vore_regurgitatecolor_release "0.6 0.4 0" "the color players will have when regurgitated alive"\r
set g_vore_regurgitatecolor_release_fade 0.01 "how quickly the regurgitation color washes off players once they leave the stomach"\r
set g_vore_regurgitatecolor_digest "0.3 0.15 0" "the color players will have when digested, only works when g_vore_keepdeadprey is disabled"\r
+set g_vore_regurgitatecolor_particles 1 "players that have a regurgitate color applied generate particles this often, based on how washed away the goo is"\r
set g_vore_keepdeadprey 0.75 "If enabled, prey remains in the stomach after dying, else the predator throws up their dead body. 0 = disabled, 1 = ernabled, anything between = probability"\r
set g_vore_neighborprey_distance 8 "Distance by which prey inside the same stomach are positioned away from each other. 0 disables seeing neighboring prey"\r
set g_vore_neighborprey_scale 1 "When neighborprey is enabled, all prey is resized by this amount"\r
alpha 100 256 400\r
color 0x000000 0x408000\r
originjitter 110 110 110\r
+\r
+// constant regurgitate effect\r
+// used in: vore.qc: pointparticles(particleeffectnum("regurgitate"), e.predator.origin, '0 0 0', 1)\r
+effect vore_regurgitate_constant\r
+count 5\r
+type blood\r
+tex 24 32\r
+size 8 20\r
+alpha 512 512 128\r
+color 0x9B9BCD 0x3769CD\r
+bounce -1\r
+airfriction 1\r
+liquidfriction 4\r
+velocityjitter 128 128 32\r
+velocitymultiplier 4\r
+staincolor 0x408000 0x80FF00\r
+staintex 16 24\r
+//green mist\r
+effect vore_regurgitate_constant\r
+countabsolute 5\r
+type alphastatic\r
+tex 0 8\r
+size 20 25\r
+alpha 100 256 400\r
+color 0x000000 0x408000\r
+originjitter 110 110 110\r
}\r
}\r
\r
+.float regurgitatecolor_particles_tick;\r
void Vore()\r
{\r
// main vore code, this is where it all happens\r
if(!self.stat_eaten)\r
if(stov(cvar_string("g_vore_regurgitatecolor_release")))\r
if(self.colormod)\r
- if(cvar("g_vore_regurgitatecolor_release_fade"))\r
- {\r
- self.colormod_x += cvar("g_vore_regurgitatecolor_release_fade") * frametime;\r
- if(self.colormod_x > 1)\r
- self.colormod_x = 1;\r
- self.colormod_y += cvar("g_vore_regurgitatecolor_release_fade") * frametime;\r
- if(self.colormod_y > 1)\r
- self.colormod_y = 1;\r
- self.colormod_z += cvar("g_vore_regurgitatecolor_release_fade") * frametime;\r
- if(self.colormod_z > 1)\r
- self.colormod_z = 1;\r
+ if(self.colormod != '1 1 1')\r
+ {\r
+ if(cvar("g_vore_regurgitatecolor_release_fade"))\r
+ {\r
+ self.colormod_x += cvar("g_vore_regurgitatecolor_release_fade") * frametime;\r
+ if(self.colormod_x > 1)\r
+ self.colormod_x = 1;\r
+ self.colormod_y += cvar("g_vore_regurgitatecolor_release_fade") * frametime;\r
+ if(self.colormod_y > 1)\r
+ self.colormod_y = 1;\r
+ self.colormod_z += cvar("g_vore_regurgitatecolor_release_fade") * frametime;\r
+ if(self.colormod_z > 1)\r
+ self.colormod_z = 1;\r
+ }\r
+\r
+ if(cvar("g_vore_regurgitatecolor_particles"))\r
+ if(self.regurgitatecolor_particles_tick < time)\r
+ {\r
+ pointparticles(particleeffectnum("vore_regurgitate_constant"), self.origin, '0 0 0', 1);\r
+ self.regurgitatecolor_particles_tick = time + cvar("g_vore_regurgitatecolor_particles") * vlen(self.colormod);\r
+ dprint(strcat(ftos(cvar("g_vore_regurgitatecolor_particles") * vlen(self.colormod)), " --------\n"));\r
+ }\r
}\r
\r
// set all vore stats\r