Sbar ring for regurgitation delay
authorMirceaKitsune <sonichedgehog_hyperblast00@yahoo.com>
Tue, 3 May 2011 19:50:52 +0000 (22:50 +0300)
committerMirceaKitsune <sonichedgehog_hyperblast00@yahoo.com>
Tue, 3 May 2011 19:50:52 +0000 (22:50 +0300)
data/qcsrc/client/sbar.qc
data/qcsrc/server/vore.qc

index 6e6fe0a..575ff08 100644 (file)
@@ -1995,17 +1995,33 @@ void Sbar_Ring()
        switch(getstati(STAT_SBRING1_TYPE))\r
        {\r
                case 0:\r
+                       // ring disabled\r
                        break;\r
                case 1:\r
-                       // ring shows vore system delay\r
+                       // ring shows vore system delay, empties with progress\r
                        ring1_color = '0.5 0.5 1';\r
-                       ring1_clip = getstatf(STAT_SBRING1_CLIP);\r
-                       text1_msg = "vore delay";\r
+                       text1_msg = "Vore delay";\r
                        break;\r
                default:\r
                        print(strcat("^1Error:^7 Unknown ring type: ", ftos(getstati(STAT_SBRING1_TYPE)), "\n"));\r
                        break;\r
        }\r
+       switch(getstati(STAT_SBRING2_TYPE))\r
+       {\r
+               case 0:\r
+                       // ring disabled\r
+                       break;\r
+               case 1:\r
+                       // ring shows regurgitation delay, fills with progress\r
+                       ring2_color = '1 0.5 1';\r
+                       text2_msg = "Regurgitating...";\r
+                       break;\r
+               default:\r
+                       print(strcat("^1Error:^7 Unknown ring type: ", ftos(getstati(STAT_SBRING1_TYPE)), "\n"));\r
+                       break;\r
+       }\r
+       ring1_clip = getstatf(STAT_SBRING1_CLIP);\r
+       ring2_clip = getstatf(STAT_SBRING2_CLIP);\r
 \r
        if(text1_msg != "")\r
        {\r
index 154817c..a0a0a24 100644 (file)
@@ -434,15 +434,20 @@ void Vore_AutoTaunt()
 \r
 void Vore_SetSbarRings()\r
 {\r
+       // first set the ring stats to 0, then configure them if needed\r
+       self.stat_sbring1_type = self.stat_sbring1_clip = 0;\r
+       self.stat_sbring2_type = self.stat_sbring2_clip = 0;\r
+\r
        if(time <= self.action_delay)\r
        {\r
-               self.stat_sbring1_type = 1; // ring shows vore action delay\r
+               self.stat_sbring1_type = 1; // ring shows vore action delay, empties with progress\r
                self.stat_sbring1_clip = bound(0, (time / self.action_delay - 1) / ((self.action_delay - cvar("g_balance_vore_action_delay")) / self.action_delay - 1), 1);\r
        }\r
-       else\r
+\r
+       if(time <= self.regurgitate_prepare)\r
        {\r
-               self.stat_sbring1_type = 0;\r
-               self.stat_sbring1_clip = 0;\r
+               self.stat_sbring2_type = 1; // ring shows regurgitation delay, fills with progress\r
+               self.stat_sbring2_clip = 1 - bound(0, (time / self.regurgitate_prepare - 1) / ((self.regurgitate_prepare - cvar("g_balance_vore_regurgitate_delay")) / self.regurgitate_prepare - 1), 1);\r
        }\r
 }\r
 \r