Files
VRyHungry1/global/GameManager.gd
T
2026-08-04 14:55:00 +02:00

49 lines
1.3 KiB
GDScript

class_name GameManager
extends Node
static var money: int = 100
static var meals_in_play: Array[String]
static var sides_in_play: Array[String]
enum GameState {
RUNNING,
GAME_OVER,
BUILDING
}
static var game_state: GameState = GameState.RUNNING: set = _set_game_state
static func _set_game_state(value: GameState):
game_state = value
Signals.game_state_changed.emit(value)
static func _restart():
print("restart Game")
game_state = GameState.RUNNING
static func get_random_meal() -> String:
if meals_in_play.size() == 0:
push_error("GameManager: get_random_meal() called but meals_in_play is empty")
return ""
var rand_index = randi() % meals_in_play.size()
print("GameManager: get_random_meal() returning ", meals_in_play[rand_index])
return meals_in_play[rand_index]
static func get_random_side() -> String:
print("GameManager: get_random_side() ")
if sides_in_play.size() == 0:
push_error("GameManager: get_random_side() called but sides_in_play is empty")
return ""
var rand_index = randi() % sides_in_play.size()
print("GameManager: get_random_side() list=%s returning %s" % [sides_in_play, sides_in_play[rand_index]])
return sides_in_play[rand_index]
static func game_over():
print("Game Over")
game_state = GameState.GAME_OVER
Signals.game_over.emit()