]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Rename some cvars.. re-write maptime announcer function (partly)
authorSamual <samual@xonotic.org>
Tue, 18 Oct 2011 16:05:07 +0000 (12:05 -0400)
committerSamual <samual@xonotic.org>
Tue, 18 Oct 2011 16:05:07 +0000 (12:05 -0400)
defaultXonotic.cfg
qcsrc/client/announcer.qc
qcsrc/client/autocvars.qh

index 1e8c20537bf2d703d2579ce8d57e3e1558a3f593..1d90a8cc9ff0aaff484b2efd213238b7431594df 100644 (file)
@@ -956,11 +956,11 @@ cl_sound_ric3 weapons/ric3.wav
 cl_sound_r_exp3 ""
 sv_sound_land ""
 sv_sound_watersplash ""
-seta cl_sound_maptime_warning "1" "play announcer sound telling you the remaining maptime - 0: do not play at all, 1: play at one minute, 2: play at five minutes, 3: play both"
-seta cl_notify_carried_items "3" "notify you of carried items when you obtain them (e.g. flags in CTF) - 0: disabled, 1: notify of taken items, 2: notify of picking up dropped items, 3: notify of both"
 
 seta cl_announcer default "name of the announcer you wish to use from data/sound/announcer"
 seta cl_announcer_antispam 2 "number of seconds before an announcement of the same sound can be played again"
+seta cl_announcer_maptime "1" "play announcer sound telling you the remaining maptime - 0: do not play at all, 1: play at one minute, 2: play at five minutes, 3: play both"
+seta cl_notify_carried_items "3" "notify you of carried items when you obtain them (e.g. flags in CTF) - 0: disabled, 1: notify of taken items, 2: notify of picking up dropped items, 3: notify of both"
 
 // startmap_dm is used when running with the -listen or -dedicated commandline options
 set serverconfig server.cfg
index 7dc6a9d574fa9eafb8cdcc96779a7e56fef516a9..49e2b2cbe2bace83fca4584239f1d283fde78f8f 100644 (file)
@@ -8,13 +8,13 @@ float announcer_5min;
 
 void Announcer_Play(string announcement)
 {
-  if((announcement != previous_announcement) || (time >= (previous_announcement_time + autocvar_cl_announcer_antispam)))
-  {
-    sound(world, CH_INFO, strcat("announcer/", autocvar_cl_announcer, "/", announcement, ".wav"), VOL_BASEVOICE, ATTN_NONE);
-    
-    previous_announcement = announcement;
-    previous_announcement_time = time;
-  }
+       if((announcement != previous_announcement) || (time >= (previous_announcement_time + autocvar_cl_announcer_antispam)))
+       {
+               sound(world, CH_INFO, strcat("announcer/", autocvar_cl_announcer, "/", announcement, ".wav"), VOL_BASEVOICE, ATTN_NONE);
+
+               previous_announcement = announcement;
+               previous_announcement_time = time;
+       }
 }
 
 void Announcer_Countdown() 
@@ -26,10 +26,10 @@ void Announcer_Countdown()
        if(countdown <= 0) // countdown has finished, starttime is now
        {
                if (!spectatee_status) 
-      centerprint_generic(CPID_GAME_STARTING, _("^1Begin!"), 1, 0);
-      
+                       centerprint_generic(CPID_GAME_STARTING, _("^1Begin!"), 1, 0);
+
                Announcer_Play("begin");
-               announcer_5min = announcer_1min = FALSE; //reset maptime announcers now as well
+               announcer_5min = announcer_1min = FALSE; // reset maptime announcers now as well
                remove(self);
                return;
        }
@@ -56,16 +56,15 @@ void Announcer_Gamestart()
 {
        float startTime = getstatf(STAT_GAMESTARTTIME);
        
-       if (previous_game_starttime != startTime) 
+       if(previous_game_starttime != startTime) 
        {
-               if ((time + 5.0) < startTime) //if connecting to server while restart was active don't always play prepareforbattle
-               {
+               if((time + 5.0) < startTime) // if connecting to server while restart was active don't always play prepareforbattle
                        Announcer_Play("prepareforbattle");
-               }
-               if (time < startTime) 
+               
+               if(time < startTime) 
                {
-      entity e;
-      e = spawn();
+                       entity e;
+                       e = spawn();
                        e.think = Announcer_Countdown;
                        e.nextthink = startTime - floor(startTime - time); //synchronize nextthink to startTime
                }
@@ -77,50 +76,58 @@ void Announcer_Gamestart()
 /**
  * Plays the 1minute or 5 minutes (of maptime) remaining sound, if client wants it
  */
-void maptimeAnnouncer() {
-       float timelimit;
-       timelimit = getstatf(STAT_TIMELIMIT);
-       float timeleft;
-       timeleft = max(0, timelimit * 60 + getstatf(STAT_GAMESTARTTIME) - time);
-
-       float warmuplimit;
-       float warmuptimeleft;
-       if(warmup_stage) {
-               warmuplimit = autocvar_g_warmup_limit;
-               if(warmuplimit > 0) {
-                       warmuptimeleft = max(0, warmuplimit + getstatf(STAT_GAMESTARTTIME) - time); 
-               }
-       }
+void Announcer_Time() 
+{
+       float timelimit = getstatf(STAT_TIMELIMIT);
+       float timeleft = max(0, timelimit * 60 + getstatf(STAT_GAMESTARTTIME) - time);
+       float warmup_timeleft;
+       
+       if(warmup_stage) 
+               if(autocvar_g_warmup_limit > 0)
+                       warmup_timeleft = max(0, autocvar_g_warmup_limit + getstatf(STAT_GAMESTARTTIME) - time); 
 
-       //5 minute check
-       if (autocvar_cl_sound_maptime_warning >= 2) {
-               //make sure that after connect (and e.g. 4 minutes left) we will not get a wrong sound
+       // 5 minute check
+       if(autocvar_cl_announcer_maptime >= 2) 
+       {
+               // make sure that after connect (and e.g. 4 minutes left) we will not get a wrong sound
                if(announcer_5min)
                {
-                       if(((!warmup_stage || warmuplimit == 0) && timeleft > 300) || (warmup_stage && warmuplimit > 0 && warmuptimeleft > 300))
-                               announcer_5min = FALSE;
+                       if(((!warmup_stage || autocvar_g_warmup_limit == 0) && timeleft > 300) 
+                               || (warmup_stage && autocvar_g_warmup_limit > 0 && warmup_timeleft > 300))
+                                       announcer_5min = FALSE;
                }
-               else if (((!warmup_stage || warmuplimit == 0) && timelimit > 0 && timeleft < 300 && timeleft > 299) || (warmup_stage && warmuplimit > 0 && warmuptimeleft < 300 && warmuptimeleft > 299))
-                       //if we're in warmup mode, check whether there's a warmup timelimit
-                       if not (warmuplimit == -1 && warmup_stage) {
-                               announcer_5min = TRUE;
-                               sound(world, CH_INFO, strcat("announcer/", autocvar_cl_announcer, "/5minutesremain.wav"), VOL_BASEVOICE, ATTN_NONE);
+               else 
+               {
+                       if(((!warmup_stage || autocvar_g_warmup_limit == 0) && timelimit > 0 && timeleft < 300 && timeleft > 299) 
+                               || (warmup_stage && autocvar_g_warmup_limit > 0 && warmup_timeleft < 300 && warmup_timeleft > 299))
+                       {
+                               //if we're in warmup mode, check whether there's a warmup timelimit
+                               if not(autocvar_g_warmup_limit == -1 && warmup_stage) 
+                               {
+                                       announcer_5min = TRUE;
+                                       Announcer_Play("5minutesremain");
+                               }
                        }
+               }
        }
 
-       //1 minute check
-       if (autocvar_cl_sound_maptime_warning == 1 || autocvar_cl_sound_maptime_warning == 3) {
+       // 1 minute check
+       if((autocvar_cl_announcer_maptime == 1) || (autocvar_cl_announcer_maptime == 3))
+       {
                if (announcer_1min)
                {
-                       if(((!warmup_stage || warmuplimit == 0) && timeleft > 60) || (warmup_stage && warmuplimit > 0 && warmuptimeleft > 60))
+                       if(((!warmup_stage || autocvar_g_warmup_limit == 0) && timeleft > 60) || (warmup_stage && autocvar_g_warmup_limit > 0 && warmup_timeleft > 60))
                                announcer_1min = FALSE;
                }
-               else if (((!warmup_stage || warmuplimit == 0) && timelimit > 0 && timeleft < 60) || (warmup_stage && warmuplimit > 0 && warmuptimeleft < 60))
+               else if(((!warmup_stage || autocvar_g_warmup_limit == 0) && timelimit > 0 && timeleft < 60) || (warmup_stage && autocvar_g_warmup_limit > 0 && warmup_timeleft < 60))
+               {
                        //if we're in warmup mode, check whether there's a warmup timelimit
-                       if not (warmuplimit == -1 && warmup_stage) {
+                       if not(autocvar_g_warmup_limit == -1 && warmup_stage) 
+                       {
                                announcer_1min = TRUE;
-                               sound(world, CH_INFO, strcat("announcer/", autocvar_cl_announcer, "/1minuteremains.wav"), VOL_BASEVOICE, ATTN_NONE);
+                               Announcer_Play("1minuteremains");
                        }
+               }
        }
 }
 
@@ -170,8 +177,8 @@ void carrierAnnouncer() {
 
 void Announcer()
 {
-  Announcer_Gamestart();
-       maptimeAnnouncer();
+       Announcer_Gamestart();
+       Announcer_Time();
        carrierAnnouncer();
 }
 
index c62546b1fd15c1fa43108b65adf1712ca990880d..c3014639c22b7c2b10788f1980b2558ab59a5ccf 100644 (file)
@@ -20,6 +20,7 @@ float autocvar_chase_active;
 float autocvar_cl_allow_uid2name;
 string autocvar_cl_announcer;
 float autocvar_cl_announcer_antispam;
+float autocvar_cl_announcer_maptime;
 float autocvar_cl_autodemo_delete;
 float autocvar_cl_autodemo_delete_keeprecords;
 float autocvar_cl_casings;
@@ -61,7 +62,6 @@ float autocvar_cl_readpicture_force;
 float autocvar_cl_reticle_item_nex;
 float autocvar_cl_reticle_item_normal;
 float autocvar_cl_reticle_stretch;
-float autocvar_cl_sound_maptime_warning;
 float autocvar_cl_stripcolorcodes;
 var float autocvar_cl_vehicle_spiderbot_cross_alpha = 0.6;
 var float autocvar_cl_vehicle_spiderbot_cross_size = 1;