This commit is contained in:
Eric Vande Voort
2025-01-07 16:10:03 -06:00
commit 7eb0dea424
147 changed files with 9096 additions and 0 deletions

58
scripts/game_data.gd Normal file
View File

@@ -0,0 +1,58 @@
class_name GameData
extends Resource
@export var SPEED: float = 2900.0
@export var ENGINE_SPEED: float = 1900.0
@export var fuel: float = 100
@export var fuel_max: float = 100
@export var engine_speed_modifier: float = 1.0
@export var fuel_efficiency: float = 1.0
@export var engine_maneuverability_modifier: float = 1.0
@export var cargo: Dictionary = {}
@export var inventory: Dictionary = {}
@export var upgrades: Array[Upgrade] = [FirstUpgrade.new()]
@export var mid_module_limit: int = 0
@export var modules: Dictionary = {
0: [],
1: [],
2: []
}
@export var floating_pods: Array[FloatingPodData] = []
enum ModuleType {
ENGINE,
MID,
COCKPIT
}
func get_active_rocket_modules() -> Array[Module]:
var _modules: Array[Module] = []
return _modules
static func get_module_type_name(_type: ModuleType) -> String:
return ModuleType.keys()[_type]
func pickup(type: String, amount: int = 1) -> void:
if not cargo.has(type):
cargo[type] = 0
cargo[type] += amount
func has_cargo() -> bool:
var cargo_size: int = 0
for item: int in cargo.values():
cargo_size += item
return cargo_size > 0
func move_cargo_to_inventory() -> void:
for item: String in cargo:
if not inventory.has(item):
inventory[item] = 0
inventory[item] += cargo[item]
func create_cargo_pod(pod_position: Vector2) -> void:
if not cargo.is_empty():
var pod: FloatingPodData = FloatingPodData.new()
pod.position = pod_position
pod.cargo = cargo
floating_pods.append(pod)