diff --git a/graphics/backgrounds/future/mountain_clouds_future.png b/graphics/backgrounds/future/mountain_clouds_future.png index 9e8e745..45b6fbb 100644 Binary files a/graphics/backgrounds/future/mountain_clouds_future.png and b/graphics/backgrounds/future/mountain_clouds_future.png differ diff --git a/graphics/enemy/pigs/spoink.png b/graphics/enemy/pigs/spoink.png new file mode 100644 index 0000000..63eed0c Binary files /dev/null and b/graphics/enemy/pigs/spoink.png differ diff --git a/graphics/enemy/pigs/spoink.png.import b/graphics/enemy/pigs/spoink.png.import new file mode 100644 index 0000000..97fdc4c --- /dev/null +++ b/graphics/enemy/pigs/spoink.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/spoink.png-c419333add2909564e9253b1fdac633e.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://graphics/enemy/pigs/spoink.png" +dest_files=[ "res://.import/spoink.png-c419333add2909564e9253b1fdac633e.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/graphics/particles/raindrop.png b/graphics/particles/raindrop.png index c15cee3..77cc954 100644 Binary files a/graphics/particles/raindrop.png and b/graphics/particles/raindrop.png differ diff --git a/graphics/player/sg.png b/graphics/player/sg.png index 03cd2dc..4e43410 100644 Binary files a/graphics/player/sg.png and b/graphics/player/sg.png differ diff --git a/graphics/tiles/future/mountain_future.png b/graphics/tiles/future/mountain_future.png index b8d3a5c..b931020 100644 Binary files a/graphics/tiles/future/mountain_future.png and b/graphics/tiles/future/mountain_future.png differ diff --git a/maps/future/mountain_future.tscn b/maps/future/mountain_future.tscn index aef10cb..4540da4 100644 --- a/maps/future/mountain_future.tscn +++ b/maps/future/mountain_future.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=40 format=2] +[gd_scene load_steps=18 format=2] [ext_resource path="res://objects/Camera2D.tscn" type="PackedScene" id=1] [ext_resource path="res://maps/future/mountain_future.gd" type="Script" id=2] @@ -7,58 +7,16 @@ [ext_resource path="res://graphics/backgrounds/future/mountain_sunset_future.png" type="Texture" id=5] [ext_resource path="res://objects/player/player.tscn" type="PackedScene" id=6] [ext_resource path="res://tilesets/future/t_mountain_future.tres" type="TileSet" id=7] -[ext_resource path="res://objects/enemy/rolling_fiend.tscn" type="PackedScene" id=8] -[ext_resource path="res://objects/environment/moving_platform/moving_platform.tscn" type="PackedScene" id=9] -[ext_resource path="res://scripts/delete_on_game_running.gd" type="Script" id=10] +[ext_resource path="res://objects/enemy/pigs/spoink.tscn" type="PackedScene" id=8] [ext_resource path="res://shaders/can_stain.tres" type="Material" id=11] -[ext_resource path="res://objects/environment/ladder/ladder.tscn" type="PackedScene" id=12] -[ext_resource path="res://objects/enemy/bat.tscn" type="PackedScene" id=13] [ext_resource path="res://objects/collectibles/star.tscn" type="PackedScene" id=14] -[ext_resource path="res://objects/environment/turniwood/turning_platform.tscn" type="PackedScene" id=15] -[ext_resource path="res://objects/enemy/snake.tscn" type="PackedScene" id=16] [ext_resource path="res://objects/hud/hud.tscn" type="PackedScene" id=17] -[ext_resource path="res://objects/collectibles/key.tscn" type="PackedScene" id=18] -[ext_resource path="res://objects/environment/rock/rock.tscn" type="PackedScene" id=19] -[ext_resource path="res://objects/environment/barrier/barrier.tscn" type="PackedScene" id=20] [ext_resource path="res://objects/collectibles/shard.tscn" type="PackedScene" id=21] [ext_resource path="res://tilesets/t_death.tres" type="TileSet" id=22] [ext_resource path="res://tilesets/t_ladders.tres" type="TileSet" id=23] -[ext_resource path="res://objects/collectibles/arrow.tscn" type="PackedScene" id=24] -[ext_resource path="res://objects/respawn_point.tscn" type="PackedScene" id=25] [ext_resource path="res://objects/environment/exit/exit.tscn" type="PackedScene" id=26] -[ext_resource path="res://graphics/turniwood/turning_platform_wood_dark.png" type="Texture" id=32] [ext_resource path="res://graphics/particles/raindrop.png" type="Texture" id=33] -[sub_resource type="RectangleShape2D" id=2] -extents = Vector2( 24, 20 ) - -[sub_resource type="RectangleShape2D" id=9] -extents = Vector2( 32, 8 ) - -[sub_resource type="RectangleShape2D" id=7] -extents = Vector2( 36, 4 ) - -[sub_resource type="RectangleShape2D" id=8] -extents = Vector2( 28, 4 ) - -[sub_resource type="RectangleShape2D" id=4] -extents = Vector2( 32, 4 ) - -[sub_resource type="RectangleShape2D" id=12] -extents = Vector2( 32, 4 ) - -[sub_resource type="RectangleShape2D" id=5] -extents = Vector2( 48, 64 ) - -[sub_resource type="RectangleShape2D" id=6] -extents = Vector2( 16, 8 ) - -[sub_resource type="RectangleShape2D" id=11] -extents = Vector2( 24, 4 ) - -[sub_resource type="RectangleShape2D" id=1] -extents = Vector2( 4, 294 ) - [sub_resource type="Animation" id=10] resource_name = "liftoff" length = 3.0 @@ -79,6 +37,10 @@ tracks/0/keys = { [node name="Map2" type="Node2D" groups=["map"]] pause_mode = 1 script = ExtResource( 2 ) +__meta__ = { +"_edit_horizontal_guides_": [ -192.0, 191.0, 384.0, -384.0, 576.0 ], +"_edit_vertical_guides_": [ 256.0, 0.0, 512.0, -256.0, -512.0, 768.0 ] +} min_interval = 1.0 max_interval = 8.0 fade_time = 1.0 @@ -95,6 +57,7 @@ autostart = true layer = -101 [node name="Sky" type="Sprite" parent="Background/Background"] +modulate = Color( 1, 0.52549, 0.203922, 1 ) position = Vector2( 128, 96 ) z_index = -2 texture = ExtResource( 5 ) @@ -107,10 +70,11 @@ unique_name_in_owner = true modulate = Color( 1, 1, 1, 0 ) anchor_right = 1.0 anchor_bottom = 1.0 -color = Color( 0.623529, 0.815686, 1, 1 ) +color = Color( 1, 0.984314, 0.603922, 1 ) [node name="BackgroundMountain" type="CanvasLayer" parent="Background"] layer = -100 +visible = false follow_viewport_enable = true follow_viewport_scale = 0.25 @@ -162,21 +126,18 @@ material = ExtResource( 11 ) tile_set = ExtResource( 7 ) cell_size = Vector2( 8, 8 ) format = 1 -tile_data = PoolIntArray( -2818047, 0, 65536, -2818046, 0, 65537, -2818045, 0, 65537, -2818044, 0, 65537, -2818043, 0, 65538, -2818033, 0, 65536, -2818032, 0, 65537, -2818031, 0, 65537, -2818030, 0, 65537, -2818029, 0, 65538, -2818022, 0, 0, -2818021, 0, 196609, -2818020, 0, 196609, -2818019, 0, 196609, -2818018, 0, 196609, -2818017, 0, 196609, -2752486, 0, 1, -2686950, 0, 1, -2621440, 0, 0, -2621439, 0, 65537, -2621438, 0, 65537, -2621437, 0, 65537, -2621436, 0, 65537, -2621435, 0, 65537, -2621434, 0, 65537, -2621433, 0, 65537, -2621432, 0, 65537, -2621431, 0, 65537, -2621430, 0, 65537, -2621429, 0, 65537, -2621428, 0, 65537, -2621427, 0, 65537, -2621426, 0, 65537, -2621425, 0, 65537, -2621424, 0, 65538, -2621414, 0, 1, -2621413, 0, 0, -2621412, 0, 0, -2621411, 0, 0, -2555904, 0, 1, -2555878, 0, 1, -2490368, 0, 1, -2490342, 0, 1, -2424832, 0, 1, -2424806, 0, 1, -2359296, 0, 1, -2359270, 0, 1, -2293760, 0, 0, -2293759, 0, 0, -2293758, 0, 0, -2293757, 0, 0, -2293756, 0, 0, -2293755, 0, 0, -2293744, 0, 65536, -2293743, 0, 65537, -2293742, 0, 65538, -2293734, 0, 0, -2293733, 0, 0, -2293732, 0, 0, -2097152, 0, 0, -2097151, 0, 0, -2097150, 0, 0, -2097149, 0, 0, -2097148, 0, 0, -2097147, 0, 0, -2097146, 0, 0, -2097145, 0, 0, -2097144, 0, 0, -2097143, 0, 0, -2097142, 0, 0, -2097141, 0, 0, -2097140, 0, 0, -2097139, 0, 0, -2097138, 0, 0, -2097137, 0, 0, -2097136, 0, 0, -2097135, 0, 0, -2097134, 0, 0, -2031616, 0, 1, -1966080, 0, 1, -1900544, 0, 1, -1900535, 0, 0, -1900534, 0, 0, -1900533, 0, 0, -1900532, 0, 0, -1900531, 0, 0, -1900530, 0, 0, -1900529, 0, 0, -1900528, 0, 0, -1900527, 0, 0, -1900526, 0, 0, -1835008, 0, 1, -1835004, 0, 0, -1835001, 0, 0, -1835000, 0, 0, -1834999, 0, 0, -1769472, 0, 1, -1769463, 0, 0, -1769447, 0, 0, -1769446, 0, 0, -1769445, 0, 0, -1703936, 0, 1, -1703927, 0, 0, -1703909, 0, 1, -1638400, 0, 1, -1638391, 0, 0, -1638390, 0, 0, -1638389, 0, 0, -1638388, 0, 0, -1638387, 0, 0, -1638386, 0, 0, -1638385, 0, 0, -1638384, 0, 0, -1638383, 0, 0, -1638382, 0, 0, -1638381, 0, 0, -1638380, 0, 0, -1638373, 0, 1, -1572864, 0, 1, -1572844, 0, 1, -1572837, 0, 1, -1507328, 0, 1, -1507308, 0, 1, -1507301, 0, 1, -1441792, 0, 1, -1441772, 0, 1, -1441765, 0, 1, -1376256, 0, 1, -1376236, 0, 1, -1376229, 0, 1, -1310720, 0, 1, -1310700, 0, 1, -1310693, 0, 1, -1245184, 0, 1, -1245164, 0, 1, -1245157, 0, 65536, -1245156, 0, 65537, -1245155, 0, 65537, -1245154, 0, 65537, -1245153, 0, 65538, -1179648, 0, 65536, -1179647, 0, 65537, -1179646, 0, 65537, -1179645, 0, 65537, -1179644, 0, 65537, -1179643, 0, 65537, -1179642, 0, 65537, -1179641, 0, 65537, -1179640, 0, 65538, -1179638, 0, 65536, -1179637, 0, 65537, -1179636, 0, 65537, -1179635, 0, 65538, -1179631, 0, 65536, -1179630, 0, 65537, -1179629, 0, 65537, -1179628, 0, 65538, -917480, 0, 65536, -917479, 0, 65537, -917478, 0, 65537, -917477, 0, 65538, -851955, 0, 65536, -851954, 0, 65537, -851953, 0, 65538, -655359, 0, 65536, -655358, 0, 65537, -655357, 0, 65537, -655356, 0, 65537, -655355, 0, 65538, -655340, 0, 65536, -655339, 0, 65537, -655338, 0, 65537, -655337, 0, 65537, -655336, 0, 65537, -655335, 0, 65537, -655334, 0, 65537, -655333, 0, 65538, -458743, 0, 0, -458742, 0, 0, -458741, 0, 0, -458740, 0, 0, -458739, 0, 0, -458738, 0, 0, -458737, 0, 0, -458736, 0, 0, -458735, 0, 0, -458734, 0, 0, -458733, 0, 0, -458732, 0, 0, -458731, 0, 0, -393207, 0, 1, -327671, 0, 1, -262135, 0, 1, -262129, 0, 0, -262128, 0, 0, -262127, 0, 0, -262120, 0, 0, -262119, 0, 0, -262118, 0, 0, -262117, 0, 0, -262116, 0, 0, -262115, 0, 0, -262114, 0, 0, -262113, 0, 0, -196599, 0, 1, -196591, 0, 1, -131068, 0, 0, -131067, 0, 0, -131066, 0, 0, -131065, 0, 0, -131063, 0, 1, -131059, 0, 65536, -131058, 0, 65538, -131055, 0, 1, -131050, 0, 0, -65527, 0, 1, -65526, 0, 0, -65519, 0, 1, -65515, 0, 65536, -65514, 0, 65537, -65513, 0, 65536, -65512, 0, 65537, -65511, 0, 65537, -65510, 0, 65537, -65509, 0, 65537, -65508, 0, 65537, -65507, 0, 65537, -65506, 0, 65537, -65505, 0, 65537, 9, 0, 1, 17, 0, 1, 65545, 0, 1, 65553, 0, 1, 131081, 0, 1, 131089, 0, 1, 196617, 0, 1, 196619, 0, 65536, 196620, 0, 65537, 196621, 0, 65537, 196622, 0, 65537, 196623, 0, 65537, 196624, 0, 65538, 196625, 0, 1, 262153, 0, 1, 262161, 0, 1, 327689, 0, 1, 327697, 0, 1, 327707, 0, 0, 327708, 0, 0, 327709, 0, 0, 327710, 0, 0, 393225, 0, 1, 393233, 0, 0, 458757, 0, 0, 458758, 0, 0, 458759, 0, 0, 458761, 0, 1, 524297, 0, 0, 524298, 0, 0, 524299, 0, 0, 524300, 0, 0, 524301, 0, 0, 524302, 0, 0, 720910, 0, 0, 720911, 0, 0, 720912, 0, 0, 720913, 0, 0, 720914, 0, 0, 720915, 0, 0, 720920, 0, 196609, 720921, 0, 196609, 720922, 0, 196609, 720923, 0, 196609, 720924, 0, 196609, 720925, 0, 196609, 720926, 0, 196609, 720927, 0, 196609, 851969, 0, 65536, 851970, 0, 65537, 851971, 0, 65537, 851972, 0, 65537, 851973, 0, 65537, 851974, 0, 65537, 851975, 0, 65538, 983041, 0, 196609, 983042, 0, 196609, 983043, 0, 196609, 983044, 0, 196609, 983045, 0, 196609, 983046, 0, 196609, 983047, 0, 196609, 983048, 0, 196609, 983049, 0, 196609, 983050, 0, 196609, 983051, 0, 196609, 983052, 0, 196609, 983053, 0, 196609, 983059, 0, 0, 983060, 0, 0, 983061, 0, 0, 983062, 0, 0, 983063, 0, 0, 983064, 0, 0, 983065, 0, 0, 983066, 0, 0, 983067, 0, 0, 1245186, 0, 196609, 1245187, 0, 196609, 1245188, 0, 196609, 1245189, 0, 196609, 1245190, 0, 196609, 1245191, 0, 196609, 1310743, 0, 65536, 1310744, 0, 65537, 1310745, 0, 65537, 1310746, 0, 65537, 1310747, 0, 65537, 1310748, 0, 65538, 1441792, 0, 0, 1441793, 0, 0, 1441794, 0, 0, 1441795, 0, 0, 1441796, 0, 0, 1441797, 0, 0, 1441798, 0, 0, 1441799, 0, 0, 1441808, 0, 0, 1441809, 0, 0, 1441810, 0, 0, 1441811, 0, 0, 1507328, 0, 0, 1507329, 0, 0, 1507330, 0, 0, 1507331, 0, 0, 1507332, 0, 0, 1507333, 0, 0, 1507334, 0, 0, 1507335, 0, 0, 1507336, 0, 0, 1507337, 0, 0, 1507338, 0, 0, 1507339, 0, 0, 1507340, 0, 0, 1507341, 0, 0, 1507342, 0, 0, 1507343, 0, 0, 1507344, 0, 0, 1507345, 0, 0, 1507346, 0, 0, 1507347, 0, 0, 1507348, 0, 0, 1507349, 0, 0, 1507350, 0, 0, 1507351, 0, 0, 1507352, 0, 0, 1507353, 0, 0, 1507354, 0, 0, 1507355, 0, 0, 1507356, 0, 0, 1507357, 0, 0, 1507358, 0, 0, 1507359, 0, 0 ) +tile_data = PoolIntArray( 327679, 4, 65537, 262144, 4, 65538, 262145, 4, 65538, 262146, 4, 65538, 262147, 4, 65539, 393215, 4, 131073, 327680, 4, 131074, 327681, 4, 196610, 327682, 4, 196610, 327683, 4, 131074, 327684, 4, 65539, 458751, 4, 131073, 393216, 4, 131075, 393219, 4, 131073, 393220, 4, 196610, 393221, 4, 65538, 393222, 4, 65539, 524287, 4, 196609, 458752, 4, 196610, 458753, 4, 65538, 458754, 4, 65538, 458755, 4, 131075, 458757, 4, 131073, 458758, 4, 196611, 524289, 4, 131073, 524290, 4, 196610, 524291, 4, 131074, 524292, 4, 65538, 524293, 4, 131075, 524323, 4, 65537, 524324, 4, 65539, 589825, 4, 131072, 589827, 4, 131073, 589828, 4, 131074, 589829, 4, 196611, 589858, 4, 65537, 589859, 4, 131074, 589860, 4, 196611, 655361, 4, 131072, 655363, 4, 131073, 655364, 4, 131075, 655393, 4, 65537, 655394, 4, 196610, 655395, 4, 196611, 720897, 4, 196608, 720899, 4, 131073, 720900, 4, 131075, 720928, 4, 65537, 720929, 4, 196611, 786434, 4, 65537, 786435, 4, 131074, 786436, 4, 196611, 786463, 4, 1, 786464, 4, 131075, 851969, 4, 65537, 851970, 4, 131074, 851971, 4, 131075, 851973, 4, 65537, 851974, 4, 2, 851975, 4, 65539, 852000, 4, 131072, 917505, 4, 131073, 917506, 4, 131074, 917507, 4, 131074, 917508, 4, 2, 917509, 4, 131075, 917511, 4, 131072, 917534, 4, 65537, 917535, 4, 2, 917536, 4, 131074, 917537, 4, 2, 917538, 4, 2, 917539, 4, 2, 917540, 4, 3, 983041, 4, 131073, 983042, 4, 131074, 983043, 4, 131075, 983045, 4, 131072, 983047, 4, 131072, 983059, 4, 65537, 983060, 4, 2, 983061, 4, 2, 983062, 4, 65538, 983063, 4, 2, 983064, 4, 2, 983065, 4, 2, 983066, 4, 65538, 983067, 4, 65538, 983068, 4, 65538, 983069, 4, 65538, 983070, 4, 131075, 983072, 4, 131072, 983077, 4, 1, 983078, 4, 65539, 1048577, 4, 196609, 1048578, 4, 131074, 1048579, 4, 131075, 1048581, 4, 131073, 1048582, 4, 65538, 1048583, 4, 131075, 1048595, 4, 131072, 1048598, 4, 131072, 1048602, 4, 131073, 1048603, 4, 196610, 1048604, 4, 196610, 1048605, 4, 131074, 1048606, 4, 131074, 1048607, 4, 2, 1048608, 4, 196610, 1048609, 4, 65539, 1048614, 4, 196609, 1048615, 4, 65539, 1114114, 4, 131073, 1114115, 4, 131075, 1114117, 4, 131073, 1114118, 4, 131074, 1114119, 4, 196610, 1114120, 4, 3, 1114131, 4, 131072, 1114133, 4, 1, 1114134, 4, 196610, 1114135, 4, 2, 1114136, 4, 65538, 1114137, 4, 65538, 1114138, 4, 131075, 1114141, 4, 131073, 1114142, 4, 196611, 1114145, 4, 131072, 1114147, 4, 65537, 1114148, 4, 65539, 1114151, 4, 131072, 1179650, 4, 131073, 1179651, 4, 131074, 1179652, 4, 65538, 1179653, 4, 196610, 1179654, 4, 131075, 1179667, 4, 131073, 1179668, 4, 65539, 1179672, 4, 131073, 1179673, 4, 131074, 1179674, 4, 131075, 1179677, 4, 131072, 1179681, 4, 196609, 1179682, 4, 2, 1179683, 4, 196610, 1179684, 4, 196610, 1179685, 4, 2, 1179686, 4, 2, 1179687, 4, 196611, 1245185, 4, 65537, 1245186, 4, 196610, 1245187, 4, 196610, 1245188, 4, 131075, 1245190, 4, 196608, 1245194, 4, 65536, 1245202, 4, 65537, 1245203, 4, 131074, 1245204, 4, 131075, 1245208, 4, 131073, 1245209, 4, 131074, 1245210, 4, 196611, 1245213, 4, 131073, 1245214, 4, 65539, 1310720, 4, 65537, 1310721, 4, 131075, 1310724, 4, 196609, 1310725, 4, 65539, 1310729, 4, 1, 1310730, 4, 131075, 1310737, 4, 65537, 1310738, 4, 196610, 1310739, 4, 131074, 1310740, 4, 196611, 1310743, 4, 65537, 1310744, 4, 131074, 1310745, 4, 131075, 1310748, 4, 65537, 1310749, 4, 131074, 1310750, 4, 196611, 1376256, 4, 131073, 1376257, 4, 131074, 1376258, 4, 2, 1376259, 4, 3, 1376261, 4, 196608, 1376264, 4, 65536, 1376266, 4, 131073, 1376267, 4, 65539, 1376270, 4, 65537, 1376271, 4, 2, 1376272, 4, 65538, 1376273, 4, 131075, 1376275, 4, 131072, 1376277, 4, 65537, 1376278, 4, 65538, 1376279, 4, 131074, 1376280, 4, 196610, 1376281, 4, 196611, 1376284, 4, 131073, 1376285, 4, 131075, 1507325, 4, 1, 1507326, 4, 2, 1507327, 4, 2, 1441792, 4, 131074, 1441793, 4, 196611, 1441800, 4, 131073, 1441801, 4, 2, 1441802, 4, 196610, 1441803, 4, 196610, 1441804, 4, 65538, 1441805, 4, 65538, 1441806, 4, 131075, 1441808, 4, 131073, 1441809, 4, 196610, 1441810, 4, 2, 1441811, 4, 196610, 1441812, 4, 2, 1441813, 4, 131074, 1441814, 4, 196610, 1441815, 4, 131075, 1441819, 4, 1, 1441820, 4, 131074, 1441821, 4, 131075, 1507328, 4, 131072, 1507335, 4, 1, 1507336, 4, 196611, 1507340, 4, 196609, 1507341, 4, 196610, 1507342, 4, 196610, 1507343, 4, 2, 1507344, 4, 196611, 1507349, 4, 196608, 1507351, 4, 131072, 1507353, 4, 1, 1507354, 4, 3, 1507356, 4, 131073, 1507357, 4, 131075, 1572864, 4, 131072, 1572886, 4, 65537, 1572887, 4, 131074, 1572888, 4, 3, 1572892, 4, 131073, 1572893, 4, 131075, 1638400, 4, 131072, 1638421, 4, 65537, 1638422, 4, 131074, 1638423, 4, 196611, 1638427, 4, 65537, 1638428, 4, 131074, 1638429, 4, 196611, 1703936, 4, 196609, 1703937, 4, 65539, 1703957, 4, 196609, 1703958, 4, 196611, 1703962, 4, 65537, 1703963, 4, 131074, 1703964, 4, 131075, 1769473, 4, 196609, 1769474, 4, 65539, 1769498, 4, 196609, 1769499, 4, 196610, 1769500, 4, 196611, 1835010, 4, 131073, 1835011, 4, 2, 1835012, 4, 65539, 1835017, 4, 1, 1835018, 4, 2, 1835019, 4, 2, 1835020, 4, 65539, 1900546, 4, 131072, 1900548, 4, 131073, 1900549, 4, 65539, 1900552, 4, 65536, 1900556, 4, 131073, 1900557, 4, 65539, 1966082, 4, 196608, 1966084, 4, 196609, 1966085, 4, 196610, 1966086, 4, 2, 1966087, 4, 2, 1966088, 4, 196610, 1966089, 4, 2, 1966090, 4, 2, 1966091, 4, 2, 1966092, 4, 196610, 1966093, 4, 196610, 1966094, 4, 2, 1966095, 4, 2, 1966096, 4, 2, 1966097, 4, 65539, 2031633, 4, 196609, 2031634, 4, 65539, 2097170, 4, 196608 ) [node name="Camera2D" parent="." instance=ExtResource( 1 )] -scroll_h = false scroll_v = true -respawn_h = false [node name="Player" parent="." instance=ExtResource( 6 )] -position = Vector2( 24, 176 ) +position = Vector2( 128, 160 ) [node name="Ladder" type="TileMap" parent="."] tile_set = ExtResource( 23 ) cell_size = Vector2( 8, 8 ) format = 1 -tile_data = PoolIntArray( -2752488, 0, 2, -2686952, 0, 2, -2621416, 0, 2, -2555880, 0, 2, -2555873, 0, 2, -2490344, 0, 2, -2490337, 0, 2, -2424808, 0, 2, -2424801, 0, 2, -2359272, 0, 2, -2359265, 0, 2, -2293736, 0, 2, -2293729, 0, 2, -2228200, 0, 2, -2228193, 0, 2, -2162657, 0, 2, -2097121, 0, 2, -2031585, 0, 2, -1966058, 0, 2, -1966049, 0, 2, -1900522, 0, 2, -1900513, 0, 2, -1834986, 0, 2, -1834977, 0, 2, -1769450, 0, 2, -1769441, 0, 2, -1703935, 0, 2, -1703914, 0, 2, -1703905, 0, 2, -1638399, 0, 2, -1638378, 0, 2, -1638369, 0, 2, -1572863, 0, 2, -1572842, 0, 2, -1572833, 0, 2, -1507327, 0, 2, -1507306, 0, 2, -1507297, 0, 2, -1441791, 0, 2, -1441770, 0, 2, -1441761, 0, 2, -1376255, 0, 2, -1376234, 0, 2, -1376225, 0, 2, -1310698, 0, 2, -1310689, 0, 2, -1245162, 0, 2, -1179626, 0, 2, -1114090, 0, 2, -1048554, 0, 2, -917475, 0, 2, -851939, 0, 2, -786403, 0, 2, -720867, 0, 2, -655331, 0, 2, -589795, 0, 2, -524259, 0, 2, -458723, 0, 2, -393209, 0, 2, -327673, 0, 2, -262137, 0, 2, -196589, 0, 2, -131053, 0, 2, -65517, 0, 2, 19, 0, 2, 65555, 0, 2, 131091, 0, 2, 196627, 0, 2, 262163, 0, 2, 327699, 0, 2, 393235, 0, 2, 458771, 0, 2, 589825, 0, 2, 655361, 0, 2, 720897, 0, 2, 851998, 0, 2, 917534, 0, 2, 983070, 0, 2, 1048606, 0, 2, 1114142, 0, 2, 1179678, 0, 2, 1245214, 0, 2 ) [node name="Death" type="TileMap" parent="." groups=["death"]] light_mask = 0 @@ -184,521 +145,70 @@ tile_set = ExtResource( 22 ) cell_size = Vector2( 8, 8 ) collision_layer = 32 format = 1 -tile_data = PoolIntArray( -2686976, 1, 0, -2686975, 1, 0, -2686974, 1, 0, -2686973, 1, 0, -2686972, 1, 0, -2686971, 1, 0, -2686970, 1, 0, -2686969, 1, 0, -2686968, 1, 0, -2686967, 1, 0, -2686966, 1, 0, -2686965, 1, 0, -2686964, 1, 0, -2686963, 1, 0, -2686962, 1, 0, -2686961, 1, 0, -2686960, 1, 0, -2162688, 1, 0, -2162687, 1, 0, -2162686, 1, 0, -2162685, 1, 0, -2162684, 1, 0, -2162683, 1, 0, -2162682, 1, 0, -2162681, 1, 0, -2162680, 1, 0, -2162679, 1, 0, -2162678, 1, 0, -2162677, 1, 0, -2162676, 1, 0, -2162675, 1, 0, -2162674, 1, 0, -2162673, 1, 0, -2162672, 1, 0, -2162671, 1, 0, -2162670, 1, 0, -524276, 1, 0, -524273, 1, 0, 1441800, 1, 0, 1441801, 1, 0, 1441802, 1, 0, 1441803, 1, 0, 1441804, 1, 0, 1441805, 1, 0, 1441806, 1, 0, 1441807, 1, 0, 1441812, 1, 0, 1441813, 1, 0, 1441814, 1, 0 ) [node name="Environment" type="Node2D" parent="."] -[node name="MovingPlatform" parent="Environment" instance=ExtResource( 9 )] -position = Vector2( 96, 168 ) -scale = Vector2( 2, 1 ) -left_up_boundary = 2.0 -right_down_boundary = 2.0 - -[node name="MovingPlatform5" parent="Environment" instance=ExtResource( 9 )] -position = Vector2( 104, 136 ) -scale = Vector2( 2, 1 ) -right_down_boundary = 5.0 - -[node name="MovingPlatform8" parent="Environment" instance=ExtResource( 9 )] -position = Vector2( 96, -280 ) -scale = Vector2( 2, 1 ) -speed = 30 -right_down_boundary = 2.0 - -[node name="MovingPlatform9" parent="Environment" instance=ExtResource( 9 )] -position = Vector2( 80, -344 ) -scale = Vector2( 2, 1 ) -speed = 40 -left_up_boundary = 3.0 -right_down_boundary = 4.0 - -[node name="MovingPlatform6" parent="Environment" instance=ExtResource( 9 )] -position = Vector2( 80, -280 ) -scale = Vector2( 2, 1 ) -direction = -1 -speed = 30 -left_up_boundary = 2.0 - -[node name="MovingPlatform2" parent="Environment" instance=ExtResource( 9 )] -position = Vector2( 184, 40 ) -scale = Vector2( 2, 1 ) -left_up_boundary = 2.0 -right_down_boundary = 2.0 - -[node name="MovingPlatform4" parent="Environment" instance=ExtResource( 9 )] -position = Vector2( 172, 104 ) -left_up_boundary = 1.0 -right_down_boundary = 2.0 - -[node name="MovingPlatform3" parent="Environment" instance=ExtResource( 9 )] -position = Vector2( 16, 40 ) -scale = Vector2( 2, 1 ) -speed = 40 -left_up_boundary = 8.0 -right_down_boundary = 2.0 -move_direction = 1 - -[node name="Ladder" parent="Environment" instance=ExtResource( 12 )] -position = Vector2( 240, 104 ) -scale = Vector2( 1, 7 ) - -[node name="Ladder2" parent="Environment" instance=ExtResource( 12 )] -position = Vector2( 152, -24 ) -scale = Vector2( 1, 11 ) - -[node name="Ladder8" parent="Environment" instance=ExtResource( 12 )] -position = Vector2( 176, -240 ) -scale = Vector2( 1, 15 ) - -[node name="Ladder11" parent="Environment" instance=ExtResource( 12 )] -position = Vector2( 8, -208 ) -scale = Vector2( 1, 6 ) -can_climb_left = false - -[node name="Ladder10" parent="Environment" instance=ExtResource( 12 )] -position = Vector2( 192, -336 ) -scale = Vector2( 1, 9 ) - -[node name="Ladder9" parent="Environment" instance=ExtResource( 12 )] -position = Vector2( 248, -312 ) -scale = Vector2( 1, 20 ) -can_climb_right = false - -[node name="Ladder7" parent="Environment" instance=ExtResource( 12 )] -position = Vector2( 232, -112 ) -scale = Vector2( 1, 8 ) - -[node name="Ladder5" parent="Environment" instance=ExtResource( 12 )] -position = Vector2( 56, -48 ) -scale = Vector2( 1, 3 ) - -[node name="Ladder4" parent="Environment" instance=ExtResource( 12 )] -position = Vector2( 8, 72 ) -scale = Vector2( 1, 3 ) - -[node name="TurningPlatform" parent="Environment" instance=ExtResource( 15 )] -position = Vector2( 168, 168 ) -texture = ExtResource( 32 ) - -[node name="TurningPlatform2" parent="Environment" instance=ExtResource( 15 )] -position = Vector2( 80, 144 ) -texture = ExtResource( 32 ) - -[node name="TurningPlatform4" parent="Environment" instance=ExtResource( 15 )] -position = Vector2( 168, -280 ) -texture = ExtResource( 32 ) - -[node name="Rock2" parent="Environment" instance=ExtResource( 19 )] -position = Vector2( 112, 56 ) - -[node name="Rock3" parent="Environment" instance=ExtResource( 19 )] -position = Vector2( 80, -152 ) - -[node name="Rock4" parent="Environment" instance=ExtResource( 19 )] -position = Vector2( 160, -208 ) - -[node name="Barrier" parent="Environment" instance=ExtResource( 20 )] -position = Vector2( 140, -48 ) -scale = Vector2( 1, 16 ) -cost = 30 - -[node name="Barrier2" parent="Environment" instance=ExtResource( 20 )] -position = Vector2( 148, -248 ) -scale = Vector2( 1, 16 ) -cost = 40 - [node name="Enemies" type="Node2D" parent="."] -[node name="RollingFiend" parent="Enemies" instance=ExtResource( 8 )] -position = Vector2( 200, 152 ) - -[node name="RollingFiend2" parent="Enemies" instance=ExtResource( 8 )] -position = Vector2( 216, 32 ) - -[node name="RollingFiend8" parent="Enemies" instance=ExtResource( 8 )] -position = Vector2( 240, 48 ) - -[node name="RollingFiend4" parent="Enemies" instance=ExtResource( 8 )] -position = Vector2( 104, -24 ) - -[node name="RollingFiend7" parent="Enemies" instance=ExtResource( 8 )] -position = Vector2( 160, -344 ) -move_speed = 70.0 - -[node name="RollingFiend3" parent="Enemies" instance=ExtResource( 8 )] -position = Vector2( 32, 96 ) - -[node name="RollingFiend5" parent="Enemies" instance=ExtResource( 8 )] -position = Vector2( 80, -139 ) - -[node name="RollingFiend6" parent="Enemies" instance=ExtResource( 8 )] -position = Vector2( 104, -152 ) - -[node name="Bat3" parent="Enemies" instance=ExtResource( 13 )] -position = Vector2( 124, -152 ) -left_up_boundary = 2.0 -right_down_boundary = 3.0 - -[node name="Bat6" parent="Enemies" instance=ExtResource( 13 )] -position = Vector2( 112, -64 ) -left_up_boundary = 4.0 -right_down_boundary = 2.0 - -[node name="Bat4" parent="Enemies" instance=ExtResource( 13 )] -position = Vector2( 64, -232 ) -left_up_boundary = 2.0 -right_down_boundary = 4.0 -speed = 60 - -[node name="Bat7" parent="Enemies" instance=ExtResource( 13 )] -position = Vector2( 88, -296 ) -left_up_boundary = 1.0 -right_down_boundary = 4.0 - -[node name="Bat8" parent="Enemies" instance=ExtResource( 13 )] -position = Vector2( 248, -264 ) -left_up_boundary = 4.0 -right_down_boundary = 6.0 -speed = 50 - -[node name="Snake" parent="Enemies" instance=ExtResource( 16 )] -position = Vector2( 216, 82 ) -left_up_boundary = 3.0 -right_down_boundary = 4.0 - -[node name="Snake2" parent="Enemies" instance=ExtResource( 16 )] -position = Vector2( 136, 80 ) -left_up_boundary = 2.0 -right_down_boundary = 3.0 - -[node name="Snake7" parent="Enemies" instance=ExtResource( 16 )] -position = Vector2( 216, -16 ) -left_up_boundary = 2.0 -right_down_boundary = 5.0 -speed = 80 - -[node name="Snake3" parent="Enemies" instance=ExtResource( 16 )] -position = Vector2( 96, 114 ) -left_up_boundary = 10.0 -right_down_boundary = 2.0 +[node name="Spoink" parent="Enemies" instance=ExtResource( 8 )] +position = Vector2( 168, 120 ) +jump_height = 200.0 +jump_distance = 32.0 +gravity = 400.0 +direction = -1.0 [node name="Collectibles" type="Node2D" parent="."] -position = Vector2( 172, 160 ) -[node name="Star" parent="Collectibles" instance=ExtResource( 14 )] -position = Vector2( 28, 16 ) +[node name="Shards" type="Node2D" parent="Collectibles"] -[node name="Star2" parent="Collectibles" instance=ExtResource( 14 )] -position = Vector2( 60, -128 ) -color = 1 +[node name="Shard" parent="Collectibles/Shards" instance=ExtResource( 21 )] +position = Vector2( -152, -112 ) -[node name="Star3" parent="Collectibles" instance=ExtResource( 14 )] -position = Vector2( -60, -272 ) -color = 4 - -[node name="Star4" parent="Collectibles" instance=ExtResource( 14 )] -position = Vector2( 36, -176 ) -color = 3 - -[node name="Star5" parent="Collectibles" instance=ExtResource( 14 )] -position = Vector2( -68, -144 ) -color = 2 - -[node name="Gold" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -124, -64 ) - -[node name="Gold2" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -156, -64 ) - -[node name="Gold3" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -44, 8 ) - -[node name="Gold4" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -20, 8 ) - -[node name="Gold5" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -116, 8 ) - -[node name="Gold6" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -132, 8 ) - -[node name="Gold7" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -92, -24 ) - -[node name="Gold8" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -108, -48 ) - -[node name="Gold16" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -76, -48 ) - -[node name="Gold9" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 36, -48 ) - -[node name="Gold10" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 20, -8 ) - -[node name="Gold12" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 28, -80 ) - -[node name="Gold14" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -28, -80 ) - -[node name="Gold15" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 12, -48 ) - -[node name="Gold17" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -124, -184 ) - -[node name="Gold18" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -124, -112 ) - -[node name="Gold19" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -140, -184 ) - -[node name="Gold20" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -164, -248 ) - -[node name="Gold22" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -132, -248 ) - -[node name="Gold23" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -92, -224 ) - -[node name="Gold24" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -36, -224 ) - -[node name="Gold32" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -124, -312 ) - -[node name="Gold33" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 52, -448 ) - -[node name="Gold34" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -140, -312 ) - -[node name="Gold36" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -92, -400 ) - -[node name="Gold37" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -68, -400 ) - -[node name="Gold39" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -68, -368 ) - -[node name="Gold40" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -52, -368 ) - -[node name="Gold41" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -36, -368 ) - -[node name="Gold38" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -44, -400 ) - -[node name="Gold44" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 36, -384 ) - -[node name="Gold45" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -36, -448 ) - -[node name="Gold46" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -28, -512 ) - -[node name="Gold48" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 44, -512 ) - -[node name="Gold52" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 44, -8 ) - -[node name="Gold49" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 68, -512 ) - -[node name="Gold47" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -44, -512 ) - -[node name="Gold35" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 52, 16 ) - -[node name="Gold25" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -11, -224 ) - -[node name="Gold42" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 4, -248 ) - -[node name="Gold43" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 28, -248 ) - -[node name="Gold50" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 20, -280 ) - -[node name="Gold51" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 44, -280 ) - -[node name="Gold26" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 20, -200 ) - -[node name="Gold30" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -92, -104 ) - -[node name="Gold31" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -76, -104 ) - -[node name="Gold27" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 44, -200 ) - -[node name="Gold28" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -116, -16 ) - -[node name="Gold13" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( 68, -80 ) - -[node name="Gold11" parent="Collectibles" instance=ExtResource( 18 )] -position = Vector2( -12, -48 ) - -[node name="Shard" parent="Collectibles" instance=ExtResource( 21 )] -position = Vector2( -148, -248 ) - -[node name="Shard2" parent="Collectibles" instance=ExtResource( 21 )] -position = Vector2( -148, -448 ) -number = 2 - -[node name="Shard3" parent="Collectibles" instance=ExtResource( 21 )] -position = Vector2( -28, -312 ) +[node name="Shard2" parent="Collectibles/Shards" instance=ExtResource( 21 )] +position = Vector2( 376, -104 ) number = 1 -[node name="Shard4" parent="Collectibles" instance=ExtResource( 21 )] -position = Vector2( 52, -488 ) +[node name="Shard3" parent="Collectibles/Shards" instance=ExtResource( 21 )] +position = Vector2( 384, 264 ) +number = 2 + +[node name="Shard4" parent="Collectibles/Shards" instance=ExtResource( 21 )] +position = Vector2( -144, 280 ) number = 3 -[node name="Arrow" parent="Collectibles" instance=ExtResource( 24 )] -position = Vector2( -84, -368 ) +[node name="Shard5" parent="Collectibles/Shards" instance=ExtResource( 21 )] +position = Vector2( 184, 72 ) +number = 4 -[node name="Arrow2" parent="Collectibles" instance=ExtResource( 24 )] -position = Vector2( 60, -320 ) +[node name="Stars" type="Node2D" parent="Collectibles"] + +[node name="Star1" parent="Collectibles/Stars" instance=ExtResource( 14 )] +position = Vector2( 72, 24 ) + +[node name="Star2" parent="Collectibles/Stars" instance=ExtResource( 14 )] +position = Vector2( 136, -112 ) +color = 1 + +[node name="Star3" parent="Collectibles/Stars" instance=ExtResource( 14 )] +position = Vector2( 376, 96 ) +color = 2 + +[node name="Star4" parent="Collectibles/Stars" instance=ExtResource( 14 )] +position = Vector2( 104, 288 ) +color = 3 + +[node name="Star5" parent="Collectibles/Stars" instance=ExtResource( 14 )] +position = Vector2( -144, 80 ) +color = 4 + +[node name="Keys" type="Node2D" parent="Collectibles"] [node name="Respawns" type="Node2D" parent="."] -[node name="RespawnPoint" parent="Respawns" instance=ExtResource( 25 )] -position = Vector2( 40, -16 ) -match_v = false - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Respawns/RespawnPoint"] -position = Vector2( 8, -20 ) -shape = SubResource( 2 ) - -[node name="RespawnPoint2" parent="Respawns" instance=ExtResource( 25 )] -position = Vector2( 160, 16 ) -__meta__ = { -"_edit_group_": true -} -match_v = false - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Respawns/RespawnPoint2"] -position = Vector2( 16, 0 ) -shape = SubResource( 9 ) - -[node name="RespawnPoint6" parent="Respawns" instance=ExtResource( 25 )] -position = Vector2( 48, 56 ) -__meta__ = { -"_edit_group_": true -} -match_v = false - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Respawns/RespawnPoint6"] -position = Vector2( -12, -44 ) -shape = SubResource( 7 ) - -[node name="RespawnPoint7" parent="Respawns" instance=ExtResource( 25 )] -position = Vector2( 96, 24 ) -__meta__ = { -"_edit_group_": true -} -match_v = false - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Respawns/RespawnPoint7"] -position = Vector2( 12, -4 ) -shape = SubResource( 8 ) - -[node name="RespawnPoint3" parent="Respawns" instance=ExtResource( 25 )] -position = Vector2( 16, -144 ) -__meta__ = { -"_edit_group_": true -} -match_v = false - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Respawns/RespawnPoint3"] -position = Vector2( 24, -36 ) -shape = SubResource( 4 ) - -[node name="RespawnPoint9" parent="Respawns" instance=ExtResource( 25 )] -position = Vector2( 16, -200 ) -__meta__ = { -"_edit_group_": true -} -match_v = false - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Respawns/RespawnPoint9"] -position = Vector2( 24, -4 ) -shape = SubResource( 12 ) - -[node name="RespawnPoint4" parent="Respawns" instance=ExtResource( 25 )] -position = Vector2( 183, -200 ) -__meta__ = { -"_edit_group_": true -} -match_v = false - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Respawns/RespawnPoint4"] -position = Vector2( 24, -64 ) -shape = SubResource( 5 ) - -[node name="RespawnPoint5" parent="Respawns" instance=ExtResource( 25 )] -position = Vector2( 176, -8 ) -__meta__ = { -"_edit_group_": true -} -match_v = false - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Respawns/RespawnPoint5"] -position = Vector2( -16, -8 ) -shape = SubResource( 6 ) - -[node name="RespawnPoint8" parent="Respawns" instance=ExtResource( 25 )] -position = Vector2( 184, -184 ) - -[node name="CollisionShape2D" type="CollisionShape2D" parent="Respawns/RespawnPoint8"] -position = Vector2( 8, 4 ) -shape = SubResource( 11 ) - [node name="Boundaries" type="StaticBody2D" parent="."] -[node name="CollisionShape2D" type="CollisionShape2D" parent="Boundaries"] -position = Vector2( -4, -92 ) -shape = SubResource( 1 ) - -[node name="CollisionShape2D2" type="CollisionShape2D" parent="Boundaries"] -position = Vector2( 260, -94 ) -shape = SubResource( 1 ) - -[node name="ColorRect" type="ColorRect" parent="."] -margin_top = -192.0 -margin_right = 256.0 -color = Color( 0.0784314, 1, 0, 0.113725 ) -script = ExtResource( 10 ) -__meta__ = { -"_edit_lock_": true -} - -[node name="ColorRect2" type="ColorRect" parent="."] -margin_top = -384.0 -margin_right = 256.0 -margin_bottom = -192.0 -color = Color( 0, 0.0862745, 1, 0.113725 ) -script = ExtResource( 10 ) -__meta__ = { -"_edit_lock_": true -} - [node name="HUD" parent="." instance=ExtResource( 17 )] +visible = false song_name = "♫Burnt Out" [node name="Exit" parent="." instance=ExtResource( 26 )] diff --git a/objects/enemy/pigs/spoink.gd b/objects/enemy/pigs/spoink.gd new file mode 100644 index 0000000..2de56f4 --- /dev/null +++ b/objects/enemy/pigs/spoink.gd @@ -0,0 +1,33 @@ +extends "res://objects/enemy/enemy.gd" + + +export var jump_height: float +export var jump_distance: float +export var gravity: float +export var direction: float = 1.0 + + +var velocity: Vector2 = Vector2.ZERO +var landed: bool = false + + +onready var body: Node2D = $Body +onready var sprite: Sprite = $Body/Sprite + + +func _physics_process(delta: float) -> void: + death_blood_offset = body.position + Vector2(0.0, -4.0) + if not landed: + velocity.y += gravity * delta + body.position += velocity * delta + if body.position.y >= 0.0: + landed = true + velocity = Vector2.ZERO + body.position.y = 0.0 + sprite.frame = 1 + direction *= -1.0 + var tween = create_tween().set_process_mode(Tween.TWEEN_PROCESS_PHYSICS) + tween.tween_property(sprite, "frame", 0, 0.0).set_delay(0.5) + tween.tween_property(self, "velocity", Vector2(jump_distance * direction, -jump_height), 0.0) + tween.tween_property(self, "landed", false, 0.0) + tween.tween_callback(tween, "kill") diff --git a/objects/enemy/pigs/spoink.tscn b/objects/enemy/pigs/spoink.tscn new file mode 100644 index 0000000..342fd1d --- /dev/null +++ b/objects/enemy/pigs/spoink.tscn @@ -0,0 +1,119 @@ +[gd_scene load_steps=6 format=2] + +[ext_resource path="res://graphics/enemy/pigs/spoink.png" type="Texture" id=1] +[ext_resource path="res://objects/enemy/pigs/spoink.gd" type="Script" id=2] + +[sub_resource type="Animation" id=1] +resource_name = "idle" +length = 0.7 +step = 0.35 +tracks/0/type = "value" +tracks/0/path = NodePath("Body/Sprite:region_rect") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Rect2( 0, 0, 13, 12 ) ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("Body/Sprite:position") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 4, 2 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("Hitbox:position") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, 0 ) ] +} + +[sub_resource type="Animation" id=2] +resource_name = "jump" +length = 0.4 +step = 0.05 +tracks/0/type = "value" +tracks/0/path = NodePath("Body/Sprite:region_rect") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Rect2( 13, 0, 13, 12 ) ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("Body/Sprite:position") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 0.2, 0.4 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 0, +"values": [ Vector2( 4, 2 ), Vector2( 4, -2 ), Vector2( 4, 2 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("Hitbox:position") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = false +tracks/2/keys = { +"times": PoolRealArray( 0, 0.2, 0.4 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 0, +"values": [ Vector2( 0, -4 ), Vector2( 0, -8 ), Vector2( 0, -4 ) ] +} + +[sub_resource type="RectangleShape2D" id=3] +extents = Vector2( 4, 5 ) + +[node name="Spoink" type="Node2D" groups=["enemy"]] +script = ExtResource( 2 ) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +playback_process_mode = 0 +anims/idle = SubResource( 1 ) +anims/jump = SubResource( 2 ) + +[node name="Hitbox" type="Area2D" parent="." groups=["enemy_hitbox"]] + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox"] +position = Vector2( 0, -5 ) +shape = SubResource( 3 ) + +[node name="Body" type="Node2D" parent="."] + +[node name="Sprite" type="Sprite" parent="Body"] +texture = ExtResource( 1 ) +offset = Vector2( 0, -8 ) +hframes = 2 +region_rect = Rect2( 0, 0, 13, 12 ) + +[node name="RemoteTransform2D" type="RemoteTransform2D" parent="Body"] +remote_path = NodePath("../../Hitbox") +update_rotation = false +update_scale = false + +[connection signal="animation_finished" from="AnimationPlayer" to="." method="_on_AnimationPlayer_animation_finished"] +[connection signal="area_entered" from="Hitbox" to="." method="_on_Hitbox_area_entered"] diff --git a/tilesets/future/t_mountain_future.tres b/tilesets/future/t_mountain_future.tres index 7714f42..ad286d6 100644 --- a/tilesets/future/t_mountain_future.tres +++ b/tilesets/future/t_mountain_future.tres @@ -1,4 +1,4 @@ -[gd_resource type="TileSet" load_steps=18 format=2] +[gd_resource type="TileSet" load_steps=34 format=2] [ext_resource path="res://graphics/tiles/mountain.png" type="Texture" id=1] [ext_resource path="res://graphics/tiles/future/mountain_future.png" type="Texture" id=2] @@ -48,6 +48,54 @@ points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) [sub_resource type="ConvexPolygonShape2D" id=17] points = PoolVector2Array( 8, 2, 0, 2, 0, 2, 8, 2 ) +[sub_resource type="ConvexPolygonShape2D" id=18] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=19] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=20] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=21] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=22] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=23] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=24] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=25] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=26] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=27] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=28] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=29] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=30] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=31] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=32] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=33] +points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) + [resource] 0/name = "grass.png 0" 0/texture = ExtResource( 2 ) @@ -217,3 +265,124 @@ points = PoolVector2Array( 8, 2, 0, 2, 0, 2, 8, 2 ) 3/shape_one_way_margin = 0.0 3/shapes = [ ] 3/z_index = 0 +4/name = "bacon" +4/texture = ExtResource( 2 ) +4/tex_offset = Vector2( 0, 0 ) +4/modulate = Color( 1, 1, 1, 1 ) +4/region = Rect2( 32, 0, 32, 32 ) +4/tile_mode = 1 +4/autotile/bitmask_mode = 1 +4/autotile/bitmask_flags = [ Vector2( 0, 0 ), 16, Vector2( 0, 1 ), 144, Vector2( 0, 2 ), 146, Vector2( 0, 3 ), 18, Vector2( 1, 0 ), 48, Vector2( 1, 1 ), 16777392, Vector2( 1, 2 ), 17039538, Vector2( 1, 3 ), 262194, Vector2( 2, 0 ), 56, Vector2( 2, 1 ), 20971704, Vector2( 2, 2 ), 21299386, Vector2( 2, 3 ), 327738, Vector2( 3, 0 ), 24, Vector2( 3, 1 ), 4194456, Vector2( 3, 2 ), 4259994, Vector2( 3, 3 ), 65562 ] +4/autotile/icon_coordinate = Vector2( 0, 0 ) +4/autotile/tile_size = Vector2( 8, 8 ) +4/autotile/spacing = 0 +4/autotile/occluder_map = [ ] +4/autotile/navpoly_map = [ ] +4/autotile/priority_map = [ ] +4/autotile/z_index_map = [ ] +4/autotile/fallback_mode = 0 +4/occluder_offset = Vector2( 0, 0 ) +4/navigation_offset = Vector2( 0, 0 ) +4/shape_offset = Vector2( 0, 0 ) +4/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +4/shape = SubResource( 18 ) +4/shape_one_way = false +4/shape_one_way_margin = 1.0 +4/shapes = [ { +"autotile_coord": Vector2( 0, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 18 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 19 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 20 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 21 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 22 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 23 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 24 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 25 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 26 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 27 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 28 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 29 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 3 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 30 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 3 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 31 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 3 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 32 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 3 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 33 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +} ] +4/z_index = 0 diff --git a/tilesets/t_death.tres b/tilesets/t_death.tres index ccaff97..84a71e0 100644 --- a/tilesets/t_death.tres +++ b/tilesets/t_death.tres @@ -213,14 +213,8 @@ points = PoolVector2Array( 8, 8, 0, 8, 0, 0, 8, 0 ) 10/shape_offset = Vector2( 0, 0 ) 10/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) 10/shape_one_way = false -10/shape_one_way_margin = 1.0 -10/shapes = [ { -"autotile_coord": Vector2( 0, 0 ), -"one_way": false, -"one_way_margin": 1.0, -"shape": null, -"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) -} ] +10/shape_one_way_margin = 0.0 +10/shapes = [ ] 10/z_index = 10 11/name = "water_light_bottom.png 11" 11/texture = ExtResource( 9 )