Updated repo to use docker-compose. Updated debian version due to EOL of previous one

This commit is contained in:
2026-02-13 22:48:45 +01:00
parent 3afac4db07
commit ba052e0576
30 changed files with 487 additions and 1001 deletions

71
roundtimer.sma Normal file
View File

@@ -0,0 +1,71 @@
/* Round Timer Plugin
* Shows time remaining in scoreboard and plays voice countdown
*/
#include <amxmodx>
#include <amxmisc>
new g_iRoundTime
new g_iRoundStart
public plugin_init()
{
register_plugin("Round Timer", "1.0", "Custom")
// Set the round time from mp_timelimit (in minutes, convert to seconds)
g_iRoundTime = get_cvar_num("mp_timelimit") * 60
// Start the timer
set_task(1.0, "check_time", 0, "", 0, "b")
// Hook player scoreboard
register_event("StatusValue", "show_time", "be", "1=2")
}
public plugin_cfg()
{
g_iRoundStart = get_systime()
}
public check_time()
{
new iElapsed = get_systime() - g_iRoundStart
new iRemaining = g_iRoundTime - iElapsed
// Voice countdown for last 10 seconds
if(iRemaining <= 10 && iRemaining > 0)
{
new szNumber[16]
num_to_word(iRemaining, szNumber, 15)
client_cmd(0, "spk ^"vox/%s^"", szNumber)
if(iRemaining == 10)
client_print(0, print_chat, "[Round Timer] 10 seconds remaining!")
}
// Round end
if(iRemaining <= 0)
{
client_cmd(0, "spk ^"vox/time is up^"")
client_print(0, print_chat, "[Round Timer] Time is up! Changing map...")
// Trigger map change
server_cmd("mp_timelimit 0.1")
}
}
public show_time(id)
{
new iElapsed = get_systime() - g_iRoundStart
new iRemaining = g_iRoundTime - iElapsed
if(iRemaining < 0)
iRemaining = 0
new iMinutes = iRemaining / 60
new iSeconds = iRemaining % 60
set_hudmessage(255, 255, 255, -1.0, 0.01, 0, 0.0, 1.0, 0.0, 0.0, 4)
show_hudmessage(id, "Time Remaining: %02d:%02d", iMinutes, iSeconds)
}