diff --git a/autoloads/level_data.tscn b/autoloads/level_data.tscn index 8cef918..88a0f32 100644 --- a/autoloads/level_data.tscn +++ b/autoloads/level_data.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=21 format=2] +[gd_scene load_steps=23 format=2] [ext_resource path="res://autoloads/level_data.gd" type="Script" id=1] [ext_resource path="res://maps/hills_scholar.tscn" type="PackedScene" id=2] @@ -11,6 +11,7 @@ [ext_resource path="res://maps/rust.tscn" type="PackedScene" id=9] [ext_resource path="res://maps/station.tscn" type="PackedScene" id=10] [ext_resource path="res://maps/graveyard.tscn" type="PackedScene" id=11] +[ext_resource path="res://maps/lab.tscn" type="PackedScene" id=12] [sub_resource type="Resource" id=1] resource_name = "Verdant Hills" @@ -84,6 +85,14 @@ shard_titles = [ "Precarious Block", "Beside the button", "Saws and bullets", "B save_id = "rust" scene = ExtResource( 9 ) +[sub_resource type="Resource" id=11] +resource_name = "Lab" +script = ExtResource( 5 ) +title = "Lab" +shard_titles = [ "", "", "", "", "5 Rainbow Stars", "Collection Bonus", "Time Bonus", "Life Bonus" ] +save_id = "lab" +scene = ExtResource( 12 ) + [node name="LevelData" type="Node"] script = ExtResource( 1 ) -levels = [ SubResource( 1 ), SubResource( 2 ), SubResource( 4 ), SubResource( 6 ), SubResource( 3 ), SubResource( 10 ), SubResource( 9 ), SubResource( 8 ), SubResource( 7 ) ] +levels = [ SubResource( 1 ), SubResource( 2 ), SubResource( 4 ), SubResource( 6 ), SubResource( 3 ), SubResource( 10 ), SubResource( 9 ), SubResource( 8 ), SubResource( 7 ), SubResource( 11 ) ] diff --git a/autoloads/save.gd b/autoloads/save.gd index cef4cfe..892313d 100644 --- a/autoloads/save.gd +++ b/autoloads/save.gd @@ -145,6 +145,8 @@ func _ready() -> void: current_file = load_file("user://file%d.pr" % Options.last_file) if current_file: Game.difficulty = current_file.difficulty + else: + current_file = SaveFile.new("user://testing.pr") ## shortcut for loading a save file from specific path func load_file(path: String) -> SaveFile: diff --git a/maps/lab.tscn b/maps/lab.tscn new file mode 100644 index 0000000..6e9c3d4 --- /dev/null +++ b/maps/lab.tscn @@ -0,0 +1,111 @@ +[gd_scene load_steps=17 format=2] + +[ext_resource path="res://graphics/backgrounds/factory.png" type="Texture" id=1] +[ext_resource path="res://objects/hud/hud.tscn" type="PackedScene" id=2] +[ext_resource path="res://objects/environment/ladder/ladder.tscn" type="PackedScene" id=3] +[ext_resource path="res://tilesets/t_laboratory.tres" type="TileSet" id=4] +[ext_resource path="res://objects/enemy/super_slime.tscn" type="PackedScene" id=5] +[ext_resource path="res://objects/Camera2D.tscn" type="PackedScene" id=6] +[ext_resource path="res://tilesets/t_death.tres" type="TileSet" id=9] +[ext_resource path="res://scripts/delete_on_game_running.gd" type="Script" id=18] +[ext_resource path="res://maps/map.gd" type="Script" id=19] +[ext_resource path="res://tilesets/t_ladders.tres" type="TileSet" id=21] +[ext_resource path="res://objects/lore/hills/bioslime.tscn" type="PackedScene" id=22] +[ext_resource path="res://objects/lore/hills/catbat.tscn" type="PackedScene" id=23] +[ext_resource path="res://objects/lore/hills/eviscerator.tscn" type="PackedScene" id=24] +[ext_resource path="res://objects/lore/hills/verdant_hills.tscn" type="PackedScene" id=25] +[ext_resource path="res://objects/player/player.tscn" type="PackedScene" id=26] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 8, 128 ) + +[node name="Map" type="Node2D" groups=["map"]] +pause_mode = 1 +script = ExtResource( 19 ) +target_time_any = 70 +target_time_100 = 180 +lore_entries = [ ExtResource( 25 ), ExtResource( 24 ), ExtResource( 22 ), ExtResource( 23 ) ] + +[node name="CanvasLayer" type="CanvasLayer" parent="."] +layer = -2 + +[node name="Background" type="Sprite" parent="CanvasLayer"] +z_index = -2 +texture = ExtResource( 1 ) +centered = false +__meta__ = { +"_edit_lock_": true +} + +[node name="Camera2D" parent="." instance=ExtResource( 6 )] + +[node name="Ground" type="TileMap" parent="."] +tile_set = ExtResource( 4 ) +cell_size = Vector2( 8, 8 ) +format = 1 +tile_data = PoolIntArray( 1048586, 2, 196609, 1048587, 2, 196610, 1048588, 2, 196610, 1048589, 2, 196610, 1048590, 2, 196610, 1048591, 2, 196610, 1048592, 2, 196610, 1048593, 2, 196610, 1048594, 2, 196610, 1048595, 2, 196611, 1245207, 2, 1, 1245208, 2, 2, 1245209, 2, 2, 1245210, 2, 3, 1310742, 2, 1, 1310743, 2, 65538, 1310744, 2, 65538, 1310745, 2, 65538, 1310746, 2, 65539, 1376277, 2, 1, 1376278, 2, 65538, 1376279, 2, 65538, 1376280, 2, 65538, 1376281, 2, 65538, 1376282, 2, 65539, 1441792, 2, 1, 1441793, 2, 2, 1441794, 2, 2, 1441795, 2, 2, 1441796, 2, 2, 1441797, 2, 2, 1441798, 2, 2, 1441799, 2, 2, 1441800, 2, 2, 1441801, 2, 2, 1441802, 2, 2, 1441803, 2, 2, 1441804, 2, 2, 1441805, 2, 2, 1441806, 2, 2, 1441807, 2, 2, 1441808, 2, 2, 1441809, 2, 2, 1441810, 2, 2, 1441811, 2, 2, 1441812, 2, 2, 1441813, 2, 65538, 1441814, 2, 65538, 1441815, 2, 65538, 1441816, 2, 65538, 1441817, 2, 65538, 1441818, 2, 65538, 1441819, 2, 2, 1441820, 2, 2, 1441821, 2, 2, 1441822, 2, 2, 1441823, 2, 3, 1507328, 2, 131073, 1507329, 2, 131074, 1507330, 2, 131074, 1507331, 2, 131074, 1507332, 2, 131074, 1507333, 2, 131074, 1507334, 2, 131074, 1507335, 2, 131074, 1507336, 2, 131074, 1507337, 2, 131074, 1507338, 2, 131074, 1507339, 2, 131074, 1507340, 2, 131074, 1507341, 2, 131074, 1507342, 2, 131074, 1507343, 2, 131074, 1507344, 2, 131074, 1507345, 2, 131074, 1507346, 2, 131074, 1507347, 2, 131074, 1507348, 2, 131074, 1507349, 2, 131074, 1507350, 2, 131074, 1507351, 2, 131074, 1507352, 2, 131074, 1507353, 2, 131074, 1507354, 2, 131074, 1507355, 2, 131074, 1507356, 2, 131074, 1507357, 2, 131074, 1507358, 2, 131074, 1507359, 2, 131075 ) + +[node name="Player" parent="." instance=ExtResource( 26 )] +position = Vector2( 32, 176 ) + +[node name="Death" type="TileMap" parent="."] +tile_set = ExtResource( 9 ) +cell_size = Vector2( 8, 8 ) +format = 1 + +[node name="Ladder" type="TileMap" parent="."] +tile_set = ExtResource( 21 ) +cell_size = Vector2( 8, 8 ) +format = 1 + +[node name="StaticBody2D" type="StaticBody2D" parent="."] + +[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"] +position = Vector2( -8, 104 ) +shape = SubResource( 1 ) + +[node name="CollisionShape2D2" type="CollisionShape2D" parent="StaticBody2D"] +position = Vector2( 776, 112 ) +shape = SubResource( 1 ) + +[node name="Platforms" type="Node2D" parent="."] + +[node name="Ladder" parent="Platforms" instance=ExtResource( 3 )] +position = Vector2( -40, 112 ) +scale = Vector2( 1, 3 ) + +[node name="Collectibles" type="Node2D" parent="."] + +[node name="Enemies" type="Node2D" parent="."] + +[node name="SuperSlime" parent="Enemies" instance=ExtResource( 5 )] +position = Vector2( 96, 168 ) +left_boundary = 2.0 +right_boundary = 7.0 +jump_distance = 3.0 + +[node name="SuperSlime2" parent="Enemies" instance=ExtResource( 5 )] +position = Vector2( 128, 144 ) +rotation = 3.14159 +left_boundary = 4.0 +right_boundary = 5.0 +jump_distance = 3.0 + +[node name="ColorRect2" type="ColorRect" parent="."] +margin_left = 512.0 +margin_right = 768.0 +margin_bottom = 192.0 +color = Color( 1, 0.843137, 0, 0.0901961 ) +script = ExtResource( 18 ) +__meta__ = { +"_edit_lock_": true +} + +[node name="ColorRect3" type="ColorRect" parent="."] +visible = false +margin_right = 256.0 +margin_bottom = 8.0 +color = Color( 0, 0, 0, 1 ) + +[node name="HUD" parent="." instance=ExtResource( 2 )] +song_name = "♫Rumble" diff --git a/objects/enemy/super_slime.tscn b/objects/enemy/super_slime.tscn index b939b03..a10c470 100644 --- a/objects/enemy/super_slime.tscn +++ b/objects/enemy/super_slime.tscn @@ -33,7 +33,6 @@ extents = Vector2( 4, 4 ) [node name="SuperSlime" type="Node2D" groups=["ememy"]] script = ExtResource( 1 ) blood = false -jump_speed = 100.0 [node name="Hitbox" type="Area2D" parent="." groups=["enemy_hitbox"]] @@ -41,6 +40,7 @@ jump_speed = 100.0 material = SubResource( 4 ) position = Vector2( 4, 3 ) frames = SubResource( 5 ) +frame = 1 playing = true [node name="CollisionShape2D" type="CollisionShape2D" parent="Hitbox"]