diff --git a/Game.tscn b/Game.tscn index b6741e8..8c20757 100644 --- a/Game.tscn +++ b/Game.tscn @@ -15,7 +15,7 @@ planter = NodePath("../../Planter") [node name="Camera2D" type="Camera2D" parent="."] -position = Vector2(1477, 1071) +position = Vector2(1679, 1556) script = ExtResource("3_7olyu") [node name="Planter" parent="." node_paths=PackedStringArray("camera") instance=ExtResource("3_qx0o7")] diff --git a/assets/sounds/Dialogue.mp3 b/assets/sounds/Dialogue.mp3 new file mode 100644 index 0000000..e0f67a2 Binary files /dev/null and b/assets/sounds/Dialogue.mp3 differ diff --git a/assets/sounds/Dialogue.mp3.import b/assets/sounds/Dialogue.mp3.import new file mode 100644 index 0000000..b5811d9 --- /dev/null +++ b/assets/sounds/Dialogue.mp3.import @@ -0,0 +1,19 @@ +[remap] + +importer="mp3" +type="AudioStreamMP3" +uid="uid://n7seb2bqfped" +path="res://.godot/imported/Dialogue.mp3-8e95b643defa7624e04ed11704f2ddfb.mp3str" + +[deps] + +source_file="res://assets/sounds/Dialogue.mp3" +dest_files=["res://.godot/imported/Dialogue.mp3-8e95b643defa7624e04ed11704f2ddfb.mp3str"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/export_presets.cfg b/export_presets.cfg index 4334a64..274eacd 100644 --- a/export_presets.cfg +++ b/export_presets.cfg @@ -62,3 +62,45 @@ Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorActi ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue Remove-Item -Recurse -Force '{temp_dir}'" + +[preset.1] + +name="" +platform="Web" +runnable=true +advanced_options=false +dedicated_server=false +custom_features="" +export_filter="all_resources" +include_filter="" +exclude_filter="" +export_path="" +encryption_include_filters="" +encryption_exclude_filters="" +encrypt_pck=false +encrypt_directory=false +script_export_mode=2 + +[preset.1.options] + +custom_template/debug="" +custom_template/release="" +variant/extensions_support=false +variant/thread_support=false +vram_texture_compression/for_desktop=true +vram_texture_compression/for_mobile=false +html/export_icon=true +html/custom_html_shell="" +html/head_include="" +html/canvas_resize_policy=2 +html/focus_canvas_on_start=true +html/experimental_virtual_keyboard=false +progressive_web_app/enabled=false +progressive_web_app/ensure_cross_origin_isolation_headers=true +progressive_web_app/offline_page="" +progressive_web_app/display=1 +progressive_web_app/orientation=0 +progressive_web_app/icon_144x144="" +progressive_web_app/icon_180x180="" +progressive_web_app/icon_512x512="" +progressive_web_app/background_color=Color(0, 0, 0, 1) diff --git a/objects/Planter.tscn b/objects/Planter.tscn index c400624..be90260 100644 --- a/objects/Planter.tscn +++ b/objects/Planter.tscn @@ -25,7 +25,7 @@ wait_time = 0.2 one_shot = true [node name="Robot" parent="." instance=ExtResource("6_of7ri")] -position = Vector2(1439, 1360) +position = Vector2(1964, 1669) [node name="RobotSeed" type="Sprite2D" parent="Robot"] position = Vector2(0, 63) diff --git a/scenes/Gui.tscn b/scenes/Gui.tscn index aa213b8..c4f0a33 100644 --- a/scenes/Gui.tscn +++ b/scenes/Gui.tscn @@ -1,9 +1,20 @@ -[gd_scene load_steps=5 format=3 uid="uid://dha8pa1les53a"] +[gd_scene load_steps=11 format=3 uid="uid://dha8pa1les53a"] [ext_resource type="Script" path="res://scripts/gui.gd" id="1_6gq27"] [ext_resource type="PackedScene" uid="uid://bm8nlb7kmaa6k" path="res://objects/gui/Seed_queue.tscn" id="1_lh8u1"] [ext_resource type="PackedScene" uid="uid://iaf4md4cbwqh" path="res://objects/gui/Seed_card.tscn" id="2_bt3vo"] [ext_resource type="PackedScene" uid="uid://0so4tpnkk8t2" path="res://objects/gui/Scanner_modes.tscn" id="3_bsm7r"] +[ext_resource type="Script" path="res://scripts/tuto.gd" id="5_5h6w8"] +[ext_resource type="Texture2D" uid="uid://dqogq148ksscp" path="res://assets/sprites/robot/walk/frame_01.png" id="5_kwcrh"] +[ext_resource type="Theme" uid="uid://dnebunkx13tbr" path="res://assets/gui/Text.tres" id="6_tw1fh"] +[ext_resource type="AudioStream" uid="uid://n7seb2bqfped" path="res://assets/sounds/Dialogue.mp3" id="8_8y3ei"] + +[sub_resource type="LabelSettings" id="LabelSettings_kryjr"] +font_size = 20 + +[sub_resource type="LabelSettings" id="LabelSettings_y5jk3"] +font_size = 22 +font_color = Color(0.882353, 0.6, 0.145098, 1) [node name="Gui" type="Control"] layout_mode = 3 @@ -38,4 +49,69 @@ mouse_filter = 1 [node name="ScannerModes" parent="MarginContainer" instance=ExtResource("3_bsm7r")] layout_mode = 2 +[node name="Tuto" type="Control" parent="."] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +script = ExtResource("5_5h6w8") + +[node name="ColorRect" type="ColorRect" parent="Tuto"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +color = Color(0.08, 0.0432, 0.0793867, 0.803922) + +[node name="MarginContainer" type="MarginContainer" parent="Tuto"] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/margin_left = 20 +theme_override_constants/margin_top = 20 +theme_override_constants/margin_right = 20 +theme_override_constants/margin_bottom = 20 + +[node name="TextureRect" type="TextureRect" parent="Tuto/MarginContainer"] +custom_minimum_size = Vector2(300, 300) +layout_mode = 2 +size_flags_horizontal = 0 +size_flags_vertical = 8 +texture = ExtResource("5_kwcrh") +expand_mode = 1 +stretch_mode = 5 + +[node name="Text" type="Label" parent="Tuto/MarginContainer"] +custom_minimum_size = Vector2(600, 256.175) +layout_mode = 2 +size_flags_horizontal = 4 +size_flags_vertical = 8 +theme = ExtResource("6_tw1fh") +text = "Hi there ! +Welcome to GJ 238 B, an awesome exoplanet that somehow, dsddsdsd sdsdd sdsd s sdssd sdsdsdsdd dsdddsd" +label_settings = SubResource("LabelSettings_kryjr") +horizontal_alignment = 1 +vertical_alignment = 1 +autowrap_mode = 2 + +[node name="Label2" type="Label" parent="Tuto/MarginContainer"] +layout_mode = 2 +size_flags_horizontal = 8 +size_flags_vertical = 8 +theme = ExtResource("6_tw1fh") +text = "Click to continue" +label_settings = SubResource("LabelSettings_y5jk3") +horizontal_alignment = 1 +vertical_alignment = 1 + +[node name="RobotSpeak" type="AudioStreamPlayer" parent="Tuto"] +stream = ExtResource("8_8y3ei") + [connection signal="scanner_selected" from="MarginContainer/ScannerModes" to="." method="_on_scanner_modes_scanner_selected"] diff --git a/scenes/Map.tscn b/scenes/Map.tscn index 3a62073..2cfe156 100644 --- a/scenes/Map.tscn +++ b/scenes/Map.tscn @@ -17,7 +17,7 @@ shader_parameter/data_texture_size = null shader_parameter/texture_low_threshold = 0.3 shader_parameter/texture_high_threshold = 0.7 shader_parameter/dimension = null -shader_parameter/texture_size = Vector2(384, 216) +shader_parameter/texture_size = Vector2(768, 432) shader_parameter/smooth_change_range = 0.15 shader_parameter/texture_low = ExtResource("6_wj5l3") shader_parameter/texture_medium = ExtResource("7_iuq0o") @@ -38,7 +38,7 @@ shader_parameter/data_texture_size = Vector2(1000, 1000) shader_parameter/texture_low_threshold = 0.01 shader_parameter/texture_high_threshold = 0.711 shader_parameter/dimension = 1 -shader_parameter/texture_size = Vector2(384, 216) +shader_parameter/texture_size = Vector2(768, 432) shader_parameter/smooth_change_range = 0.0 shader_parameter/texture_low = ExtResource("9_wuhlx") shader_parameter/texture_medium = SubResource("GradientTexture1D_hwe6p") @@ -68,25 +68,24 @@ texture_repeat = 2 material = SubResource("ShaderMaterial_4rqj7") color = Color(1, 1, 1, 0) texture_scale = Vector2(5, 5) -polygon = PackedVector2Array(27, 788, 54, 1452, 1715, 1163, 1439, -501, -416, -340) [node name="Animals" type="Node2D" parent="."] y_sort_enabled = true [node name="Animal" parent="Animals" instance=ExtResource("4_pkphc")] -position = Vector2(1905, 566) +position = Vector2(2394, 775) plant_need = "Chardon" [node name="Animal2" parent="Animals" instance=ExtResource("4_pkphc")] -position = Vector2(382, 2220) +position = Vector2(871, 2429) plant_need = "Chardon" [node name="Animal3" parent="Animals" instance=ExtResource("4_pkphc")] -position = Vector2(1847, 2248) +position = Vector2(2336, 2457) plant_need = "Buisson" [node name="Animal4" parent="Animals" instance=ExtResource("4_pkphc")] -position = Vector2(536, 548) +position = Vector2(1025, 757) plant_need = "Chene" [connection signal="liberated" from="Animals/Animal" to="." method="_on_animal_liberated"] diff --git a/scripts/terrain.gd b/scripts/terrain.gd index dd269e1..0d74151 100644 --- a/scripts/terrain.gd +++ b/scripts/terrain.gd @@ -4,7 +4,7 @@ enum Stats {WATER, FERTILITY, PRESENCE} const TERRAIN_SIZE = Vector2i(300, 300) const LEVELS_NUMBER : int = 20 -const MAP_RATIO = 8; +const MAP_RATIO = 10; @onready var image := Image.create_empty( TERRAIN_SIZE.x, diff --git a/scripts/tuto.gd b/scripts/tuto.gd new file mode 100644 index 0000000..409fadd --- /dev/null +++ b/scripts/tuto.gd @@ -0,0 +1,32 @@ +extends Control + +var texts = [ + "Hi there !", + "Welcome to GJ 238 b, it was a nice and hospitable exoplanet, but the humans settled in and ruined this place.", + "Now nothing grows, and the animals won't show up !", + "You got to help me with this, I prepared a lot of seeds, you just have to click and I'll plant.", + "The problem is that the place is quite inhospitable, each plant needs a special amount of water, a certain quality of ground (the fertility), and more or less space (population).", + "You have to place these plants in a special order, like the little ones first, for example.", + "The trees at the corner of the map are where the animals are hiding, it need a certain amount of vegetation around them to go out.", + "You can move on the map with the arrows (maj for maximal speed!), or you can click and grab with the mouse middle button.", + "Take advantage of the scanners at the top of the screen if you're lost.", + "Oh, I almost forgot, you can skip a seed with the right click if you want!", + "Let's help those animals!", +] + +var cursor = 0 + +func _ready(): + next_text() + $RobotSpeak.playing = true + +func _input(event): + if event.is_action_pressed("plant"): + next_text() + +func next_text(): + if cursor >= len(texts): + hide() + else: + $MarginContainer/Text.text = texts[cursor] + cursor += 1