Files
tekton/launcher/scripts/config.gd
T
2025-12-10 02:35:17 +08:00

73 lines
2.3 KiB
GDScript

extends Node
## Global configuration for the Tekton Launcher
# itch.io Configuration
const ITCH_GAME_URL := "https://your-username.itch.io/tekton-local"
const ITCH_DEVLOG_URL := "https://itch.io/api/1/your-key/game/your-game-id/devlog" # Replace with actual
# Version manifest URL (hosted on itch.io or alongside game files)
const VERSION_MANIFEST_URL := "https://your-username.itch.io/tekton-local/data/version.json"
# Local paths (shared across platforms)
const GAME_DIRECTORY := "user://game/"
const LOCAL_VERSION_FILE := "user://version.txt"
const BACKUP_DIRECTORY := "user://backup/"
# Platform detection
enum Platform { WINDOWS, LINUX, MACOS }
static func get_current_platform() -> Platform:
var os_name := OS.get_name()
match os_name:
"Windows":
return Platform.WINDOWS
"Linux", "FreeBSD", "NetBSD", "OpenBSD", "BSD":
return Platform.LINUX
"macOS":
return Platform.MACOS
_:
push_warning("Unknown platform: " + os_name + ", defaulting to Linux")
return Platform.LINUX
static func get_game_executable() -> String:
match get_current_platform():
Platform.WINDOWS:
return "tekton-local.exe"
Platform.LINUX:
return "tekton-local.x86_64"
Platform.MACOS:
return "tekton-local.app"
return "tekton-local"
static func get_game_pck() -> String:
# PCK is the same across platforms, but we include platform in name for clarity
match get_current_platform():
Platform.WINDOWS:
return "tekton-local-windows.pck"
Platform.LINUX:
return "tekton-local-linux.pck"
Platform.MACOS:
return "tekton-local-macos.pck"
return "tekton-local.pck"
static func get_platform_name() -> String:
match get_current_platform():
Platform.WINDOWS:
return "windows"
Platform.LINUX:
return "linux"
Platform.MACOS:
return "macos"
return "unknown"
# UI Colors (Cyberpunk/Tech theme matching game aesthetic)
const COLOR_PRIMARY := Color("#00d4ff") # Cyan
const COLOR_SECONDARY := Color("#ff00aa") # Magenta
const COLOR_BACKGROUND := Color("#0a0a1a") # Dark blue-black
const COLOR_SURFACE := Color("#141428") # Slightly lighter
const COLOR_SUCCESS := Color("#00ff88") # Green
const COLOR_WARNING := Color("#ffaa00") # Orange
const COLOR_ERROR := Color("#ff4444") # Red
const COLOR_TEXT := Color("#ffffff") # White
const COLOR_TEXT_DIM := Color("#888899") # Dim text