From 309496c9008147b897e0a02ab9b2b9c277085ed6 Mon Sep 17 00:00:00 2001 From: Dukantic Date: Sat, 18 Jan 2025 10:43:11 +0100 Subject: [PATCH] trop de chose jpp --- font/OldLondon.ttf | Bin 0 -> 50244 bytes font/OldLondon.ttf.import | 34 +++++ font/Olondon_.otf | Bin 0 -> 42500 bytes font/Olondon_.otf.import | 34 +++++ icon.svg | 1 + icon.svg.import | 38 ++++++ model/icon.svg.import | 6 +- project.godot | 16 +++ scene/check_point.tscn | 22 ++++ scene/fire.tscn | 48 +++++++ scene/gpu_particles_3d.tscn | 20 +++ scene/menu.tscn | 172 +++++++++++++++++++++++++ scene/player.tscn | 64 ++++++++- scene/scene_manager/scene_manager.tscn | 4 +- scene/walk_zone.tscn | 42 +++++- script/check_point.gd | 11 ++ script/menu.gd | 12 ++ script/player.gd | 21 +-- theme/label_theme.tres | 22 ++++ 19 files changed, 546 insertions(+), 21 deletions(-) create mode 100644 font/OldLondon.ttf create mode 100644 font/OldLondon.ttf.import create mode 100644 font/Olondon_.otf create mode 100644 font/Olondon_.otf.import create mode 100644 icon.svg create mode 100644 icon.svg.import create mode 100644 scene/check_point.tscn create mode 100644 scene/fire.tscn create mode 100644 scene/gpu_particles_3d.tscn create mode 100644 scene/menu.tscn create mode 100644 script/check_point.gd create mode 100644 script/menu.gd create mode 100644 theme/label_theme.tres diff --git a/font/OldLondon.ttf b/font/OldLondon.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f24a3401d6ec8d571f14faed8748724dfc99deb7 GIT binary patch literal 50244 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 literal 0 HcmV?d00001 diff --git a/font/OldLondon.ttf.import b/font/OldLondon.ttf.import new file mode 100644 index 0000000..1de39e5 --- /dev/null +++ b/font/OldLondon.ttf.import @@ -0,0 +1,34 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://f0ihd5tib5ta" +path="res://.godot/imported/OldLondon.ttf-9add956f90f3fc5f5b97c9e5ce62b0b8.fontdata" + +[deps] + +source_file="res://font/OldLondon.ttf" +dest_files=["res://.godot/imported/OldLondon.ttf-9add956f90f3fc5f5b97c9e5ce62b0b8.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +hinting=1 +subpixel_positioning=1 +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/font/Olondon_.otf b/font/Olondon_.otf new file mode 100644 index 0000000000000000000000000000000000000000..9a68b2061c9fb29b90c0e0e406d7049ebb5867da GIT binary patch literal 42500 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 Zpxo_n|I?6n9-M==<@3e`0xP84^nWL&ibVhb literal 0 HcmV?d00001 diff --git a/font/Olondon_.otf.import b/font/Olondon_.otf.import new file mode 100644 index 0000000..06cae48 --- /dev/null +++ b/font/Olondon_.otf.import @@ -0,0 +1,34 @@ +[remap] + +importer="font_data_dynamic" +type="FontFile" +uid="uid://4wtgmfk7f8ft" +path="res://.godot/imported/Olondon_.otf-10ee96174529a74a7a706e744b604e10.fontdata" + +[deps] + +source_file="res://font/Olondon_.otf" +dest_files=["res://.godot/imported/Olondon_.otf-10ee96174529a74a7a706e744b604e10.fontdata"] + +[params] + +Rendering=null +antialiasing=1 +generate_mipmaps=false +disable_embedded_bitmaps=true +multichannel_signed_distance_field=false +msdf_pixel_range=8 +msdf_size=48 +allow_system_fallback=true +force_autohinter=false +hinting=1 +subpixel_positioning=1 +oversampling=0.0 +Fallbacks=null +fallbacks=[] +Compress=null +compress=true +preload=[] +language_support={} +script_support={} +opentype_features={} diff --git a/icon.svg b/icon.svg new file mode 100644 index 0000000..9d8b7fa --- /dev/null +++ b/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/icon.svg.import b/icon.svg.import new file mode 100644 index 0000000..c917de3 --- /dev/null +++ b/icon.svg.import @@ -0,0 +1,38 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cjk4qfq352fdp" +path.s3tc="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.s3tc.ctex" +metadata={ +"imported_formats": ["s3tc_bptc"], +"vram_texture": true +} + +[deps] + +source_file="res://icon.svg" +dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.s3tc.ctex"] + +[params] + +compress/mode=2 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=true +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=0 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/model/icon.svg.import b/model/icon.svg.import index 39a2f69..e7502ca 100644 --- a/model/icon.svg.import +++ b/model/icon.svg.import @@ -3,7 +3,7 @@ importer="texture" type="CompressedTexture2D" uid="uid://pr42rnokdw6w" -path.s3tc="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.s3tc.ctex" +path.s3tc="res://.godot/imported/icon.svg-f0f35bacca6aee2c00fc65ada495bf54.s3tc.ctex" metadata={ "imported_formats": ["s3tc_bptc"], "vram_texture": true @@ -11,8 +11,8 @@ metadata={ [deps] -source_file="res://icon.svg" -dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.s3tc.ctex"] +source_file="res://model/icon.svg" +dest_files=["res://.godot/imported/icon.svg-f0f35bacca6aee2c00fc65ada495bf54.s3tc.ctex"] [params] diff --git a/project.godot b/project.godot index d1f10ce..7929f7c 100644 --- a/project.godot +++ b/project.godot @@ -15,6 +15,12 @@ run/main_scene="res://scene/scene_manager/scene_manager.tscn" config/features=PackedStringArray("4.3", "Forward Plus") config/icon="res://icon.svg" +[display] + +window/size/viewport_width=1920 +window/size/viewport_height=1080 +window/size/mode=3 + [input] up={ @@ -37,3 +43,13 @@ right={ "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null) ] } +interact={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":69,"key_label":0,"unicode":101,"location":0,"echo":false,"script":null) +] +} +enter={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194309,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} diff --git a/scene/check_point.tscn b/scene/check_point.tscn new file mode 100644 index 0000000..b5a326b --- /dev/null +++ b/scene/check_point.tscn @@ -0,0 +1,22 @@ +[gd_scene load_steps=4 format=3 uid="uid://du08nv2jrl6vr"] + +[ext_resource type="Script" path="res://script/check_point.gd" id="1_kjo7t"] + +[sub_resource type="CylinderShape3D" id="CylinderShape3D_r3do8"] +radius = 2.0 + +[sub_resource type="BoxMesh" id="BoxMesh_3wcn3"] + +[node name="check_point" type="Node3D"] +script = ExtResource("1_kjo7t") + +[node name="Area3D" type="Area3D" parent="."] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"] +shape = SubResource("CylinderShape3D_r3do8") + +[node name="MeshInstance3D" type="MeshInstance3D" parent="."] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.65283, 0) +mesh = SubResource("BoxMesh_3wcn3") + +[connection signal="body_entered" from="Area3D" to="." method="_on_area_3d_body_entered"] diff --git a/scene/fire.tscn b/scene/fire.tscn new file mode 100644 index 0000000..216aacc --- /dev/null +++ b/scene/fire.tscn @@ -0,0 +1,48 @@ +[gd_scene load_steps=6 format=3 uid="uid://dkclufjwe5k81"] + +[sub_resource type="Curve" id="Curve_3ng4l"] +max_value = 100.0 +_data = [Vector2(0.00724638, 0), 0.0, 0.0, 0, 0, Vector2(0.521739, 7.69231), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] +point_count = 3 + +[sub_resource type="CurveTexture" id="CurveTexture_o85q3"] +curve = SubResource("Curve_3ng4l") + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_n4e37"] +emission_shape = 1 +emission_sphere_radius = 0.5 +gravity = Vector3(0, 1, 0) +damping_max = 0.1 +damping_curve = SubResource("CurveTexture_o85q3") +turbulence_noise_strength = 0.67 +turbulence_noise_scale = 8.552 +turbulence_influence_min = 0.035 +turbulence_influence_max = 0.333 + +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_im1w3"] +blend_mode = 1 +albedo_color = Color(1, 0.478431, 0.247059, 1) +metallic = 1.0 +emission_enabled = true +emission = Color(0.854902, 0.192157, 0, 1) +emission_energy_multiplier = 11.16 +ao_light_affect = 1.0 +heightmap_scale = 5.16 +heightmap_deep_parallax = true +heightmap_min_layers = 8 +heightmap_max_layers = 32 +subsurf_scatter_strength = 0.5 +billboard_mode = 1 + +[sub_resource type="QuadMesh" id="QuadMesh_nbxiu"] +material = SubResource("StandardMaterial3D_im1w3") +size = Vector2(0.1, 0.1) + +[node name="GPUParticles3D" type="GPUParticles3D"] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.709307, -2.75428) +amount = 1000 +process_material = SubResource("ParticleProcessMaterial_n4e37") +draw_pass_1 = SubResource("QuadMesh_nbxiu") + +[node name="OmniLight3D" type="OmniLight3D" parent="."] +light_color = Color(1, 0.156863, 0.258824, 1) diff --git a/scene/gpu_particles_3d.tscn b/scene/gpu_particles_3d.tscn new file mode 100644 index 0000000..d8e0f8d --- /dev/null +++ b/scene/gpu_particles_3d.tscn @@ -0,0 +1,20 @@ +[gd_scene load_steps=3 format=3 uid="uid://b5rkwb64wgdwf"] + +[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_wf2yo"] +emission_shape_scale = Vector3(0.1, 0.1, 0.1) +emission_shape = 1 +emission_sphere_radius = 1.0 +gravity = Vector3(0, -20, 0) +turbulence_enabled = true +turbulence_noise_strength = 0.1 +turbulence_noise_scale = 0.1 + +[sub_resource type="SphereMesh" id="SphereMesh_gj8tf"] +radius = 0.05 +height = 0.1 + +[node name="GPUParticles3D" type="GPUParticles3D"] +amount = 50 +fixed_fps = 60 +process_material = SubResource("ParticleProcessMaterial_wf2yo") +draw_pass_1 = SubResource("SphereMesh_gj8tf") diff --git a/scene/menu.tscn b/scene/menu.tscn new file mode 100644 index 0000000..6e1358f --- /dev/null +++ b/scene/menu.tscn @@ -0,0 +1,172 @@ +[gd_scene load_steps=12 format=3 uid="uid://c2gu8o8o51vg5"] + +[ext_resource type="Script" path="res://script/menu.gd" id="1_1kybs"] +[ext_resource type="Theme" uid="uid://dwtios6w33wxq" path="res://theme/label_theme.tres" id="1_2ombm"] +[ext_resource type="PackedScene" uid="uid://dkclufjwe5k81" path="res://scene/fire.tscn" id="1_6aad5"] +[ext_resource type="PackedScene" uid="uid://brc445tt624lb" path="res://scene/walk_zone.tscn" id="2_eebxe"] + +[sub_resource type="Animation" id="Animation_8wtfs"] +resource_name = "alpha" +length = 2.0 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Label2:modulate") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 1, 1.96667), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 0.588235), Color(1, 1, 1, 1)] +} + +[sub_resource type="Animation" id="Animation_v5m7m"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Label2:modulate") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Color(1, 1, 1, 1)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_wg61s"] +_data = { +"RESET": SubResource("Animation_v5m7m"), +"alpha": SubResource("Animation_8wtfs") +} + +[sub_resource type="Environment" id="Environment_htum7"] +background_mode = 1 + +[sub_resource type="Animation" id="Animation_hybxa"] +resource_name = "cam" +length = 10.0 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Camera3D:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 5, 10), +"transitions": PackedFloat32Array(1, 1, 1), +"update": 0, +"values": [Vector3(0, 0, 0), Vector3(0, 3.14159, 0), Vector3(0, 6.28319, 0)] +} + +[sub_resource type="Animation" id="Animation_skmei"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Camera3D:rotation") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 0, 0)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_4f4ub"] +_data = { +"RESET": SubResource("Animation_skmei"), +"cam": SubResource("Animation_hybxa") +} + +[node name="menu" type="Node3D"] +script = ExtResource("1_1kybs") +next_scene = ExtResource("2_eebxe") + +[node name="CanvasLayer" type="CanvasLayer" parent="."] + +[node name="Control" type="Control" parent="CanvasLayer"] +layout_mode = 3 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="Label" type="Label" parent="CanvasLayer/Control"] +texture_filter = 1 +layout_mode = 1 +anchors_preset = 5 +anchor_left = 0.5 +anchor_right = 0.5 +offset_left = -960.0 +offset_right = 960.0 +offset_bottom = 106.0 +grow_horizontal = 2 +size_flags_vertical = 0 +theme = ExtResource("1_2ombm") +text = "Idiot du Village" +horizontal_alignment = 1 +language = "fr" + +[node name="Label2" type="Label" parent="CanvasLayer/Control"] +texture_filter = 1 +layout_mode = 1 +anchors_preset = 3 +anchor_left = 1.0 +anchor_top = 1.0 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_left = -40.0 +offset_top = -123.0 +grow_horizontal = 0 +grow_vertical = 0 +theme = ExtResource("1_2ombm") +theme_override_font_sizes/font_size = 60 +text = "Enter to play" + +[node name="AnimationPlayer" type="AnimationPlayer" parent="CanvasLayer/Control"] +libraries = { +"": SubResource("AnimationLibrary_wg61s") +} +autoplay = "alpha" + +[node name="Camera3D" type="Camera3D" parent="."] + +[node name="WorldEnvironment" type="WorldEnvironment" parent="."] +environment = SubResource("Environment_htum7") + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="WorldEnvironment"] +transform = Transform3D(1, 0, 0, 0, -0.986592, 0.163205, 0, -0.163205, -0.986592, 0, 2.40267, 0) + +[node name="particules" type="Node3D" parent="."] + +[node name="GPUParticles3D" parent="particules" instance=ExtResource("1_6aad5")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.44599, 0, -5.21693) + +[node name="GPUParticles3D2" parent="particules" instance=ExtResource("1_6aad5")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.47625, 0, -3.69451) + +[node name="GPUParticles3D3" parent="particules" instance=ExtResource("1_6aad5")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.81808, 0, 3.34902) + +[node name="GPUParticles3D4" parent="particules" instance=ExtResource("1_6aad5")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.80073, 0, 3.16702) + +[node name="GPUParticles3D5" parent="particules" instance=ExtResource("1_6aad5")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.81678, 0, -2.43886) + +[node name="GPUParticles3D6" parent="particules" instance=ExtResource("1_6aad5")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.08262, 0, 5.66669) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +libraries = { +"": SubResource("AnimationLibrary_4f4ub") +} +autoplay = "cam" +speed_scale = 0.1 diff --git a/scene/player.tscn b/scene/player.tscn index 640f54f..f7d0fd3 100644 --- a/scene/player.tscn +++ b/scene/player.tscn @@ -1,13 +1,60 @@ -[gd_scene load_steps=3 format=3 uid="uid://c74354tlmcg6h"] +[gd_scene load_steps=9 format=3 uid="uid://c74354tlmcg6h"] [ext_resource type="Script" path="res://script/player.gd" id="1_kjuyr"] +[ext_resource type="PackedScene" uid="uid://b5rkwb64wgdwf" path="res://scene/gpu_particles_3d.tscn" id="2_ctykj"] [sub_resource type="CapsuleShape3D" id="CapsuleShape3D_d8bnp"] -[node name="CharacterBody3D" type="CharacterBody3D" node_paths=PackedStringArray("head")] +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ohrfw"] +albedo_color = Color(1, 0, 1, 1) + +[sub_resource type="CapsuleMesh" id="CapsuleMesh_ha068"] +radius = 0.1 + +[sub_resource type="Animation" id="Animation_njhrs"] +resource_name = "finger" +length = 3.0 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("GPUParticles3D:visible") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 2.96667), +"transitions": PackedFloat32Array(1, 1), +"update": 1, +"values": [true, false] +} + +[sub_resource type="Animation" id="Animation_1p8b7"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("GPUParticles3D:visible") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [false] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_jrykd"] +_data = { +"RESET": SubResource("Animation_1p8b7"), +"finger": SubResource("Animation_njhrs") +} + +[node name="CharacterBody3D" type="CharacterBody3D" node_paths=PackedStringArray("head", "anim", "particules")] script = ExtResource("1_kjuyr") SENSI = 0.002 +SPEED_PARTICULES = 50.0 head = NodePath("head") +anim = NodePath("AnimationPlayer") +particules = NodePath("GPUParticles3D") [node name="CollisionShape3D" type="CollisionShape3D" parent="."] shape = SubResource("CapsuleShape3D_d8bnp") @@ -19,3 +66,16 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.65, 0) transform = Transform3D(1, 7.81702e-05, -0.000170007, -7.81212e-05, 1, 0.000294683, 0.000170029, -0.00029467, 1, 0, 0, -1) [node name="Camera3D" type="Camera3D" parent="head"] + +[node name="MeshInstance3D" type="MeshInstance3D" parent="."] +material_override = SubResource("StandardMaterial3D_ohrfw") +mesh = SubResource("CapsuleMesh_ha068") + +[node name="GPUParticles3D" parent="." instance=ExtResource("2_ctykj")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.424, 0) +visible = false + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +libraries = { +"": SubResource("AnimationLibrary_jrykd") +} diff --git a/scene/scene_manager/scene_manager.tscn b/scene/scene_manager/scene_manager.tscn index f6b3ed1..2b6866c 100644 --- a/scene/scene_manager/scene_manager.tscn +++ b/scene/scene_manager/scene_manager.tscn @@ -1,8 +1,8 @@ [gd_scene load_steps=3 format=3 uid="uid://uo5bppg214ci"] [ext_resource type="Script" path="res://scene/scene_manager/scene_manager.gd" id="1_qulgr"] -[ext_resource type="PackedScene" uid="uid://brc445tt624lb" path="res://scene/walk_zone.tscn" id="2_elo70"] +[ext_resource type="PackedScene" uid="uid://c2gu8o8o51vg5" path="res://scene/menu.tscn" id="2_ls0hp"] [node name="scene_manager" type="Node"] script = ExtResource("1_qulgr") -first_scene = ExtResource("2_elo70") +first_scene = ExtResource("2_ls0hp") diff --git a/scene/walk_zone.tscn b/scene/walk_zone.tscn index b796dd9..e391501 100644 --- a/scene/walk_zone.tscn +++ b/scene/walk_zone.tscn @@ -1,9 +1,10 @@ -[gd_scene load_steps=6 format=3 uid="uid://brc445tt624lb"] +[gd_scene load_steps=10 format=3 uid="uid://brc445tt624lb"] -[ext_resource type="Texture2D" uid="uid://pr42rnokdw6w" path="res://icon.svg" id="1_hg70h"] +[ext_resource type="Texture2D" uid="uid://pr42rnokdw6w" path="res://model/icon.svg" id="1_hg70h"] [ext_resource type="PackedScene" uid="uid://c74354tlmcg6h" path="res://scene/player.tscn" id="1_ka8xa"] +[ext_resource type="PackedScene" uid="uid://du08nv2jrl6vr" path="res://scene/check_point.tscn" id="4_yoxfn"] -[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_2quhp"] +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_5mtg0"] albedo_texture = ExtResource("1_hg70h") [sub_resource type="PlaneMesh" id="PlaneMesh_2hvdi"] @@ -12,10 +13,24 @@ size = Vector2(500, 500) [sub_resource type="ConvexPolygonShape3D" id="ConvexPolygonShape3D_0l50f"] points = PackedVector3Array(-250, 0, -250, -250, 0, 250, 250, 0, -250, 250, 0, 250) +[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_kjfb3"] +sky_top_color = Color(0.35532, 0.438306, 0.667525, 1) +sky_horizon_color = Color(0.545166, 0.602338, 0.721653, 1) + +[sub_resource type="Sky" id="Sky_hj0r3"] +sky_material = SubResource("ProceduralSkyMaterial_kjfb3") + +[sub_resource type="Environment" id="Environment_6suym"] +background_mode = 2 +sky = SubResource("Sky_hj0r3") +ambient_light_source = 3 +ambient_light_color = Color(0.371645, 0.450792, 0.92621, 1) +volumetric_fog_density = 0.1 + [node name="walk_zone" type="Node3D"] [node name="MeshInstance3D" type="MeshInstance3D" parent="."] -material_override = SubResource("StandardMaterial3D_2quhp") +material_override = SubResource("StandardMaterial3D_5mtg0") mesh = SubResource("PlaneMesh_2hvdi") [node name="StaticBody3D" type="StaticBody3D" parent="MeshInstance3D"] @@ -23,5 +38,20 @@ mesh = SubResource("PlaneMesh_2hvdi") [node name="CollisionShape3D" type="CollisionShape3D" parent="MeshInstance3D/StaticBody3D"] shape = SubResource("ConvexPolygonShape3D_0l50f") -[node name="CharacterBody3D" parent="." instance=ExtResource("1_ka8xa")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.37761, 10.7052, 2.9378) +[node name="CharacterBody3D" parent="." node_paths=PackedStringArray("checkpoint") instance=ExtResource("1_ka8xa")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.37761, 2.14163, 2.9378) +checkpoint = NodePath("../check_point") + +[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] +transform = Transform3D(0.940205, -0.340609, 0, 0.306962, 0.847325, 0.433376, -0.147612, -0.407462, 0.901213, -0.082201, 19.8035, 0) +light_energy = 0.5 + +[node name="WorldEnvironment" type="WorldEnvironment" parent="."] +environment = SubResource("Environment_6suym") + +[node name="check_point" parent="." node_paths=PackedStringArray("next_check") instance=ExtResource("4_yoxfn")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -18.1701, 0.919088, 15.1429) +next_check = NodePath("../check_point2") + +[node name="check_point2" parent="." instance=ExtResource("4_yoxfn")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -42.8789, 0.91909, 12.6078) diff --git a/script/check_point.gd b/script/check_point.gd new file mode 100644 index 0000000..3127b11 --- /dev/null +++ b/script/check_point.gd @@ -0,0 +1,11 @@ +extends Node3D + +@export var next_check : Node3D = null +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + pass # Replace with function body. + + +func _on_area_3d_body_entered(body: Node3D) -> void: + if (body is CharacterBody3D): + body.set("checkpoint", next_check) diff --git a/script/menu.gd b/script/menu.gd new file mode 100644 index 0000000..db985db --- /dev/null +++ b/script/menu.gd @@ -0,0 +1,12 @@ +extends Node3D + +@export var next_scene: PackedScene = null +var scene_manager: Node = null + +func _ready() -> void: + scene_manager = get_tree().root.get_node("scene_manager") + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(_delta: float) -> void: + if(Input.is_action_just_pressed("enter")): + scene_manager.emit_signal("change_scene_signal", next_scene) diff --git a/script/player.gd b/script/player.gd index 2837d28..dadf5fb 100644 --- a/script/player.gd +++ b/script/player.gd @@ -3,19 +3,15 @@ extends CharacterBody3D @export var SPEED: float = 10.0 @export var SENSI : float = 0.005 +@export var SPEED_PARTICULES: float = 1; +@export var checkpoint:Node3D = null @export_group("Children") @export var head: Node3D +@export var anim: AnimationPlayer +@export var particules: GPUParticles3D -var life: float = 100 -var delay_shot:float = 0 -var bullets:int = 11 -var reloading:bool = false -var current_time_reloading: float = 0 -var bump: Vector3 = Vector3.ZERO -var current_song = 0 - func _ready() -> void: Input.mouse_mode = Input.MOUSE_MODE_CAPTURED @@ -35,6 +31,15 @@ func _physics_process(delta: float) -> void: velocity += get_gravity() * delta * 2 else: velocity += get_gravity() * delta * 3 + + if (Input.is_action_just_pressed("interact")): + var vect + if(checkpoint == null): + vect = Vector3.DOWN * SPEED_PARTICULES + else: + vect = (checkpoint.position - position).normalized() * SPEED_PARTICULES + particules.process_material.set("gravity", vect) + anim.play("finger") var input_dir := Input.get_vector("left", "right", "up", "down") var direction := (transform.basis * Vector3(input_dir.x, 0, input_dir.y)).normalized() diff --git a/theme/label_theme.tres b/theme/label_theme.tres new file mode 100644 index 0000000..2bffeab --- /dev/null +++ b/theme/label_theme.tres @@ -0,0 +1,22 @@ +[gd_resource type="Theme" load_steps=3 format=3 uid="uid://dwtios6w33wxq"] + +[ext_resource type="FontFile" uid="uid://4wtgmfk7f8ft" path="res://font/Olondon_.otf" id="1_1xv54"] + +[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_gkci6"] +content_margin_left = 25.0 +content_margin_top = 100.0 +content_margin_right = 25.0 +content_margin_bottom = 50.0 + +[resource] +Label/colors/font_color = Color(1, 1, 1, 1) +Label/colors/font_outline_color = Color(0, 0, 0, 1) +Label/colors/font_shadow_color = Color(0.306923, 0.306923, 0.306923, 0.729412) +Label/constants/line_spacing = 3 +Label/constants/outline_size = 9 +Label/constants/shadow_offset_x = 6 +Label/constants/shadow_offset_y = 0 +Label/constants/shadow_outline_size = 0 +Label/font_sizes/font_size = 132 +Label/fonts/font = ExtResource("1_1xv54") +Label/styles/normal = SubResource("StyleBoxEmpty_gkci6")