]> de.git.xonotic.org Git - voretournament/voretournament.git/commitdiff
Implement constant particles falling off regurgitated prey, until the green goo color...
authorMirceaKitsune <sonichedgehog_hyperblast00@yahoo.com>
Sat, 30 Jul 2011 12:08:35 +0000 (15:08 +0300)
committerMirceaKitsune <sonichedgehog_hyperblast00@yahoo.com>
Sat, 30 Jul 2011 12:08:35 +0000 (15:08 +0300)
data/defaultVT.cfg
data/effectinfo.txt
data/qcsrc/server/vore.qc

index 1b38df567b29ebbc3b9ece3bd3674d22c845fd86..6e51de395b8a6bf15fd57c7959a8c667b2475e25 100644 (file)
@@ -1601,6 +1601,7 @@ set g_vore_soundocclusion 0.25 "directional player sounds are cut to this amount
 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
index f4d920037032d30486481b0d4737d51914dde8dc..e4c850dfccb317ec57ace966f6447e7e314e400f 100644 (file)
@@ -4845,3 +4845,29 @@ size 25 30
 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
index febc062e7cf86f2410a66f90941a1357992c6c31..6e333e1d9735a54ad57b6ae32edc892e0f08bb59 100644 (file)
@@ -662,6 +662,7 @@ void Vore_SetSbarRings()
        }\r
 }\r
 \r
+.float regurgitatecolor_particles_tick;\r
 void Vore()\r
 {\r
        // main vore code, this is where it all happens\r
@@ -672,17 +673,28 @@ void Vore()
        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