diff options
| author | aura <nw@moneybot.cc> | 2026-02-17 23:42:09 +0100 |
|---|---|---|
| committer | aura <nw@moneybot.cc> | 2026-02-17 23:42:09 +0100 |
| commit | 5e2eb7d67ae933b7566f1944d0bb7744da03d586 (patch) | |
| tree | 054acff1113270a9cd07933df760f3768c1b6853 /source/sourcemod/scripting/gokz-replays/commands.sp | |
| parent | 341db13a008dc12bb22ceb50452d93d01476308c (diff) | |
move source stuff to its own folder
Diffstat (limited to 'source/sourcemod/scripting/gokz-replays/commands.sp')
| -rw-r--r-- | source/sourcemod/scripting/gokz-replays/commands.sp | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/source/sourcemod/scripting/gokz-replays/commands.sp b/source/sourcemod/scripting/gokz-replays/commands.sp new file mode 100644 index 0000000..43251f6 --- /dev/null +++ b/source/sourcemod/scripting/gokz-replays/commands.sp @@ -0,0 +1,55 @@ +void RegisterCommands() +{ + RegConsoleCmd("sm_replay", CommandReplay, "[KZ] Open the replay loading menu."); + RegConsoleCmd("sm_replaycontrols", CommandReplayControls, "[KZ] Toggle the replay control menu."); + RegConsoleCmd("sm_rpcontrols", CommandReplayControls, "[KZ] Toggle the replay control menu."); + RegConsoleCmd("sm_replaygoto", CommandReplayGoto, "[KZ] Skip to a specific time in the replay (hh:mm:ss)."); + RegConsoleCmd("sm_rpgoto", CommandReplayGoto, "[KZ] Skip to a specific time in the replay (hh:mm:ss)."); +} + +public Action CommandReplay(int client, int args) +{ + DisplayReplayModeMenu(client); + return Plugin_Handled; +} + +public Action CommandReplayControls(int client, int args) +{ + ToggleReplayControls(client); + return Plugin_Handled; +} + +public Action CommandReplayGoto(int client, int args) +{ + int seconds; + char timeString[32], split[3][32]; + + GetCmdArgString(timeString, sizeof(timeString)); + int res = ExplodeString(timeString, ":", split, 3, 32, false); + switch (res) + { + case 1: + { + seconds = StringToInt(split[0]); + } + + case 2: + { + seconds = StringToInt(split[0]) * 60 + StringToInt(split[1]); + } + + case 3: + { + seconds = StringToInt(split[0]) * 3600 + StringToInt(split[1]) * 60 + StringToInt(split[2]); + } + + default: + { + GOKZ_PrintToChat(client, true, "%t", "Replay Controls - Invalid Time"); + return Plugin_Handled; + } + } + + TrySkipToTime(client, seconds); + return Plugin_Handled; +} |
