diff --git a/README.md b/README.md
index 912a0f4e..7222ef2c 100644
--- a/README.md
+++ b/README.md
@@ -40,7 +40,7 @@ Archive's bin directory contains 2 subdirectories, 'bugfixed' and 'pure'
| mp_buytime | 1.5 | 0.0 | - | Designate the desired amount of buy time for each round. (in minutes)
`-1` means no time limit
`0` disable buy |
| mp_maxmoney | 16000 | 0 | `999999` | The maximum allowable amount of money in the game |
| mp_round_infinite | 0 | 0 | 1 | Flags for fine grained control (choose as many as needed)
`0` disabled
`1` enabled
or flags
`a` block round time round end check
`b` block needed players round end check
`c` block VIP assassination/success round end check
`d` block prison escape round end check
`e` block bomb round end check
`f` block team extermination round end check
`g` block hostage rescue round end check
`h` block VIP assassination/success round time end check
`i` block prison escape round time end check
`j` block bomb round time end check
`k` block hostage rescue round time end check
`Example setting:` "ae" blocks round time and bomb round end checks |
-| mp_roundover | 0 | - | - | The round by expired time will be over, if on a map it does not have the scenario of the game.
`0` disabled
`1` enabled |
+| mp_roundover | 0 | 0 | 3 | The round by expired time will be over, if on a map it does not have the scenario of the game.
`0` disabled
`1` end of the round with a draw
`2` round end with Terrorists win
`3` round end with Counter-Terrorists win |
| mp_round_restart_delay | 5 | - | - | Number of seconds to delay before restarting a round after a win. |
| mp_hegrenade_penetration | 0 | 0 | 1 | Disable grenade damage through walls.
`0` disabled
`1` enabled |
| mp_nadedrops | 0 | 0 | 2 | Drop a grenade after player death.
`0` disabled
`1` drop first available grenade
`2` drop all grenades |
diff --git a/dist/game.cfg b/dist/game.cfg
index a4768a2d..0fed04fa 100644
--- a/dist/game.cfg
+++ b/dist/game.cfg
@@ -51,7 +51,9 @@ mp_round_infinite 0
// The round by expired time will be over, if on a map it does not have the scenario of the game.
// 0 - disabled (default behaviour)
-// 1 - enabled
+// 1 - end of the round with a draw
+// 2 - round end with Terrorists win
+// 3 - round end with Counter-Terrorists win
//
// Default value: "0"
mp_roundover 0
diff --git a/regamedll/dlls/multiplay_gamerules.cpp b/regamedll/dlls/multiplay_gamerules.cpp
index cd7f5b61..a34fe6d2 100644
--- a/regamedll/dlls/multiplay_gamerules.cpp
+++ b/regamedll/dlls/multiplay_gamerules.cpp
@@ -3017,9 +3017,31 @@ void CHalfLifeMultiplay::CheckRoundTimeExpired()
#ifdef REGAMEDLL_ADD
else if (roundover.value)
{
- // round is over
- if (!OnRoundEnd_Intercept(WINSTATUS_DRAW, ROUND_GAME_OVER, GetRoundRestartDelay()))
- return;
+ switch ((int)roundover.value)
+ {
+ case 1:
+ default:
+ {
+ if (!OnRoundEnd_Intercept(WINSTATUS_DRAW, ROUND_GAME_OVER, GetRoundRestartDelay()))
+ return;
+
+ break;
+ }
+ case 2:
+ {
+ if (!OnRoundEnd_Intercept(WINSTATUS_TERRORISTS, ROUND_TERRORISTS_WIN, GetRoundRestartDelay()))
+ return;
+
+ break;
+ }
+ case 3:
+ {
+ if (!OnRoundEnd_Intercept(WINSTATUS_CTS, ROUND_CTS_WIN, GetRoundRestartDelay()))
+ return;
+
+ break;
+ }
+ }
}
#endif