]> de.git.xonotic.org Git - voretournament/voretournament.git/blobdiff - data/qcsrc/server/vore.qc
Implement constant particles falling off regurgitated prey, until the green goo color...
[voretournament/voretournament.git] / data / qcsrc / server / vore.qc
index 855b402eb1f5d5d92a90f4cd384d677d47b204da..6e333e1d9735a54ad57b6ae32edc892e0f08bb59 100644 (file)
@@ -60,7 +60,7 @@ float Swallow_condition_check(entity prey)
 \r
                if(swallow_complain != "")\r
                {\r
-                       if(time > self.complain_vore && self.BUTTON_ATCK2)\r
+                       if(time > self.complain_vore && self.BUTTON_ATCK)\r
                        {\r
                                play2(self, "misc/forbidden.wav");\r
                                sprint(self, swallow_complain);\r
@@ -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
+       if(self.colormod != '1 1 1')\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(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
@@ -782,7 +794,7 @@ void Vore()
                else\r
                        self.stat_canswallow = 1;\r
 \r
-               if(self.BUTTON_ATCK2)\r
+               if(self.BUTTON_ATCK)\r
                        Vore_SwallowStep(prey);\r
        }\r
        else if(prey != world)\r