]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Overtime and sound changes
authorz411 <z411@omaera.org>
Tue, 2 Jun 2020 19:24:26 +0000 (15:24 -0400)
committerz411 <z411@omaera.org>
Tue, 2 Jun 2020 19:24:26 +0000 (15:24 -0400)
qcsrc/client/hud/panel/timer.qc
qcsrc/client/view.qc
qcsrc/common/notifications/all.inc
qcsrc/common/sounds/all.inc
qcsrc/common/stats.qh
qcsrc/server/command/common.qc
qcsrc/server/g_damage.qc
qcsrc/server/g_world.qc
qcsrc/server/g_world.qh

index 8bb4ade6a17f49aca0f69be10c5ffa303069af2f..98905faf67d8d19cdd82903cf17e460622c7ba23 100644 (file)
@@ -81,6 +81,11 @@ void HUD_Timer()
                else
                        timer = seconds_tostring(timeleft);
        }
+       
+       if(STAT(OVERTIMESADDED) >= 1)
+       {
+               timer = sprintf("%s (OT #%d)", timer, floor(STAT(OVERTIMESADDED)));
+       }
 
        drawstring_aspect(pos, timer, mySize, timer_color, panel_fg_alpha, DRAWFLAG_NORMAL);
 
index 9a753f5ffbdf9b9df193cf9f659c4dc49c6cde7b..c349d2af58c4c58c45ccee6b7e39964393ae0695 100644 (file)
@@ -991,7 +991,7 @@ void HitSound()
        float kill_time = STAT(KILL_TIME);
        if (COMPARE_INCREASING(kill_time, kill_time_prev) > autocvar_cl_hitsound_antispam_time)
        {
-               sound(NULL, CH_INFO, SND_KILL, VOL_BASE, ATTN_NONE);
+               sound(NULL, CH_INFO, SND_KILL, VOL_BASE * 1.15, ATTN_NONE);
                kill_time_prev = kill_time;
        }
 }
@@ -1939,6 +1939,12 @@ void HUD_Damage()
                        myhealth_flash += autocvar_hud_damage_fade_rate * frametime; // dead
                }
        }
+       
+       if(myhealth_prev > 1 && myhealth <= 0 && !intermission)
+       {
+               // Just died
+               sound(NULL, CH_INFO, SND_DEATH, VOL_BASE, ATTN_NONE);
+       }
 
        if(spectatee_status == -1 || intermission)
        {
index a9a2ee655139555dfc70bb72ae875d9fc2061a28..beb05d959a44d3a1b4dbe403ddae0032a06c8af7 100644 (file)
     MSG_ANNCE_NOTIF(REMAINING_MIN_5,            N__ALWAYS, "5minutesremain",    CH_INFO, VOL_BASEVOICE, ATTEN_NONE)
 
     MSG_ANNCE_NOTIF(TIMEOUT,                    N__ALWAYS, "timeoutcalled",     CH_INFO, VOL_BASEVOICE, ATTEN_NONE)
+       MSG_ANNCE_NOTIF(OVERTIME,                   N__ALWAYS, "overtime",          CH_INFO, VOL_BASEVOICE, ATTEN_NONE)
+       MSG_ANNCE_NOTIF(SUICIDE,                    N_GNTLOFF, "suicide",           CH_INFO, VOL_BASEVOICE, ATTEN_NONE)
+       MSG_ANNCE_NOTIF(ACCIDENT,                   N_GNTLOFF, "accident",          CH_INFO, VOL_BASEVOICE, ATTEN_NONE)
 
     MSG_ANNCE_NOTIF(VOTE_ACCEPT,                N__ALWAYS, "voteaccept",        CH_INFO, VOL_BASEVOICE, ATTEN_NONE)
     MSG_ANNCE_NOTIF(VOTE_CALL,                  N__ALWAYS, "votecall",          CH_INFO, VOL_BASEVOICE, ATTEN_NONE)
index 58b145a4c2cd647e28372fdb7488fc204de6d02d..55e1da8826ab596888e94c7944bc13f308c080ed 100644 (file)
@@ -271,6 +271,10 @@ Sound SND_GIB_SPLAT_RANDOM() {
 SOUND(HIT, "misc/hit");
 SOUND(TYPEHIT, "misc/typehit");
 SOUND(KILL, "misc/kill");
+SOUND(DEATH, "misc/death");
+SOUND(ENDMATCH, "misc/endmatch");
+SOUND(OVERTIME, "misc/overtime");
+SOUND(TIMEOUT, "misc/timeout");
 
 SOUND(SPAWN, "misc/spawn");
 
index c77ca16be2a432043f0d8808fa1506b25b0d3a7d..90993d72881d0c09b8c55b7355c09af2d1810927 100644 (file)
@@ -65,6 +65,7 @@ float W_WeaponRateFactor(entity this);
 float game_stopped;
 float game_starttime;
 float round_starttime;
+float checkrules_overtimesadded; // z411 add
 bool autocvar_g_allow_oldvortexbeam;
 int autocvar_leadlimit;
 #endif
@@ -104,6 +105,7 @@ REGISTER_STAT(SECRETS_TOTAL, float)
 REGISTER_STAT(SECRETS_FOUND, float)
 REGISTER_STAT(RESPAWN_TIME, float)
 REGISTER_STAT(ROUNDSTARTTIME, float, round_starttime)
+REGISTER_STAT(OVERTIMESADDED, float, checkrules_overtimesadded)
 REGISTER_STAT(MONSTERS_TOTAL, int)
 REGISTER_STAT(MONSTERS_KILLED, int)
 REGISTER_STAT(BUFFS, int)
index f791446eb5872a8b0a6fb37807d430bc9aa594d0..b78222505d8364e354140e86f29e2fd1572789db 100644 (file)
@@ -753,6 +753,7 @@ void CommonCommand_timeout(int request, entity caller)  // DEAR GOD THIS COMMAND
                                        setthink(timeout_handler, timeout_handler_think);
                                        timeout_handler.nextthink = time;  // always let the entity think asap
 
+                                       sound(NULL, CH_INFO, SND_TIMEOUT, VOL_BASE, ATTN_NONE);
                                        Send_Notification(NOTIF_ALL, NULL, MSG_ANNCE, ANNCE_TIMEOUT);
                                }
                        }
index e5363db7738fd9a79b5206fbcaa0262110350a49..ce3807503ccde0959cfad2a239a7d4c7ae74d4ab 100644 (file)
@@ -281,6 +281,7 @@ void Obituary(entity attacker, entity inflictor, entity targ, int deathtype, .en
                        return;
                }
                LogDeath("suicide", deathtype, targ, targ);
+               Send_Notification(NOTIF_ONE, targ, MSG_ANNCE, ANNCE_SUICIDE);
                if(deathtype != DEATH_AUTOTEAMCHANGE.m_id) // special case: don't negate frags if auto switched
                        GiveFrags(attacker, targ, -1, deathtype, weaponentity);
        }
@@ -445,6 +446,7 @@ void Obituary(entity attacker, entity inflictor, entity targ, int deathtype, .en
                }
 
                LogDeath("accident", deathtype, targ, targ);
+               Send_Notification(NOTIF_ONE, targ, MSG_ANNCE, ANNCE_ACCIDENT);
                GiveFrags(targ, targ, -1, deathtype, weaponentity);
 
                if(GameRules_scoring_add(targ, SCORE, 0) == -5)
index 511a448b4e5d20467b240aa6b202509483cd4c34..a7b071fcdb7416f55aa08ca9d65365e30224a18e 100644 (file)
@@ -1585,6 +1585,8 @@ void NextLevel()
        */
 
        //pos = FindIntermission ();
+       
+       sound(NULL, CH_INFO, SND_ENDMATCH, VOL_BASE, ATTN_NONE);
 
        VoteReset();
 
@@ -1651,6 +1653,10 @@ void InitiateOvertime() // ONLY call this if InitiateSuddenDeath returned true
        //add one more overtime by simply extending the timelimit
        cvar_set("timelimit", ftos(autocvar_timelimit + autocvar_timelimit_overtime));
        Send_Notification(NOTIF_ALL, NULL, MSG_CENTER, CENTER_OVERTIME_TIME, autocvar_timelimit_overtime * 60);
+       
+       sound(NULL, CH_INFO, SND_OVERTIME, VOL_BASE, ATTN_NONE);
+       if(checkrules_overtimesadded == 1)
+               Send_Notification(NOTIF_ALL, NULL, MSG_ANNCE, ANNCE_OVERTIME);
 }
 
 float GetWinningCode(float fraglimitreached, float equality)
index da950f18575e28a410fbed9955b90a0a5ced4ed7..f2a3ceeb7a7e81004ded28c0709987720408f565 100644 (file)
@@ -3,7 +3,7 @@
 float checkrules_equality;
 float checkrules_suddendeathwarning;
 float checkrules_suddendeathend;
-float checkrules_overtimesadded; //how many overtimes have been already added
+//float checkrules_overtimesadded; //how many overtimes have been already added
 
 string cache_mutatormsg;
 string cache_lastmutatormsg;