Files
seeding-planets/common/game_data/scripts/game_data.gd
Zacharie Guet 7ae362a3a5 Encore du dev pour la béta 1
* Suppression de la mutation éphémère
* Ajout des modificateur de régions normaux Sableux et Toxique
* Ajout de modificateurs challenge (Rocheux, Radioactif et Contaminé)
* Ajout du modificateur de région bénéfique Résonnance
* Ajout d'un distributeur toutes les 3 régions
* Ajout des régions challenge
* Bouclage sur les couleurs des mutations après le niveau 4
* Ajout de deux nouveaux panneaux de tutoriel, un sur les informations de plantes et l'autre sur le vaisseau
2026-04-17 17:32:58 +02:00

71 lines
1.7 KiB
GDScript

extends Resource
class_name GameData
enum GameMode {STORY,INFINITE}
signal current_run_updated(r : RunData)
signal current_region_data_updated(p : RegionData)
@export var player_data : PlayerData = PlayerData.new()
@export var current_run : RunData = start_run() :
set(v):
current_run = v
current_run_updated.emit(v)
@export var current_region_data : RegionData = null :
set(v):
current_region_data = v
current_region_data_updated.emit(v)
@export var progression_data : ProgressionData = ProgressionData.new()
@export var last_game_scene : Scene = null
@export var ship_in_space = false
@export var tutorial_done = false
@export var ship_tutorial_done = false
@export var incubator_used = []
@export var game_mode : GameMode = GameMode.STORY
@export var dialogs_done : Array[String] = [] #Chemin des dialogues démarrés
func start_run() -> RunData:
player_data.clear_inventory()
player_data.update_with_artefacts([])
current_run = RunData.new()
current_run.current_run_point_changed.connect(
func(rp : RunPoint):
start_region(rp.region_parameter)
)
return current_run
func reset_player():
player_data = PlayerData.new()
func reset_all():
start_run()
reset_player()
func start_region(region_param : RegionParameter):
current_region_data = RegionData.new(region_param)
GameInfo.save_game_data()
func give_up():
current_region_data = null
current_run = null
func start_tutorial():
current_region_data = RegionData.new(
RegionParameter.new(
0,
tr("ASTRA_BASE"),
["tutorial"],
[],
randi()
)
)