diff --git a/elements/collectible.tscn b/elements/collectible.tscn new file mode 100644 index 0000000..ba6f319 --- /dev/null +++ b/elements/collectible.tscn @@ -0,0 +1,34 @@ +[gd_scene load_steps=3 format=3 uid="uid://bwxor1n3m4d4a"] + +[sub_resource type="GDScript" id="GDScript_f1obc"] +script/source = "extends Area3D + + +# Called when the node enters the scene tree for the first time. +func _ready() -> void: + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta: float) -> void: + pass + + +func _on_body_entered(body: Node3D) -> void: + print(body, \" !!\") + pass # Replace with function body. +" + +[sub_resource type="SphereShape3D" id="SphereShape3D_lnm1h"] +radius = 1.0 + +[node name="Collectible" type="Area3D"] +script = SubResource("GDScript_f1obc") + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +shape = SubResource("SphereShape3D_lnm1h") + +[node name="CSGSphere3D" type="CSGSphere3D" parent="."] +radius = 1.0 + +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/elements/gravity.tscn b/elements/gravity.tscn index ee46bb0..55bdfba 100644 --- a/elements/gravity.tscn +++ b/elements/gravity.tscn @@ -1,18 +1,17 @@ -[gd_scene load_steps=7 format=3 uid="uid://dw0xl8644x166"] +[gd_scene load_steps=8 format=3 uid="uid://dw0xl8644x166"] [ext_resource type="Texture2D" uid="uid://ctjugvy1v3y6b" path="res://graphics/arrow.svg" id="1_4mbho"] +[ext_resource type="AudioStream" uid="uid://dmdbharecy448" path="res://sounds/gravity.ogg" id="2_5uwlw"] -[sub_resource type="GDScript" id="GDScript_wuka5"] -script/source = "extends HSlider +[sub_resource type="GDScript" id="GDScript_3yq1l"] +script/source = "extends Control -# Maybe change it so it's not a slider, but just a value that... depends on the mouse position? -# Or a value that's only high if the user is pressing shift, à la catch the beat +const normal = 7 +const stronger = normal * 3 -func _on_value_changed(value: float) -> void: - PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, PhysicsServer3D.AREA_PARAM_GRAVITY, value) - -func _on_focus_entered() -> void: - release_focus() +func _process(delta: float) -> void: + var grav = stronger if Input.is_key_pressed(KEY_SHIFT) else normal + PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, PhysicsServer3D.AREA_PARAM_GRAVITY, grav) " [sub_resource type="GDScript" id="GDScript_my602"] @@ -30,24 +29,34 @@ func _input(ev: InputEvent) -> void: if k == KEY_UP: direction = Vector3.UP self.rotation_degrees = -90 + $AudioStreamPlayer.pitch_scale = 1.05 elif k == KEY_LEFT: direction = Vector3.LEFT self.rotation_degrees = -180 + $AudioStreamPlayer.pitch_scale = 1.02 elif k == KEY_RIGHT: direction = Vector3.RIGHT self.rotation_degrees = 0 + $AudioStreamPlayer.pitch_scale = 0.98 elif k == KEY_DOWN: direction = Vector3.DOWN self.rotation_degrees = 90 - PhysicsServer3D.area_set_param( - get_viewport().find_world_3d().space, - PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, - direction - ) + $AudioStreamPlayer.pitch_scale = 0.95 - if $AnimationPlayer.is_playing(): - $AnimationPlayer.stop() - $AnimationPlayer.play(\"grow_fadeout\") + if direction != PhysicsServer3D.area_get_param( + get_viewport().find_world_3d().space, + PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR + ): + PhysicsServer3D.area_set_param( + get_viewport().find_world_3d().space, + PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, + direction + ) + + if $AnimationPlayer.is_playing(): + $AnimationPlayer.stop() + $AudioStreamPlayer.play() + $AnimationPlayer.play(\"grow_fadeout\") " [sub_resource type="Animation" id="Animation_6rwl4"] @@ -119,46 +128,33 @@ anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 - -[node name="Strength" type="HSlider" parent="."] -layout_mode = 1 -anchors_preset = -1 -anchor_left = 0.2 -anchor_top = 0.9 -anchor_right = 0.8 -anchor_bottom = 1.0 -offset_right = -0.00012207 -grow_horizontal = 2 -grow_vertical = 0 -size_flags_horizontal = 4 -size_flags_vertical = 1 -min_value = 10.0 -max_value = 40.0 -step = 0.2 -value = 10.0 -script = SubResource("GDScript_wuka5") -metadata/_edit_use_anchors_ = true +script = SubResource("GDScript_3yq1l") [node name="Direction" type="TextureRect" parent="."] self_modulate = Color(1, 1, 1, 0.501961) layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 +anchors_preset = 8 +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +offset_left = -400.0 +offset_top = -400.0 +offset_right = 400.0 +offset_bottom = 400.0 grow_horizontal = 2 grow_vertical = 2 scale = Vector2(0.3, 0.3) -pivot_offset = Vector2(576, 324) +pivot_offset = Vector2(400, 400) texture = ExtResource("1_4mbho") -expand_mode = 3 -stretch_mode = 5 script = SubResource("GDScript_my602") -metadata/_edit_use_anchors_ = true [node name="AnimationPlayer" type="AnimationPlayer" parent="Direction"] libraries = { "": SubResource("AnimationLibrary_0w0ne") } -[connection signal="focus_entered" from="Strength" to="Strength" method="_on_focus_entered"] -[connection signal="value_changed" from="Strength" to="Strength" method="_on_value_changed"] +[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="Direction"] +stream = ExtResource("2_5uwlw") +volume_db = -6.0 +mix_target = 2 diff --git a/elements/platform.tscn b/elements/platform.tscn deleted file mode 100644 index fef54b3..0000000 --- a/elements/platform.tscn +++ /dev/null @@ -1,23 +0,0 @@ -[gd_scene load_steps=3 format=3 uid="uid://gis4s061n422"] - -[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_llioc"] - -[sub_resource type="BoxShape3D" id="BoxShape3D_shtld"] -size = Vector3(20, 20, 20) - -[node name="Platform" type="RigidBody3D"] -axis_lock_linear_x = true -axis_lock_linear_y = true -axis_lock_linear_z = true -axis_lock_angular_x = true -axis_lock_angular_y = true -axis_lock_angular_z = true -physics_material_override = SubResource("PhysicsMaterial_llioc") -gravity_scale = 0.0 - -[node name="CollisionShape3D" type="CollisionShape3D" parent="."] -shape = SubResource("BoxShape3D_shtld") - -[node name="CSGBox3D" type="CSGBox3D" parent="."] -use_collision = true -size = Vector3(20, 20, 20) diff --git a/elements/player.tscn b/elements/player.tscn index 15b7fff..2e5fda6 100644 --- a/elements/player.tscn +++ b/elements/player.tscn @@ -4,11 +4,19 @@ [ext_resource type="PackedScene" uid="uid://df5m716pd6mej" path="res://elements/sphere.tscn" id="2_ophnk"] [sub_resource type="GDScript" id="GDScript_bnqcw"] -script/source = "extends Node +script/source = "extends Node3D -func _process(delta: float) -> void: +func _process(_delta: float) -> void: + #if $Sphere.position.y < -2: + # $Sphere.position.y = 0 + $SpotLightMain.position = $Sphere.position + Vector3(0, 5, 0) + $SpotLightTop.position = $Sphere.position + $SpotLightLeft.position = $Sphere.position + $SpotLightRight.position = $Sphere.position + $SpotLightBottom.position = $Sphere.position + ## Keep the ball at the center of the camera, at a distance - $Camera.position = $Sphere.position + Vector3(0, 0, 20) + $Camera.position = $Sphere.position + Vector3(0, 0, 15) ## Angle of the camera, so the player can see where the ball is going var velocity: Vector3 = $Sphere.linear_velocity @@ -25,7 +33,7 @@ func _process(delta: float) -> void: $Camera.fov = default_fov + (total_velocity / 12) " -[node name="Player" type="Node"] +[node name="Player" type="Node3D"] script = SubResource("GDScript_bnqcw") [node name="Gravity" parent="." instance=ExtResource("1_h0h2o")] @@ -33,3 +41,25 @@ script = SubResource("GDScript_bnqcw") [node name="Sphere" parent="." instance=ExtResource("2_ophnk")] [node name="Camera" type="Camera3D" parent="."] +current = true + +[node name="SpotLightMain" type="SpotLight3D" parent="."] +transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0, 0) +spot_range = 55.0 +spot_angle = 20.0 + +[node name="SpotLightTop" type="SpotLight3D" parent="."] +transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0) +spot_range = 50.0 + +[node name="SpotLightLeft" type="SpotLight3D" parent="."] +transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0, 0, 0) +spot_range = 50.0 + +[node name="SpotLightRight" type="SpotLight3D" parent="."] +transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0, 0) +spot_range = 50.0 + +[node name="SpotLightBottom" type="SpotLight3D" parent="."] +transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 0, 0) +spot_range = 50.0 diff --git a/elements/ring.tscn b/elements/ring.tscn new file mode 100644 index 0000000..a184d65 --- /dev/null +++ b/elements/ring.tscn @@ -0,0 +1,30 @@ +[gd_scene load_steps=3 format=3 uid="uid://cpm3laywhlbq5"] + +[sub_resource type="GDScript" id="GDScript_86vhg"] +script/source = "extends CSGTorus3D + +var collected = false + +func _on_area_3d_body_entered(body: Node3D) -> void: + if collected == false and body.name == \"Sphere\": + print(\"YES \", body) + collected = true +" + +[sub_resource type="CylinderShape3D" id="CylinderShape3D_tgirv"] +radius = 4.0 + +[node name="Ring" type="CSGTorus3D"] +use_collision = true +inner_radius = 4.0 +outer_radius = 8.0 +sides = 16 +ring_sides = 8 +script = SubResource("GDScript_86vhg") + +[node name="Area3D" type="Area3D" parent="."] + +[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"] +shape = SubResource("CylinderShape3D_tgirv") + +[connection signal="body_entered" from="Area3D" to="." method="_on_area_3d_body_entered"] diff --git a/elements/sphere.tscn b/elements/sphere.tscn index cfd5b4c..613dd01 100644 --- a/elements/sphere.tscn +++ b/elements/sphere.tscn @@ -1,7 +1,7 @@ -[gd_scene load_steps=9 format=3 uid="uid://df5m716pd6mej"] +[gd_scene load_steps=10 format=3 uid="uid://df5m716pd6mej"] [sub_resource type="PhysicsMaterial" id="PhysicsMaterial_vumbr"] -bounce = 0.8 +bounce = 0.2 [sub_resource type="GDScript" id="GDScript_rvq6k"] script/source = "extends RigidBody3D @@ -46,7 +46,7 @@ func _ready() -> void: player.play() func handleMusicWithVelocity(velocity: float, delta: float) -> void: - var instruments_needed = floor(velocity / 10) + var instruments_needed = floor(velocity / 7) var instruments_playing = stream_players.filter(func(p: AudioStreamPlayer): return p.volume_db > -50) for index_p in len(instruments_playing): @@ -74,16 +74,19 @@ func _process(delta: float) -> void: [sub_resource type="SphereShape3D" id="SphereShape3D_xfgrm"] -[sub_resource type="Gradient" id="Gradient_ggbpc"] -colors = PackedColorArray(0.979416, 0, 0.376508, 1, 0, 0.583757, 0.65245, 1) +[sub_resource type="Gradient" id="Gradient_bgp4x"] +colors = PackedColorArray(0.942957, 7.89344e-06, 0.597148, 1, 0, 0.9912, 0.9912, 1) -[sub_resource type="GradientTexture2D" id="GradientTexture2D_vxsyc"] -gradient = SubResource("Gradient_ggbpc") -fill_from = Vector2(0.490476, 0) -fill_to = Vector2(0.504762, 1) +[sub_resource type="GradientTexture2D" id="GradientTexture2D_5d6uk"] +gradient = SubResource("Gradient_bgp4x") +fill_from = Vector2(0.504951, 0.00495049) +fill_to = Vector2(0.549505, 1) -[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_14eku"] -albedo_texture = SubResource("GradientTexture2D_vxsyc") +[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_qcgmu"] +albedo_texture = SubResource("GradientTexture2D_5d6uk") + +[sub_resource type="SphereMesh" id="SphereMesh_bor8g"] +material = SubResource("StandardMaterial3D_qcgmu") [sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_4tofj"] direction = Vector3(0, 0, 0) @@ -96,17 +99,17 @@ radial_segments = 8 rings = 4 [node name="Sphere" type="RigidBody3D"] +collision_priority = 100.0 axis_lock_linear_z = true physics_material_override = SubResource("PhysicsMaterial_vumbr") +contact_monitor = true script = SubResource("GDScript_rvq6k") [node name="CollisionShape3D" type="CollisionShape3D" parent="."] shape = SubResource("SphereShape3D_xfgrm") -[node name="CSGSphere3D" type="CSGSphere3D" parent="."] -radial_segments = 20 -rings = 10 -material = SubResource("StandardMaterial3D_14eku") +[node name="MeshInstance3D" type="MeshInstance3D" parent="."] +mesh = SubResource("SphereMesh_bor8g") [node name="GPUParticles3D" type="GPUParticles3D" parent="."] amount = 16 diff --git a/idea.txt b/idea.txt index b0c21ad..df8d5a5 100644 --- a/idea.txt +++ b/idea.txt @@ -2,12 +2,11 @@ Theme: Gravity 3D, but played in 2D (think New Super Mario Bros) 2 controls: - With the mouse, change a slider to affect how much gravity is applied With the arrow keys, change the direction of the gravity -1 objective: Bring the ball to the opposite end of the level + With the shift key, change how much the gravity is applied +1 objective: Bring the ball through all the rings -Music should be proportional to either the gravity or the ball's speed, or maybe how close to the objective it is, probably not that -Each 2 levels should introduce a new mechanic like wind, moving platforms, bouncy walls... +Music is proportional to the ball's velocity +Each level looks and sounds different -Maybe an apple from a tree, to fall on Newton's head? Not that it'd have an apple's physics, though... -Have score be Sonic-like, there's a timer and it's converted into score, also add to score if ball collects certain stuff \ No newline at end of file +Have score be Sonic-like, there's a timer and it's converted into score, also add to score if ball collects certain stuff diff --git a/index.tscn b/index.tscn index 4bfb041..1aec5ba 100644 --- a/index.tscn +++ b/index.tscn @@ -1,41 +1,3 @@ -[gd_scene load_steps=5 format=3 uid="uid://ccgnnif026wb4"] - -[ext_resource type="PackedScene" uid="uid://dujoplhd35kqg" path="res://level_base.tscn" id="1_ad0pp"] -[ext_resource type="PackedScene" uid="uid://gis4s061n422" path="res://elements/platform.tscn" id="2_g4sgl"] -[ext_resource type="PackedScene" uid="uid://dw0xl8644x166" path="res://elements/gravity.tscn" id="3_80ler"] - -[sub_resource type="GDScript" id="GDScript_oxyvh"] -script/source = "extends Node - -func _input(ev: InputEvent) -> void: - pass -# if ev is InputEventKey and ev.is_pressed(): -# var k = ev.keycode -# if k == KEY_UP or k == KEY_RIGHT or k == KEY_LEFT or k == KEY_DOWN: -# if k == KEY_UP: -# $LevelBase/Camera3D.rotation_degrees = Vector3i(0, 0, 0) -# elif k == KEY_LEFT: -# $LevelBase/Camera3D.rotation_degrees = Vector3i(0, 10, 0) -# elif k == KEY_RIGHT: -# $LevelBase/Camera3D.rotation_degrees = Vector3i(0, -10, 0) -# elif k == KEY_DOWN: -# $LevelBase/Camera3D.rotation_degrees = Vector3i(-10, 0, 0) -" +[gd_scene format=3 uid="uid://ccgnnif026wb4"] [node name="Game" type="Node"] -script = SubResource("GDScript_oxyvh") - -[node name="LevelBase" parent="." instance=ExtResource("1_ad0pp")] - -[node name="Platform" parent="LevelBase" instance=ExtResource("2_g4sgl")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -13.7254, 0) - -[node name="Platform2" parent="LevelBase" instance=ExtResource("2_g4sgl")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -42.8526, -13.7254, 0) - -[node name="Platform3" parent="LevelBase" instance=ExtResource("2_g4sgl")] -transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 44.7108, -13.7254, 0) - -[node name="Gravity" parent="." instance=ExtResource("3_80ler")] - -[editable path="LevelBase"] diff --git a/level_base.tscn b/level_base.tscn deleted file mode 100644 index d228dcf..0000000 --- a/level_base.tscn +++ /dev/null @@ -1,39 +0,0 @@ -[gd_scene load_steps=6 format=3 uid="uid://dujoplhd35kqg"] - -[ext_resource type="PackedScene" uid="uid://cnnvwotv33u1b" path="res://elements/player.tscn" id="1_ykskn"] - -[sub_resource type="GDScript" id="GDScript_hbi5e"] -script/source = "extends Node3D - - -# Called when the node enters the scene tree for the first time. -func _ready() -> void: - pass # Replace with function body. - - -# Called every frame. 'delta' is the elapsed time since the previous frame. -func _process(delta: float) -> void: - pass -" - -[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_6pkua"] -sky_top_color = Color(0.693381, 0.747001, 0.821796, 1) -ground_bottom_color = Color(0.172348, 0.451084, 0.511099, 1) -ground_curve = 0.25992 - -[sub_resource type="Sky" id="Sky_4du2k"] -sky_material = SubResource("ProceduralSkyMaterial_6pkua") - -[sub_resource type="Environment" id="Environment_jfl74"] -background_mode = 2 -sky = SubResource("Sky_4du2k") -ambient_light_source = 3 -ambient_light_color = Color(1, 1, 1, 1) - -[node name="LevelBase" type="Node3D"] -script = SubResource("GDScript_hbi5e") - -[node name="WorldEnvironment" type="WorldEnvironment" parent="."] -environment = SubResource("Environment_jfl74") - -[node name="Player" parent="." instance=ExtResource("1_ykskn")] diff --git a/levels/base/environment.tscn b/levels/base/environment.tscn new file mode 100644 index 0000000..a3dab31 --- /dev/null +++ b/levels/base/environment.tscn @@ -0,0 +1,26 @@ +[gd_scene load_steps=6 format=3 uid="uid://ygvokp5f78i5"] + +[sub_resource type="Gradient" id="Gradient_hs6gw"] + +[sub_resource type="GradientTexture2D" id="GradientTexture2D_hyysp"] +gradient = SubResource("Gradient_hs6gw") +fill_from = Vector2(0.536082, 1) +fill_to = Vector2(0.536082, 0) + +[sub_resource type="PanoramaSkyMaterial" id="PanoramaSkyMaterial_g3k38"] +panorama = SubResource("GradientTexture2D_hyysp") + +[sub_resource type="Sky" id="Sky_du8e4"] +sky_material = SubResource("PanoramaSkyMaterial_g3k38") +radiance_size = 1 + +[sub_resource type="Environment" id="Environment_y0yoy"] +background_mode = 2 +background_color = Color(0.758192, 0.758192, 0.758192, 1) +sky = SubResource("Sky_du8e4") +ambient_light_source = 3 +ambient_light_color = Color(1, 1, 1, 1) +reflected_light_source = 2 + +[node name="Environment" type="WorldEnvironment"] +environment = SubResource("Environment_y0yoy") diff --git a/levels/base/level.tscn b/levels/base/level.tscn new file mode 100644 index 0000000..2e875c5 --- /dev/null +++ b/levels/base/level.tscn @@ -0,0 +1,17 @@ +[gd_scene load_steps=4 format=3 uid="uid://b0mhosbyt1fit"] + +[ext_resource type="PackedScene" uid="uid://ygvokp5f78i5" path="res://levels/base/environment.tscn" id="1_n7fd8"] +[ext_resource type="PackedScene" uid="uid://cnnvwotv33u1b" path="res://elements/player.tscn" id="2_b00jj"] +[ext_resource type="PackedScene" uid="uid://cpm3laywhlbq5" path="res://elements/ring.tscn" id="3_hel5x"] + +[node name="Level" type="Node3D"] + +[node name="Environment" parent="." instance=ExtResource("1_n7fd8")] + +[node name="Player" parent="." instance=ExtResource("2_b00jj")] + +[node name="Ring" parent="." instance=ExtResource("3_hel5x")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -3.18355, 0) + +[node name="Ring2" parent="." instance=ExtResource("3_hel5x")] +transform = Transform3D(-6.55671e-08, -1.5, 0, 1.5, -6.55671e-08, 0, 0, 0, 1.5, 10, 5, 0) diff --git a/levels/base/material.tres b/levels/base/material.tres new file mode 100644 index 0000000..e5d0a3d --- /dev/null +++ b/levels/base/material.tres @@ -0,0 +1,4 @@ +[gd_resource type="StandardMaterial3D" format=3 uid="uid://brwwlwb1rpro7"] + +[resource] +metallic = 1.0 diff --git a/music/forest.mmpz b/music/forest.mmpz new file mode 100644 index 0000000..83db66d Binary files /dev/null and b/music/forest.mmpz differ diff --git a/music/forest.mmpz.bak b/music/forest.mmpz.bak new file mode 100644 index 0000000..83db66d Binary files /dev/null and b/music/forest.mmpz.bak differ diff --git a/music/forest/dong.ogg b/music/forest/dong.ogg new file mode 100644 index 0000000..d61e434 Binary files /dev/null and b/music/forest/dong.ogg differ diff --git a/music/forest/dong.ogg.import b/music/forest/dong.ogg.import new file mode 100644 index 0000000..161c80b --- /dev/null +++ b/music/forest/dong.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://dghw6a7i3adcu" +path="res://.godot/imported/dong.ogg-ffb15076d2b8a5ffc947d53d6a3fc115.oggvorbisstr" + +[deps] + +source_file="res://music/forest/dong.ogg" +dest_files=["res://.godot/imported/dong.ogg-ffb15076d2b8a5ffc947d53d6a3fc115.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/music/forest/dong2.ogg b/music/forest/dong2.ogg new file mode 100644 index 0000000..324eea0 Binary files /dev/null and b/music/forest/dong2.ogg differ diff --git a/music/forest/dong2.ogg.import b/music/forest/dong2.ogg.import new file mode 100644 index 0000000..7efb8cb --- /dev/null +++ b/music/forest/dong2.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://pn2b2f3egpck" +path="res://.godot/imported/dong2.ogg-58e0e1bd9d339e6c5a96259a33a583cf.oggvorbisstr" + +[deps] + +source_file="res://music/forest/dong2.ogg" +dest_files=["res://.godot/imported/dong2.ogg-58e0e1bd9d339e6c5a96259a33a583cf.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/music/forest/hihat-closed.ogg b/music/forest/hihat-closed.ogg new file mode 100644 index 0000000..de54984 Binary files /dev/null and b/music/forest/hihat-closed.ogg differ diff --git a/music/forest/hihat-closed.ogg.import b/music/forest/hihat-closed.ogg.import new file mode 100644 index 0000000..e57ea41 --- /dev/null +++ b/music/forest/hihat-closed.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://bu4kmowmputnr" +path="res://.godot/imported/hihat-closed.ogg-2d3ac57a208e8a0283aa44d553fd6fd2.oggvorbisstr" + +[deps] + +source_file="res://music/forest/hihat-closed.ogg" +dest_files=["res://.godot/imported/hihat-closed.ogg-2d3ac57a208e8a0283aa44d553fd6fd2.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/music/forest/hihat-open.ogg b/music/forest/hihat-open.ogg new file mode 100644 index 0000000..f4841fe Binary files /dev/null and b/music/forest/hihat-open.ogg differ diff --git a/music/forest/hihat-open.ogg.import b/music/forest/hihat-open.ogg.import new file mode 100644 index 0000000..69ae4bf --- /dev/null +++ b/music/forest/hihat-open.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://cbgimkc8fi4q3" +path="res://.godot/imported/hihat-open.ogg-f90ba031f5e4f4f762a1d8e5e441132a.oggvorbisstr" + +[deps] + +source_file="res://music/forest/hihat-open.ogg" +dest_files=["res://.godot/imported/hihat-open.ogg-f90ba031f5e4f4f762a1d8e5e441132a.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/music/forest/kick.ogg b/music/forest/kick.ogg new file mode 100644 index 0000000..3b09a86 Binary files /dev/null and b/music/forest/kick.ogg differ diff --git a/music/forest/kick.ogg.import b/music/forest/kick.ogg.import new file mode 100644 index 0000000..b261b01 --- /dev/null +++ b/music/forest/kick.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://b5rl0nf2bawbr" +path="res://.godot/imported/kick.ogg-f4dc38db14482b78ded821894f1a2034.oggvorbisstr" + +[deps] + +source_file="res://music/forest/kick.ogg" +dest_files=["res://.godot/imported/kick.ogg-f4dc38db14482b78ded821894f1a2034.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/music/forest/synth.ogg b/music/forest/synth.ogg new file mode 100644 index 0000000..f47c9a7 Binary files /dev/null and b/music/forest/synth.ogg differ diff --git a/music/forest/synth.ogg.import b/music/forest/synth.ogg.import new file mode 100644 index 0000000..1624853 --- /dev/null +++ b/music/forest/synth.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://76mr4g8vfex2" +path="res://.godot/imported/synth.ogg-b5f3958a400c45e698e4b6e9bb35ef0c.oggvorbisstr" + +[deps] + +source_file="res://music/forest/synth.ogg" +dest_files=["res://.godot/imported/synth.ogg-b5f3958a400c45e698e4b6e9bb35ef0c.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/project.godot b/project.godot index d3f485a..5402286 100644 --- a/project.godot +++ b/project.godot @@ -14,7 +14,7 @@ config/name="AlakajamEntry" config/description="I'm Taevas, and this is my entry for the 21st edition of \"Alakajam!\", a gamejam that lasts for 48 hours that starts on 2025-02-21 19:00UTC https://alakajam.com/21st-alakajam" config/version="20250221.0" -run/main_scene="res://index.tscn" +run/main_scene="res://levels/base/level.tscn" config/features=PackedStringArray("4.3", "GL Compatibility") boot_splash/show_image=false config/icon="res://icon.svg" @@ -25,7 +25,14 @@ buses/default_bus_layout="" [physics] +3d/run_on_separate_thread=true +common/physics_ticks_per_second=120 +common/max_physics_steps_per_frame=20 +3d/physics_engine="GodotPhysics3D" 3d/default_gravity=10.0 +3d/solver/solver_iterations=40 +3d/solver/default_contact_bias=1.0 +common/physics_interpolation=true [rendering] diff --git a/sounds/gravity.ogg b/sounds/gravity.ogg new file mode 100644 index 0000000..f137913 Binary files /dev/null and b/sounds/gravity.ogg differ diff --git a/sounds/gravity.ogg.import b/sounds/gravity.ogg.import new file mode 100644 index 0000000..52aca23 --- /dev/null +++ b/sounds/gravity.ogg.import @@ -0,0 +1,19 @@ +[remap] + +importer="oggvorbisstr" +type="AudioStreamOggVorbis" +uid="uid://dmdbharecy448" +path="res://.godot/imported/gravity.ogg-9d6ca77365cf8ba286821421798b18dc.oggvorbisstr" + +[deps] + +source_file="res://sounds/gravity.ogg" +dest_files=["res://.godot/imported/gravity.ogg-9d6ca77365cf8ba286821421798b18dc.oggvorbisstr"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/sounds/templateiguess.mmpz b/sounds/templateiguess.mmpz new file mode 100644 index 0000000..2efa8e2 Binary files /dev/null and b/sounds/templateiguess.mmpz differ