feat: final bits

This commit is contained in:
Sara 2025-06-16 00:14:02 +02:00
parent d64c8d2b61
commit cebae80b5c
34 changed files with 1827 additions and 373 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cmalrvf32s8n5"
path.s3tc="res://.godot/imported/cracked_wall_albedo.png-767e5a5776c40beaadf0588718232b85.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://materials/cracked_wall_albedo.png"
dest_files=["res://.godot/imported/cracked_wall_albedo.png-767e5a5776c40beaadf0588718232b85.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 MiB

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cfqdvwgcjlc43"
path.s3tc="res://.godot/imported/cracked_wall_normal.png-3d5b7731e2017c2cef47b652c6b29709.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://materials/cracked_wall_normal.png"
dest_files=["res://.godot/imported/cracked_wall_normal.png-3d5b7731e2017c2cef47b652c6b29709.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=1
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=1
roughness/src_normal="res://materials/cracked_wall_normal.png"
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

Binary file not shown.

View file

@ -0,0 +1,53 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://bhccbn5c7dhf7"
path="res://.godot/imported/pinecone.blend-c2d0c29f160504a2dc411ce16440c4f1.scn"
[deps]
source_file="res://models/pickups/pinecone.blend"
dest_files=["res://.godot/imported/pinecone.blend-c2d0c29f160504a2dc411ce16440c4f1.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_node_type_suffixes=true
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
_subresources={}
blender/nodes/visible=0
blender/nodes/active_collection_only=false
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/export_geometry_nodes_instances=false
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,53 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://clspx5suh5ywx"
path="res://.godot/imported/bash_attack.blend-90f832255602d0bdc2808179415d7da7.scn"
[deps]
source_file="res://models/player/bash_attack.blend"
dest_files=["res://.godot/imported/bash_attack.blend-90f832255602d0bdc2808179415d7da7.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_node_type_suffixes=true
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
_subresources={}
blender/nodes/visible=0
blender/nodes/active_collection_only=false
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/export_geometry_nodes_instances=false
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,53 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://2yqgpigg0wr8"
path="res://.godot/imported/rock.blend-663fa0dfee57652abb8a8e79b8f6c4e4.scn"
[deps]
source_file="res://models/props/rock.blend"
dest_files=["res://.godot/imported/rock.blend-663fa0dfee57652abb8a8e79b8f6c4e4.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
nodes/use_node_type_suffixes=true
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
meshes/force_disable_compression=false
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
_subresources={}
blender/nodes/visible=0
blender/nodes/active_collection_only=false
blender/nodes/punctual_lights=true
blender/nodes/cameras=true
blender/nodes/custom_properties=true
blender/nodes/modifiers=1
blender/meshes/colors=false
blender/meshes/uvs=true
blender/meshes/normals=true
blender/meshes/export_geometry_nodes_instances=false
blender/meshes/tangents=true
blender/meshes/skins=2
blender/meshes/export_bones_deforming_mesh_only=false
blender/materials/unpack_enabled=true
blender/materials/export_materials=1
blender/animation/limit_playback=true
blender/animation/always_sample=true
blender/animation/group_tracks=true

Binary file not shown.

Binary file not shown.

View file

@ -33,6 +33,12 @@ animation/remove_immutable_tracks=true
animation/import_rest_as_RESET=false
import_script/path=""
_subresources={
"materials": {
"leaf": {
"use_external/enabled": true,
"use_external/path": "uid://bx0x66slifwki"
}
},
"nodes": {
"PATH:entrance": {
"mesh_instance/cast_shadow": 2

Binary file not shown.

View file

@ -0,0 +1,43 @@
[gd_scene load_steps=4 format=3 uid="uid://cxkk7sfkv3otl"]
[ext_resource type="PackedScene" uid="uid://bhccbn5c7dhf7" path="res://models/pickups/pinecone.blend" id="1_f2ibw"]
[sub_resource type="GDScript" id="GDScript_f2ibw"]
script/source = "extends Area3D
func _on_body_entered(body: Node3D) -> void:
if body.is_class(\"PlayerBody\"):
body.can_bash = true
queue_free()
GameUI.get_singleton().display_message(\"Bash through obstacles by pressing (X) during a split-step\")
(body as PlayerBody).save_checkpoint()
func _physics_process(delta):
$pinecone.rotate_y(delta * 2.0)
"
[sub_resource type="SphereShape3D" id="SphereShape3D_4fish"]
radius = 2.22562
[node name="BashPickup" type="Area3D"]
script = SubResource("GDScript_f2ibw")
[node name="pinecone" parent="." instance=ExtResource("1_f2ibw")]
transform = Transform3D(1.62103, 0, 0, 0, 1.62103, 0, 0, 0, 1.62103, 0, 0.235161, 0)
[node name="OmniLight3D" type="OmniLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.79643, 0)
light_color = Color(0.880355, 0.555272, 0, 1)
light_energy = 8.133
omni_range = 3.15575
[node name="OmniLight3D2" type="OmniLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.38918, 0)
light_color = Color(0.880355, 0.555272, 0, 1)
light_energy = 8.133
omni_range = 3.15575
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("SphereShape3D_4fish")
[connection signal="body_entered" from="." to="." method="_on_body_entered"]

View file

@ -0,0 +1,41 @@
[gd_scene load_steps=5 format=3 uid="uid://cbif1o8njtshs"]
[ext_resource type="PackedScene" uid="uid://2yqgpigg0wr8" path="res://models/props/rock.blend" id="1_mofqw"]
[sub_resource type="GDScript" id="GDScript_mofqw"]
script/source = "extends Node3D
func _on_area_3d_body_entered(body: Node3D) -> void:
print(\"Body entered \", body.get_path())
if body.is_class(\"PlayerBody\") and body.get_node(\"PlayerStateMachine\").get_current_state() == \"BashState\":
queue_free()
"
[sub_resource type="BoxShape3D" id="BoxShape3D_yqw6a"]
size = Vector3(6.69, 6.685, 5.35156)
[sub_resource type="BoxShape3D" id="BoxShape3D_mofqw"]
size = Vector3(6.69, 6.685, 5.05249)
[node name="BreakableBoulder" type="Node3D"]
script = SubResource("GDScript_mofqw")
[node name="Area3D" type="Area3D" parent="."]
collision_layer = 2
collision_mask = 2
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.00162, 0)
shape = SubResource("BoxShape3D_yqw6a")
debug_color = Color(0.09, 0.529833, 1, 0.835294)
[node name="StaticBody3D" type="StaticBody3D" parent="."]
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.00162, 0)
shape = SubResource("BoxShape3D_mofqw")
debug_color = Color(0.09, 0.529833, 1, 0.835294)
[node name="rock" parent="." instance=ExtResource("1_mofqw")]
[connection signal="body_entered" from="Area3D" to="." method="_on_area_3d_body_entered"]

View file

@ -0,0 +1,29 @@
[gd_scene load_steps=3 format=3 uid="uid://c6p8iu3mpsbwv"]
[ext_resource type="PackedScene" uid="uid://dqjurq1nq1fle" path="res://objects/tre.tscn" id="1_g0g6w"]
[sub_resource type="GDScript" id="GDScript_g0g6w"]
script/source = "extends Node3D
@export var camera : Camera3D
@export var trees : Array[Node3D]
func _process(delta: float):
pass
"
[node name="GameOverEffect" type="Node3D" node_paths=PackedStringArray("trees")]
script = SubResource("GDScript_g0g6w")
trees = [NodePath("Tree"), NodePath("Tree3"), NodePath("Tree4"), NodePath("Tree2")]
[node name="Tree" parent="." instance=ExtResource("1_g0g6w")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.38125, 0, -6.61966)
[node name="Tree3" parent="." instance=ExtResource("1_g0g6w")]
transform = Transform3D(-0.398413, 0, -0.917206, 0, 1, 0, 0.917206, 0, -0.398413, 2.8449, 0, -4.31524)
[node name="Tree4" parent="." instance=ExtResource("1_g0g6w")]
transform = Transform3D(-0.00326398, 0, -0.999995, 0, 1, 0, 0.999995, 0, -0.00326398, 5.11824, 0, -1.29329)
[node name="Tree2" parent="." instance=ExtResource("1_g0g6w")]
transform = Transform3D(-0.487951, 0, 0.872871, 0, 1, 0, -0.872871, 0, -0.487951, -5.43739, 1.90735e-06, -2.48827)

View file

@ -7,9 +7,9 @@ script/source = "extends Area3D
func _on_body_entered(body: Node3D) -> void:
if body.is_class(\"PlayerBody\"):
body.set_can_jump(true)
body.can_jump = true
queue_free()
GameUI.get_singleton().display_message(\"Jump by pressing F during a split-step\")
GameUI.get_singleton().display_message(\"Jump by pressing (A) during a split-step\")
(body as PlayerBody).save_checkpoint()
func _physics_process(delta):
@ -17,7 +17,7 @@ func _physics_process(delta):
"
[sub_resource type="SphereShape3D" id="SphereShape3D_a2vvy"]
radius = 1.61546
radius = 2.50626
[node name="JumpPickup" type="Area3D"]
script = SubResource("GDScript_a2vvy")

View file

@ -1,6 +1,7 @@
[gd_scene load_steps=5 format=3 uid="uid://dcgsrdacswacl"]
[gd_scene load_steps=6 format=3 uid="uid://dcgsrdacswacl"]
[ext_resource type="PackedScene" uid="uid://cl7a4q5m73vlw" path="res://models/player/character.blend" id="1_eqqp1"]
[ext_resource type="PackedScene" uid="uid://clspx5suh5ywx" path="res://models/player/bash_attack.blend" id="2_uxov2"]
[ext_resource type="PackedScene" uid="uid://dy4yl1paa8whs" path="res://ui/ui.tscn" id="2_ykyjo"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_bxedw"]
@ -27,12 +28,15 @@ func _physics_process(_delta):
[node name="Player" type="PlayerBody"]
physics_interpolation_mode = 1
collision_layer = 2
collision_mask = 3
wall_min_slide_angle = 0.785398
floor_max_angle = 0.460767
floor_snap_length = 0.35
acceleration = 15.0
target_speed = 25.0
split_step_time = 0.35
split_step_stop_time = 0.34
jump_impulse = Vector2(0.9, 5)
[node name="PlayerStateMachine" type="PlayerStateMachine" parent="."]
@ -53,6 +57,10 @@ look_target_height = 1.5
[node name="character" parent="." instance=ExtResource("1_eqqp1")]
unique_name_in_owner = true
[node name="bash_attack" parent="character" instance=ExtResource("2_uxov2")]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 6.60846e-09, 1.19557, 0.0755919)
visible = false
[node name="CanvasLayer" parent="." instance=ExtResource("2_ykyjo")]
[editable path="character"]

View file

@ -17,8 +17,8 @@ config/icon="res://icon.svg"
[display]
window/size/viewport_width=1920
window/size/viewport_height=1080
window/size/viewport_width=1440
window/size/viewport_height=810
window/size/resizable=false
window/vsync/vsync_mode=0
@ -60,6 +60,11 @@ jump={
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":0,"pressure":0.0,"pressed":false,"script":null)
]
}
bash={
"deadzone": 0.2,
"events": [Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":2,"pressure":0.0,"pressed":true,"script":null)
]
}
[layer_names]

File diff suppressed because it is too large Load diff