diff --git a/gmtk_2024/levels/lev6913.tmp b/gmtk_2024/levels/lev6913.tmp new file mode 100644 index 0000000..b13a83f --- /dev/null +++ b/gmtk_2024/levels/lev6913.tmp @@ -0,0 +1,174 @@ +[gd_scene load_steps=10 format=4 uid="uid://cxsstkfcffdch"] + +[ext_resource type="PackedScene" uid="uid://ba6afuig8bqrg" path="res://levels/LevelBase.tscn" id="1_87xn7"] +[ext_resource type="Texture2D" uid="uid://c3m4os8kteaix" path="res://textures/level01-spritesheet.png" id="2_wqskp"] +[ext_resource type="Shader" path="res://shaders/scrolling.gdshader" id="4_0x2h7"] +[ext_resource type="Texture2D" uid="uid://bn7cejgxkah8o" path="res://textures/Level 01.png" id="5_4p03u"] +[ext_resource type="PackedScene" uid="uid://br6fngf5208j0" path="res://objects/ResizableBlockBig.tscn" id="8_ec71m"] +[ext_resource type="PackedScene" uid="uid://dki3ft77fr3tc" path="res://objects/BreakableBlock.tscn" id="9_2ia1u"] + +[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_e817v"] +texture = ExtResource("2_wqskp") +texture_region_size = Vector2i(32, 32) +0:0/0 = 0 +0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:0/0 = 0 +1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:0/0 = 0 +2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:0/0 = 0 +3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:0/0 = 0 +4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +5:0/0 = 0 +5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:0/0 = 0 +6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +7:0/0 = 0 +7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/next_alternative_id = 4 +8:0/0 = 0 +8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/1 = 1 +8:0/1/flip_v = true +8:0/1/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/2 = 2 +8:0/2/transpose = true +8:0/2/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/3 = 3 +8:0/3/flip_h = true +8:0/3/transpose = true +8:0/3/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +9:0/0 = 0 +10:0/0 = 0 +11:0/0 = 0 +0:1/0 = 0 +0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:1/0 = 0 +1:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:1/0 = 0 +2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:1/0 = 0 +3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:1/0 = 0 +5:1/0 = 0 +5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:1/0 = 0 +6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +7:1/0 = 0 +7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:1/0 = 0 +8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +9:1/0 = 0 +10:1/0 = 0 +11:1/0 = 0 +0:2/0 = 0 +0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:2/0 = 0 +1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:2/0 = 0 +2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:2/0 = 0 +3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:2/0 = 0 +4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +5:2/0 = 0 +5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:2/0 = 0 +7:2/0 = 0 +10:2/0 = 0 +11:2/0 = 0 +0:3/0 = 0 +1:3/0 = 0 +2:3/0 = 0 +3:3/0 = 0 +4:3/0 = 0 +5:3/0 = 0 +6:3/0 = 0 +7:3/0 = 0 +10:3/0 = 0 +11:3/0 = 0 +0:4/0 = 0 +1:4/0 = 0 +2:4/0 = 0 +3:4/0 = 0 +4:4/0 = 0 +5:4/0 = 0 +6:4/0 = 0 +7:4/0 = 0 +8:4/0 = 0 +9:4/0 = 0 +10:4/0 = 0 +11:4/0 = 0 +0:5/0 = 0 +1:5/0 = 0 +2:5/0 = 0 +3:5/0 = 0 +4:5/0 = 0 +5:5/0 = 0 +6:5/0 = 0 +7:5/0 = 0 +8:5/0 = 0 +9:5/0 = 0 +10:5/0 = 0 +11:5/0 = 0 + +[sub_resource type="TileSet" id="TileSet_n3khe"] +tile_size = Vector2i(32, 32) +physics_layer_0/collision_layer = 1 +sources/0 = SubResource("TileSetAtlasSource_e817v") + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_mvq46"] +shader = ExtResource("4_0x2h7") +shader_parameter/scroll_speed = 0.02 + +[node name="LevelBase" instance=ExtResource("1_87xn7")] + +[node name="Player" parent="." index="0"] +position = Vector2(-254, 99) +input_pickable = true + +[node name="Walls" parent="." index="3"] +collision_mask = 22 + +[node name="Ground" parent="Walls" index="0"] +position = Vector2(-7, 167) + +[node name="Ceiling" parent="Walls" index="1"] +position = Vector2(57, -171) + +[node name="LeftWall" parent="Walls" index="2"] +position = Vector2(-320, 26) + +[node name="RightWall" parent="Walls" index="3"] +position = Vector2(338, 15) + +[node name="Layer0" type="TileMapLayer" parent="." index="4"] +use_parent_material = true +tile_map_data = PackedByteArray("AAD2//v/AAADAAAAAAD2//z/AAACAAEAAAD2//3/AAACAAEAAAD2//7/AAACAAEAAAD2////AAACAAEAAAD2/wAAAAACAAEAAAD2/wEAAAACAAEAAAD2/wIAAAACAAEAAAD2/wMAAAACAAEAAAD2/wQAAAADAAIAAAAJAPv/AAAFAAAAAAAJAPz/AAAAAAEAAAAJAP3/AAAAAAEAAAAJAP7/AAAAAAEAAAAJAP//AAAAAAEAAAAJAAAAAAAAAAEAAAAJAAEAAAAAAAEAAAAJAAIAAAAAAAEAAAAJAAMAAAAAAAEAAAAJAAQAAAAFAAIAAAD3//v/AAABAAIAAAD4//v/AAABAAIAAAD5//v/AAABAAIAAAD6//v/AAABAAIAAAD7//v/AAABAAIAAAD8//v/AAABAAIAAAD9//v/AAABAAIAAAD+//v/AAABAAIAAAD///v/AAABAAIAAAAAAPv/AAABAAIAAAABAPv/AAABAAIAAAACAPv/AAABAAIAAAADAPv/AAABAAIAAAAEAPv/AAABAAIAAAAFAPv/AAABAAIAAAAGAPv/AAABAAIAAAAHAPv/AAABAAIAAAAIAPv/AAABAAIAAAD3/wQAAAABAAAAAAD4/wQAAAABAAAAAAD5/wQAAAABAAAAAAD6/wQAAAABAAAAAAD7/wQAAAAFAAIAAAD8/wQAAAABAAEAAAD9/wQAAAABAAEAAAD+/wQAAAABAAEAAAD//wQAAAABAAEAAAAAAAQAAAABAAEAAAABAAQAAAADAAIAAAACAAQAAAABAAAAAAADAAQAAAABAAAAAAAEAAQAAAABAAAAAAAFAAQAAAABAAAAAAAGAAQAAAABAAAAAAAHAAQAAAABAAAAAAAIAAQAAAABAAAAAAD7/wMAAAAAAAAAAAD8/wMAAAABAAAAAAD9/wMAAAABAAAAAAD+/wMAAAABAAAAAAD//wIAAAAAAAEAAAD//wEAAAAAAAAAAAAAAAEAAAAEAAIAAAABAAEAAAACAAAAAAABAAIAAAACAAEAAAABAAMAAAACAAEAAAD//wMAAAAFAAIAAAAAAAIAAAABAAEAAAAAAAMAAAABAAEAAAD3/wAAAAAIAAEAAGD4/wAAAAAIAAEAAGD5/wAAAAAIAAEAAGD6/wAAAAAIAAEAAGD7/wAAAAAIAAAAAVD3//3/AAAIAAEAAFD4//3/AAAIAAEAAFD5//3/AAAIAAEAAFD6//3/AAAIAAEAAFD7//3/AAAIAAEAAFD8//3/AAAIAAEAAFD9//3/AAAIAAEAAFD+//3/AAACAAAAAAAAAAAAAAAGAAIAAAAAAP//AAABAAIAAAD/////AAAAAAIAAAD///7/AAAHAAAAAAAAAP7/AAACAAAAAAABAP//AAAIAAAAAVD+//7/AAAAAAIAAAAFAAEAAAAIAAAAAAAFAAIAAAAIAAAAAQA=") +tile_set = SubResource("TileSet_n3khe") + +[node name="TextureRect" type="TextureRect" parent="." index="5"] +z_index = -100 +material = SubResource("ShaderMaterial_mvq46") +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_left = -320.0 +offset_top = -158.0 +offset_right = -320.0 +offset_bottom = -158.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("5_4p03u") +stretch_mode = 1 + +[node name="Block" parent="." index="6" instance=ExtResource("8_ec71m")] +position = Vector2(-65, 63) + +[node name="Block2" parent="." index="7" instance=ExtResource("8_ec71m")] +position = Vector2(-255, -32) +scale = Vector2(0.5, 0.5) + +[node name="BreakableBlock" parent="." index="8" instance=ExtResource("9_2ia1u")] +position = Vector2(241, -47) diff --git a/gmtk_2024/levels/lev8F58.tmp b/gmtk_2024/levels/lev8F58.tmp new file mode 100644 index 0000000..b13a83f --- /dev/null +++ b/gmtk_2024/levels/lev8F58.tmp @@ -0,0 +1,174 @@ +[gd_scene load_steps=10 format=4 uid="uid://cxsstkfcffdch"] + +[ext_resource type="PackedScene" uid="uid://ba6afuig8bqrg" path="res://levels/LevelBase.tscn" id="1_87xn7"] +[ext_resource type="Texture2D" uid="uid://c3m4os8kteaix" path="res://textures/level01-spritesheet.png" id="2_wqskp"] +[ext_resource type="Shader" path="res://shaders/scrolling.gdshader" id="4_0x2h7"] +[ext_resource type="Texture2D" uid="uid://bn7cejgxkah8o" path="res://textures/Level 01.png" id="5_4p03u"] +[ext_resource type="PackedScene" uid="uid://br6fngf5208j0" path="res://objects/ResizableBlockBig.tscn" id="8_ec71m"] +[ext_resource type="PackedScene" uid="uid://dki3ft77fr3tc" path="res://objects/BreakableBlock.tscn" id="9_2ia1u"] + +[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_e817v"] +texture = ExtResource("2_wqskp") +texture_region_size = Vector2i(32, 32) +0:0/0 = 0 +0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:0/0 = 0 +1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:0/0 = 0 +2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:0/0 = 0 +3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:0/0 = 0 +4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +5:0/0 = 0 +5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:0/0 = 0 +6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +7:0/0 = 0 +7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/next_alternative_id = 4 +8:0/0 = 0 +8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/1 = 1 +8:0/1/flip_v = true +8:0/1/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/2 = 2 +8:0/2/transpose = true +8:0/2/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/3 = 3 +8:0/3/flip_h = true +8:0/3/transpose = true +8:0/3/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +9:0/0 = 0 +10:0/0 = 0 +11:0/0 = 0 +0:1/0 = 0 +0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:1/0 = 0 +1:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:1/0 = 0 +2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:1/0 = 0 +3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:1/0 = 0 +5:1/0 = 0 +5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:1/0 = 0 +6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +7:1/0 = 0 +7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:1/0 = 0 +8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +9:1/0 = 0 +10:1/0 = 0 +11:1/0 = 0 +0:2/0 = 0 +0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:2/0 = 0 +1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:2/0 = 0 +2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:2/0 = 0 +3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:2/0 = 0 +4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +5:2/0 = 0 +5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:2/0 = 0 +7:2/0 = 0 +10:2/0 = 0 +11:2/0 = 0 +0:3/0 = 0 +1:3/0 = 0 +2:3/0 = 0 +3:3/0 = 0 +4:3/0 = 0 +5:3/0 = 0 +6:3/0 = 0 +7:3/0 = 0 +10:3/0 = 0 +11:3/0 = 0 +0:4/0 = 0 +1:4/0 = 0 +2:4/0 = 0 +3:4/0 = 0 +4:4/0 = 0 +5:4/0 = 0 +6:4/0 = 0 +7:4/0 = 0 +8:4/0 = 0 +9:4/0 = 0 +10:4/0 = 0 +11:4/0 = 0 +0:5/0 = 0 +1:5/0 = 0 +2:5/0 = 0 +3:5/0 = 0 +4:5/0 = 0 +5:5/0 = 0 +6:5/0 = 0 +7:5/0 = 0 +8:5/0 = 0 +9:5/0 = 0 +10:5/0 = 0 +11:5/0 = 0 + +[sub_resource type="TileSet" id="TileSet_n3khe"] +tile_size = Vector2i(32, 32) +physics_layer_0/collision_layer = 1 +sources/0 = SubResource("TileSetAtlasSource_e817v") + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_mvq46"] +shader = ExtResource("4_0x2h7") +shader_parameter/scroll_speed = 0.02 + +[node name="LevelBase" instance=ExtResource("1_87xn7")] + +[node name="Player" parent="." index="0"] +position = Vector2(-254, 99) +input_pickable = true + +[node name="Walls" parent="." index="3"] +collision_mask = 22 + +[node name="Ground" parent="Walls" index="0"] +position = Vector2(-7, 167) + +[node name="Ceiling" parent="Walls" index="1"] +position = Vector2(57, -171) + +[node name="LeftWall" parent="Walls" index="2"] +position = Vector2(-320, 26) + +[node name="RightWall" parent="Walls" index="3"] +position = Vector2(338, 15) + +[node name="Layer0" type="TileMapLayer" parent="." index="4"] +use_parent_material = true +tile_map_data = PackedByteArray("AAD2//v/AAADAAAAAAD2//z/AAACAAEAAAD2//3/AAACAAEAAAD2//7/AAACAAEAAAD2////AAACAAEAAAD2/wAAAAACAAEAAAD2/wEAAAACAAEAAAD2/wIAAAACAAEAAAD2/wMAAAACAAEAAAD2/wQAAAADAAIAAAAJAPv/AAAFAAAAAAAJAPz/AAAAAAEAAAAJAP3/AAAAAAEAAAAJAP7/AAAAAAEAAAAJAP//AAAAAAEAAAAJAAAAAAAAAAEAAAAJAAEAAAAAAAEAAAAJAAIAAAAAAAEAAAAJAAMAAAAAAAEAAAAJAAQAAAAFAAIAAAD3//v/AAABAAIAAAD4//v/AAABAAIAAAD5//v/AAABAAIAAAD6//v/AAABAAIAAAD7//v/AAABAAIAAAD8//v/AAABAAIAAAD9//v/AAABAAIAAAD+//v/AAABAAIAAAD///v/AAABAAIAAAAAAPv/AAABAAIAAAABAPv/AAABAAIAAAACAPv/AAABAAIAAAADAPv/AAABAAIAAAAEAPv/AAABAAIAAAAFAPv/AAABAAIAAAAGAPv/AAABAAIAAAAHAPv/AAABAAIAAAAIAPv/AAABAAIAAAD3/wQAAAABAAAAAAD4/wQAAAABAAAAAAD5/wQAAAABAAAAAAD6/wQAAAABAAAAAAD7/wQAAAAFAAIAAAD8/wQAAAABAAEAAAD9/wQAAAABAAEAAAD+/wQAAAABAAEAAAD//wQAAAABAAEAAAAAAAQAAAABAAEAAAABAAQAAAADAAIAAAACAAQAAAABAAAAAAADAAQAAAABAAAAAAAEAAQAAAABAAAAAAAFAAQAAAABAAAAAAAGAAQAAAABAAAAAAAHAAQAAAABAAAAAAAIAAQAAAABAAAAAAD7/wMAAAAAAAAAAAD8/wMAAAABAAAAAAD9/wMAAAABAAAAAAD+/wMAAAABAAAAAAD//wIAAAAAAAEAAAD//wEAAAAAAAAAAAAAAAEAAAAEAAIAAAABAAEAAAACAAAAAAABAAIAAAACAAEAAAABAAMAAAACAAEAAAD//wMAAAAFAAIAAAAAAAIAAAABAAEAAAAAAAMAAAABAAEAAAD3/wAAAAAIAAEAAGD4/wAAAAAIAAEAAGD5/wAAAAAIAAEAAGD6/wAAAAAIAAEAAGD7/wAAAAAIAAAAAVD3//3/AAAIAAEAAFD4//3/AAAIAAEAAFD5//3/AAAIAAEAAFD6//3/AAAIAAEAAFD7//3/AAAIAAEAAFD8//3/AAAIAAEAAFD9//3/AAAIAAEAAFD+//3/AAACAAAAAAAAAAAAAAAGAAIAAAAAAP//AAABAAIAAAD/////AAAAAAIAAAD///7/AAAHAAAAAAAAAP7/AAACAAAAAAABAP//AAAIAAAAAVD+//7/AAAAAAIAAAAFAAEAAAAIAAAAAAAFAAIAAAAIAAAAAQA=") +tile_set = SubResource("TileSet_n3khe") + +[node name="TextureRect" type="TextureRect" parent="." index="5"] +z_index = -100 +material = SubResource("ShaderMaterial_mvq46") +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_left = -320.0 +offset_top = -158.0 +offset_right = -320.0 +offset_bottom = -158.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("5_4p03u") +stretch_mode = 1 + +[node name="Block" parent="." index="6" instance=ExtResource("8_ec71m")] +position = Vector2(-65, 63) + +[node name="Block2" parent="." index="7" instance=ExtResource("8_ec71m")] +position = Vector2(-255, -32) +scale = Vector2(0.5, 0.5) + +[node name="BreakableBlock" parent="." index="8" instance=ExtResource("9_2ia1u")] +position = Vector2(241, -47) diff --git a/gmtk_2024/levels/levD9B8.tmp b/gmtk_2024/levels/levD9B8.tmp new file mode 100644 index 0000000..b13a83f --- /dev/null +++ b/gmtk_2024/levels/levD9B8.tmp @@ -0,0 +1,174 @@ +[gd_scene load_steps=10 format=4 uid="uid://cxsstkfcffdch"] + +[ext_resource type="PackedScene" uid="uid://ba6afuig8bqrg" path="res://levels/LevelBase.tscn" id="1_87xn7"] +[ext_resource type="Texture2D" uid="uid://c3m4os8kteaix" path="res://textures/level01-spritesheet.png" id="2_wqskp"] +[ext_resource type="Shader" path="res://shaders/scrolling.gdshader" id="4_0x2h7"] +[ext_resource type="Texture2D" uid="uid://bn7cejgxkah8o" path="res://textures/Level 01.png" id="5_4p03u"] +[ext_resource type="PackedScene" uid="uid://br6fngf5208j0" path="res://objects/ResizableBlockBig.tscn" id="8_ec71m"] +[ext_resource type="PackedScene" uid="uid://dki3ft77fr3tc" path="res://objects/BreakableBlock.tscn" id="9_2ia1u"] + +[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_e817v"] +texture = ExtResource("2_wqskp") +texture_region_size = Vector2i(32, 32) +0:0/0 = 0 +0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:0/0 = 0 +1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:0/0 = 0 +2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:0/0 = 0 +3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:0/0 = 0 +4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +5:0/0 = 0 +5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:0/0 = 0 +6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +7:0/0 = 0 +7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/next_alternative_id = 4 +8:0/0 = 0 +8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/1 = 1 +8:0/1/flip_v = true +8:0/1/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/2 = 2 +8:0/2/transpose = true +8:0/2/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/3 = 3 +8:0/3/flip_h = true +8:0/3/transpose = true +8:0/3/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +9:0/0 = 0 +10:0/0 = 0 +11:0/0 = 0 +0:1/0 = 0 +0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:1/0 = 0 +1:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:1/0 = 0 +2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:1/0 = 0 +3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:1/0 = 0 +5:1/0 = 0 +5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:1/0 = 0 +6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +7:1/0 = 0 +7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:1/0 = 0 +8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +9:1/0 = 0 +10:1/0 = 0 +11:1/0 = 0 +0:2/0 = 0 +0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:2/0 = 0 +1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:2/0 = 0 +2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:2/0 = 0 +3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:2/0 = 0 +4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +5:2/0 = 0 +5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:2/0 = 0 +7:2/0 = 0 +10:2/0 = 0 +11:2/0 = 0 +0:3/0 = 0 +1:3/0 = 0 +2:3/0 = 0 +3:3/0 = 0 +4:3/0 = 0 +5:3/0 = 0 +6:3/0 = 0 +7:3/0 = 0 +10:3/0 = 0 +11:3/0 = 0 +0:4/0 = 0 +1:4/0 = 0 +2:4/0 = 0 +3:4/0 = 0 +4:4/0 = 0 +5:4/0 = 0 +6:4/0 = 0 +7:4/0 = 0 +8:4/0 = 0 +9:4/0 = 0 +10:4/0 = 0 +11:4/0 = 0 +0:5/0 = 0 +1:5/0 = 0 +2:5/0 = 0 +3:5/0 = 0 +4:5/0 = 0 +5:5/0 = 0 +6:5/0 = 0 +7:5/0 = 0 +8:5/0 = 0 +9:5/0 = 0 +10:5/0 = 0 +11:5/0 = 0 + +[sub_resource type="TileSet" id="TileSet_n3khe"] +tile_size = Vector2i(32, 32) +physics_layer_0/collision_layer = 1 +sources/0 = SubResource("TileSetAtlasSource_e817v") + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_mvq46"] +shader = ExtResource("4_0x2h7") +shader_parameter/scroll_speed = 0.02 + +[node name="LevelBase" instance=ExtResource("1_87xn7")] + +[node name="Player" parent="." index="0"] +position = Vector2(-254, 99) +input_pickable = true + +[node name="Walls" parent="." index="3"] +collision_mask = 22 + +[node name="Ground" parent="Walls" index="0"] +position = Vector2(-7, 167) + +[node name="Ceiling" parent="Walls" index="1"] +position = Vector2(57, -171) + +[node name="LeftWall" parent="Walls" index="2"] +position = Vector2(-320, 26) + +[node name="RightWall" parent="Walls" index="3"] +position = Vector2(338, 15) + +[node name="Layer0" type="TileMapLayer" parent="." index="4"] +use_parent_material = true +tile_map_data = PackedByteArray("AAD2//v/AAADAAAAAAD2//z/AAACAAEAAAD2//3/AAACAAEAAAD2//7/AAACAAEAAAD2////AAACAAEAAAD2/wAAAAACAAEAAAD2/wEAAAACAAEAAAD2/wIAAAACAAEAAAD2/wMAAAACAAEAAAD2/wQAAAADAAIAAAAJAPv/AAAFAAAAAAAJAPz/AAAAAAEAAAAJAP3/AAAAAAEAAAAJAP7/AAAAAAEAAAAJAP//AAAAAAEAAAAJAAAAAAAAAAEAAAAJAAEAAAAAAAEAAAAJAAIAAAAAAAEAAAAJAAMAAAAAAAEAAAAJAAQAAAAFAAIAAAD3//v/AAABAAIAAAD4//v/AAABAAIAAAD5//v/AAABAAIAAAD6//v/AAABAAIAAAD7//v/AAABAAIAAAD8//v/AAABAAIAAAD9//v/AAABAAIAAAD+//v/AAABAAIAAAD///v/AAABAAIAAAAAAPv/AAABAAIAAAABAPv/AAABAAIAAAACAPv/AAABAAIAAAADAPv/AAABAAIAAAAEAPv/AAABAAIAAAAFAPv/AAABAAIAAAAGAPv/AAABAAIAAAAHAPv/AAABAAIAAAAIAPv/AAABAAIAAAD3/wQAAAABAAAAAAD4/wQAAAABAAAAAAD5/wQAAAABAAAAAAD6/wQAAAABAAAAAAD7/wQAAAAFAAIAAAD8/wQAAAABAAEAAAD9/wQAAAABAAEAAAD+/wQAAAABAAEAAAD//wQAAAABAAEAAAAAAAQAAAABAAEAAAABAAQAAAADAAIAAAACAAQAAAABAAAAAAADAAQAAAABAAAAAAAEAAQAAAABAAAAAAAFAAQAAAABAAAAAAAGAAQAAAABAAAAAAAHAAQAAAABAAAAAAAIAAQAAAABAAAAAAD7/wMAAAAAAAAAAAD8/wMAAAABAAAAAAD9/wMAAAABAAAAAAD+/wMAAAABAAAAAAD//wIAAAAAAAEAAAD//wEAAAAAAAAAAAAAAAEAAAAEAAIAAAABAAEAAAACAAAAAAABAAIAAAACAAEAAAABAAMAAAACAAEAAAD//wMAAAAFAAIAAAAAAAIAAAABAAEAAAAAAAMAAAABAAEAAAD3/wAAAAAIAAEAAGD4/wAAAAAIAAEAAGD5/wAAAAAIAAEAAGD6/wAAAAAIAAEAAGD7/wAAAAAIAAAAAVD3//3/AAAIAAEAAFD4//3/AAAIAAEAAFD5//3/AAAIAAEAAFD6//3/AAAIAAEAAFD7//3/AAAIAAEAAFD8//3/AAAIAAEAAFD9//3/AAAIAAEAAFD+//3/AAACAAAAAAAAAAAAAAAGAAIAAAAAAP//AAABAAIAAAD/////AAAAAAIAAAD///7/AAAHAAAAAAAAAP7/AAACAAAAAAABAP//AAAIAAAAAVD+//7/AAAAAAIAAAAFAAEAAAAIAAAAAAAFAAIAAAAIAAAAAQA=") +tile_set = SubResource("TileSet_n3khe") + +[node name="TextureRect" type="TextureRect" parent="." index="5"] +z_index = -100 +material = SubResource("ShaderMaterial_mvq46") +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_left = -320.0 +offset_top = -158.0 +offset_right = -320.0 +offset_bottom = -158.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("5_4p03u") +stretch_mode = 1 + +[node name="Block" parent="." index="6" instance=ExtResource("8_ec71m")] +position = Vector2(-65, 63) + +[node name="Block2" parent="." index="7" instance=ExtResource("8_ec71m")] +position = Vector2(-255, -32) +scale = Vector2(0.5, 0.5) + +[node name="BreakableBlock" parent="." index="8" instance=ExtResource("9_2ia1u")] +position = Vector2(241, -47) diff --git a/gmtk_2024/levels/level_1.tscn b/gmtk_2024/levels/level_1.tscn index 6caac36..92c907f 100644 --- a/gmtk_2024/levels/level_1.tscn +++ b/gmtk_2024/levels/level_1.tscn @@ -1,14 +1,13 @@ -[gd_scene load_steps=13 format=4 uid="uid://cxsstkfcffdch"] +[gd_scene load_steps=12 format=4 uid="uid://cxsstkfcffdch"] [ext_resource type="PackedScene" uid="uid://ba6afuig8bqrg" path="res://levels/LevelBase.tscn" id="1_87xn7"] [ext_resource type="Texture2D" uid="uid://c3m4os8kteaix" path="res://textures/level01-spritesheet.png" id="2_wqskp"] [ext_resource type="Shader" path="res://shaders/scrolling.gdshader" id="4_0x2h7"] -[ext_resource type="Texture2D" uid="uid://c61y0181w3sq2" path="res://textures/Level 01.png" id="5_4p03u"] -[ext_resource type="PackedScene" path="res://objects/Goal.tscn" id="6_xhax5"] -[ext_resource type="PackedScene" path="res://objects/MirrorOrb.tscn" id="7_dyi0e"] -[ext_resource type="PackedScene" uid="uid://vtwswrkfkgas" path="res://objects/EnemyMover.tscn" id="8_16072"] -[ext_resource type="PackedScene" uid="uid://br6fngf5208j0" path="res://objects/ResizableBlockBig.tscn" id="8_ec71m"] -[ext_resource type="PackedScene" uid="uid://dki3ft77fr3tc" path="res://objects/BreakableBlock.tscn" id="9_2ia1u"] +[ext_resource type="PackedScene" uid="uid://d0q0sfati8wk0" path="res://objects/ResizableBlock.tscn" id="5_4ggcc"] +[ext_resource type="Texture2D" uid="uid://bn7cejgxkah8o" path="res://textures/Level 01.png" id="5_4p03u"] +[ext_resource type="PackedScene" uid="uid://c6g2f7tm7iasr" path="res://objects/PressurePlate.tscn" id="7_i8kgx"] +[ext_resource type="PackedScene" uid="uid://c168bkledwyya" path="res://objects/Laser.tscn" id="8_gxgbn"] +[ext_resource type="PackedScene" uid="uid://d0gpnqknarkg7" path="res://objects/Goal.tscn" id="9_xut5w"] [sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_e817v"] texture = ExtResource("2_wqskp") @@ -131,17 +130,10 @@ shader_parameter/scroll_speed = 0.02 position = Vector2(-254, 99) input_pickable = true -[node name="UI" parent="UILayer" index="0" node_paths=PackedStringArray("player")] -visible = false -mouse_filter = 2 -player = NodePath("../../Player") +[node name="CanvasLayer" parent="." index="1"] +visible = true -[node name="HBoxContainer" parent="UILayer/UI" index="0"] -offset_right = 296.0 -offset_bottom = 96.0 -mouse_filter = 0 - -[node name="Walls" parent="." index="4"] +[node name="Walls" parent="." index="3"] collision_mask = 22 [node name="Ground" parent="Walls" index="0"] @@ -156,12 +148,12 @@ position = Vector2(-320, 26) [node name="RightWall" parent="Walls" index="3"] position = Vector2(338, 15) -[node name="Layer0" type="TileMapLayer" parent="." index="5"] +[node name="Layer0" type="TileMapLayer" parent="." index="4"] use_parent_material = true -tile_map_data = PackedByteArray("AAD2//v/AAADAAAAAAD2//z/AAACAAEAAAD2//3/AAACAAEAAAD2//7/AAACAAEAAAD2////AAACAAEAAAD2/wAAAAACAAEAAAD2/wEAAAACAAEAAAD2/wIAAAACAAEAAAD2/wMAAAACAAEAAAD2/wQAAAADAAIAAAAJAPv/AAAFAAAAAAAJAPz/AAAAAAEAAAAJAP3/AAAAAAEAAAAJAP7/AAAAAAEAAAAJAP//AAAAAAEAAAAJAAAAAAAAAAEAAAAJAAEAAAAAAAEAAAAJAAIAAAAAAAEAAAAJAAMAAAAAAAEAAAAJAAQAAAAFAAIAAAD3//v/AAABAAIAAAD4//v/AAABAAIAAAD5//v/AAABAAIAAAD6//v/AAABAAIAAAD7//v/AAABAAIAAAD8//v/AAABAAIAAAD9//v/AAABAAIAAAD+//v/AAABAAIAAAD///v/AAABAAIAAAAAAPv/AAABAAIAAAABAPv/AAABAAIAAAACAPv/AAABAAIAAAADAPv/AAABAAIAAAAEAPv/AAABAAIAAAAFAPv/AAABAAIAAAAGAPv/AAABAAIAAAAHAPv/AAABAAIAAAAIAPv/AAABAAIAAAD3/wQAAAABAAAAAAD4/wQAAAABAAAAAAD5/wQAAAABAAAAAAD6/wQAAAABAAAAAAD7/wQAAAAFAAIAAAD8/wQAAAABAAEAAAD9/wQAAAABAAEAAAD+/wQAAAABAAEAAAD//wQAAAABAAEAAAAAAAQAAAABAAEAAAABAAQAAAADAAIAAAACAAQAAAABAAAAAAADAAQAAAABAAAAAAAEAAQAAAABAAAAAAAFAAQAAAABAAAAAAAGAAQAAAABAAAAAAAHAAQAAAABAAAAAAAIAAQAAAABAAAAAAD7/wMAAAAAAAAAAAD8/wMAAAABAAAAAAD9/wMAAAABAAAAAAD+/wMAAAABAAAAAAD//wIAAAAAAAEAAAD//wEAAAAAAAAAAAAAAAEAAAAEAAIAAAABAAEAAAACAAAAAAABAAIAAAACAAEAAAABAAMAAAACAAEAAAD//wMAAAAFAAIAAAAAAAIAAAABAAEAAAAAAAMAAAABAAEAAAD3/wAAAAAIAAEAAGD4/wAAAAAIAAEAAGD5/wAAAAAIAAEAAGD6/wAAAAAIAAEAAGD7/wAAAAAIAAAAAVD3//3/AAAIAAEAAFD4//3/AAAIAAEAAFD5//3/AAAIAAEAAFD6//3/AAAIAAEAAFD7//3/AAAIAAEAAFD8//3/AAAIAAEAAFD9//3/AAAIAAEAAFD+//3/AAACAAAAAAAAAAAAAAAGAAIAAAAAAP//AAABAAIAAAD/////AAAAAAIAAAD///7/AAAHAAAAAAAAAP7/AAACAAAAAAABAP//AAAIAAAAAVD+//7/AAAAAAIAAAAFAAEAAAAIAAAAAAAFAAIAAAAIAAAAAQA=") +tile_map_data = PackedByteArray("AAD2//v/AAADAAAAAAD2//z/AAACAAEAAAD2//3/AAACAAEAAAD2//7/AAACAAEAAAD2////AAACAAEAAAD2/wAAAAACAAEAAAD2/wEAAAACAAEAAAD2/wIAAAACAAEAAAD2/wMAAAACAAEAAAD2/wQAAAADAAIAAAAJAPv/AAAFAAAAAAAJAPz/AAAAAAEAAAAJAP3/AAAAAAEAAAAJAP7/AAAAAAEAAAAJAP//AAAAAAEAAAAJAAAAAAAAAAEAAAAJAAEAAAAAAAEAAAAJAAIAAAAAAAEAAAAJAAMAAAAAAAEAAAAJAAQAAAAFAAIAAAD3//v/AAABAAIAAAD4//v/AAABAAIAAAD5//v/AAABAAIAAAD6//v/AAABAAIAAAD7//v/AAABAAIAAAD8//v/AAABAAIAAAD9//v/AAABAAIAAAD+//v/AAABAAIAAAD///v/AAABAAIAAAAAAPv/AAABAAIAAAABAPv/AAABAAIAAAACAPv/AAABAAIAAAADAPv/AAABAAIAAAAEAPv/AAABAAIAAAAFAPv/AAABAAIAAAAGAPv/AAABAAIAAAAHAPv/AAABAAIAAAAIAPv/AAABAAIAAAD3/wQAAAABAAAAAAD4/wQAAAABAAAAAAD5/wQAAAABAAAAAAD6/wQAAAAFAAIAAAD7/wQAAAABAAEAAAD8/wQAAAABAAEAAAD9/wQAAAABAAEAAAD+/wQAAAABAAEAAAD//wQAAAABAAEAAAAAAAQAAAABAAEAAAABAAQAAAADAAIAAAACAAQAAAABAAAAAAADAAQAAAABAAAAAAAEAAQAAAABAAAAAAAFAAQAAAABAAAAAAAGAAQAAAABAAAAAAAHAAQAAAABAAAAAAAIAAQAAAABAAAAAAD7/wMAAAABAAAAAAD8/wMAAAABAAAAAAD9/wMAAAABAAAAAAD+/wMAAAABAAAAAAD//wIAAAABAAEAAAD//wEAAAAEAAIAAAAAAAEAAAAEAAIAAAABAAEAAAACAAAAAAABAAIAAAACAAEAAAABAAMAAAACAAEAAAD//wMAAAAFAAIAAAAAAAIAAAABAAEAAAAAAAMAAAABAAEAAAD3/wAAAAAIAAEAAGD4/wAAAAAIAAEAAGD5/wAAAAAIAAEAAGD3//3/AAAIAAEAAFD4//3/AAAIAAEAAFD5//3/AAAIAAEAAFD6//3/AAAIAAEAAFD7//3/AAAIAAEAAFD8//3/AAAIAAEAAFD9//3/AAAIAAEAAFAAAP//AAAIAAEAAGD/////AAAIAAEAAFABAP//AAAIAAAAAVAFAAEAAAAIAAAAAAAFAAIAAAAIAAAAAQD6/wMAAAAAAAAAAAD6/wAAAAAIAAAAAVD+/wIAAAAAAAEAAAD+/wEAAAAAAAAAAAD+////AAAAAAIAAAD+//3/AAACAAAAAAD+//7/AAAIAAEAAAA=") tile_set = SubResource("TileSet_n3khe") -[node name="TextureRect" type="TextureRect" parent="." index="6"] +[node name="TextureRect" type="TextureRect" parent="." index="5"] z_index = -100 material = SubResource("ShaderMaterial_mvq46") anchors_preset = 15 @@ -176,23 +168,26 @@ grow_vertical = 2 texture = ExtResource("5_4p03u") stretch_mode = 1 -[node name="Goal" parent="." index="7" instance=ExtResource("6_xhax5")] -position = Vector2(582, -317) +[node name="AnimatableBody2D" parent="." index="6" instance=ExtResource("5_4ggcc")] +position = Vector2(-101, 64) -[node name="MirrorOrb" parent="." index="8" instance=ExtResource("7_dyi0e")] -position = Vector2(-431, -212) - -[node name="EnemyMover" parent="." index="9" instance=ExtResource("8_16072")] -position = Vector2(-132, 311) - -[node name="Block" parent="." index="10" node_paths=PackedStringArray("ui_actions") instance=ExtResource("8_ec71m")] -position = Vector2(-65, 63) -ui_actions = NodePath("../UILayer/UI") - -[node name="Block2" parent="." index="11" node_paths=PackedStringArray("ui_actions") instance=ExtResource("8_ec71m")] -position = Vector2(-255, -32) +[node name="AnimatableBody2D2" parent="." index="7" instance=ExtResource("5_4ggcc")] +position = Vector2(-250, -32) scale = Vector2(0.5, 0.5) -ui_actions = NodePath("../UILayer/UI") -[node name="BreakableBlock" parent="." index="12" instance=ExtResource("9_2ia1u")] -position = Vector2(241, -47) +[node name="AnimatableBody2D4" parent="." index="8" instance=ExtResource("5_4ggcc")] +position = Vector2(112, 48) +scale = Vector2(0.5, 0.5) + +[node name="AnimatableBody2D3" parent="." index="9" instance=ExtResource("5_4ggcc")] +position = Vector2(1, -65) + +[node name="Laser" parent="." index="10" instance=ExtResource("8_gxgbn")] +position = Vector2(15, 15) + +[node name="PressurePlate" parent="." index="11" instance=ExtResource("7_i8kgx")] +position = Vector2(-272, -32) +rotation = 1.57987 + +[node name="Goal" parent="." index="12" instance=ExtResource("9_xut5w")] +position = Vector2(-272, -112) diff --git a/gmtk_2024/levels/level_1_2.tscn b/gmtk_2024/levels/level_1_2.tscn new file mode 100644 index 0000000..c38005f --- /dev/null +++ b/gmtk_2024/levels/level_1_2.tscn @@ -0,0 +1,190 @@ +[gd_scene load_steps=12 format=4 uid="uid://bgrwqfa7lr66a"] + +[ext_resource type="PackedScene" uid="uid://ba6afuig8bqrg" path="res://levels/LevelBase.tscn" id="1_yg0vd"] +[ext_resource type="Texture2D" uid="uid://c3m4os8kteaix" path="res://textures/level01-spritesheet.png" id="2_ptgl0"] +[ext_resource type="Shader" path="res://shaders/scrolling.gdshader" id="3_qimc8"] +[ext_resource type="Texture2D" uid="uid://bn7cejgxkah8o" path="res://textures/Level 01.png" id="4_3uw4k"] +[ext_resource type="PackedScene" uid="uid://d0q0sfati8wk0" path="res://objects/ResizableBlock.tscn" id="5_vd2rm"] +[ext_resource type="PackedScene" uid="uid://c168bkledwyya" path="res://objects/Laser.tscn" id="6_bio6g"] +[ext_resource type="PackedScene" uid="uid://c6g2f7tm7iasr" path="res://objects/PressurePlate.tscn" id="7_lkgxo"] +[ext_resource type="PackedScene" uid="uid://d0gpnqknarkg7" path="res://objects/Goal.tscn" id="8_38762"] + +[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_e817v"] +texture = ExtResource("2_ptgl0") +texture_region_size = Vector2i(32, 32) +0:0/0 = 0 +0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:0/0 = 0 +1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:0/0 = 0 +2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:0/0 = 0 +3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:0/0 = 0 +4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +5:0/0 = 0 +5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:0/0 = 0 +6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +7:0/0 = 0 +7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/next_alternative_id = 4 +8:0/0 = 0 +8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/1 = 1 +8:0/1/flip_v = true +8:0/1/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/2 = 2 +8:0/2/transpose = true +8:0/2/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:0/3 = 3 +8:0/3/flip_h = true +8:0/3/transpose = true +8:0/3/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +9:0/0 = 0 +10:0/0 = 0 +11:0/0 = 0 +0:1/0 = 0 +0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:1/0 = 0 +1:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:1/0 = 0 +2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:1/0 = 0 +3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:1/0 = 0 +5:1/0 = 0 +5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:1/0 = 0 +6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +7:1/0 = 0 +7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +8:1/0 = 0 +8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +9:1/0 = 0 +10:1/0 = 0 +11:1/0 = 0 +0:2/0 = 0 +0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +1:2/0 = 0 +1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +2:2/0 = 0 +2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +3:2/0 = 0 +3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +4:2/0 = 0 +4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +5:2/0 = 0 +5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16) +6:2/0 = 0 +7:2/0 = 0 +10:2/0 = 0 +11:2/0 = 0 +0:3/0 = 0 +1:3/0 = 0 +2:3/0 = 0 +3:3/0 = 0 +4:3/0 = 0 +5:3/0 = 0 +6:3/0 = 0 +7:3/0 = 0 +10:3/0 = 0 +11:3/0 = 0 +0:4/0 = 0 +1:4/0 = 0 +2:4/0 = 0 +3:4/0 = 0 +4:4/0 = 0 +5:4/0 = 0 +6:4/0 = 0 +7:4/0 = 0 +8:4/0 = 0 +9:4/0 = 0 +10:4/0 = 0 +11:4/0 = 0 +0:5/0 = 0 +1:5/0 = 0 +2:5/0 = 0 +3:5/0 = 0 +4:5/0 = 0 +5:5/0 = 0 +6:5/0 = 0 +7:5/0 = 0 +8:5/0 = 0 +9:5/0 = 0 +10:5/0 = 0 +11:5/0 = 0 + +[sub_resource type="TileSet" id="TileSet_n3khe"] +tile_size = Vector2i(32, 32) +physics_layer_0/collision_layer = 1 +sources/0 = SubResource("TileSetAtlasSource_e817v") + +[sub_resource type="ShaderMaterial" id="ShaderMaterial_mvq46"] +shader = ExtResource("3_qimc8") +shader_parameter/scroll_speed = 0.02 + +[node name="LevelBase" instance=ExtResource("1_yg0vd")] + +[node name="Player" parent="." index="0"] +position = Vector2(-254, 99) +input_pickable = true + +[node name="Walls" parent="." index="3"] +collision_mask = 22 + +[node name="Ground" parent="Walls" index="0"] +position = Vector2(-7, 167) + +[node name="Ceiling" parent="Walls" index="1"] +position = Vector2(57, -171) + +[node name="LeftWall" parent="Walls" index="2"] +position = Vector2(-320, 26) + +[node name="RightWall" parent="Walls" index="3"] +position = Vector2(338, 15) + +[node name="Layer0" type="TileMapLayer" parent="." index="4"] +use_parent_material = true +tile_map_data = PackedByteArray("AAD2//v/AAADAAAAAAD2//z/AAACAAEAAAD2//3/AAACAAEAAAD2//7/AAACAAEAAAD2////AAACAAEAAAD2/wAAAAACAAEAAAD2/wEAAAACAAEAAAD2/wIAAAACAAEAAAD2/wMAAAACAAEAAAD2/wQAAAADAAIAAAAJAPv/AAAFAAAAAAAJAPz/AAAAAAEAAAAJAP3/AAAAAAEAAAAJAP7/AAAAAAEAAAAJAP//AAAAAAEAAAAJAAAAAAAAAAEAAAAJAAEAAAAAAAEAAAAJAAIAAAAAAAEAAAAJAAMAAAAAAAEAAAAJAAQAAAAFAAIAAAD3//v/AAABAAIAAAD4//v/AAABAAIAAAD5//v/AAABAAIAAAD6//v/AAABAAIAAAD7//v/AAABAAIAAAD8//v/AAABAAIAAAD9//v/AAABAAIAAAD+//v/AAABAAIAAAD///v/AAABAAIAAAAAAPv/AAABAAIAAAABAPv/AAABAAIAAAACAPv/AAABAAIAAAADAPv/AAABAAIAAAAEAPv/AAABAAIAAAAFAPv/AAABAAIAAAAGAPv/AAABAAIAAAAHAPv/AAABAAIAAAAIAPv/AAABAAIAAAD3/wQAAAABAAAAAAD4/wQAAAABAAAAAAD5/wQAAAABAAAAAAD6/wQAAAABAAAAAAD7/wQAAAAFAAIAAAD8/wQAAAABAAEAAAD9/wQAAAABAAEAAAD+/wQAAAABAAEAAAD//wQAAAABAAEAAAAAAAQAAAABAAEAAAABAAQAAAADAAIAAAACAAQAAAABAAAAAAADAAQAAAABAAAAAAAEAAQAAAABAAAAAAAFAAQAAAABAAAAAAAGAAQAAAABAAAAAAAHAAQAAAABAAAAAAAIAAQAAAABAAAAAAD7/wMAAAAAAAAAAAD8/wMAAAABAAAAAAD9/wMAAAABAAAAAAD+/wMAAAABAAAAAAD//wIAAAAAAAEAAAD//wEAAAAAAAAAAAAAAAEAAAAEAAIAAAABAAEAAAACAAAAAAABAAIAAAACAAEAAAABAAMAAAACAAEAAAD//wMAAAAFAAIAAAAAAAIAAAABAAEAAAAAAAMAAAABAAEAAAD3/wAAAAAIAAEAAGD4/wAAAAAIAAEAAGD5/wAAAAAIAAEAAGD6/wAAAAAIAAEAAGD7/wAAAAAIAAAAAVD3//3/AAAIAAEAAFD4//3/AAAIAAEAAFD5//3/AAAIAAEAAFD6//3/AAAIAAEAAFD7//3/AAAIAAEAAFD8//3/AAAIAAEAAFD9//3/AAAIAAEAAFD+//3/AAACAAAAAAAAAP//AAABAAIAAAD/////AAAAAAIAAAD///7/AAAHAAAAAAAAAP7/AAACAAAAAAABAP//AAAIAAAAAVD+//7/AAAAAAIAAAAFAAEAAAAIAAAAAAAFAAIAAAAIAAAAAQA=") +tile_set = SubResource("TileSet_n3khe") + +[node name="TextureRect" type="TextureRect" parent="." index="5"] +z_index = -100 +material = SubResource("ShaderMaterial_mvq46") +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +offset_left = -320.0 +offset_top = -158.0 +offset_right = -320.0 +offset_bottom = -158.0 +grow_horizontal = 2 +grow_vertical = 2 +texture = ExtResource("4_3uw4k") +stretch_mode = 1 + +[node name="AnimatableBody2D" parent="." index="6" instance=ExtResource("5_vd2rm")] +position = Vector2(-65, 64) + +[node name="AnimatableBody2D2" parent="." index="7" instance=ExtResource("5_vd2rm")] +position = Vector2(-250, -32) +scale = Vector2(0.5, 0.5) + +[node name="AnimatableBody2D4" parent="." index="8" instance=ExtResource("5_vd2rm")] +position = Vector2(112, 48) +scale = Vector2(0.5, 0.5) + +[node name="AnimatableBody2D3" parent="." index="9" instance=ExtResource("5_vd2rm")] +position = Vector2(0, -96) + +[node name="Laser" parent="." index="10" instance=ExtResource("6_bio6g")] +position = Vector2(15, 15) + +[node name="PressurePlate" parent="." index="11" instance=ExtResource("7_lkgxo")] +position = Vector2(-272, -32) +rotation = 1.57987 + +[node name="Goal" parent="." index="12" instance=ExtResource("8_38762")] +position = Vector2(-272, -112) diff --git a/gmtk_2024/levels/level_test.tscn b/gmtk_2024/levels/level_test.tscn index 2306bd8..21d5217 100644 --- a/gmtk_2024/levels/level_test.tscn +++ b/gmtk_2024/levels/level_test.tscn @@ -3,9 +3,9 @@ [ext_resource type="PackedScene" uid="uid://ba6afuig8bqrg" path="res://levels/LevelBase.tscn" id="1_5gkl4"] [ext_resource type="Texture2D" uid="uid://c3m4os8kteaix" path="res://textures/level01-spritesheet.png" id="2_qg46i"] [ext_resource type="Shader" path="res://shaders/scrolling.gdshader" id="3_rojjv"] -[ext_resource type="Texture2D" uid="uid://c61y0181w3sq2" path="res://textures/Level 01.png" id="4_nk0bq"] -[ext_resource type="PackedScene" path="res://objects/Goal.tscn" id="5_3ut8w"] -[ext_resource type="PackedScene" path="res://objects/MirrorOrb.tscn" id="6_jm8e5"] +[ext_resource type="Texture2D" uid="uid://bn7cejgxkah8o" path="res://textures/Level 01.png" id="4_nk0bq"] +[ext_resource type="PackedScene" uid="uid://d0gpnqknarkg7" path="res://objects/Goal.tscn" id="5_3ut8w"] +[ext_resource type="PackedScene" uid="uid://cpa66thuxma15" path="res://objects/MirrorOrb.tscn" id="6_jm8e5"] [ext_resource type="PackedScene" uid="uid://br6fngf5208j0" path="res://objects/ResizableBlockBig.tscn" id="7_82440"] [ext_resource type="PackedScene" uid="uid://vtwswrkfkgas" path="res://objects/EnemyMover.tscn" id="8_m2r3p"] @@ -130,25 +130,18 @@ shader_parameter/scroll_speed = 0.02 position = Vector2(-542, 331) scale = Vector2(2, 2) -[node name="UI" parent="UILayer" index="0" node_paths=PackedStringArray("player")] -mouse_filter = 2 -player = NodePath("../../Player") - -[node name="HBoxContainer" parent="UILayer/UI" index="0"] -mouse_filter = 0 - -[node name="Walls" parent="." index="4"] +[node name="Walls" parent="." index="3"] collision_mask = 22 [node name="LeftWall" parent="Walls" index="2"] position = Vector2(-665, 14) -[node name="Layer0" type="TileMapLayer" parent="." index="5"] +[node name="Layer0" type="TileMapLayer" parent="." index="4"] use_parent_material = true tile_map_data = PackedByteArray("AADt/wsAAAABAAAAAADu/wsAAAABAAAAAADv/wsAAAABAAAAAADw/wsAAAABAAAAAADx/wsAAAABAAAAAADy/wsAAAABAAAAAADz/wsAAAABAAAAAAD0/wsAAAABAAAAAAD1/wsAAAABAAAAAAD2/wsAAAABAAAAAAD3/wsAAAABAAAAAAD4/wsAAAABAAAAAAD5/wsAAAABAAAAAAD6/wsAAAABAAAAAAD7/wsAAAABAAAAAAD8/wsAAAABAAAAAAD9/wsAAAABAAAAAAD+/wsAAAABAAAAAAD//wsAAAABAAAAAAAAAAsAAAABAAAAAAABAAsAAAABAAAAAAACAAsAAAABAAAAAAADAAsAAAABAAAAAAAEAAsAAAABAAAAAAAFAAsAAAABAAAAAAAGAAsAAAABAAAAAAAHAAsAAAABAAAAAAAIAAsAAAABAAAAAAAJAAsAAAABAAAAAAAKAAsAAAAFAAIAAAALAAsAAAABAAEAAAAMAAsAAAABAAEAAAANAAsAAAABAAEAAAAOAAsAAAABAAEAAAAPAAsAAAABAAEAAAAQAAsAAAABAAEAAAARAAsAAAABAAEAAAASAAsAAAABAAEAAAATAAsAAAABAAEAAAAKAPT/AAABAAIAAAALAPT/AAABAAIAAAAMAPT/AAABAAIAAAANAPT/AAABAAIAAAATAPT/AAAFAAAAAAASAPT/AAABAAIAAAARAPT/AAABAAIAAAAQAPT/AAABAAIAAAAPAPT/AAABAAIAAAAOAPT/AAABAAIAAAAJAPT/AAABAAIAAAAIAPT/AAABAAIAAAAHAPT/AAABAAIAAAAGAPT/AAABAAIAAAAFAPT/AAABAAIAAAAEAPT/AAABAAIAAAADAPT/AAABAAIAAAACAPT/AAABAAIAAAD5//T/AAABAAIAAAD4//T/AAABAAIAAAD3//T/AAABAAIAAAD2//T/AAABAAIAAAD1//T/AAABAAIAAAD0//T/AAABAAIAAADz//T/AAABAAIAAADy//T/AAABAAIAAADx//T/AAABAAIAAADw//T/AAABAAIAAADv//T/AAABAAIAAADu//T/AAABAAIAAADt//T/AAABAAIAAADs//T/AAADAAAAAAD6//T/AAABAAIAAAD7//T/AAABAAIAAAD8//T/AAABAAIAAAD9//T/AAABAAIAAAD+//T/AAABAAIAAAD///T/AAABAAIAAAAAAPT/AAABAAIAAAABAPT/AAABAAIAAADs/woAAAACAAEAAADs/wkAAAACAAEAAADs/wgAAAACAAEAAADs/wcAAAACAAEAAADs/wYAAAADAAAAAADs/wUAAAABAAEAAADs/wQAAAABAAEAAADs/wMAAAADAAIAAADs/wIAAAACAAEAAADs/wEAAAACAAEAAADs/wAAAAABAAEAAADs////AAABAAEAAADs//7/AAADAAIAAADs//3/AAACAAEAAADs//z/AAACAAEAAADs//v/AAACAAEAAADs//r/AAACAAEAAADs//X/AAACAAEAAADs//b/AAACAAEAAADs//f/AAACAAEAAADs//j/AAACAAEAAADs//n/AAACAAEAAAATAPX/AAAAAAEAAAATAPb/AAAAAAEAAAATAPf/AAAFAAIAAAATAPj/AAABAAEAAAATAPn/AAABAAEAAAATAPr/AAABAAEAAAATAPv/AAABAAEAAAATAPz/AAAFAAAAAAATAP3/AAAAAAEAAAATAP7/AAAAAAEAAAATAP//AAAAAAEAAAATAAAAAAAAAAEAAAATAAEAAAAAAAEAAAATAAIAAAAAAAEAAAATAAMAAAAAAAEAAAATAAQAAAAAAAEAAAATAAUAAAAAAAEAAAATAAYAAAAAAAEAAAATAAcAAAAAAAEAAAATAAgAAAAAAAEAAAATAAkAAAAFAAIAAAATAAoAAAABAAEAAAAKAAkAAAAAAAAAAAAKAAoAAAAAAAEAAAALAAkAAAABAAAAAAALAAoAAAABAAEAAAAMAAkAAAABAAAAAAAMAAoAAAABAAEAAAANAAkAAAABAAAAAAANAAoAAAABAAEAAAAOAAkAAAABAAAAAAAOAAoAAAABAAEAAAAPAAkAAAABAAAAAAAPAAoAAAABAAEAAAAQAAkAAAABAAAAAAAQAAoAAAABAAEAAAARAAkAAAABAAAAAAARAAoAAAABAAEAAAASAAkAAAABAAAAAAASAAoAAAABAAEAAADt/wMAAAABAAAAAADt/wQAAAABAAEAAADt/wUAAAABAAEAAADt/wYAAAABAAIAAADu/wMAAAABAAAAAADu/wQAAAABAAEAAADu/wUAAAABAAEAAADu/wYAAAABAAIAAADv/wMAAAABAAAAAADv/wQAAAABAAEAAADv/wUAAAABAAEAAADv/wYAAAABAAIAAADw/wMAAAABAAAAAADw/wQAAAABAAEAAADw/wUAAAABAAEAAADw/wYAAAABAAIAAADx/wMAAAABAAAAAADx/wQAAAABAAEAAADx/wUAAAABAAEAAADx/wYAAAABAAIAAADy/wMAAAABAAAAAADy/wQAAAABAAEAAADy/wUAAAABAAEAAADy/wYAAAABAAIAAADz/wMAAAABAAAAAADz/wQAAAABAAEAAADz/wUAAAABAAEAAADz/wYAAAABAAIAAAD0/wMAAAABAAAAAAD0/wQAAAABAAEAAAD0/wUAAAABAAEAAAD0/wYAAAABAAIAAAD1/wMAAAABAAAAAAD1/wQAAAABAAEAAAD1/wUAAAABAAEAAAD1/wYAAAABAAIAAAD2/wMAAAABAAAAAAD2/wQAAAABAAEAAAD2/wUAAAABAAEAAAD2/wYAAAABAAIAAAD3/wMAAAABAAAAAAD3/wQAAAABAAEAAAD3/wUAAAABAAEAAAD3/wYAAAABAAIAAAD4/wMAAAABAAAAAAD4/wQAAAABAAEAAAD4/wUAAAABAAEAAAD4/wYAAAABAAIAAAD5/wMAAAABAAAAAAD5/wQAAAABAAEAAAD5/wUAAAABAAEAAAD5/wYAAAABAAIAAAD6/wMAAAABAAAAAAD6/wQAAAABAAEAAAD6/wUAAAABAAEAAAD6/wYAAAABAAIAAAD7/wMAAAABAAAAAAD7/wQAAAABAAEAAAD7/wUAAAABAAEAAAD7/wYAAAABAAIAAAD8/wMAAAABAAAAAAD8/wQAAAABAAEAAAD8/wUAAAABAAEAAAD8/wYAAAABAAIAAAD9/wMAAAABAAAAAAD9/wQAAAABAAEAAAD9/wUAAAABAAEAAAD9/wYAAAABAAIAAAD+/wMAAAABAAAAAAD+/wQAAAABAAEAAAD+/wUAAAABAAEAAAD+/wYAAAABAAIAAAD//wMAAAABAAAAAAD//wQAAAABAAEAAAD//wUAAAABAAEAAAD//wYAAAABAAIAAAAAAAMAAAABAAAAAAAAAAQAAAABAAEAAAAAAAUAAAABAAEAAAAAAAYAAAABAAIAAAABAAMAAAACAAAAAAABAAQAAAADAAIAAAABAAUAAAABAAEAAAABAAYAAAABAAIAAAACAAQAAAAEAAIAAAACAAUAAAABAAEAAAACAAYAAAABAAIAAAADAAQAAAACAAAAAAADAAUAAAADAAIAAAADAAYAAAABAAIAAAAEAAUAAAAEAAIAAAAEAAYAAAABAAIAAAAFAAUAAAACAAAAAAAFAAYAAAAGAAEAAAAGAAYAAAAIAAAAAwD7/wAAAAABAAIAAAD8/wAAAAABAAIAAAD9/wAAAAABAAIAAAD+/wAAAAABAAIAAAD//wAAAAABAAIAAAAAAAAAAAACAAIAAAD7////AAABAAEAAAD8////AAABAAEAAAD9////AAABAAEAAAD+////AAABAAEAAAD/////AAABAAEAAAAAAP//AAACAAEAAAAAAP7/AAACAAAAAAD///7/AAABAAAAAAD+//7/AAABAAAAAAD9//7/AAABAAAAAAD8//7/AAABAAAAAAD7//7/AAABAAAAAAD6/wAAAAABAAIAAAD5/wAAAAABAAIAAAD4/wAAAAABAAIAAAD3/wAAAAAHAAEAAAD2/wAAAAAIAAAAAgD3////AAAAAAAAAAD4////AAAFAAIAAAD4//7/AAAAAAAAAAD5//7/AAABAAAAAAD6//7/AAABAAAAAAD6////AAABAAEAAAD5////AAABAAEAAADz/wAAAAAIAAAAAwDy/wAAAAAGAAEAAADy////AAACAAAAAADx////AAABAAEAAADw////AAABAAEAAADv////AAABAAEAAADv//7/AAABAAAAAADu//7/AAABAAAAAADt//7/AAABAAAAAADt////AAABAAEAAADu////AAABAAEAAADv/wAAAAABAAIAAADw/wAAAAABAAIAAADx/wAAAAABAAIAAADu/wAAAAABAAIAAADt/wAAAAABAAIAAADw//7/AAABAAAAAADx//7/AAACAAAAAADy//v/AAAIAAAAAgDz//z/AAAAAAIAAAD0//3/AAAAAAIAAAD1//3/AAACAAIAAAD2//z/AAACAAIAAAD3//v/AAAIAAAAAwDz//v/AAAHAAAAAAD0//v/AAABAAAAAAD1//v/AAABAAAAAAD2//v/AAAGAAAAAAD0//z/AAABAAEAAAD1//z/AAABAAEAAAD6//n/AAAIAAAAAgD7//n/AAAHAAAAAAD8//n/AAABAAEAAAD8//j/AAAAAAAAAAD9//j/AAACAAAAAAD9//n/AAABAAEAAAD+//n/AAAGAAAAAAD///n/AAAIAAAAAwD7//r/AAAAAAIAAAD8//r/AAABAAEAAAD9//r/AAABAAEAAAD+//r/AAACAAIAAAD8//v/AAAAAAIAAAD9//v/AAACAAIAAAADAPj/AAAIAAAAAgAEAPj/AAAHAAAAAAAFAPj/AAABAAAAAAAGAPj/AAABAAAAAAAHAPj/AAABAAAAAAAIAPj/AAABAAAAAAAJAPj/AAABAAAAAAAKAPj/AAABAAAAAAALAPj/AAAFAAIAAAALAPf/AAAAAAAAAAAMAPf/AAABAAAAAAANAPf/AAABAAAAAAAOAPf/AAABAAAAAAAPAPf/AAABAAAAAAAQAPf/AAABAAAAAAARAPf/AAABAAAAAAASAPf/AAABAAAAAAASAPj/AAABAAEAAAARAPj/AAABAAEAAAAQAPj/AAABAAEAAAAPAPj/AAABAAEAAAAOAPn/AAABAAEAAAANAPn/AAABAAEAAAAMAPn/AAABAAEAAAAMAPj/AAABAAEAAAANAPj/AAABAAEAAAAOAPj/AAABAAEAAAASAPn/AAABAAEAAAARAPn/AAABAAEAAAAQAPn/AAABAAEAAAAPAPn/AAABAAEAAAALAPn/AAABAAEAAAAKAPn/AAABAAEAAAAJAPn/AAABAAEAAAAIAPn/AAABAAEAAAAHAPn/AAABAAEAAAAGAPn/AAABAAEAAAAFAPn/AAAFAAAAAAAEAPn/AAAAAAIAAAAFAPr/AAAAAAIAAAAGAPr/AAABAAIAAAAHAPr/AAABAAIAAAAIAPr/AAABAAEAAAAJAPr/AAABAAEAAAAKAPr/AAABAAEAAAALAPr/AAABAAEAAAAMAPr/AAABAAEAAAANAPr/AAABAAEAAAAOAPr/AAABAAEAAAAPAPr/AAABAAEAAAAQAPr/AAABAAEAAAARAPr/AAABAAEAAAASAPr/AAABAAEAAAAQAPv/AAABAAEAAAAPAPv/AAABAAEAAAAOAPv/AAABAAEAAAANAPv/AAABAAEAAAAMAPv/AAABAAEAAAALAPv/AAAFAAAAAAAKAPv/AAABAAIAAAAJAPv/AAABAAIAAAAIAPv/AAAAAAIAAAARAPv/AAABAAEAAAASAPv/AAABAAEAAAASAPz/AAABAAIAAAARAPz/AAABAAIAAAAQAPz/AAABAAIAAAAPAPz/AAABAAIAAAAOAPz/AAABAAIAAAANAPz/AAABAAIAAAAMAPz/AAABAAIAAAALAPz/AAAAAAIAAADs/wsAAAADAAIAAAA=") tile_set = SubResource("TileSet_n3khe") -[node name="TextureRect" type="TextureRect" parent="." index="6"] +[node name="TextureRect" type="TextureRect" parent="." index="5"] z_index = -100 material = SubResource("ShaderMaterial_mvq46") anchors_preset = 15 @@ -163,21 +156,19 @@ grow_vertical = 2 texture = ExtResource("4_nk0bq") stretch_mode = 1 -[node name="Goal" parent="." index="7" instance=ExtResource("5_3ut8w")] +[node name="Goal" parent="." index="6" instance=ExtResource("5_3ut8w")] position = Vector2(582, -317) -[node name="MirrorOrb" parent="." index="8" instance=ExtResource("6_jm8e5")] +[node name="MirrorOrb" parent="." index="7" instance=ExtResource("6_jm8e5")] position = Vector2(-431, -212) -[node name="Block" parent="." index="9" node_paths=PackedStringArray("ui_actions") instance=ExtResource("7_82440")] +[node name="Block" parent="." index="8" instance=ExtResource("7_82440")] position = Vector2(432, 186) collision_layer = 1 -ui_actions = NodePath("../UILayer/UI") -[node name="EnemyMover" parent="." index="10" instance=ExtResource("8_m2r3p")] +[node name="EnemyMover" parent="." index="9" instance=ExtResource("8_m2r3p")] position = Vector2(-132, 311) -[node name="Block3" parent="." index="11" node_paths=PackedStringArray("ui_actions") instance=ExtResource("7_82440")] +[node name="Block3" parent="." index="10" instance=ExtResource("7_82440")] position = Vector2(162, 124) collision_layer = 1 -ui_actions = NodePath("../UILayer/UI") diff --git a/gmtk_2024/menu/level_menu/level_button.tscn b/gmtk_2024/menu/level_menu/level_button.tscn index 6fe7b1c..2f6dc9f 100644 --- a/gmtk_2024/menu/level_menu/level_button.tscn +++ b/gmtk_2024/menu/level_menu/level_button.tscn @@ -1,14 +1,20 @@ [gd_scene load_steps=7 format=3 uid="uid://t83eid7pf4iv"] -[ext_resource type="Texture2D" uid="uid://yg2u8vwwbpv1" path="res://textures/File-Icon.png" id="1_2sfn6"] -[ext_resource type="Texture2D" uid="uid://bc2ictes4mln1" path="res://textures/File-Icon-Closed.png" id="2_6ev1f"] [ext_resource type="FontFile" uid="uid://d3pbvdemdbxes" path="res://CommodoreSixtyFour.ttf" id="3_732s0"] -[ext_resource type="Texture2D" uid="uid://cp2ybylvgmek4" path="res://textures/File-Icon-Sheet.png" id="3_bbfoq"] +[ext_resource type="Texture2D" uid="uid://dvk7nu7pp4fl3" path="res://textures/File-Icon-Sheet.png" id="3_bbfoq"] [ext_resource type="Script" path="res://scripts/level_menu_level_button.gd" id="3_e83yn"] -[sub_resource type="AtlasTexture" id="AtlasTexture_u313o"] +[sub_resource type="AtlasTexture" id="AtlasTexture_xlv6q"] atlas = ExtResource("3_bbfoq") -region = Rect2(355, 6, 26, 24) +region = Rect2(99, 6, 26, 24) + +[sub_resource type="AtlasTexture" id="AtlasTexture_ih6f2"] +atlas = ExtResource("3_bbfoq") +region = Rect2(354, 6, 28, 24) + +[sub_resource type="AtlasTexture" id="AtlasTexture_fekch"] +atlas = ExtResource("3_bbfoq") +region = Rect2(35, 6, 26, 24) [node name="LevelButton" type="TextureButton"] custom_minimum_size = Vector2(50, 50) @@ -17,9 +23,9 @@ offset_bottom = 40.0 size_flags_horizontal = 3 size_flags_vertical = 3 disabled = true -texture_normal = ExtResource("1_2sfn6") -texture_disabled = ExtResource("2_6ev1f") -texture_focused = SubResource("AtlasTexture_u313o") +texture_normal = SubResource("AtlasTexture_xlv6q") +texture_hover = SubResource("AtlasTexture_ih6f2") +texture_disabled = SubResource("AtlasTexture_fekch") ignore_texture_size = true stretch_mode = 5 script = ExtResource("3_e83yn") diff --git a/gmtk_2024/menu/level_menu/level_select.tscn b/gmtk_2024/menu/level_menu/level_select.tscn index 1d842bc..bfd9f61 100644 --- a/gmtk_2024/menu/level_menu/level_select.tscn +++ b/gmtk_2024/menu/level_menu/level_select.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=5 format=3 uid="uid://bvvxwhg4tihng"] +[gd_scene load_steps=6 format=3 uid="uid://bvvxwhg4tihng"] [ext_resource type="Theme" uid="uid://cohbys634cf18" path="res://menu/main_menu/MainMenuTheme.tres" id="1_3v0vu"] [ext_resource type="Texture2D" uid="uid://dr4ayedb5xb2k" path="res://textures/file_editor.png" id="1_44xee"] +[ext_resource type="PackedScene" uid="uid://dii1q3f5dj72y" path="res://objects/CRT.tscn" id="2_crosg"] [ext_resource type="Script" path="res://scripts/level_select.gd" id="2_nurro"] [ext_resource type="PackedScene" uid="uid://t83eid7pf4iv" path="res://menu/level_menu/level_button.tscn" id="4_0d7hu"] @@ -14,6 +15,8 @@ grow_horizontal = 2 grow_vertical = 2 script = ExtResource("2_nurro") +[node name="CanvasLayer" parent="." instance=ExtResource("2_crosg")] + [node name="Background" type="TextureRect" parent="."] layout_mode = 1 anchors_preset = 15 @@ -26,22 +29,23 @@ expand_mode = 1 [node name="Label" type="Label" parent="Background"] layout_mode = 0 -offset_left = 30.0 -offset_top = -8.0 -offset_right = 272.0 -offset_bottom = 42.0 +offset_left = -28.0 +offset_top = -12.0 +offset_right = 214.0 +offset_bottom = 24.0 theme = ExtResource("1_3v0vu") -theme_override_font_sizes/font_size = 45 +theme_override_colors/font_color = Color(0, 0, 0, 1) +theme_override_font_sizes/font_size = 30 text = "level select" horizontal_alignment = 1 vertical_alignment = 1 [node name="QuitButton" type="Button" parent="Background"] layout_mode = 0 -offset_left = 1232.0 -offset_top = 2.0 -offset_right = 1270.0 -offset_bottom = 40.0 +offset_left = 576.0 +offset_top = 1.0 +offset_right = 635.0 +offset_bottom = 18.0 flat = true [node name="ClipControl" type="Control" parent="Background"] @@ -60,8 +64,13 @@ layout_mode = 1 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 +offset_left = 65.2 +offset_top = 14.0 +offset_right = -93.1599 +offset_bottom = -25.4 grow_horizontal = 2 grow_vertical = 2 +scale = Vector2(1.06042, 1.058) columns = 3 [node name="LevelButton" parent="Background/ClipControl/GridContainer" instance=ExtResource("4_0d7hu")] diff --git a/gmtk_2024/menu/main_menu/CreditsScene.tscn b/gmtk_2024/menu/main_menu/CreditsScene.tscn index 95c7a98..8860b18 100644 --- a/gmtk_2024/menu/main_menu/CreditsScene.tscn +++ b/gmtk_2024/menu/main_menu/CreditsScene.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=3 format=3 uid="uid://cut2xjnvh8i58"] +[gd_scene load_steps=4 format=3 uid="uid://cut2xjnvh8i58"] [ext_resource type="Theme" uid="uid://cohbys634cf18" path="res://menu/main_menu/MainMenuTheme.tres" id="1_tmf11"] [ext_resource type="Script" path="res://scripts/menu_credit_control.gd" id="2_ogwi7"] +[ext_resource type="PackedScene" uid="uid://dii1q3f5dj72y" path="res://objects/CRT.tscn" id="3_rybt6"] [node name="CreditScene" type="MarginContainer"] anchors_preset = 15 @@ -11,10 +12,6 @@ grow_horizontal = 2 grow_vertical = 2 theme = ExtResource("1_tmf11") -[node name="ColorRect" type="ColorRect" parent="."] -layout_mode = 2 -color = Color(0, 0, 0, 1) - [node name="Control" type="Control" parent="."] layout_mode = 2 script = ExtResource("2_ogwi7") @@ -23,3 +20,9 @@ script = ExtResource("2_ogwi7") layout_mode = 0 offset_right = 40.0 offset_bottom = 13.0 + +[node name="CanvasLayer" parent="Control" instance=ExtResource("3_rybt6")] + +[node name="ColorRect" type="ColorRect" parent="."] +layout_mode = 2 +color = Color(0, 0, 0, 1) diff --git a/gmtk_2024/menu/main_menu/MainMenu.tscn b/gmtk_2024/menu/main_menu/MainMenu.tscn index 7f15265..91db35f 100644 --- a/gmtk_2024/menu/main_menu/MainMenu.tscn +++ b/gmtk_2024/menu/main_menu/MainMenu.tscn @@ -1,8 +1,9 @@ -[gd_scene load_steps=4 format=3 uid="uid://1h2urto6y63r"] +[gd_scene load_steps=5 format=3 uid="uid://1h2urto6y63r"] [ext_resource type="FontFile" uid="uid://d3pbvdemdbxes" path="res://CommodoreSixtyFour.ttf" id="1_1tx2i"] [ext_resource type="Theme" uid="uid://cohbys634cf18" path="res://menu/main_menu/MainMenuTheme.tres" id="1_kkajn"] [ext_resource type="Script" path="res://scripts/menu_main_control.gd" id="2_g8c7b"] +[ext_resource type="PackedScene" uid="uid://dii1q3f5dj72y" path="res://objects/CRT.tscn" id="2_hal3l"] [node name="MainMenu" type="MarginContainer"] anchors_preset = 15 @@ -12,6 +13,8 @@ grow_horizontal = 2 grow_vertical = 2 theme = ExtResource("1_kkajn") +[node name="CanvasLayer" parent="." instance=ExtResource("2_hal3l")] + [node name="ColorRect" type="ColorRect" parent="."] layout_mode = 2 color = Color(0, 0, 0, 1) diff --git a/gmtk_2024/objects/CRT.tscn b/gmtk_2024/objects/CRT.tscn index bf1007d..2f8896d 100644 --- a/gmtk_2024/objects/CRT.tscn +++ b/gmtk_2024/objects/CRT.tscn @@ -4,11 +4,11 @@ [sub_resource type="ShaderMaterial" id="ShaderMaterial_c8ly2"] shader = ExtResource("1_wsc8u") -shader_parameter/crt_curve = 0.01 -shader_parameter/crt_scan_line_color = 0.178 -shader_parameter/aperture_grille_rate = 0.141 -shader_parameter/rf_switch_esque_blur = 1.0 -shader_parameter/white_noise_rate = 0.0 +shader_parameter/crt_curve = 0.015 +shader_parameter/crt_scan_line_color = 0.347 +shader_parameter/aperture_grille_rate = 1.0 +shader_parameter/rf_switch_esque_blur = 0.21 +shader_parameter/white_noise_rate = 0.184 [node name="CanvasLayer" type="CanvasLayer"] @@ -19,3 +19,4 @@ anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 +mouse_filter = 2 diff --git a/gmtk_2024/objects/Goal.tscn b/gmtk_2024/objects/Goal.tscn index 667594d..f81a48b 100644 --- a/gmtk_2024/objects/Goal.tscn +++ b/gmtk_2024/objects/Goal.tscn @@ -1,29 +1,66 @@ -[gd_scene load_steps=5 format=3 uid="uid://d0gpnqknarkg7"] +[gd_scene load_steps=7 format=3 uid="uid://d0gpnqknarkg7"] [ext_resource type="Script" path="res://scripts/goal.gd" id="1_xjaxa"] -[ext_resource type="Texture2D" uid="uid://hsp64ixwg2bb" path="res://temp_assets/goal.png" id="1_y0s3c"] -[ext_resource type="Texture2D" uid="uid://bs8mevd0fornj" path="res://temp_assets/goal_bg.png" id="2_mxvn8"] +[ext_resource type="Texture2D" uid="uid://bje753fyfin0" path="res://textures/01-Portal-Sheet.png" id="2_hsts4"] + +[sub_resource type="Animation" id="Animation_v2oub"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame_coords") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [Vector2i(0, 0)] +} + +[sub_resource type="Animation" id="Animation_a6qt0"] +resource_name = "portal" +length = 0.55 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame_coords") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.0666667, 0.133333, 0.2, 0.266667, 0.333333, 0.4, 0.466667), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1), +"update": 1, +"values": [Vector2i(0, 0), Vector2i(1, 0), Vector2i(2, 0), Vector2i(3, 0), Vector2i(4, 0), Vector2i(5, 0), Vector2i(6, 0), Vector2i(7, 0)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_4pqp1"] +_data = { +"RESET": SubResource("Animation_v2oub"), +"portal": SubResource("Animation_a6qt0") +} [sub_resource type="CircleShape2D" id="CircleShape2D_fjcci"] -radius = 41.0488 +radius = 16.1245 -[node name="Goal" type="Area2D" node_paths=PackedStringArray("img", "img2")] -scale = Vector2(0.5, 0.5) +[node name="Goal" type="Area2D"] collision_layer = 0 collision_mask = 4 script = ExtResource("1_xjaxa") -img = NodePath("GoalImg") -img2 = NodePath("GoalBg") -[node name="GoalBg" type="Sprite2D" parent="."] +[node name="Sprite2D" type="Sprite2D" parent="."] z_index = -1 -position = Vector2(-4, 0) -texture = ExtResource("2_mxvn8") +texture = ExtResource("2_hsts4") +hframes = 8 -[node name="GoalImg" type="Sprite2D" parent="."] -texture = ExtResource("1_y0s3c") +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +libraries = { +"": SubResource("AnimationLibrary_4pqp1") +} [node name="CollisionShape2D" type="CollisionShape2D" parent="."] shape = SubResource("CircleShape2D_fjcci") +[connection signal="area_entered" from="." to="." method="_on_area_entered"] [connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/gmtk_2024/objects/Laser.tscn b/gmtk_2024/objects/Laser.tscn new file mode 100644 index 0000000..7e11607 --- /dev/null +++ b/gmtk_2024/objects/Laser.tscn @@ -0,0 +1,34 @@ +[gd_scene load_steps=5 format=3 uid="uid://c168bkledwyya"] + +[ext_resource type="Texture2D" uid="uid://c3m4os8kteaix" path="res://textures/level01-spritesheet.png" id="1_6whpg"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_dplbn"] +atlas = ExtResource("1_6whpg") +region = Rect2(192.002, 64.0069, 32.0036, 31.9977) + +[sub_resource type="AtlasTexture" id="AtlasTexture_7sk3t"] +atlas = ExtResource("1_6whpg") +region = Rect2(128.019, 31.9952, 31.9608, 31.9949) + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_jee2l"] +size = Vector2(6, 28.5) + +[node name="Laser" type="StaticBody2D"] +collision_mask = 5 + +[node name="Sprite2D2" type="Sprite2D" parent="."] +position = Vector2(1, 0) +texture = SubResource("AtlasTexture_dplbn") + +[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="."] +polygon = PackedVector2Array(-15, -15, -12, -11, 14, -11, 17, -15) + +[node name="StaticBody2D" type="StaticBody2D" parent="."] + +[node name="Sprite2D" type="Sprite2D" parent="StaticBody2D"] +texture = SubResource("AtlasTexture_7sk3t") +region_rect = Rect2(0, 0, 288, 96) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] +position = Vector2(1, 2) +shape = SubResource("RectangleShape2D_jee2l") diff --git a/gmtk_2024/objects/Player.tscn b/gmtk_2024/objects/Player.tscn index a549805..55fef0e 100644 --- a/gmtk_2024/objects/Player.tscn +++ b/gmtk_2024/objects/Player.tscn @@ -2,7 +2,7 @@ [ext_resource type="Script" path="res://scripts/player_movement.gd" id="1_a6lhy"] [ext_resource type="Texture2D" uid="uid://qcx482jc7pqr" path="res://textures/player.png" id="2_sscjv"] -[ext_resource type="Texture2D" uid="uid://dfvxk0e8taj1d" path="res://textures/Eye Lase.png" id="3_yg3ur"] +[ext_resource type="Texture2D" uid="uid://bd7y5w6cfi5ly" path="res://textures/Eye Lase.png" id="3_yg3ur"] [sub_resource type="CapsuleShape2D" id="CapsuleShape2D_jqi2f"] radius = 9.0 @@ -13,7 +13,7 @@ radius = 12.0 [node name="Player" type="CharacterBody2D"] collision_layer = 4 -collision_mask = 19 +collision_mask = 51 script = ExtResource("1_a6lhy") jump_strength = 600 diff --git a/gmtk_2024/objects/Pre676A.tmp b/gmtk_2024/objects/Pre676A.tmp new file mode 100644 index 0000000..2581e0b --- /dev/null +++ b/gmtk_2024/objects/Pre676A.tmp @@ -0,0 +1,89 @@ +[gd_scene load_steps=9 format=3 uid="uid://c6g2f7tm7iasr"] + +[ext_resource type="Script" path="res://scripts/PressurePlate.gd" id="1_7ar3x"] +[ext_resource type="Texture2D" uid="uid://cwf57p0osmc0w" path="res://textures/PressurePlate.png" id="1_st48m"] + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_82l2r"] +size = Vector2(32, 3.5) + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_c6ukx"] +size = Vector2(24, 4) + +[sub_resource type="Animation" id="Animation_fulu2"] +resource_name = "Disable" +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [1] +} + +[sub_resource type="Animation" id="Animation_7ggr5"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [1] +} + +[sub_resource type="Animation" id="Animation_xxdm0"] +resource_name = "Enable" +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_usrhb"] +_data = { +"Disable": SubResource("Animation_fulu2"), +"Enable": SubResource("Animation_xxdm0"), +"RESET": SubResource("Animation_7ggr5") +} + +[node name="StaticBody2D" type="StaticBody2D"] +script = ExtResource("1_7ar3x") + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2(0, 13.75) +shape = SubResource("RectangleShape2D_82l2r") + +[node name="Area2D" type="Area2D" parent="."] + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] +position = Vector2(0, 10) +shape = SubResource("RectangleShape2D_c6ukx") + +[node name="Sprite2D" type="Sprite2D" parent="."] +texture = ExtResource("1_st48m") +hframes = 2 +frame = 1 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +libraries = { +"": SubResource("AnimationLibrary_usrhb") +} +autoplay = "Disable" + +[connection signal="body_entered" from="Area2D" to="." method="_on_area_2d_body_entered"] +[connection signal="body_exited" from="Area2D" to="." method="_on_area_2d_body_exited"] diff --git a/gmtk_2024/objects/PressurePlate.tscn b/gmtk_2024/objects/PressurePlate.tscn new file mode 100644 index 0000000..9ba6190 --- /dev/null +++ b/gmtk_2024/objects/PressurePlate.tscn @@ -0,0 +1,89 @@ +[gd_scene load_steps=8 format=3 uid="uid://c6g2f7tm7iasr"] + +[ext_resource type="Script" path="res://scripts/PressurePlate.gd" id="1_7ar3x"] +[ext_resource type="Texture2D" uid="uid://cwf57p0osmc0w" path="res://textures/PressurePlate.png" id="1_st48m"] + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_c6ukx"] +size = Vector2(24, 2) + +[sub_resource type="Animation" id="Animation_fulu2"] +resource_name = "Disable" +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [1] +} + +[sub_resource type="Animation" id="Animation_xxdm0"] +resource_name = "Enable" +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [0] +} + +[sub_resource type="Animation" id="Animation_7ggr5"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 1, +"values": [1] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_usrhb"] +_data = { +"Disable": SubResource("Animation_fulu2"), +"Enable": SubResource("Animation_xxdm0"), +"RESET": SubResource("Animation_7ggr5") +} + +[node name="PressurePlate" type="StaticBody2D"] +collision_layer = 32 +collision_mask = 37 +script = ExtResource("1_7ar3x") + +[node name="Area2D" type="Area2D" parent="."] +collision_layer = 32 +collision_mask = 5 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] +position = Vector2(0, 11) +shape = SubResource("RectangleShape2D_c6ukx") + +[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="."] +polygon = PackedVector2Array(-16, 16, -12, 12, 12, 12, 16, 16) + +[node name="Sprite2D" type="Sprite2D" parent="."] +texture = ExtResource("1_st48m") +hframes = 2 +frame = 1 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +libraries = { +"": SubResource("AnimationLibrary_usrhb") +} +autoplay = "Enable" + +[connection signal="body_entered" from="Area2D" to="." method="_on_body_entered"] +[connection signal="body_exited" from="Area2D" to="." method="_on_body_exited"] diff --git a/gmtk_2024/objects/ResizableBlock.tscn b/gmtk_2024/objects/ResizableBlock.tscn new file mode 100644 index 0000000..c80eacd --- /dev/null +++ b/gmtk_2024/objects/ResizableBlock.tscn @@ -0,0 +1,15 @@ +[gd_scene load_steps=3 format=3 uid="uid://d0q0sfati8wk0"] + +[ext_resource type="Script" path="res://scripts/resizable_block.gd" id="1_ckiwc"] +[ext_resource type="Texture2D" uid="uid://bb8vdlgwpj8oc" path="res://textures/antivirus-block-big.png" id="2_i68dl"] + +[node name="AnimatableBody2D" type="AnimatableBody2D"] +collision_mask = 54 +input_pickable = true +script = ExtResource("1_ckiwc") + +[node name="Sprite2D" type="Sprite2D" parent="."] +texture = ExtResource("2_i68dl") + +[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="."] +polygon = PackedVector2Array(-32, -20, -28, -20, -28, -24, -24, -24, -24, -28, -20, -28, -20, -32, 20, -32, 20, -28, 24, -28, 24, -24, 28, -24, 28, -20, 32, -20, 32, 20, 28, 20, 28, 24, 24, 24, 24, 28, 20, 28, 20, 32, -20, 32, -20, 28, -24, 28, -24, 24, -28, 24, -28, 20, -32, 20) diff --git a/gmtk_2024/objects/ResizableBlockBig.tscn b/gmtk_2024/objects/ResizableBlockBig.tscn deleted file mode 100644 index d473fe6..0000000 --- a/gmtk_2024/objects/ResizableBlockBig.tscn +++ /dev/null @@ -1,21 +0,0 @@ -[gd_scene load_steps=4 format=3 uid="uid://br6fngf5208j0"] - -[ext_resource type="Texture2D" uid="uid://bplkveclkwuk" path="res://textures/block-blue.png" id="1_ejp7j"] -[ext_resource type="Script" path="res://scripts/resizable_block.gd" id="1_j40bu"] - -[sub_resource type="RectangleShape2D" id="RectangleShape2D_sgemy"] -size = Vector2(59, 59) - -[node name="Block" type="StaticBody2D"] -collision_layer = 17 -collision_mask = 22 -input_pickable = true -script = ExtResource("1_j40bu") - -[node name="Sprite2D" type="Sprite2D" parent="."] -texture = ExtResource("1_ejp7j") - -[node name="CollisionShape2D" type="CollisionShape2D" parent="."] -shape = SubResource("RectangleShape2D_sgemy") - -[connection signal="input_event" from="." to="." method="_on_input_event"] diff --git a/gmtk_2024/objects/ResizableBlockSmall.tscn b/gmtk_2024/objects/ResizableBlockSmall.tscn deleted file mode 100644 index a3225fd..0000000 --- a/gmtk_2024/objects/ResizableBlockSmall.tscn +++ /dev/null @@ -1,21 +0,0 @@ -[gd_scene load_steps=4 format=3 uid="uid://0jn86aogkcne"] - -[ext_resource type="Script" path="res://scripts/resizable_block.gd" id="1_bulc3"] -[ext_resource type="Texture2D" uid="uid://dyl3dsoub6pmu" path="res://textures/block-small.png" id="2_42gyy"] - -[sub_resource type="RectangleShape2D" id="RectangleShape2D_vlk61"] -size = Vector2(30, 30) - -[node name="Block" type="StaticBody2D"] -collision_layer = 17 -collision_mask = 22 -input_pickable = true -script = ExtResource("1_bulc3") - -[node name="Sprite2D" type="Sprite2D" parent="."] -texture = ExtResource("2_42gyy") - -[node name="CollisionShape2D" type="CollisionShape2D" parent="."] -shape = SubResource("RectangleShape2D_vlk61") - -[connection signal="input_event" from="." to="." method="_on_input_event"] diff --git a/gmtk_2024/project.godot b/gmtk_2024/project.godot index 0148149..3ccd342 100644 --- a/gmtk_2024/project.godot +++ b/gmtk_2024/project.godot @@ -21,6 +21,7 @@ window/size/viewport_width=640 window/size/viewport_height=320 window/size/mode=2 window/stretch/mode="viewport" +mouse_cursor/custom_image="res://textures/cursor_normal.png" [input] @@ -49,6 +50,11 @@ clickR={ "events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":2,"canceled":false,"pressed":false,"double_click":false,"script":null) ] } +r={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":82,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) +] +} [layer_names] diff --git a/gmtk_2024/scripts/PressurePlate.gd b/gmtk_2024/scripts/PressurePlate.gd new file mode 100644 index 0000000..c9d1e54 --- /dev/null +++ b/gmtk_2024/scripts/PressurePlate.gd @@ -0,0 +1,38 @@ +extends StaticBody2D + +@export var laser_path: NodePath = "../Laser" +@export var required_scale: Vector2 = Vector2(1.0, 1.0) +@export var player_required_scale: Vector2 = Vector2(2.0, 2.0) + +@onready var animation = $AnimationPlayer + +var laser: Node2D = null +var is_activated = false + +func _ready(): + laser = get_node(laser_path) + +func _on_body_entered(body: Node): + print("Wird erkannt") + print(body) + print(body.scale) + if (body is AnimatableBody2D and body.scale >= required_scale) or (body is CharacterBody2D and body.scale >= player_required_scale): + animation.play("Disable") + activate_plate() + +func _on_body_exited(body: Node): + if (body is AnimatableBody2D and body.scale >= required_scale) or (body is CharacterBody2D and body.scale >= player_required_scale): + animation.play("Enable") + deactivate_plate() + +func activate_plate(): + print("wird aktiviert") + if not is_activated: + is_activated = true + if laser: + laser.queue_free() + # TODO: fix error when called again + +func deactivate_plate(): + if is_activated: + is_activated = false diff --git a/gmtk_2024/scripts/goal.gd b/gmtk_2024/scripts/goal.gd index 89fa9d3..a791098 100644 --- a/gmtk_2024/scripts/goal.gd +++ b/gmtk_2024/scripts/goal.gd @@ -1,15 +1,11 @@ extends Node -@export var next : PackedScene -@export var img : Sprite2D -@export var img2 : Sprite2D +@export var next : PackedScene = preload("res://levels/level_1_2.tscn") +@onready var animation = $AnimationPlayer func _process(delta: float) -> void: - img.rotate(2 * delta) - img2.rotate(1 * delta) - - + animation.play("portal") func _on_body_entered(body: Node2D) -> void: get_tree().change_scene_to_packed(next) diff --git a/gmtk_2024/scripts/player_movement.gd b/gmtk_2024/scripts/player_movement.gd index 1616bef..9bb2685 100644 --- a/gmtk_2024/scripts/player_movement.gd +++ b/gmtk_2024/scripts/player_movement.gd @@ -17,6 +17,9 @@ var target_scale var current_selected = "none" var target_scale_player: Vector2 = Vector2(1, 1) +var cursor_scale_up = preload("res://textures/cursor_scale_up.png") +var cursor_scale_down = preload("res://textures/cursor_scale_down.png") + func _ready(): data_link = $data_link @@ -35,6 +38,9 @@ func _unhandled_input(event): func get_input(delta): var left = Input.is_action_pressed("player_left") var right = Input.is_action_pressed("player_right") + + if Input.is_action_just_pressed("r"): + get_tree().reload_current_scene() if left and right: input_direction = 0 @@ -75,6 +81,7 @@ func _physics_process(delta): velocity.y += gravity move_and_slide() update_data_link() + update_cursor() func Jump(): velocity.y = -1 * jump_strength @@ -93,7 +100,18 @@ func update_data_link(): else: data_link.visible = false +func update_cursor(): + var nearest_block = find_nearest_block() + if nearest_block: + if nearest_block.scale == Vector2(0.5, 0.5) and self.scale == Vector2(2.0, 2.0): + Input.set_custom_mouse_cursor(cursor_scale_up) + elif nearest_block.scale == Vector2(1.0, 1.0) and self.scale == Vector2(1.0, 1.0): + Input.set_custom_mouse_cursor(cursor_scale_down) + func find_nearest_block() -> Node2D: + if not get_tree(): + return null + var closest_distance = max_link_distance var closest_block: Node2D = null for block in get_tree().get_nodes_in_group("scalable_blocks"): @@ -102,7 +120,7 @@ func find_nearest_block() -> Node2D: closest_distance = distance closest_block = block return closest_block - + func start_scaling(target_node: Node2D, scale_value: Vector2): var tween = create_tween() tween.tween_property(target_node, "scale", scale_value, scale_duration) diff --git a/gmtk_2024/scripts/resizable_block.gd b/gmtk_2024/scripts/resizable_block.gd index 508fcb8..80bb104 100644 --- a/gmtk_2024/scripts/resizable_block.gd +++ b/gmtk_2024/scripts/resizable_block.gd @@ -1,11 +1,10 @@ -extends StaticBody2D +extends AnimatableBody2D @export var scale_up_target: Vector2 = Vector2(1.0, 1.0) @export var scale_down_target: Vector2 = Vector2(0.5, 0.5) @export var scale_duration: float = 0.5 -@export var ui_actions: Node -@export var small_sprite = preload("res://textures/block-orange.png") -@export var large_sprite = preload("res://textures/block-blue.png") +@export var small_sprite = preload("res://textures/antivirus-block-small.png") +@export var large_sprite = preload("res://textures/antivirus-block-big.png") func _ready(): add_to_group("scalable_blocks") diff --git a/gmtk_2024/scripts/ui_actions.gd b/gmtk_2024/scripts/ui_actions.gd deleted file mode 100644 index fbd3792..0000000 --- a/gmtk_2024/scripts/ui_actions.gd +++ /dev/null @@ -1,40 +0,0 @@ -extends Node - -@export var player : CharacterBody2D -@export var scale_duration: float = 0.5 -var current_selected = "none" -var target_scale_player: Vector2 = Vector2(1, 1) - -func _on_input_event(viewport, event, shape_idx): - if event.is_action_pressed("click"): - var nearest_block = player.find_nearest_block() - if nearest_block and current_selected == "scale_up": - nearest_block.scale_up() - scale_up_player() - elif nearest_block: - nearest_block.scale_down() - scale_down_player() - -func select_up(): - current_selected = "scale_up" - -func select_down(): - current_selected = "scale_down" - -func select_mirror(): - current_selected = "mirror" - -func start_scaling(target_node: Node2D, scale_value: Vector2): - var tween = create_tween() - tween.tween_property(target_node, "scale", scale_value, scale_duration) - -func scale_up_player(): - target_scale_player = Vector2(3.0, 3.0) - start_scaling(player, target_scale_player) - -func scale_down_player(): - target_scale_player = Vector2(1.0, 1.0) - start_scaling(player, target_scale_player) - -func mirror(): - pass # Mirror-Funktionalität hier einfügen diff --git a/gmtk_2024/shaders/crt.gdshader b/gmtk_2024/shaders/crt.gdshader index 6a80205..6cfdc28 100644 --- a/gmtk_2024/shaders/crt.gdshader +++ b/gmtk_2024/shaders/crt.gdshader @@ -8,7 +8,7 @@ uniform sampler2D screen_texture : hint_screen_texture; // ブラウン管のガラスの曲がり具合(フラットなやつは0.0でいいかな) uniform float crt_curve : hint_range( 0.0, 1.0 ) = 0.02; -// 走査線の濃さ +// 走査線の濃さ uniform float crt_scan_line_color : hint_range( 0.0, 1.0 ) = 0.347; // 光量 uniform float aperture_grille_rate : hint_range( 0.0, 1.0 ) = 0.4; @@ -18,7 +18,7 @@ uniform float rf_switch_esque_blur : hint_range( 0.0, 1.0 ) = 1; uniform float white_noise_rate : hint_range( 0.0, 1.0 ) = 0.0; float random( vec2 pos ) -{ +{ return fract(sin(dot(pos, vec2(12.9898,78.233))) * 43758.5453); } diff --git a/gmtk_2024/textures/01-Portal-Sheet.png b/gmtk_2024/textures/01-Portal-Sheet.png index 810b86b..9b377ce 100644 Binary files a/gmtk_2024/textures/01-Portal-Sheet.png and b/gmtk_2024/textures/01-Portal-Sheet.png differ diff --git a/gmtk_2024/textures/BrackableBlock-Sheet.png b/gmtk_2024/textures/BrackableBlock-Sheet.png index 09b0f7e..10ee13e 100644 Binary files a/gmtk_2024/textures/BrackableBlock-Sheet.png and b/gmtk_2024/textures/BrackableBlock-Sheet.png differ diff --git a/gmtk_2024/textures/Modifi Blocks-Sheet.png b/gmtk_2024/textures/Modifi Blocks-Sheet.png deleted file mode 100644 index b19b524..0000000 Binary files a/gmtk_2024/textures/Modifi Blocks-Sheet.png and /dev/null differ diff --git a/gmtk_2024/textures/Modifi Blocks.png b/gmtk_2024/textures/Modifi Blocks.png deleted file mode 100644 index 5c496c3..0000000 Binary files a/gmtk_2024/textures/Modifi Blocks.png and /dev/null differ diff --git a/gmtk_2024/textures/PressurePlate.png b/gmtk_2024/textures/PressurePlate.png new file mode 100644 index 0000000..cb13eb1 Binary files /dev/null and b/gmtk_2024/textures/PressurePlate.png differ diff --git a/gmtk_2024/textures/antivirus-block-big.png b/gmtk_2024/textures/antivirus-block-big.png new file mode 100644 index 0000000..f20b2d5 Binary files /dev/null and b/gmtk_2024/textures/antivirus-block-big.png differ diff --git a/gmtk_2024/textures/antivirus-block-small.png b/gmtk_2024/textures/antivirus-block-small.png new file mode 100644 index 0000000..449bfd1 Binary files /dev/null and b/gmtk_2024/textures/antivirus-block-small.png differ diff --git a/gmtk_2024/textures/block-blue.png b/gmtk_2024/textures/block-blue.png deleted file mode 100644 index 3c36dc6..0000000 Binary files a/gmtk_2024/textures/block-blue.png and /dev/null differ diff --git a/gmtk_2024/textures/block-orange.png b/gmtk_2024/textures/block-orange.png deleted file mode 100644 index 7e18c30..0000000 Binary files a/gmtk_2024/textures/block-orange.png and /dev/null differ diff --git a/gmtk_2024/textures/block-small.png b/gmtk_2024/textures/block-small.png deleted file mode 100644 index 9aeb156..0000000 Binary files a/gmtk_2024/textures/block-small.png and /dev/null differ diff --git a/gmtk_2024/textures/button-pressed.png b/gmtk_2024/textures/button-pressed.png new file mode 100644 index 0000000..433dfe3 Binary files /dev/null and b/gmtk_2024/textures/button-pressed.png differ diff --git a/gmtk_2024/textures/button-unpressed.png b/gmtk_2024/textures/button-unpressed.png new file mode 100644 index 0000000..7e062a8 Binary files /dev/null and b/gmtk_2024/textures/button-unpressed.png differ diff --git a/gmtk_2024/textures/cursor_normal.png b/gmtk_2024/textures/cursor_normal.png new file mode 100644 index 0000000..7af18c2 Binary files /dev/null and b/gmtk_2024/textures/cursor_normal.png differ diff --git a/gmtk_2024/textures/cursor_scale_down.png b/gmtk_2024/textures/cursor_scale_down.png new file mode 100644 index 0000000..2541297 Binary files /dev/null and b/gmtk_2024/textures/cursor_scale_down.png differ diff --git a/gmtk_2024/textures/cursor_scale_up.png b/gmtk_2024/textures/cursor_scale_up.png new file mode 100644 index 0000000..c3d888c Binary files /dev/null and b/gmtk_2024/textures/cursor_scale_up.png differ diff --git a/gmtk_2024/textures/movable-block-big.png b/gmtk_2024/textures/movable-block-big.png new file mode 100644 index 0000000..adeb535 Binary files /dev/null and b/gmtk_2024/textures/movable-block-big.png differ diff --git a/gmtk_2024/textures/movable-block-small.png b/gmtk_2024/textures/movable-block-small.png new file mode 100644 index 0000000..01b5558 Binary files /dev/null and b/gmtk_2024/textures/movable-block-small.png differ diff --git a/gmtk_2024/textures/one-time-use-block-big.png b/gmtk_2024/textures/one-time-use-block-big.png new file mode 100644 index 0000000..1058583 Binary files /dev/null and b/gmtk_2024/textures/one-time-use-block-big.png differ diff --git a/gmtk_2024/textures/one-time-use-block-small.png b/gmtk_2024/textures/one-time-use-block-small.png new file mode 100644 index 0000000..c0b9064 Binary files /dev/null and b/gmtk_2024/textures/one-time-use-block-small.png differ diff --git a/gmtk_2024/textures/three-time-use-block-big.png b/gmtk_2024/textures/three-time-use-block-big.png new file mode 100644 index 0000000..bb232d9 Binary files /dev/null and b/gmtk_2024/textures/three-time-use-block-big.png differ diff --git a/gmtk_2024/textures/three-time-use-block-small.png b/gmtk_2024/textures/three-time-use-block-small.png new file mode 100644 index 0000000..3324d06 Binary files /dev/null and b/gmtk_2024/textures/three-time-use-block-small.png differ diff --git a/gmtk_2024/textures/two-time-use-block-big.png b/gmtk_2024/textures/two-time-use-block-big.png new file mode 100644 index 0000000..b071e8e Binary files /dev/null and b/gmtk_2024/textures/two-time-use-block-big.png differ diff --git a/gmtk_2024/textures/two-time-use-block-small.png b/gmtk_2024/textures/two-time-use-block-small.png new file mode 100644 index 0000000..58b370b Binary files /dev/null and b/gmtk_2024/textures/two-time-use-block-small.png differ