Et toujours du dev pour la béta
* Evolution de l'histoire avec de nouveaux dialogues, une plus grande durée de vie du jeu, des nouvelles zones d'histoire... * Suppression du mode infini * Ajout d'un écran des mutations découvertes * Ajout d'un nouveau mécanisme de respawn situé dans le vaissau * Ajout de 2 nouveaux modificateurs de région * Quatre nouveaux artefacts * Visuel de la décontamination de la planète 3D en cours de la partie * Ajout d'une annonce visuelle des scène du jeu * Fix sur la mutation Généreux pour être en accord avec sa description * Amélioration de l'effet de la mutation Purification * Fix de la mutation sociale aux niveau supérieurs * Ajout d'un effet visuel de réacteur sur le joueur 3D * Fix sur l'annonce de nouveaux objets qui se déclenchaient à une nouvelle run * Amélioration des animation et des informations données dans le vaisseau * Correction mineure des traductions
This commit is contained in:
@@ -1,13 +1,15 @@
|
||||
extends Resource
|
||||
class_name GameData
|
||||
|
||||
enum GameMode {STORY,INFINITE}
|
||||
enum GameMode {STORY}
|
||||
|
||||
signal current_run_updated(r : RunData)
|
||||
signal current_region_data_updated(p : RegionData)
|
||||
|
||||
@export var player_data : PlayerData = PlayerData.new()
|
||||
|
||||
@export var progression_data : ProgressionData = ProgressionData.new()
|
||||
|
||||
@export var current_run : RunData = start_run() :
|
||||
set(v):
|
||||
current_run = v
|
||||
@@ -18,29 +20,31 @@ signal current_region_data_updated(p : RegionData)
|
||||
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 dead_orchid_position : Vector3
|
||||
@export var dead_orchid_rotation : Vector3
|
||||
|
||||
@export var item_announced = []
|
||||
|
||||
@export var game_mode : GameMode = GameMode.STORY
|
||||
|
||||
@export var dialogs_done : Array[String] = [] #Chemin des dialogues démarrés
|
||||
@export var dialogs_done : Array[String] = [] #Chemin des dialogues terminés
|
||||
|
||||
func start_run() -> RunData:
|
||||
player_data.clear_inventory()
|
||||
player_data.update_with_artefacts([])
|
||||
current_run = RunData.new()
|
||||
current_run.story_step = progression_data.story_step.duplicate_deep()
|
||||
current_run.generate_next_run_points()
|
||||
current_run.current_run_point_changed.connect(
|
||||
func(rp : RunPoint):
|
||||
start_region(rp.region_parameter)
|
||||
)
|
||||
ship_in_space = false
|
||||
return current_run
|
||||
|
||||
func reset_player():
|
||||
@@ -52,19 +56,14 @@ func reset_all():
|
||||
|
||||
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
|
||||
start_run()
|
||||
SceneManager.change_to_scene(progression_data.story_step.get_respawn_scene())
|
||||
|
||||
func start_tutorial():
|
||||
current_region_data = RegionData.new(
|
||||
RegionParameter.new(
|
||||
0,
|
||||
tr("ASTRA_BASE"),
|
||||
["tutorial"],
|
||||
[],
|
||||
randi()
|
||||
)
|
||||
)
|
||||
func finish_story_step():
|
||||
progression_data.next_story_step()
|
||||
current_region_data = null
|
||||
start_run()
|
||||
|
||||
Reference in New Issue
Block a user