* ajout des mutations #86 * changement de l'objectif #85 * refonte de l'inspecteur #71 * changement léger de la plantation * les plantes ne donnent que des graines de leurs espèces * refonte partielle du code, refacto
50 lines
2.1 KiB
GDScript
50 lines
2.1 KiB
GDScript
extends Resource
|
|
class_name GameData
|
|
|
|
signal current_planet_data_updated(p : PlanetData)
|
|
|
|
func _init():
|
|
set_default_unlocked()
|
|
|
|
@export var tutorial_done = false
|
|
|
|
@export var current_planet_data : PlanetData :
|
|
set(v):
|
|
current_planet_data = v
|
|
current_planet_data_updated.emit(v)
|
|
|
|
@export var unlocked_plant_types : Array[PlantType] = []
|
|
@export var unlocked_plant_mutations : Array[PlantMutation] = []
|
|
@export var unlocked_machines : Array[MachineType] = []
|
|
|
|
func set_default_unlocked():
|
|
unlocked_plant_types = all_plant_types()
|
|
unlocked_plant_mutations = all_plant_mutations()
|
|
unlocked_machines = all_machines()
|
|
|
|
func all_plant_types() -> Array[PlantType]:
|
|
return [
|
|
preload("res://entities/plants/resources/plant_types/champ.tres"),
|
|
preload("res://entities/plants/resources/plant_types/chardi.tres"),
|
|
preload("res://entities/plants/resources/plant_types/maias.tres"),
|
|
preload("res://entities/plants/resources/plant_types/pili.tres"),
|
|
]
|
|
|
|
func all_machines() -> Array[MachineType]:
|
|
return [
|
|
preload("res://entities/interactables/machines/compost/compost_types/energy_compost.tres"),
|
|
preload("res://entities/interactables/machines/compost/compost_types/seed_compost.tres"),
|
|
preload("res://entities/interactables/machines/solar_pannel/solar_pannel.tres"),
|
|
]
|
|
|
|
func all_plant_mutations() -> Array[PlantMutation]:
|
|
return [
|
|
preload("res://entities/plants/resources/plant_mutations/ancient_mutation.tres"),
|
|
preload("res://entities/plants/resources/plant_mutations/elitist_mutation.tres"),
|
|
preload("res://entities/plants/resources/plant_mutations/ermit_mutation.tres"),
|
|
preload("res://entities/plants/resources/plant_mutations/precocious_mutation.tres"),
|
|
preload("res://entities/plants/resources/plant_mutations/quality_mutation.tres"),
|
|
preload("res://entities/plants/resources/plant_mutations/quick_mutation.tres"),
|
|
preload("res://entities/plants/resources/plant_mutations/sociable_mutation.tres"),
|
|
preload("res://entities/plants/resources/plant_mutations/strong_mutation.tres"),
|
|
] |