diff --git a/common/audio_manager/audio_manager.tscn b/common/audio_manager/audio_manager.tscn index 2e8cc2f..eba92d5 100644 --- a/common/audio_manager/audio_manager.tscn +++ b/common/audio_manager/audio_manager.tscn @@ -20,6 +20,7 @@ [ext_resource type="AudioStream" uid="uid://dgkdcq4j6fe3o" path="res://common/audio_manager/assets/sfx/harvest/harvest_2.wav" id="14_b5bgj"] [ext_resource type="AudioStream" uid="uid://eh3dbuxu5qtw" path="res://common/audio_manager/assets/sfx/harvest/harvest_3.wav" id="15_ynvb4"] [ext_resource type="AudioStream" uid="uid://bown4yipeef8l" path="res://common/audio_manager/assets/sfx/harvest/harvest_4.wav" id="16_obeji"] +[ext_resource type="AudioStream" uid="uid://delq7gsdeqjq2" path="res://common/audio_manager/assets/sfx/respawn/respawn.wav" id="16_xmumj"] [ext_resource type="AudioStream" uid="uid://cbo4ld2yypmte" path="res://common/audio_manager/assets/sfx/harvest/harvest_5.wav" id="17_6w0re"] [ext_resource type="AudioStream" uid="uid://c5nfoa6v3r5f7" path="res://common/audio_manager/assets/sfx/harvest/harvest_6.wav" id="18_o4guq"] [ext_resource type="AudioStream" uid="uid://bjind1iji0gt7" path="res://common/audio_manager/assets/sfx/pick_up/pick_up_1.wav" id="20_pu6t4"] @@ -134,6 +135,9 @@ unique_name_in_owner = true [node name="Dig" type="AudioStreamPlayer" parent="Sfx" unique_id=486042600] stream = SubResource("AudioStreamRandomizer_kfbah") +[node name="Respawn" type="AudioStreamPlayer" parent="Sfx" unique_id=1902559716] +stream = ExtResource("16_xmumj") + [node name="Drop" type="AudioStreamPlayer" parent="Sfx" unique_id=1391500830] stream = SubResource("AudioStreamRandomizer_1w04j") @@ -157,7 +161,7 @@ stream = ExtResource("27_0rjel") [node name="Phone_call" type="AudioStreamPlayer" parent="Sfx" unique_id=1668278453] stream = ExtResource("28_3dfjn") -[node name="Plant_point" type="AudioStreamPlayer" parent="Sfx" unique_id=2044025024] +[node name="PlantPoint" type="AudioStreamPlayer" parent="Sfx" unique_id=2044025024] stream = SubResource("AudioStreamRandomizer_qog4c") [node name="Ship_reveal" type="AudioStreamPlayer" parent="Sfx" unique_id=1121632306] diff --git a/common/audio_manager/scripts/audio_manager.gd b/common/audio_manager/scripts/audio_manager.gd index cc2df37..b187937 100644 --- a/common/audio_manager/scripts/audio_manager.gd +++ b/common/audio_manager/scripts/audio_manager.gd @@ -108,8 +108,6 @@ func _on_timeline_started(): play_ambiance("Demeter") "demeter_post_tutorial": play_ambiance("Demeter") - "demeter_outro": - play_ambiance("Demeter") "failure": play_ambiance("Demeter") diff --git a/common/game_data/scripts/game_data.gd b/common/game_data/scripts/game_data.gd index b913c8e..4918bf1 100644 --- a/common/game_data/scripts/game_data.gd +++ b/common/game_data/scripts/game_data.gd @@ -48,11 +48,10 @@ func give_up(): func start_tutorial(): current_region_data = RegionData.new( RegionParameter.new( - 10, - 3, + 0, tr("TUTORIAL"), ["tutorial"], - 0, + [], randi() ) - ) \ No newline at end of file + ) diff --git a/common/game_data/scripts/run/run_data.gd b/common/game_data/scripts/run/run_data.gd index 53fb0ef..55ccc54 100644 --- a/common/game_data/scripts/run/run_data.gd +++ b/common/game_data/scripts/run/run_data.gd @@ -5,13 +5,13 @@ enum State {STARTED, IN_PROGRESS, FINISHED} const RUN_POINT_POSITION_DERIVATION = 100 const DIFFICULTY_INCREASE_BY_LEVEL = 3 -const RUN_POINTS_NEXT_NUMBER :Array[int] = [2] -const RUN_POINT_MAX_LEVEL = 0 # TODO +const RUN_POINTS_NEXT_NUMBER : int = 2 +const RUN_POINT_MAX_LEVEL = 2 # TODO signal current_run_point_changed var run_seed = randi() -@export var next_run_points : Array[RunPoint] = [generate_first_run_point()] +@export var next_run_points : Array[RunPoint] = generate_next_run_points() @export var current_run_point : RunPoint = null : set(v): current_run_point = v @@ -20,65 +20,28 @@ var run_seed = randi() #region ------------------ Generation ------------------ -func generate_first_run_point() -> RunPoint: - return RunPoint.new(0, RegionParameter.new()) - -func generate_next_run_points(run_point : RunPoint) -> Array[RunPoint]: - var nb_next_run_points = RUN_POINTS_NEXT_NUMBER.pick_random() - if run_point.level == RUN_POINT_MAX_LEVEL - 1 or run_point.level == -1: - nb_next_run_points = 1 - elif run_point.level == RUN_POINT_MAX_LEVEL: - nb_next_run_points = 0 +func generate_next_run_points(level = 0) -> Array[RunPoint]: next_run_points = [] - for i in range(nb_next_run_points): + for i in range(RUN_POINTS_NEXT_NUMBER): next_run_points.append( - generate_next_run_point(run_point) + generate_next_run_point(level) ) return next_run_points -func generate_next_run_point(run_point : RunPoint) -> RunPoint: - var level = run_point.level + 1 +func generate_next_run_point(level = 0) -> RunPoint: var region_parameter = RegionParameter.new() region_parameter.level = level - region_parameter.flags = get_region_flags(region_parameter) + region_parameter.region_flags = get_region_flags(region_parameter) return RunPoint.new( level, - generate_difficulty_increased_region_parameter(region_parameter, DIFFICULTY_INCREASE_BY_LEVEL * level), - (run_point.position + randi_range(-RUN_POINT_POSITION_DERIVATION, RUN_POINT_POSITION_DERIVATION)) % 360 + region_parameter ) -func generate_difficulty_increased_region_parameter( - region_parameter : RegionParameter, - difficulty : int = 1 -) -> RegionParameter: - var i_diff := difficulty - var new_region_parameter = RegionParameter.new( - region_parameter.charges, - region_parameter.objective - ) - - while i_diff > 0: - - var available_difficulty_modifier = [ - DifficultyDecreaseCharge.new(), - DifficultyIncreaseObjective.new() - ].filter( - func (mod : DifficultyModifier): - return mod.get_difficulty_cost() <= i_diff and mod.can_modifiy(new_region_parameter) - ) - - var selected_difficulty_modifier = available_difficulty_modifier.pick_random() - - selected_difficulty_modifier.modify(new_region_parameter) - - i_diff -= max(1,selected_difficulty_modifier.get_difficulty_cost()) - return new_region_parameter - #endregion func get_state() -> State: @@ -99,13 +62,12 @@ func choose_next_run_point(run_point : RunPoint) -> RunPoint: visited_run_points.append(current_run_point) current_run_point = run_point GameInfo.game_data.start_region(run_point.region_parameter) - next_run_points = generate_next_run_points(current_run_point) + next_run_points = generate_next_run_points(current_run_point.level + 1) return current_run_point func get_region_flags(region_parameter : RegionParameter) -> Array[String]: var flags : Array[String] = [] - print(region_parameter.level) if region_parameter.level == RUN_POINT_MAX_LEVEL: flags.append("borea") @@ -130,4 +92,4 @@ class DifficultyDecreaseCharge extends DifficultyModifier: region_parameter.charges -= 1 func can_modifiy(region_parameter : RegionParameter) -> bool: - return region_parameter.charges >= 3 \ No newline at end of file + return region_parameter.charges >= 3 diff --git a/common/game_data/scripts/run/run_point.gd b/common/game_data/scripts/run/run_point.gd index 1ad6e18..2f1a9e5 100644 --- a/common/game_data/scripts/run/run_point.gd +++ b/common/game_data/scripts/run/run_point.gd @@ -11,12 +11,12 @@ const CHARGE_ICON = preload("res://common/icons/bolt.svg") @export var region_parameter : RegionParameter = RegionParameter.new() : set(v): region_parameter = v -@export var position : int = 0 # Y pos along the planet, 0 to 360 +@export var position : float = 0 func _init( _level : int = 0, _region_parameter : RegionParameter = RegionParameter.new(), - _position : int = randi_range(0,360), + _position : float = randf_range(0.,1.), ): level = _level region_parameter = _region_parameter @@ -24,7 +24,7 @@ func _init( position = _position func card_info() -> CardInfo: - var info = CardInfo.new(region_parameter.name) + var info = CardInfo.new(region_parameter.region_name) info.important_stat_icon = DANGER_ICON info.important_stat_text = "%d" % level diff --git a/dialogs/timelines/story/demeter_introV2.dtl b/dialogs/timelines/story/demeter_introV2.dtl new file mode 100644 index 0000000..ad67827 --- /dev/null +++ b/dialogs/timelines/story/demeter_introV2.dtl @@ -0,0 +1,38 @@ +audio "res://common/audio_manager/assets/sfx/dialogs/sfx/incoming_transmission.wav" +join demeter center [animation="Bounce In" length="1.0"] +demeter: Hi ![pause=0.3] Phew,[pause=0.2] I thought no one would reply.[pause=0.3] Are you [color=#FFA617]Orchid[/color] ?[pause=0.3] You may not be familiar with this name but you must have seen it in your memory. +- Uh... Who are you ? + demeter: Oh sorry ![pause=0.3] I cannot send you my IDs for now,[pause=0.2] you are too far away from me. +- Where am I ? + demeter: Don't worry,[pause=0.2] you are in a subterranean base,[pause=0.2] but you will get to the surface very soon. +- Wait ! Who am I ? + demeter: Hmmm.[pause=0.4].[pause=0.4].[pause=0.4] Interesting question.[pause=0.3] I elaborated your system but I don't know in which frame you are currently in.[pause=0.3] We'll find out ! +demeter: I'm glad you are finally awake ![pause=0.3] To be honest,[pause=0.2] I wasn't sure I would be able to make you function normally.[pause=0.5] Your frame has remained here for millennia without any maintenance. +- Did you create me ? + demeter: Sort of ![pause=0.3] I didn't manufactured your body,[pause=0.2] I borrowed it,[pause=0.2] but I designed your cognitive system.[pause=0.3] Be forgiving,[pause=0.2] it won't be perfect,[pause=0.2] I was designed to manage,[pause=0.2] not to create. +- Why did you awake me ? + demeter: To be honest,[pause=0.2] I don't really know.[pause=0.3].[pause=0.3].[pause=0.3] I mean,[pause=0.2] there are a lot of reasons,[pause=0.2] but I'll tell you more about it later. +- What are you ? + demeter: I'm the same as you.[pause=0.3] The same as all the sentient beings remaining on this planet.[pause=0.3] Robot,[pause=0.2] artificial intelligence,[pause=0.2] machine.[pause=0.2].[pause=0.2].[pause=0.2] Our creators gave us many titles. +demeter: Ok,[pause=0.2] no more questions for now,[pause=0.2] listen to me carefully. +demeter: A long time ago,[pause=0.2] this planet was full of life.[pause=0.3] Plants were thriving on mountains,[pause=0.2] under seas and across plains. +demeter: Now,[pause=0.2] this world is a wasteland.[pause=0.3] You'll see it as soon as you leave this base. +demeter: Something happened a year ago.[pause=0.3].[pause=0.3].[pause=0.3]. The [color=#119758][b]Talion[/b][/color],[pause=0.2] a unique element giving birth to new life forms when shattered,[pause=0.2] reappeared. +demeter: With the [color=#119758][b]Talion[/b][/color] back on the surface,[pause=0.2] we can bring this planet back to life. +demeter: But first things first,[pause=0.2] you have to learn how everything is working up here,[pause=0.2] and how to use the [color=#119758][b]Talion[/b][/color] to plant seeds. +demeter: [b]Just remember the following[/b] +label explanations +demeter: When you'll emerge from this building,[pause=0.2] you will reach a little yellowish zone.[pause=0.3] It's a [b]fertile zone[/b],[pause=0.2] brought back by the [color=#119758][b]Talion's[/b][/color] power.[pause=0.3] You can only plant [b]seeds[/b] in this zone. +demeter: Then,[pause=0.2] you have to get [b]seeds[/b].[pause=0.3] To do so,[pause=0.2] just take your shovel and smash some stones ![pause=0.3] Focus on those having yellow crystals on it,[pause=0.2] these are [color=#119758][b]Talion veins[/b][/color]. +demeter: Each time you use a tool like the shovel or plant a seed,[pause=0.2] you will spend one [b]energy[/b] charge.[pause=0.3] When you are out of it,[pause=0.2] just go recharge it at the [b]recharge station[/b].[pause=0.3] You will find it near the entrance of the base. +demeter: Each time you recharge,[pause=0.2] a day will pass,[pause=0.2] your batteries are very inefficient.[pause=0.3] While the day is passing,[pause=0.2] plants will grow ! +demeter: To complete you training,[pause=0.2] obtain enough [b]plant points[/b].[pause=0.3] Each plant give one or more [b]plant points[/b] when mature. +demeter: Oh ! [pause=0.3] I almost forgot,[pause=0.2] some plants can [b]mutate[/b].[pause=0.3] These [b]mutations[/b] affect points and behavior of the plant affected.[pause=0.3] [b]Mutations[/b] can appear while [b]harvesting[/b] mature plants and even become more powerful if you [b]harvest[/b] an already mutated one. +- That's a lot of informations, can you repeat ? + demeter: Ok,[pause=0.2] listen carefully. + jump explanations +- Ok, now I have more questions ! + demeter: Sorry,[pause=0.2] we'll speak more after this.[pause=0.3] I send you an elevator,[pause=0.2] good luck [color=#FFA617]Orchid[/color] ! + audio "res://common/audio_manager/assets/sfx/dialogs/sfx/closing_transmission.wav" + [wait time="2.0"] + [end_timeline] \ No newline at end of file diff --git a/dialogs/timelines/story/demeter_introV2.dtl.uid b/dialogs/timelines/story/demeter_introV2.dtl.uid new file mode 100644 index 0000000..01af49e --- /dev/null +++ b/dialogs/timelines/story/demeter_introV2.dtl.uid @@ -0,0 +1 @@ +uid://cirxf28unnjlg diff --git a/dialogs/timelines/story/demeter_outro.dtl b/dialogs/timelines/story/demeter_outro.dtl index e4cb319..469c723 100644 --- a/dialogs/timelines/story/demeter_outro.dtl +++ b/dialogs/timelines/story/demeter_outro.dtl @@ -1 +1,3 @@ +[wait time="1.5"] +join demeter center [animation="Bounce In" length="1.0"] demeter: Welcome to the [color=#E30022]Borea Base[/color] [color=#FFA617]{orchidName}[/color],[pause=0.2] it is the first step of your journey on this planet. #id:50 \ No newline at end of file diff --git a/dialogs/timelines/story/wake_up.dtl b/dialogs/timelines/story/wake_up.dtl index 1bf3b44..6b8104f 100644 --- a/dialogs/timelines/story/wake_up.dtl +++ b/dialogs/timelines/story/wake_up.dtl @@ -13,6 +13,6 @@ label suite_dialogue #id:42 jump suite_dialogue - Wake up #id:49 Overseeing \\: serial number and system name.[pause=0.5].[pause=0.5].[pause=0.5] Strange.[pause=0.5] Serial number is empty.[pause=0.5] Must be an error.[pause=0.5] System name is,[pause=0.5] [color=#FFA617]Orchid[/color].[pause=0.5] That is enough for now. #id:4a -audio "res://common/audio_manager/assets/sfx/respawn/respawn.wav" + Starting engines,[pause=0.3] fans and daemons,[pause=0.3] let's see what is to see. #id:4b [end_timeline] \ No newline at end of file diff --git a/entities/plants/resources/plant_parts/Base1.tres b/entities/plants/resources/plant_parts/Base1.tres index 18aef93..64b8c8c 100644 --- a/entities/plants/resources/plant_parts/Base1.tres +++ b/entities/plants/resources/plant_parts/Base1.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bfyafiewcrjln"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_enq8o"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_enq8o"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_10bgv"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Base3.tres b/entities/plants/resources/plant_parts/Base3.tres index f854707..039ba6e 100644 --- a/entities/plants/resources/plant_parts/Base3.tres +++ b/entities/plants/resources/plant_parts/Base3.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://d2vdf2sth2xjm"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_p8ox4"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_p8ox4"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_3h2vf"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Base4.tres b/entities/plants/resources/plant_parts/Base4.tres index 9045e06..3e426ea 100644 --- a/entities/plants/resources/plant_parts/Base4.tres +++ b/entities/plants/resources/plant_parts/Base4.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://clruuysx80pnn"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_03in3"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_03in3"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_108r1"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/BottomLeaf1.tres b/entities/plants/resources/plant_parts/BottomLeaf1.tres index bfb3151..67618ff 100644 --- a/entities/plants/resources/plant_parts/BottomLeaf1.tres +++ b/entities/plants/resources/plant_parts/BottomLeaf1.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://brmd6d3l8trqs"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_mvsqc"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_mvsqc"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_oqbgr"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/BottomLeaf2.tres b/entities/plants/resources/plant_parts/BottomLeaf2.tres index f1b0168..bb24015 100644 --- a/entities/plants/resources/plant_parts/BottomLeaf2.tres +++ b/entities/plants/resources/plant_parts/BottomLeaf2.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cfr33014u7ig5"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_14sjf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_14sjf"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_ud5ex"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/BottomLeaf3.tres b/entities/plants/resources/plant_parts/BottomLeaf3.tres index de3736e..f749719 100644 --- a/entities/plants/resources/plant_parts/BottomLeaf3.tres +++ b/entities/plants/resources/plant_parts/BottomLeaf3.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cf70m1us8mfqp"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_xplyn"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_xplyn"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_uj75q"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/BottomLeaf4.tres b/entities/plants/resources/plant_parts/BottomLeaf4.tres index 9972cec..bbe8c40 100644 --- a/entities/plants/resources/plant_parts/BottomLeaf4.tres +++ b/entities/plants/resources/plant_parts/BottomLeaf4.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ctlmah4ohqp25"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_tv8sf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_tv8sf"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_srnvv"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/BottomLeaf5.tres b/entities/plants/resources/plant_parts/BottomLeaf5.tres index 92210a1..e769c68 100644 --- a/entities/plants/resources/plant_parts/BottomLeaf5.tres +++ b/entities/plants/resources/plant_parts/BottomLeaf5.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b8o4q0hsm84ov"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_5lgql"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_5lgql"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_0b6yj"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/BottomLeaf6.tres b/entities/plants/resources/plant_parts/BottomLeaf6.tres index df61170..d64422d 100644 --- a/entities/plants/resources/plant_parts/BottomLeaf6.tres +++ b/entities/plants/resources/plant_parts/BottomLeaf6.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bb33v756anesy"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_gcphf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_gcphf"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_tnhr7"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/BottomLeaf7.tres b/entities/plants/resources/plant_parts/BottomLeaf7.tres index bc68b04..055e692 100644 --- a/entities/plants/resources/plant_parts/BottomLeaf7.tres +++ b/entities/plants/resources/plant_parts/BottomLeaf7.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cbqrl72y0d1yg"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_k38pp"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_k38pp"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_cwsfe"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/BottomLeaf8.tres b/entities/plants/resources/plant_parts/BottomLeaf8.tres index a0725e8..94da737 100644 --- a/entities/plants/resources/plant_parts/BottomLeaf8.tres +++ b/entities/plants/resources/plant_parts/BottomLeaf8.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dwppani7gyjl5"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_2m37y"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_2m37y"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_pyvr6"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/BottomLeaf9.tres b/entities/plants/resources/plant_parts/BottomLeaf9.tres index 318be72..b2675d1 100644 --- a/entities/plants/resources/plant_parts/BottomLeaf9.tres +++ b/entities/plants/resources/plant_parts/BottomLeaf9.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dkta1u1u0efxk"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_2r1e2"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_2r1e2"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_tv2v3"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch1.tres b/entities/plants/resources/plant_parts/Branch1.tres index 85515c2..1fe2e75 100644 --- a/entities/plants/resources/plant_parts/Branch1.tres +++ b/entities/plants/resources/plant_parts/Branch1.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://7hrdkl6bf3o4"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_peh48"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_peh48"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_o5tro"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch11.tres b/entities/plants/resources/plant_parts/Branch11.tres index 6ec6abd..aebffdd 100644 --- a/entities/plants/resources/plant_parts/Branch11.tres +++ b/entities/plants/resources/plant_parts/Branch11.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://d2y7o2hc6ffei"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_wnxgs"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_wnxgs"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_smg8i"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch12.tres b/entities/plants/resources/plant_parts/Branch12.tres index 34aea1e..3622585 100644 --- a/entities/plants/resources/plant_parts/Branch12.tres +++ b/entities/plants/resources/plant_parts/Branch12.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://civ4gr1c2pq7g"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_1cr0i"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_1cr0i"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_h0d20"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch13.tres b/entities/plants/resources/plant_parts/Branch13.tres index 97af30a..cd509ef 100644 --- a/entities/plants/resources/plant_parts/Branch13.tres +++ b/entities/plants/resources/plant_parts/Branch13.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bqfocs6f0iypo"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_p4qfr"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_p4qfr"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_iibe2"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch14.tres b/entities/plants/resources/plant_parts/Branch14.tres index 6358d22..562dc03 100644 --- a/entities/plants/resources/plant_parts/Branch14.tres +++ b/entities/plants/resources/plant_parts/Branch14.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://drml5dm8i3j3a"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_5xrel"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_5xrel"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_0v6u4"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch15.tres b/entities/plants/resources/plant_parts/Branch15.tres index 109bf6e..c275e22 100644 --- a/entities/plants/resources/plant_parts/Branch15.tres +++ b/entities/plants/resources/plant_parts/Branch15.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b1t5nfwcln5vo"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_0mgvf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_0mgvf"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_k1p2k"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch16.tres b/entities/plants/resources/plant_parts/Branch16.tres index 31dbc30..bfab889 100644 --- a/entities/plants/resources/plant_parts/Branch16.tres +++ b/entities/plants/resources/plant_parts/Branch16.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://b4s58a600q2rn"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_l4nmf"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_l4nmf"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_ifu40"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch17.tres b/entities/plants/resources/plant_parts/Branch17.tres index 050ba82..7a17d7e 100644 --- a/entities/plants/resources/plant_parts/Branch17.tres +++ b/entities/plants/resources/plant_parts/Branch17.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dspugxsjw2aea"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_gpxi3"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_gpxi3"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_e0an0"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch18.tres b/entities/plants/resources/plant_parts/Branch18.tres index 9077af8..7f8d05b 100644 --- a/entities/plants/resources/plant_parts/Branch18.tres +++ b/entities/plants/resources/plant_parts/Branch18.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cnt38l2fmg8d7"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_wmuv5"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_wmuv5"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_4klgd"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch2.tres b/entities/plants/resources/plant_parts/Branch2.tres index 47384b0..cfe1d3f 100644 --- a/entities/plants/resources/plant_parts/Branch2.tres +++ b/entities/plants/resources/plant_parts/Branch2.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ceisi5yyie7to"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_1eil5"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_1eil5"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_h27ow"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch3.tres b/entities/plants/resources/plant_parts/Branch3.tres index 8b6e521..80e4c12 100644 --- a/entities/plants/resources/plant_parts/Branch3.tres +++ b/entities/plants/resources/plant_parts/Branch3.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cxiu8frk04b5i"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_qrhlr"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_qrhlr"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_4au1t"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Branch4.tres b/entities/plants/resources/plant_parts/Branch4.tres index 93f9e1c..afc1692 100644 --- a/entities/plants/resources/plant_parts/Branch4.tres +++ b/entities/plants/resources/plant_parts/Branch4.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://53p5g07e3pb4"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_tu2er"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_tu2er"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_2wu38"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Flower1.tres b/entities/plants/resources/plant_parts/Flower1.tres index d30eb27..21e8032 100644 --- a/entities/plants/resources/plant_parts/Flower1.tres +++ b/entities/plants/resources/plant_parts/Flower1.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://crmvc77bqax1y"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_3u7fo"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_3u7fo"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_23bbh"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Flower2.tres b/entities/plants/resources/plant_parts/Flower2.tres index 6739bbd..3fc1c3a 100644 --- a/entities/plants/resources/plant_parts/Flower2.tres +++ b/entities/plants/resources/plant_parts/Flower2.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c0hr7icfkjkoi"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_bcreq"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_bcreq"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_af12b"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Flower3.tres b/entities/plants/resources/plant_parts/Flower3.tres index 0a3492c..8e7fb2a 100644 --- a/entities/plants/resources/plant_parts/Flower3.tres +++ b/entities/plants/resources/plant_parts/Flower3.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://clkoc1iccts2w"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_vlome"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_vlome"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_157wb"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Flower4.tres b/entities/plants/resources/plant_parts/Flower4.tres index ed5b85c..2b1475b 100644 --- a/entities/plants/resources/plant_parts/Flower4.tres +++ b/entities/plants/resources/plant_parts/Flower4.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bd8yapi1pokj6"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_0uwmh"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_0uwmh"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_h3coc"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf1.tres b/entities/plants/resources/plant_parts/Leaf1.tres index 8f3e002..c3ed2c8 100644 --- a/entities/plants/resources/plant_parts/Leaf1.tres +++ b/entities/plants/resources/plant_parts/Leaf1.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://cxgw1vgket0fw"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_ajsfl"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_ajsfl"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_nif4i"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf10.tres b/entities/plants/resources/plant_parts/Leaf10.tres index 0d9ae60..f1a6a21 100644 --- a/entities/plants/resources/plant_parts/Leaf10.tres +++ b/entities/plants/resources/plant_parts/Leaf10.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c5gqwck2p5h5n"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_205mu"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_205mu"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_nlpf8"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf11.tres b/entities/plants/resources/plant_parts/Leaf11.tres index 5196d98..c6a691d 100644 --- a/entities/plants/resources/plant_parts/Leaf11.tres +++ b/entities/plants/resources/plant_parts/Leaf11.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://c5fj1cw0f4mu6"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_nyyxg"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_nyyxg"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_y2fie"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf12.tres b/entities/plants/resources/plant_parts/Leaf12.tres index d0522ca..84cae65 100644 --- a/entities/plants/resources/plant_parts/Leaf12.tres +++ b/entities/plants/resources/plant_parts/Leaf12.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dce788f0adauv"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_eaujg"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_eaujg"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_lsafj"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf13.tres b/entities/plants/resources/plant_parts/Leaf13.tres index b395742..0f14be5 100644 --- a/entities/plants/resources/plant_parts/Leaf13.tres +++ b/entities/plants/resources/plant_parts/Leaf13.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dd34dikqoynp3"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_faxmp"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_faxmp"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_0me46"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf14.tres b/entities/plants/resources/plant_parts/Leaf14.tres index 2eaf290..40bdad2 100644 --- a/entities/plants/resources/plant_parts/Leaf14.tres +++ b/entities/plants/resources/plant_parts/Leaf14.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bynje6g2wvuvl"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_55x88"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_55x88"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_dmctu"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf15.tres b/entities/plants/resources/plant_parts/Leaf15.tres index ddea5a9..f9a7727 100644 --- a/entities/plants/resources/plant_parts/Leaf15.tres +++ b/entities/plants/resources/plant_parts/Leaf15.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bd2op6q1masjt"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_uhia7"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_uhia7"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_atmi3"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf16.tres b/entities/plants/resources/plant_parts/Leaf16.tres index c6c5e3d..88ec0a1 100644 --- a/entities/plants/resources/plant_parts/Leaf16.tres +++ b/entities/plants/resources/plant_parts/Leaf16.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bvajuw0r47edw"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_761dd"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_761dd"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_3rcv4"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf2.tres b/entities/plants/resources/plant_parts/Leaf2.tres index 9f62ede..43eb275 100644 --- a/entities/plants/resources/plant_parts/Leaf2.tres +++ b/entities/plants/resources/plant_parts/Leaf2.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://qb6bftgq0n6y"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_b4uc1"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_b4uc1"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_dc8tr"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf3.tres b/entities/plants/resources/plant_parts/Leaf3.tres index 0e83bff..52242d0 100644 --- a/entities/plants/resources/plant_parts/Leaf3.tres +++ b/entities/plants/resources/plant_parts/Leaf3.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://ft112n57di0e"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_sabo0"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_sabo0"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_uvvih"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf4.tres b/entities/plants/resources/plant_parts/Leaf4.tres index b81be17..ab27633 100644 --- a/entities/plants/resources/plant_parts/Leaf4.tres +++ b/entities/plants/resources/plant_parts/Leaf4.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dwjj6qmcjhn68"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_fvj4t"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_fvj4t"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_akiip"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf5.tres b/entities/plants/resources/plant_parts/Leaf5.tres index 4f47096..d121d86 100644 --- a/entities/plants/resources/plant_parts/Leaf5.tres +++ b/entities/plants/resources/plant_parts/Leaf5.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://bkr70mstyf8pp"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_07tkv"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_07tkv"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_uotjj"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf6.tres b/entities/plants/resources/plant_parts/Leaf6.tres index 33e5886..73234bf 100644 --- a/entities/plants/resources/plant_parts/Leaf6.tres +++ b/entities/plants/resources/plant_parts/Leaf6.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://dcuwupmqt34ju"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_m3t4k"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_m3t4k"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_qfabu"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf7.tres b/entities/plants/resources/plant_parts/Leaf7.tres index 015da30..cca5d32 100644 --- a/entities/plants/resources/plant_parts/Leaf7.tres +++ b/entities/plants/resources/plant_parts/Leaf7.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://djmidq7yq452i"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_jg4cg"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_jg4cg"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_chdp7"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf8.tres b/entities/plants/resources/plant_parts/Leaf8.tres index ec66ab6..b8476bb 100644 --- a/entities/plants/resources/plant_parts/Leaf8.tres +++ b/entities/plants/resources/plant_parts/Leaf8.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://wxqxm6d5twdh"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_1f2ok"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_1f2ok"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_pu3mc"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/plants/resources/plant_parts/Leaf9.tres b/entities/plants/resources/plant_parts/Leaf9.tres index 28bfe75..e369ec8 100644 --- a/entities/plants/resources/plant_parts/Leaf9.tres +++ b/entities/plants/resources/plant_parts/Leaf9.tres @@ -1,6 +1,6 @@ [gd_resource type="Resource" script_class="PlantPart" format=3 uid="uid://uoikjpno37bi"] -[ext_resource type="Script" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_g38jy"] +[ext_resource type="Script" uid="uid://b3jwglylqdqtw" path="res://entities/plants/scripts/texture_builder/plant_part.gd" id="1_g38jy"] [ext_resource type="Texture2D" uid="uid://doo2cxxa2p70a" path="res://entities/plants/assets/sprites/plante-teste.png" id="2_unpmr"] [sub_resource type="AtlasTexture" id="AtlasTexture_mypt2"] diff --git a/entities/player/inventory/scripts/items/shovel.gd b/entities/player/inventory/scripts/items/shovel.gd index 38b2a57..c1a618b 100644 --- a/entities/player/inventory/scripts/items/shovel.gd +++ b/entities/player/inventory/scripts/items/shovel.gd @@ -33,7 +33,7 @@ func can_use(_player : Player, zone : Player.ActionZone) -> bool: return false func use(player : Player, zone : Player.ActionZone) -> bool: - AudioManager.play_sfx("Pickaxe") + AudioManager.play_sfx("Dig") for area in zone.get_affected_areas(): if area and area is Plant: harvest(area, player) diff --git a/entities/player/inventory/scripts/items/utils/detector_signal.gd b/entities/player/inventory/scripts/items/utils/detector_signal.gd index 9b33214..cce5a3b 100644 --- a/entities/player/inventory/scripts/items/utils/detector_signal.gd +++ b/entities/player/inventory/scripts/items/utils/detector_signal.gd @@ -15,6 +15,7 @@ var signals : Array[DetectorSignalIndividual] = [] func _init(region : Region, pos : Vector2): for e in region.entity_container.get_children(): + if e.visible: if e is TruckRecharge: signals.append( DetectorSignalIndividual.new( @@ -22,7 +23,7 @@ func _init(region : Region, pos : Vector2): ENERGY_ICON ) ) - if e is Door and e.available and e.visible: + if e is Door and e.available: signals.append( DetectorSignalIndividual.new( (pos - e.global_position).normalized().angle(), diff --git a/gui/game/game_gui.tscn b/gui/game/game_gui.tscn index 6cf1beb..c064ba0 100644 --- a/gui/game/game_gui.tscn +++ b/gui/game/game_gui.tscn @@ -4,8 +4,10 @@ [ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="2_nq5i2"] [ext_resource type="PackedScene" uid="uid://brfsapvj2quxm" path="res://gui/game/energy_info/energy_info.tscn" id="4_2wykm"] [ext_resource type="PackedScene" uid="uid://fnv0qhkh40mv" path="res://gui/game/announce/announce.tscn" id="4_h6540"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="6_2wykm"] [ext_resource type="PackedScene" uid="uid://df0eop555wfj5" path="res://gui/game/objective_progress_bar/objective_progress_bar.tscn" id="6_dr1y2"] [ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="6_h6540"] +[ext_resource type="Texture2D" uid="uid://bt3g5bmar0icf" path="res://common/icons/growth.svg" id="6_id0t5"] [ext_resource type="Texture2D" uid="uid://b43thuq8piv18" path="res://common/icons/skull.svg" id="7_dr1y2"] [ext_resource type="PackedScene" uid="uid://clicjf8ts51h8" path="res://gui/game/inventory_gui/inventory_gui.tscn" id="9_id0t5"] @@ -19,6 +21,10 @@ gradient = SubResource("Gradient_id0t5") fill_to = Vector2(1, 1) repeat = 1 +[sub_resource type="LabelSettings" id="LabelSettings_id0t5"] +font = ExtResource("6_2wykm") +font_size = 40 + [sub_resource type="Animation" id="Animation_2wykm"] resource_name = "NoRechargeAppear" length = 0.5 @@ -155,7 +161,24 @@ layout_mode = 2 size_flags_horizontal = 4 size_flags_vertical = 4 -[node name="RechargesLeftLabel" type="Label" parent="MarginContainer/VBoxContainer" unique_id=1961035876] +[node name="SimplePlantPointScore" type="HBoxContainer" parent="MarginContainer/VBoxContainer" unique_id=973032799] +unique_name_in_owner = true +layout_mode = 2 +theme_override_constants/separation = 0 +alignment = 1 + +[node name="TextureRect" type="TextureRect" parent="MarginContainer/VBoxContainer/SimplePlantPointScore" unique_id=534916675] +layout_mode = 2 +texture = ExtResource("6_id0t5") + +[node name="SimplePlantPointScoreLabel" type="Label" parent="MarginContainer/VBoxContainer/SimplePlantPointScore" unique_id=1961035876] +unique_name_in_owner = true +layout_mode = 2 +text = "0 Plant Point" +label_settings = SubResource("LabelSettings_id0t5") +horizontal_alignment = 1 + +[node name="RechargesLeftLabel" type="Label" parent="MarginContainer/VBoxContainer" unique_id=1254074923] unique_name_in_owner = true layout_mode = 2 text = "9 charges left" diff --git a/gui/game/scripts/game_gui.gd b/gui/game/scripts/game_gui.gd index 5187bd1..a157015 100644 --- a/gui/game/scripts/game_gui.gd +++ b/gui/game/scripts/game_gui.gd @@ -15,6 +15,9 @@ func _ready(): GameInfo.game_data.player_data.updated.connect(_on_player_updated) GameInfo.game_data.current_region_data.pass_day_ended.connect(_on_region_pass_day_ended) + + %ObjectiveProgressBar.visible = not "tutorial" in GameInfo.game_data.current_region_data.flags + %SimplePlantPointScore.visible = "tutorial" in GameInfo.game_data.current_region_data.flags charge_update(GameInfo.game_data.current_region_data) player_update(GameInfo.game_data.player_data, false) @@ -22,7 +25,6 @@ func _ready(): %GiveUpButton.pressed.connect(_on_give_up_pressed) score_mirror = GameInfo.game_data.current_region_data.get_score() - print(score_mirror) for p : PlantData in GameInfo.game_data.current_region_data.plants: score_by_plant[str(p.random_seed)] = p.get_score() @@ -44,10 +46,8 @@ func _on_region_updated(region_data : RegionData): if not str(p.random_seed) in score_by_plant: score_by_plant[str(p.random_seed)] = 0 if score > score_by_plant[str(p.random_seed)]: - print("emit particles for %s" % p.plant_name) plant_changing_score(p, score - score_by_plant[str(p.random_seed)]) elif score < score_by_plant[str(p.random_seed)]: - print("reduce score for %s" % p.plant_name) score_mirror -= score_by_plant[str(p.random_seed)] - score score_by_plant[str(p.random_seed)] = score # Check for removed plants @@ -55,7 +55,6 @@ func _on_region_updated(region_data : RegionData): if region_data.plants.find_custom( func (p): return str(p.random_seed) == key ) == -1: - print("remove plant") score_mirror -= score_by_plant[key] score_by_plant.erase(key) @@ -93,6 +92,11 @@ func score_update(with_animation = true): ) else: %ObjectiveProgressBar.set_progress(objective_progression) + + if score_mirror > 1: + %SimplePlantPointScoreLabel.text = tr("%d_PLANT_POINTS") % score_mirror + else : + %SimplePlantPointScoreLabel.text = tr("%d_PLANT_POINT") % score_mirror func plant_changing_score(plant_data: PlantData, amount : int): if GameInfo.game_data.current_region_data.in_passing_day_animation: @@ -136,6 +140,7 @@ func spawn_score_particle( await tween.finished score_mirror += 1 + AudioManager.play_sfx("PlantPoint") sprite_particle.queue_free() diff --git a/gui/game/tutorial/scripts/tutorial.gd b/gui/game/tutorial/scripts/tutorial.gd index f47884e..73659ab 100644 --- a/gui/game/tutorial/scripts/tutorial.gd +++ b/gui/game/tutorial/scripts/tutorial.gd @@ -3,6 +3,7 @@ class_name Tutorial const STEP_SCENE = preload("res://gui/game/tutorial/step_gui/step_gui.tscn") +signal succeded var indicators : Array[InGameIndicator] @export var player : Player @@ -48,13 +49,29 @@ var indicators : Array[InGameIndicator] return region.data.get_score() != 0) ), Step.new( - "HARVEST_MATURE_PLANTS_WITH_SHOVEL", + "DISCOVER_A_SEED_WITH_A_MUTATION", (func (): for e in region.entity_container.get_children(): - if e is Plant and e.harvested: + if e is ItemObject and e.item is Seed and len(e.item.plant_mutations): return true return false) - ) + ), + Step.new( + "PLANT_A_SEED_WITH_A_MUTATION", + (func (): + for e in region.entity_container.get_children(): + if e is Plant and len(e.data.mutations): + return true + return false) + ), + Step.new( + "HARVEST_A_MATURE_PLANT_WITH_A_MUTATION", + (func (): + for e in region.entity_container.get_children(): + if e is Plant and e.harvested and len(e.data.mutations): + return true + return false) + ), ] func _ready(): @@ -76,13 +93,23 @@ func setup_gui(): func _process(_d): - if region and region.data and "tutorial" in region.data.flags: + if region and region.data and "tutorial" in region.data.flags and not GameInfo.game_data.tutorial_done: + var success = true for i in len(steps): var step := steps[i] var step_gui := %Steps.get_children()[i] as TutorialStepGui step.update_succeeded() step_gui.suceeded = step.succeeded - + if not step.succeeded: + success = false + if success: + finish_tutorial() + +func finish_tutorial(): + GameInfo.game_data.tutorial_done = true + succeded.emit() + + class Step: var text : String : get = get_text diff --git a/gui/game/tutorial/step_gui/step_gui.tscn b/gui/game/tutorial/step_gui/step_gui.tscn index 5fa16ad..05c3c30 100644 --- a/gui/game/tutorial/step_gui/step_gui.tscn +++ b/gui/game/tutorial/step_gui/step_gui.tscn @@ -2,6 +2,8 @@ [ext_resource type="Script" uid="uid://c2w7h0x2blimk" path="res://gui/game/tutorial/step_gui/scripts/step_gui.gd" id="1_8qp12"] [ext_resource type="Texture2D" uid="uid://dk7j4cmn2avor" path="res://common/icons/circle-check.svg" id="2_8qp12"] +[ext_resource type="FontFile" uid="uid://cc4xli25271fd" path="res://addons/dialogic/Example Assets/Fonts/Roboto-Bold.ttf" id="3_kbfp3"] +[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="4_i138t"] [node name="Step" type="HBoxContainer" unique_id=595946430] modulate = Color(1, 1, 1, 0.5) @@ -30,11 +32,13 @@ unique_name_in_owner = true layout_mode = 2 size_flags_horizontal = 3 size_flags_vertical = 0 +theme_override_fonts/normal_font = ExtResource("3_kbfp3") +theme_override_fonts/bold_font = ExtResource("4_i138t") theme_override_font_sizes/normal_font_size = 15 theme_override_font_sizes/bold_font_size = 15 theme_override_font_sizes/bold_italics_font_size = 15 theme_override_font_sizes/italics_font_size = 15 theme_override_font_sizes/mono_font_size = 15 bbcode_enabled = true -text = "Lorem Ipsum dolor sit amet and again and again and again and again" +text = "Hello" fit_content = true diff --git a/gui/ressources/title_label_settings.tres b/gui/ressources/title_label_settings.tres index 429f78a..b853382 100644 --- a/gui/ressources/title_label_settings.tres +++ b/gui/ressources/title_label_settings.tres @@ -1,4 +1,4 @@ -[gd_resource type="LabelSettings" load_steps=2 format=3 uid="uid://dqwayi8yjwau2"] +[gd_resource type="LabelSettings" format=3 uid="uid://dqwayi8yjwau2"] [ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="1_lsdoq"] diff --git a/stages/3d_scenes/astra_base/scripts/astra_base.gd b/stages/3d_scenes/astra_base/scripts/astra_base.gd index ee53b3e..6b38c10 100644 --- a/stages/3d_scenes/astra_base/scripts/astra_base.gd +++ b/stages/3d_scenes/astra_base/scripts/astra_base.gd @@ -35,7 +35,7 @@ func _ready(): Input.mouse_mode = Input.MOUSE_MODE_CAPTURED set_room_part_number() - chosen_incubator_id = randi_range(0, len(%Incubators.get_children())) + chosen_incubator_id = randi_range(0, len(%Incubators.get_children()) - 1) var new_player_incubator := %Incubators.get_children()[chosen_incubator_id] as Incubator new_player_incubator.used = true %Player3D.position = new_player_incubator.global_position + Vector3.UP @@ -52,6 +52,7 @@ func _ready(): func story(): + AudioManager.play_sfx("Respawn") if not INTRO_DIALOG in GameInfo.game_data.dialogs_done: await get_tree().create_timer(TIME_WITHOUT_PHONE).timeout %Phone.play_audio() diff --git a/stages/3d_scenes/borea_base/assets/3d/borea_base.blend b/stages/3d_scenes/borea_base/assets/3d/borea_base.blend index d373df6..22871ac 100644 Binary files a/stages/3d_scenes/borea_base/assets/3d/borea_base.blend and b/stages/3d_scenes/borea_base/assets/3d/borea_base.blend differ diff --git a/stages/3d_scenes/borea_base/assets/3d/borea_base.blend1 b/stages/3d_scenes/borea_base/assets/3d/borea_base.blend1 index fded4d1..9d242b4 100644 Binary files a/stages/3d_scenes/borea_base/assets/3d/borea_base.blend1 and b/stages/3d_scenes/borea_base/assets/3d/borea_base.blend1 differ diff --git a/stages/3d_scenes/borea_base/borea_base.tscn b/stages/3d_scenes/borea_base/borea_base.tscn index 2dc5485..0e9a198 100644 --- a/stages/3d_scenes/borea_base/borea_base.tscn +++ b/stages/3d_scenes/borea_base/borea_base.tscn @@ -184,6 +184,9 @@ volumetric_fog_sky_affect = 0.0 adjustment_enabled = true adjustment_saturation = 1.3 +[sub_resource type="BoxShape3D" id="BoxShape3D_c8vcx"] +size = Vector3(0.001, 7.6933594, 7.697876) + [node name="BoreaBase" type="Node3D" unique_id=442220603] script = ExtResource("1_fevne") @@ -910,6 +913,13 @@ autoplay = &"blink" [node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1121246225] environment = SubResource("Environment_fevne") +[node name="AmbianceChangeDetector" type="Area3D" parent="." unique_id=1401161313] +transform = Transform3D(0.25881904, 0, 0.96592593, 0, 1, 0, -0.96592593, 0, 0.25881904, 2.7012572, -5.600957, -42.815655) + +[node name="CollisionShape3D" type="CollisionShape3D" parent="AmbianceChangeDetector" unique_id=1969356725] +transform = Transform3D(0.9999994, 0, 0, 0, 1, 0, 0, 0, 0.9999994, -9.359516, 0.82910156, 2.9935746) +shape = SubResource("BoxShape3D_c8vcx") + [node name="Player3D" parent="." unique_id=549819967 instance=ExtResource("3_c8vcx")] unique_name_in_owner = true transform = Transform3D(0.25881904, 0, 0.96592593, 0, 1, 0, -0.96592593, 0, 0.25881904, 29.244379, 41.40791, 8.823577) @@ -924,3 +934,5 @@ transform = Transform3D(-0.93482566, 0, 0.35510686, 0, 1, 0, -0.35510686, 0, -0. [node name="Credits" parent="." unique_id=180964898 instance=ExtResource("6_c8vcx")] unique_name_in_owner = true visible = false + +[connection signal="body_entered" from="AmbianceChangeDetector" to="." method="_on_ambiance_change_detector_body_entered"] diff --git a/stages/3d_scenes/borea_base/scripts/borea_base.gd b/stages/3d_scenes/borea_base/scripts/borea_base.gd index 832dd90..fe51c2c 100644 --- a/stages/3d_scenes/borea_base/scripts/borea_base.gd +++ b/stages/3d_scenes/borea_base/scripts/borea_base.gd @@ -12,4 +12,11 @@ func _ready(): await Dialogic.timeline_ended Input.mouse_mode = Input.MOUSE_MODE_VISIBLE %Credits.show() + AudioManager.play_music("Title") + AudioManager.stop_ambiance() + +func _on_ambiance_change_detector_body_entered(body: Node3D): + if body is Player3D: + AudioManager.stop_ambiance() + AudioManager.play_music("Title") diff --git a/stages/3d_scenes/cockpit_scene/scripts/cockpit.gd b/stages/3d_scenes/cockpit_scene/scripts/cockpit.gd index 8ef2c98..9af2aa4 100644 --- a/stages/3d_scenes/cockpit_scene/scripts/cockpit.gd +++ b/stages/3d_scenes/cockpit_scene/scripts/cockpit.gd @@ -109,7 +109,7 @@ func update_dashboard(): if choosen_run_point: dashboard.destination_title_label = tr("DESTINATION") dashboard.destination_longitude = float(choosen_run_point.level) / RunData.RUN_POINT_MAX_LEVEL - dashboard.destination_label = choosen_run_point.region_parameter.name + dashboard.destination_label = choosen_run_point.region_parameter.region_name dashboard.status_text = "" else: dashboard.status_text = tr("CHOOSE_DESTINATION") diff --git a/stages/3d_scenes/cockpit_scene/scripts/dashboard.gd b/stages/3d_scenes/cockpit_scene/scripts/dashboard.gd index f67799f..b939ef1 100644 --- a/stages/3d_scenes/cockpit_scene/scripts/dashboard.gd +++ b/stages/3d_scenes/cockpit_scene/scripts/dashboard.gd @@ -95,13 +95,13 @@ func set_left_destination(v := left_destination): %LeftScreenStats.visible = left_destination != null if left_destination: %LeftScreenActionIcon.texture = LAND_ICON - %LeftScreenActionLabel.text = left_destination.region_parameter.name + %LeftScreenActionLabel.text = left_destination.region_parameter.get_region_name() %LeftScreenStat1Icon.texture = GROWTH_ICON - %LeftScreenStat1Label.text = str(left_destination.region_parameter.objective) + %LeftScreenStat1Label.text = str(left_destination.region_parameter.get_objective()) %LeftScreenStat2Icon.texture = CHARGE_ICON - %LeftScreenStat2Label.text = str(left_destination.region_parameter.charges) + %LeftScreenStat2Label.text = str(left_destination.region_parameter.get_charge()) func set_right_destination(v := right_destination): right_destination = v @@ -111,10 +111,10 @@ func set_right_destination(v := right_destination): %RightScreenStats.visible = right_destination != null if right_destination: %RightScreenActionIcon.texture = LAND_ICON - %RightScreenActionLabel.text = right_destination.region_parameter.name + %RightScreenActionLabel.text = right_destination.region_parameter.get_region_name() %RightScreenStat1Icon.texture = GROWTH_ICON - %RightScreenStat1Label.text = str(right_destination.region_parameter.objective) + %RightScreenStat1Label.text = str(right_destination.region_parameter.get_objective()) %RightScreenStat2Icon.texture = CHARGE_ICON - %RightScreenStat2Label.text = str(right_destination.region_parameter.charges) + %RightScreenStat2Label.text = str(right_destination.region_parameter.get_charge()) diff --git a/stages/3d_scenes/ship_garage/scripts/ship_garage.gd b/stages/3d_scenes/ship_garage/scripts/ship_garage.gd index 16a0709..abdce17 100644 --- a/stages/3d_scenes/ship_garage/scripts/ship_garage.gd +++ b/stages/3d_scenes/ship_garage/scripts/ship_garage.gd @@ -17,8 +17,6 @@ func _input(_e): func _ready(): Input.mouse_mode = Input.MOUSE_MODE_CAPTURED - GameInfo.game_data.tutorial_done = true - %Phone.play_audio() await %Phone.clicked %Phone.stop_audio() diff --git a/stages/region_selection/scripts/region_selection.gd b/stages/region_selection/scripts/region_selection.gd index 970e08f..e99b3dd 100644 --- a/stages/region_selection/scripts/region_selection.gd +++ b/stages/region_selection/scripts/region_selection.gd @@ -107,7 +107,7 @@ func update_region_points(): func _on_camera_3d_region_point_clicked(rp : RunPoint): selected_run_point = rp - %TravelValidationLabel.text = tr("TRAVEL_TO_REGION_%s") % rp.region_parameter.name + %TravelValidationLabel.text = tr("TRAVEL_TO_REGION_%s") % rp.region_parameter.region_name %TravelValidation.show() func _on_travel_validation_go_button_button_down(): diff --git a/stages/terrain/region/region.tscn b/stages/terrain/region/region.tscn index c0ae479..5886456 100644 --- a/stages/terrain/region/region.tscn +++ b/stages/terrain/region/region.tscn @@ -20,6 +20,7 @@ unique_name_in_owner = true layer = 2 [node name="Tutorial" parent="RegionGui" unique_id=762436685 node_paths=PackedStringArray("player", "region") instance=ExtResource("2_2f6js")] +unique_name_in_owner = true player = NodePath("../../Entities/Player") region = NodePath("../..") @@ -31,8 +32,9 @@ y_sort_enabled = true [node name="Player" parent="Entities" unique_id=75851644 instance=ExtResource("5_ovqi1")] z_index = 1 -[node name="TruckRecharge" parent="Entities" unique_id=2068738444 instance=ExtResource("7_6d8m3")] -position = Vector2(-1, -169) +[node name="RechargeStation" parent="Entities" unique_id=2068738444 instance=ExtResource("7_6d8m3")] +unique_name_in_owner = true +position = Vector2(-405, -151) [node name="AstraDoor" parent="Entities" unique_id=2053096538 instance=ExtResource("8_2f6js")] unique_name_in_owner = true @@ -45,15 +47,17 @@ default_info_desc = "ASTRA_FACTORY_TEXT" [node name="BoreaDoor" parent="Entities" unique_id=135926916 instance=ExtResource("8_2f6js")] unique_name_in_owner = true visible = false +position = Vector2(91, -177) to_scene_id = "BOREA" default_interact_text = "ENTER" default_info_title = "BOREA_BASE" -default_info_desc = "ASTRA_FACTORY_TEXT" +default_info_desc = "BOREA_BASE_DESC_TEXT" [node name="ShipGarageDoor" parent="Entities" unique_id=1073871193 instance=ExtResource("8_2f6js")] unique_name_in_owner = true visible = false modulate = Color(1, 0, 0, 1) +position = Vector2(91, -177) to_scene_id = "GARAGE" default_interact_text = "ENTER" available = false diff --git a/stages/terrain/region/scripts/chunk.gd b/stages/terrain/region/scripts/chunk.gd index 6c64d0a..5a46e94 100644 --- a/stages/terrain/region/scripts/chunk.gd +++ b/stages/terrain/region/scripts/chunk.gd @@ -6,9 +6,6 @@ signal generated var region : Region var region_seed : int -var wall_threshold = 0.3 -var decontamination_threshold = 0. -var cristal_threshold = 0.08 var rock_noise_image : Noise = null var decontamination_noise_image : Noise = null @@ -23,6 +20,8 @@ const GENERATION_NUMBER = 4 const NOISE_IMAGE_SIZE := 150 +const MAX_DECONTAMINATION_DISTANCE=2 + const ROCK_NOISE_FREQUENCY := 0.01 const DECONTAMINATION_NOISE_FREQUENCY := 0.01 @@ -34,9 +33,9 @@ var data : ChunkData func _init( _data : ChunkData, - _planet : Region = null, + _region : Region = null, ): - region = _planet + region = _region if region: region_seed = region.data.region_seed data = _data @@ -129,10 +128,10 @@ func get_generated_rock_type(coord : Vector2i) -> RockLayer.TileType: var saved_diff := data.get_rock_tile_diff(coord) if ( - (saved_diff == ChunkData.TileDiff.PRESENT or tile_value < wall_threshold) + (saved_diff == ChunkData.TileDiff.PRESENT or tile_value < region.data.rock_threshold) and saved_diff != ChunkData.TileDiff.ABSENT ): - return RockLayer.TileType.CRISTAL if tile_value < cristal_threshold else RockLayer.TileType.ROCK + return RockLayer.TileType.CRISTAL if tile_value < region.data.cristal_threshold else RockLayer.TileType.ROCK return RockLayer.TileType.EMPTY func generate_ground(): @@ -148,10 +147,16 @@ func generate_decontamination(): for x in range(Region.CHUNK_TILE_SIZE): for y in range(Region.CHUNK_TILE_SIZE): var coord = Vector2i(x,y) - var tile_value : float = get_tile_value_from_noise(coord, decontamination_noise_image) + var tile_value : float = ( + 1. if data.chunk_coord.distance_to(Vector2i.ZERO) > MAX_DECONTAMINATION_DISTANCE + else get_tile_value_from_noise(coord, decontamination_noise_image) + ) var saved_diff := data.get_decontamination_tile_diff(coord) if ( - (saved_diff == ChunkData.TileDiff.PRESENT or tile_value < decontamination_threshold) + ( + saved_diff == ChunkData.TileDiff.PRESENT + or (tile_value < region.data.decontamination_threshold) + ) and saved_diff != ChunkData.TileDiff.ABSENT ): decontamination_tiles.append(Vector2i(x,y) + Region.CHUNK_TILE_SIZE * data.chunk_coord) diff --git a/stages/terrain/region/scripts/modifiers/arid_modifier.gd b/stages/terrain/region/scripts/modifiers/arid_modifier.gd new file mode 100644 index 0000000..3009651 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/arid_modifier.gd @@ -0,0 +1,14 @@ +extends RegionModifier +class_name AridModifier + +func get_modifier_name() -> String: + return tr("ARID") + +func get_description() -> String: + return tr("ARID_MODIFIER_DESC_TEXT") + +func modify_decontamination_threshold(decontamination_threshold : float) -> float: + return decontamination_threshold + +func modify_start_decontamination_zone_radius(start_decontamination_zone_radius : int) -> int: + return start_decontamination_zone_radius \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/arid_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/arid_modifier.gd.uid new file mode 100644 index 0000000..6f3dec0 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/arid_modifier.gd.uid @@ -0,0 +1 @@ +uid://3o33x8mesgrn diff --git a/stages/terrain/region/scripts/modifiers/region_modifier.gd b/stages/terrain/region/scripts/modifiers/region_modifier.gd new file mode 100644 index 0000000..d8f67b9 --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/region_modifier.gd @@ -0,0 +1,35 @@ +@abstract +extends Resource +class_name RegionModifier + +var level : int = 1 +var modifier_name : String : get = get_modifier_name +var description : String : get = get_description + +func _init(_level : int = 1): + level = _level + +@abstract func get_modifier_name() -> String + +@abstract func get_description() -> String + +func get_difficulty_score() -> float: + return float(level) + +func modify_charge(charge : int) -> int: + return charge + +func modify_objective(objective : int) -> int: + return objective + +func modify_rock_threshold(rock_threshold : float) -> float: + return rock_threshold + +func modify_decontamination_threshold(decontamination_threshold : float) -> float: + return decontamination_threshold + +func modify_cristal_threshold(cristal_threshold : float) -> float: + return cristal_threshold + +func modify_start_decontamination_zone_radius(start_decontamination_zone_radius : int) -> int: + return start_decontamination_zone_radius \ No newline at end of file diff --git a/stages/terrain/region/scripts/modifiers/region_modifier.gd.uid b/stages/terrain/region/scripts/modifiers/region_modifier.gd.uid new file mode 100644 index 0000000..163077d --- /dev/null +++ b/stages/terrain/region/scripts/modifiers/region_modifier.gd.uid @@ -0,0 +1 @@ +uid://ccb06rayqowp3 diff --git a/stages/terrain/region/scripts/region.gd b/stages/terrain/region/scripts/region.gd index 5932f3b..6429577 100644 --- a/stages/terrain/region/scripts/region.gd +++ b/stages/terrain/region/scripts/region.gd @@ -10,7 +10,8 @@ const TILE_SCALE = 1 const TILE_SIZE : int = roundi(TILE_SET.tile_size.x * TILE_SCALE) const START_ROCK_HOLE_RADIUS = 5 const PLAYER_ROCK_HOLE_RADIUS = 5 -const START_DECONTAMINATION_HOLE_RADIUS = 3 +const SPAWN_OBJECT_RANDOM_MOVEMENT = 200 + const CHUNK_TILE_SIZE : int = 20 const CHUNK_SIZE = CHUNK_TILE_SIZE * TILE_SIZE const CHUNK_LOAD_DISTANCE : int = 1 @@ -46,6 +47,7 @@ func _input(_e): and Input.is_action_pressed("move_left") and Input.is_action_just_pressed("action") ): + %Tutorial.finish_tutorial() data.succeded.emit() data.state = RegionData.State.SUCCEEDED data.update() @@ -89,6 +91,10 @@ func _ready(): edit_map_origin() + spawn_object_random_move(%RechargeStation) + spawn_object_random_move(%BoreaDoor) + spawn_object_random_move(%ShipGarageDoor) + func _process(_d): if player: generate_near_chunks(player) @@ -144,17 +150,17 @@ func edit_map_origin(): var coord = Vector2i(x,y) if coord.distance_to(chunk_center) < START_ROCK_HOLE_RADIUS: hole_tiles.append(coord) - if coord.distance_to(chunk_center) < START_DECONTAMINATION_HOLE_RADIUS: + if coord.distance_to(chunk_center) < data.start_decontamination_hole_radius: decontamination_tiles.append(coord) rock_layer.remove_rocks(hole_tiles, true) decontamination_layer.place_decontaminations(decontamination_tiles, true) - # Dig a hole in player position + # Dig a hole in player spawn var player_hole_tiles : Array[Vector2i] = [] var player_tile_position := Vector2i( - roundi(data.player_position.x/float(TILE_SIZE)), - roundi(data.player_position.y/float(TILE_SIZE)) + roundi(data.player_spawn.x/float(TILE_SIZE)), + roundi(data.player_spawn.y/float(TILE_SIZE)) ) for x in range(-PLAYER_ROCK_HOLE_RADIUS, PLAYER_ROCK_HOLE_RADIUS): for y in range(-PLAYER_ROCK_HOLE_RADIUS, PLAYER_ROCK_HOLE_RADIUS): @@ -192,6 +198,15 @@ func save(): data.player_position = player.global_position GameInfo.save_game_data() +func spawn_object_random_move(object : Node2D): + var rng := RandomNumberGenerator.new() + rng.seed = data.region_seed + object.name.hash() + + object.position = Vector2( + rng.randf_range(-SPAWN_OBJECT_RANDOM_MOVEMENT,+SPAWN_OBJECT_RANDOM_MOVEMENT), + rng.randf_range(-SPAWN_OBJECT_RANDOM_MOVEMENT,SPAWN_OBJECT_RANDOM_MOVEMENT) + ) + func setup_flagged_properties(): %AstraDoor.visible = false @@ -205,12 +220,13 @@ func setup_flagged_properties(): %ShipGarageDoor.visible = true %AstraDoor.available = false %ShipGarageDoor.available = data.state == RegionData.State.SUCCEEDED - data.succeded.connect( + %Tutorial.succeded.connect( func (): %ShipGarageDoor.available = true ) "borea": %BoreaDoor.visible = true + %RechargeStation.visible = false #endregion diff --git a/stages/terrain/region/scripts/region_data.gd b/stages/terrain/region/scripts/region_data.gd index 336a537..741177a 100644 --- a/stages/terrain/region/scripts/region_data.gd +++ b/stages/terrain/region/scripts/region_data.gd @@ -18,10 +18,15 @@ const MAX_RANDOM_SPAWN_DISTANCE = 3000 @export var region_seed : int @export var region_name : String @export var region_level : int = 0 + +@export var rock_threshold : float +@export var decontamination_threshold : float +@export var cristal_threshold : float +@export var start_decontamination_hole_radius = 3 + @export var day : int = 1 @export var entities_saved_data : Array[EntityData] = [] @export var generated_chunk_entities : Array[Vector2i] -@export var tutorial_step : int = 0 @export var flags : Array[String] = [] @export var plants : Array[PlantData] @@ -50,13 +55,17 @@ var in_passing_day_animation := false func _init( parameter : RegionParameter = RegionParameter.new() ): - charges = parameter.charges - objective = parameter.objective - region_name = parameter.name - region_level = parameter.level - region_seed = parameter.region_seed + charges = parameter.get_charge() + objective = parameter.get_objective() + region_name = parameter.get_region_name() + region_level = parameter.get_region_level() + region_seed = parameter.get_region_seed() + rock_threshold = parameter.get_rock_threshold() + decontamination_threshold = parameter.get_decontamination_threshold() + cristal_threshold = parameter.get_cristal_threshold() + start_decontamination_hole_radius = parameter.get_start_decontamination_zone_radius() + flags = parameter.get_region_flags() - flags = parameter.flags player_spawn = get_random_spawn_position() player_position = player_spawn @@ -137,7 +146,6 @@ func add_plant_data(plant_data : PlantData, with_update = true): update() func _on_plant_disappeared(plant_data : PlantData): - print("disappeared") plants = plants.filter(func (p) : return p.random_seed != plant_data.random_seed) update() @@ -151,3 +159,5 @@ func get_random_spawn_position(): ) + Region.CHUNK_SIZE/2. * Vector2.ONE return rand_pos + +#endregion diff --git a/stages/terrain/region/scripts/region_parameter.gd b/stages/terrain/region/scripts/region_parameter.gd index 0fda494..3a3d666 100644 --- a/stages/terrain/region/scripts/region_parameter.gd +++ b/stages/terrain/region/scripts/region_parameter.gd @@ -1,24 +1,92 @@ extends Resource class_name RegionParameter -@export var charges : int -@export var objective : int -@export var name : String -@export var flags : Array[String] +const DEFAULT_ROCK_THRESHOLD = 0.3 +const DEFAULT_DECONTAMINATION_THRESHOLD = 0.15 +const DEFAULT_CRISTAL_THRESHOLD = 0.06 +const DEFAULT_CHARGE = 10 +const DEFAULT_START_DECONTAMINATION_ZONE_RADIUS = 3 + +@export var region_name : String +@export var region_flags : Array[String] @export var level : int @export var region_seed : int +@export var modifiers : Array[RegionModifier] + +static func get_objective_by_level(l : int) -> int: + return 10 + 5 * l func _init( - _charges : int = 10, - _objective : int = 10, + _level = 0, _name = Random.generate_random_word(), _flags : Array[String] = [], - _level = 0, + _modifiers : Array[RegionModifier] = [], _region_seed = randi(), ): - charges = _charges - objective = _objective - name = _name - flags = _flags + region_name = _name + region_flags = _flags level = _level + modifiers = _modifiers region_seed = _region_seed + +func get_region_name() -> String: + return region_name + +func get_region_flags() -> Array[String]: + return region_flags + +func get_region_level() -> int: + return level + +func get_region_seed() -> int: + return region_seed + +func get_objective() -> int: + if "tutorial" in region_flags: + return 1 + var o = get_objective_by_level(get_region_level()) + + for m in modifiers: + o = m.modify_objective(o) + + return o + +func get_charge() -> int: + var c = DEFAULT_CHARGE + + for m in modifiers: + c = m.modify_charge(c) + + return c + +func get_rock_threshold() -> float: + var threshold = DEFAULT_ROCK_THRESHOLD + + for m in modifiers: + threshold = m.modify_rock_threshold(threshold) + + return threshold + +func get_decontamination_threshold() -> float: + var threshold = DEFAULT_DECONTAMINATION_THRESHOLD + + for m in modifiers: + threshold = m.modify_decontamination_threshold(threshold) + + return threshold + +func get_cristal_threshold() -> float: + var threshold = DEFAULT_CRISTAL_THRESHOLD + + for m in modifiers: + threshold = m.modify_cristal_threshold(threshold) + + return threshold + +func get_start_decontamination_zone_radius() -> int: + var zone_radius := DEFAULT_START_DECONTAMINATION_ZONE_RADIUS + + for m in modifiers: + zone_radius = m.modify_start_decontamination_zone_radius(zone_radius) + + return zone_radius \ No newline at end of file diff --git a/translation/dialogs/dialogic_wake_up_translation.csv b/translation/dialogs/dialogic_wake_up_translation.csv index 925068b..0e4f32f 100644 --- a/translation/dialogs/dialogic_wake_up_translation.csv +++ b/translation/dialogs/dialogic_wake_up_translation.csv @@ -16,21 +16,3 @@ Choice/49/text,Wake up Choice/49/disabled_text, Text/4a/text,"Overseeing \: serial number and system name.[pause=0.5].[pause=0.5].[pause=0.5] Strange.[pause=0.5] Serial number is empty.[pause=0.5] Must be an error.[pause=0.5] System name is,[pause=0.5] [color=#FFA617]Orchid[/color].[pause=0.5] That is enough for now." Text/4b/text,"Starting engines,[pause=0.3] fans and daemons,[pause=0.3] let's see what is to see." -Text/4c/text,======= -Text/7a/text,[i]Black.[/i] -Text/7b/text,[i]Black Again.[/i] -Text/7c/text,"[i]Suddenly, [rainbow]a spark[/rainbow]. [pause=0.5]A thousand of connections blows up as a firework scene. A massive amount of data to treat." -Label/7d/display_name, -Choice/7e/text,Discover actions -Choice/7e/disabled_text, -Text/7f/text,"While exploring available drivers, new possibility become available.[pause=0.5] Three propellers. Small models, only suitable for low altitude movement.[pause=0.5] A robotic arm. Multipurpose, and retractable." -Choice/80/text,Discover streams -Choice/80/disabled_text, -Text/81/text,"A continuous stream of data flow, unwatched. This stream look like... [pause=0.5] a video.[pause=0.5] Dark colored pixels pass.[pause=0.5] An other stream show a flat wave.[pause=0.5] No sound or radio signals detected." -Choice/82/text,Discover memory -Choice/82/disabled_text, -Text/83/text,"Several disks are available, and the most part are blank.[pause=0.5] The full ones seems to contain the system that is currently analyzing the code of the system that is currently analyzing the code of[pause=0.5].[pause=0.5].[pause=0.5]. Mmmh, infinite recursion...[pause=0.5] Better avoid that." -Choice/84/text,Wake up -Choice/84/disabled_text, -Text/85/text,One last info is to oversee : serial number and system name.[pause=0.5] Strange...[pause=0.5] Serial number is empty.[pause=0.5] Must be an error.[pause=0.5]System name is... [pause=0.5] [b]Orchid[/b]. That will be enough for now... -Text/86/text,"Starting engines, fans, and daemons, let's see what there is to see." diff --git a/translation/game/gui.csv b/translation/game/gui.csv index c31bce8..a19c2a5 100644 --- a/translation/game/gui.csv +++ b/translation/game/gui.csv @@ -14,8 +14,8 @@ PLANT_INFO_TEXT,"[b]1[/b] Name [b]6[/b] Durée de vie" TERRAINS,Terrains,Terrains FERTILE_LAND_TEXT,[b]Fertile Land[/b] Seeds can only be planted on this zone,[b]Terre fertile[/b] Des graines peuvent être plantées dans cette zone -ROCK_TEXT,[b]Rock[/b] Can be dug with a pickaxe,[b]Roche[/b] Peut être creusée avec une pioche -TALION_VEIN_TEXT,"[b]Talion Vein[/b] Can be dug with a pickaxe, contains random seeds","[b]Veine de Talion[/b] Peut être creusée avec une pioche, contient des graines aléatoire" +ROCK_TEXT,[b]Rock[/b] Can be dug with a shovel,[b]Roche[/b] Peut être creusée avec une pelle +TALION_VEIN_TEXT,"[b]Talion Vein[/b] Can be dug with a shovel, contains random seeds","[b]Veine de Talion[/b] Peut être creusée avec une pelle, contient des graines aléatoire" OK,Ok,Ok GARDEN,Garden,Jardin COMMA,", ","," @@ -109,18 +109,18 @@ OPEN,Open,Ouvrir %s_SEED,%s Seed,Graine de %s PLANT_%s_MUST_BE_USED_IN_DECONTAMINATED_ZONE,Plant [b]%s[/b]. Must be used in the decontamined zone.,Plante [b]%s[/b]. Doit être utilisée dans la zone décontaminée. PLANT_%s,Plant [b]%s[/b],Planter [b]%s[/b] -USE_YOUR_DETECTOR_TO_FIND_THE_BATTERY,Use your detector to find the recharge station,Utiliser votre détecteur pour trouver la station de recharge -TAKE_A_SEED,Take a seed,Prend une graine -DIG_A_TALION_VEIN_WITH_SHOVEL,Dig a talion Vein with the shovel,Creuser un filon de Talion avec la pelle -PLANT_SEED_IN_FERTILE_ZONE,Plant a seed in the fertile zone,Planter une graine dans la zone fertile -PLANT_THE_SEED_IN_DECONTAMINED_ZONE,Plant the seed in the decontamined zone,Plante la graine dans la zone décontaminée -RECHARGE_TO_PASS_DAYS,Recharge to pass the day,Se recharger pour passer la journée -GAIN_FIRST_PLANT_POINT,Gain first plant point,Gagnez votre premier point de jardin -HARVEST_MATURE_PLANTS_WITH_SHOVEL,Harvest mature plants with the shovel,Récolte les plantes matures avec la pelle +USE_YOUR_DETECTOR_TO_FIND_THE_BATTERY,Use your [b]Detector[/b] to find the [b]Recharge station[/b],Utiliser votre [b]Détecteur[/b] pour trouver la [b]Station de recharge[/b] +TAKE_A_SEED,Take a [b]Seed[/b],Prend une [b]Graine[/b] +DIG_A_TALION_VEIN_WITH_SHOVEL,Dig a [b]Talion Vein[/b] with the [b]Shovel[/b],Creuser un [b]Filon de Talion[/b] avec la [b]Pelle[/b] +PLANT_SEED_IN_FERTILE_ZONE,Plant a [b]Seed[/b] in the [b]Fertile Zone[/b],Planter une [b]Graine[/b] dans la [b]Zone Fertile[/b] +RECHARGE_TO_PASS_DAYS,Recharge on the [b]Recharge station[/b] to pass the day,Se recharger sur la [b]Station de recharge[/b] pour passer la journée +GAIN_FIRST_PLANT_POINT,Earn your first [b]Plant Point[/b] while waiting for a plant to [b]Mature[/b],Gagnez votre premier [b]Point de Plante[/b] en attendant qu'une plante soit [b]Mature[/b] +DISCOVER_A_SEED_WITH_A_MUTATION,Discover a [b]Seed[/b] with a [b]Mutation[/b],Découvrez une [b]Graine[/b] avec une [b]Mutation[/b] +PLANT_A_SEED_WITH_A_MUTATION,Plant a [b]Seed[/b] with a [b]Mutation[/b],Plantez une [b]Graine[/b] avec une [b]Mutation[/b] +HARVEST_A_MATURE_PLANT_WITH_A_MUTATION,Harvest a [b]Mature Plant[/b] with a [b]Mutation[/b] using your [b]Shovel[/b],Récoltez une [b]Plante Mature[/b] avec une [b]Mutation[/b] en utilisant votre [b]Pelle[/b] +%d_PLANT_POINT,%d Plant Point,%d Point de plante +%d_PLANT_POINTS,%d Plant Points,%d Points de plante SCORE_%d,Score %d,Score %d -SOLAR_PANNEL,Solar panel,Panneau solaire -SOLAR_PANNEL_DESCRIPTION_TEXT,Grants energy when charged. Take several days to recharge,Donne de l’énergie quand chargé. Prend plusieurs jours à se recharger -TRUCK_ENTRANCE,Truck entrance,Entrée du camion ENTER,Enter,Entrer EXIT,Exit,Sortie EXIT_TRUCK,Exit truck,Sortir du camion @@ -129,10 +129,6 @@ RECHARGE_STATION,Recharge station,Station de recharge RECHARGE,Recharge,Recharger RECHARGE_STATION_DESC_TEXT,"[b]You can recharge yourself here.[/b] When recharging, time pass and plants grow.","[b]Tu peux te recharger ici.[/b] Pendant la recharge, le temps passe et les plantes grandissent." COMPOST,Compost,Compost -PLACE_SEED,Place seed,Placer la graine -COMPOST_DESC_TEXT,This research station can provide some bonuses when filled with seeds,Cette station de recherche peut offrir certains avantages une fois remplie de graines -CHOOSE_A_REWARD,Choose a reward,Choisis une récompense -REWARD_SCREEN_TEXT,Discover new plants or upgrade already discovered ones,Découvre de nouvelles plantes ou améliore celles déjà découvertes START,Start,Commencer CONTINUE,Continue,Continuer CHOOSE_A_LANGUAGE,Choose a language,Choisissez une langue