Add game clock commands, command completions and Cyrene login tooling

This commit is contained in:
CAtlas0784 committed 2026-10-30 15:02:09 +07:00
1 parent 1fa9504176
commit 67a819a4d3
21 files changed
+1194 -7

No files matched your search

+9 -1
View File
@@ -63,6 +63,7 @@ func registerAPIRoutes(mux *http.ServeMux) {
mux.HandleFunc("/api/teleport", corsWrapper(apiTeleport))
mux.HandleFunc("/api/gachabase/fetch", corsWrapper(apiGachabaseFetch))
mux.HandleFunc("/api/command", corsWrapper(apiCommand))
mux.HandleFunc("/api/command-completions", corsWrapper(apiCommandCompletions))
mux.HandleFunc("/api/client/unstuck", corsWrapper(apiClientUnstuck))
mux.HandleFunc("/api/client/unstuck/result", corsWrapper(apiClientUnstuckResult))
mux.HandleFunc("/api/data-in-game", corsWrapper(apiDataInGame))
@@ -803,6 +804,12 @@ func apiCommand(w http.ResponseWriter, r *http.Request) {
apiCurrencyWarsCommand(w, cmd)
return
}
if parts := strings.Fields(cmd); len(parts) > 0 && strings.EqualFold(parts[0], "/faketime") {
apiMu.Lock()
defer apiMu.Unlock()
apiFakeTimeCommand(w, cmd)
return
}
apiMu.Lock()
defer apiMu.Unlock()
@@ -896,7 +903,8 @@ func apiCommand(w http.ResponseWriter, r *http.Request) {
}
case "/help":
output = "Available GM Commands:\n /heal - Fully restore team HP, SP, and Energy\n /max - Set all avatars to Max Lv.80 E6\n /teleport <plane_id> [floor_id] - Teleport to scene\n /avatar <id> [level] [rank] - Modify avatar\n /give <item_id> [count] - Add items to inventory\n /clear lineup - Clear active lineup slots"
output = "/faketime [status|off|Unix seconds|RFC3339 with timezone] - Set game calendar time\n"
output += "Available GM Commands:\n /heal - Fully restore team HP, SP, and Energy\n /max - Set all avatars to Max Lv.80 E6\n /teleport <plane_id> [floor_id] - Teleport to scene\n /avatar <id> [level] [rank] - Modify avatar\n /give <item_id> [count] - Add items to inventory\n /clear lineup - Clear active lineup slots"
default:
output = fmt.Sprintf("[OK] Custom command '%s' dispatched to server.", cmd)