summaryrefslogtreecommitdiff
path: root/game/rooms
diff options
context:
space:
mode:
Diffstat (limited to 'game/rooms')
-rw-r--r--game/rooms/intro/esc/intro.esc13
-rw-r--r--game/rooms/intro/escoria-logo-comet-anim.pngbin0 -> 85426 bytes
-rw-r--r--game/rooms/intro/escoria-logo-comet-anim.png.import40
-rw-r--r--game/rooms/intro/escoria-logo-comet.pngbin0 -> 28142 bytes
-rw-r--r--game/rooms/intro/escoria-logo-comet.png.import40
-rw-r--r--game/rooms/intro/escoria_background.pngbin0 -> 71094 bytes
-rw-r--r--game/rooms/intro/escoria_background.png.import40
-rw-r--r--game/rooms/intro/escoria_background_1080p.pngbin0 -> 75553 bytes
-rw-r--r--game/rooms/intro/escoria_background_1080p.png.import40
-rw-r--r--game/rooms/intro/intro_background_space.pngbin0 -> 944543 bytes
-rw-r--r--game/rooms/intro/intro_background_space.png.import40
-rw-r--r--game/rooms/intro/intro_background_space_1080p.pngbin0 -> 1714359 bytes
-rw-r--r--game/rooms/intro/intro_background_space_1080p.png.import40
-rw-r--r--game/rooms/intro/intro_room.tscn306
-rw-r--r--game/rooms/no_escoria/no_escoria.tscn13
-rw-r--r--game/rooms/no_escoria/player.gd32
-rw-r--r--game/rooms/no_escoria/player.gd.uid1
-rw-r--r--game/rooms/test/phone.esc8
-rw-r--r--game/rooms/test/room_test.esc4
-rw-r--r--game/rooms/test/test.tscn113
-rw-r--r--game/rooms/test/test_bg.pngbin0 -> 2500226 bytes
-rw-r--r--game/rooms/test/test_bg.png.import40
-rw-r--r--game/rooms/test_kitchen/kitchen.pngbin0 -> 2493262 bytes
-rw-r--r--game/rooms/test_kitchen/kitchen.png.import40
-rw-r--r--game/rooms/test_kitchen/room_kitchen.esc4
-rw-r--r--game/rooms/test_kitchen/test_kitchen.tscn53
26 files changed, 867 insertions, 0 deletions
diff --git a/game/rooms/intro/esc/intro.esc b/game/rooms/intro/esc/intro.esc
new file mode 100644
index 0000000..05d14da
--- /dev/null
+++ b/game/rooms/intro/esc/intro.esc
@@ -0,0 +1,13 @@
+:setup
+ anim_block("intro_animation_player", "RESET")
+
+:ready | NO_UI
+ # Until we have a proper way to skip animations/cutscenes, we want to prevent
+ # something silly like being able to pause during the intro.
+ accept_input("NONE")
+
+ anim_block("intro_animation_player", "intro")
+
+ accept_input("ALL")
+
+ show_menu("main")
diff --git a/game/rooms/intro/escoria-logo-comet-anim.png b/game/rooms/intro/escoria-logo-comet-anim.png
new file mode 100644
index 0000000..b9b1b67
--- /dev/null
+++ b/game/rooms/intro/escoria-logo-comet-anim.png
Binary files differ
diff --git a/game/rooms/intro/escoria-logo-comet-anim.png.import b/game/rooms/intro/escoria-logo-comet-anim.png.import
new file mode 100644
index 0000000..1b27a0d
--- /dev/null
+++ b/game/rooms/intro/escoria-logo-comet-anim.png.import
@@ -0,0 +1,40 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bcqf41n5ixawf"
+path="res://.godot/imported/escoria-logo-comet-anim.png-61a9daadbd9a5013893a34a16352eaf5.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://game/rooms/intro/escoria-logo-comet-anim.png"
+dest_files=["res://.godot/imported/escoria-logo-comet-anim.png-61a9daadbd9a5013893a34a16352eaf5.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/uastc_level=0
+compress/rdo_quality_loss=0.0
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/channel_remap/red=0
+process/channel_remap/green=1
+process/channel_remap/blue=2
+process/channel_remap/alpha=3
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/rooms/intro/escoria-logo-comet.png b/game/rooms/intro/escoria-logo-comet.png
new file mode 100644
index 0000000..296c1ae
--- /dev/null
+++ b/game/rooms/intro/escoria-logo-comet.png
Binary files differ
diff --git a/game/rooms/intro/escoria-logo-comet.png.import b/game/rooms/intro/escoria-logo-comet.png.import
new file mode 100644
index 0000000..24213d2
--- /dev/null
+++ b/game/rooms/intro/escoria-logo-comet.png.import
@@ -0,0 +1,40 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://biaeu2magjnnb"
+path="res://.godot/imported/escoria-logo-comet.png-4feca95e0a71adb9a4583c4e2d6b9f39.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://game/rooms/intro/escoria-logo-comet.png"
+dest_files=["res://.godot/imported/escoria-logo-comet.png-4feca95e0a71adb9a4583c4e2d6b9f39.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/uastc_level=0
+compress/rdo_quality_loss=0.0
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/channel_remap/red=0
+process/channel_remap/green=1
+process/channel_remap/blue=2
+process/channel_remap/alpha=3
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/rooms/intro/escoria_background.png b/game/rooms/intro/escoria_background.png
new file mode 100644
index 0000000..8d4fc2b
--- /dev/null
+++ b/game/rooms/intro/escoria_background.png
Binary files differ
diff --git a/game/rooms/intro/escoria_background.png.import b/game/rooms/intro/escoria_background.png.import
new file mode 100644
index 0000000..617050d
--- /dev/null
+++ b/game/rooms/intro/escoria_background.png.import
@@ -0,0 +1,40 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dr7u6tmgltb5d"
+path="res://.godot/imported/escoria_background.png-8bcff96f08e380943bb09ed3e8a001a4.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://game/rooms/intro/escoria_background.png"
+dest_files=["res://.godot/imported/escoria_background.png-8bcff96f08e380943bb09ed3e8a001a4.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/uastc_level=0
+compress/rdo_quality_loss=0.0
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/channel_remap/red=0
+process/channel_remap/green=1
+process/channel_remap/blue=2
+process/channel_remap/alpha=3
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/rooms/intro/escoria_background_1080p.png b/game/rooms/intro/escoria_background_1080p.png
new file mode 100644
index 0000000..3d94505
--- /dev/null
+++ b/game/rooms/intro/escoria_background_1080p.png
Binary files differ
diff --git a/game/rooms/intro/escoria_background_1080p.png.import b/game/rooms/intro/escoria_background_1080p.png.import
new file mode 100644
index 0000000..19a85f7
--- /dev/null
+++ b/game/rooms/intro/escoria_background_1080p.png.import
@@ -0,0 +1,40 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bcw3ujtn2jd6a"
+path="res://.godot/imported/escoria_background_1080p.png-fc81012d9e0bc6c86bb55c1924e92011.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://game/rooms/intro/escoria_background_1080p.png"
+dest_files=["res://.godot/imported/escoria_background_1080p.png-fc81012d9e0bc6c86bb55c1924e92011.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/uastc_level=0
+compress/rdo_quality_loss=0.0
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/channel_remap/red=0
+process/channel_remap/green=1
+process/channel_remap/blue=2
+process/channel_remap/alpha=3
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/rooms/intro/intro_background_space.png b/game/rooms/intro/intro_background_space.png
new file mode 100644
index 0000000..0a8ff18
--- /dev/null
+++ b/game/rooms/intro/intro_background_space.png
Binary files differ
diff --git a/game/rooms/intro/intro_background_space.png.import b/game/rooms/intro/intro_background_space.png.import
new file mode 100644
index 0000000..31c88ee
--- /dev/null
+++ b/game/rooms/intro/intro_background_space.png.import
@@ -0,0 +1,40 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://hwm26syqec82"
+path="res://.godot/imported/intro_background_space.png-03815c403298b393ba1bea2b29eafeac.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://game/rooms/intro/intro_background_space.png"
+dest_files=["res://.godot/imported/intro_background_space.png-03815c403298b393ba1bea2b29eafeac.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/uastc_level=0
+compress/rdo_quality_loss=0.0
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/channel_remap/red=0
+process/channel_remap/green=1
+process/channel_remap/blue=2
+process/channel_remap/alpha=3
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/rooms/intro/intro_background_space_1080p.png b/game/rooms/intro/intro_background_space_1080p.png
new file mode 100644
index 0000000..6da33fe
--- /dev/null
+++ b/game/rooms/intro/intro_background_space_1080p.png
Binary files differ
diff --git a/game/rooms/intro/intro_background_space_1080p.png.import b/game/rooms/intro/intro_background_space_1080p.png.import
new file mode 100644
index 0000000..dbb95fb
--- /dev/null
+++ b/game/rooms/intro/intro_background_space_1080p.png.import
@@ -0,0 +1,40 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bi4mey684c14m"
+path="res://.godot/imported/intro_background_space_1080p.png-59ae70e602893abda84a69b82c8be9a4.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://game/rooms/intro/intro_background_space_1080p.png"
+dest_files=["res://.godot/imported/intro_background_space_1080p.png-59ae70e602893abda84a69b82c8be9a4.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/uastc_level=0
+compress/rdo_quality_loss=0.0
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/channel_remap/red=0
+process/channel_remap/green=1
+process/channel_remap/blue=2
+process/channel_remap/alpha=3
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/rooms/intro/intro_room.tscn b/game/rooms/intro/intro_room.tscn
new file mode 100644
index 0000000..ee702d2
--- /dev/null
+++ b/game/rooms/intro/intro_room.tscn
@@ -0,0 +1,306 @@
+[gd_scene load_steps=16 format=3 uid="uid://bunr8esv8b1w7"]
+
+[ext_resource type="Texture2D" uid="uid://b60usq11m50gt" path="res://game/rooms/intro/escoria-logo-comet-anim.png" id="1"]
+[ext_resource type="Texture2D" uid="uid://buwluvpj002oo" path="res://game/rooms/intro/intro_background_space.png" id="2"]
+[ext_resource type="Texture2D" uid="uid://cmjd8bala4gmj" path="res://game/rooms/intro/escoria-logo-comet.png" id="3"]
+[ext_resource type="Script" uid="uid://c7fcpp72w3dnj" path="res://addons/escoria-core/game/core-scripts/esc_room.gd" id="5"]
+[ext_resource type="Script" uid="uid://dshelmw7y44qg" path="res://addons/escoria-core/game/core-scripts/esc_item.gd" id="7"]
+
+[sub_resource type="AtlasTexture" id="1"]
+atlas = ExtResource("1")
+region = Rect2(0, 0, 340, 400)
+
+[sub_resource type="AtlasTexture" id="2"]
+atlas = ExtResource("1")
+region = Rect2(340, 0, 340, 400)
+
+[sub_resource type="AtlasTexture" id="3"]
+atlas = ExtResource("1")
+region = Rect2(680, 0, 340, 400)
+
+[sub_resource type="AtlasTexture" id="4"]
+atlas = ExtResource("1")
+region = Rect2(1020, 0, 340, 400)
+
+[sub_resource type="AtlasTexture" id="5"]
+atlas = ExtResource("1")
+region = Rect2(1360, 0, 340, 400)
+
+[sub_resource type="AtlasTexture" id="6"]
+atlas = ExtResource("1")
+region = Rect2(1700, 0, 340, 400)
+
+[sub_resource type="SpriteFrames" id="7"]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": SubResource("1")
+}, {
+"duration": 1.0,
+"texture": SubResource("2")
+}, {
+"duration": 1.0,
+"texture": SubResource("3")
+}, {
+"duration": 1.0,
+"texture": SubResource("4")
+}, {
+"duration": 1.0,
+"texture": SubResource("5")
+}, {
+"duration": 1.0,
+"texture": SubResource("6")
+}],
+"loop": true,
+"name": &"default",
+"speed": 10.0
+}]
+
+[sub_resource type="Animation" id="8"]
+length = 0.1
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("asteroid:visible")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [false]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("initial_background:visible")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [true]
+}
+tracks/2/type = "value"
+tracks/2/imported = false
+tracks/2/enabled = true
+tracks/2/path = NodePath("animated_asteroid:visible")
+tracks/2/interp = 1
+tracks/2/loop_wrap = true
+tracks/2/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 1,
+"values": [false]
+}
+tracks/3/type = "value"
+tracks/3/imported = false
+tracks/3/enabled = true
+tracks/3/path = NodePath("asteroid:position")
+tracks/3/interp = 1
+tracks/3/loop_wrap = true
+tracks/3/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(620, 450)]
+}
+tracks/4/type = "value"
+tracks/4/imported = false
+tracks/4/enabled = true
+tracks/4/path = NodePath("Polygon2D:visible")
+tracks/4/interp = 1
+tracks/4/loop_wrap = true
+tracks/4/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [true]
+}
+
+[sub_resource type="Animation" id="9"]
+length = 6.0
+tracks/0/type = "value"
+tracks/0/imported = false
+tracks/0/enabled = true
+tracks/0/path = NodePath("animated_asteroid:position")
+tracks/0/interp = 1
+tracks/0/loop_wrap = true
+tracks/0/keys = {
+"times": PackedFloat32Array(0, 3),
+"transitions": PackedFloat32Array(1, 1),
+"update": 0,
+"values": [Vector2(350, -20), Vector2(630, 471)]
+}
+tracks/1/type = "value"
+tracks/1/imported = false
+tracks/1/enabled = true
+tracks/1/path = NodePath("animated_asteroid:scale")
+tracks/1/interp = 1
+tracks/1/loop_wrap = true
+tracks/1/keys = {
+"times": PackedFloat32Array(0, 3),
+"transitions": PackedFloat32Array(1, 1),
+"update": 0,
+"values": [Vector2(0.1, 0.1), Vector2(1, 1)]
+}
+tracks/2/type = "value"
+tracks/2/imported = false
+tracks/2/enabled = true
+tracks/2/path = NodePath("animated_asteroid:visible")
+tracks/2/interp = 1
+tracks/2/loop_wrap = true
+tracks/2/keys = {
+"times": PackedFloat32Array(0, 3),
+"transitions": PackedFloat32Array(1, 1),
+"update": 1,
+"values": [true, false]
+}
+tracks/3/type = "value"
+tracks/3/imported = false
+tracks/3/enabled = true
+tracks/3/path = NodePath("asteroid:visible")
+tracks/3/interp = 1
+tracks/3/loop_wrap = true
+tracks/3/keys = {
+"times": PackedFloat32Array(0, 3),
+"transitions": PackedFloat32Array(1, 1),
+"update": 1,
+"values": [false, true]
+}
+tracks/4/type = "value"
+tracks/4/imported = false
+tracks/4/enabled = true
+tracks/4/path = NodePath("asteroid:modulate")
+tracks/4/interp = 1
+tracks/4/loop_wrap = true
+tracks/4/keys = {
+"times": PackedFloat32Array(0, 3.5, 4.5),
+"transitions": PackedFloat32Array(1, 1, 1),
+"update": 0,
+"values": [Color(1, 1, 1, 1), Color(1, 1, 1, 1), Color(1, 1, 1, 0)]
+}
+tracks/5/type = "value"
+tracks/5/imported = false
+tracks/5/enabled = true
+tracks/5/path = NodePath("Polygon2D:color")
+tracks/5/interp = 1
+tracks/5/loop_wrap = true
+tracks/5/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Color(1, 1, 1, 1)]
+}
+tracks/6/type = "value"
+tracks/6/imported = false
+tracks/6/enabled = true
+tracks/6/path = NodePath("Polygon2D:modulate")
+tracks/6/interp = 1
+tracks/6/loop_wrap = true
+tracks/6/keys = {
+"times": PackedFloat32Array(0, 3, 3.5, 5),
+"transitions": PackedFloat32Array(1, 1, 1, 1),
+"update": 0,
+"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 0), Color(1, 1, 1, 1), Color(1, 1, 1, 0)]
+}
+tracks/7/type = "value"
+tracks/7/imported = false
+tracks/7/enabled = true
+tracks/7/path = NodePath("initial_background:visible")
+tracks/7/interp = 1
+tracks/7/loop_wrap = true
+tracks/7/keys = {
+"times": PackedFloat32Array(0, 3.5),
+"transitions": PackedFloat32Array(1, 1),
+"update": 1,
+"values": [true, false]
+}
+tracks/8/type = "value"
+tracks/8/imported = false
+tracks/8/enabled = true
+tracks/8/path = NodePath("asteroid:position")
+tracks/8/interp = 1
+tracks/8/loop_wrap = true
+tracks/8/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 0,
+"values": [Vector2(620, 450)]
+}
+tracks/9/type = "value"
+tracks/9/imported = false
+tracks/9/enabled = true
+tracks/9/path = NodePath("Polygon2D:visible")
+tracks/9/interp = 1
+tracks/9/loop_wrap = true
+tracks/9/keys = {
+"times": PackedFloat32Array(0),
+"transitions": PackedFloat32Array(1),
+"update": 1,
+"values": [true]
+}
+
+[sub_resource type="AnimationLibrary" id="AnimationLibrary_teoqk"]
+_data = {
+&"RESET": SubResource("8"),
+&"intro": SubResource("9")
+}
+
+[node name="ESCRoom" type="Node2D"]
+script = ExtResource("5")
+global_id = "intro_cutscene"
+esc_script = "res://game/rooms/intro/esc/intro.esc"
+camera_limits = [Rect2(0, 0, 1920, 1080)]
+
+[node name="ReferenceRect" type="ReferenceRect" parent="."]
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+
+[node name="black_background" type="ColorRect" parent="ReferenceRect"]
+layout_mode = 1
+anchors_preset = 15
+anchor_right = 1.0
+anchor_bottom = 1.0
+grow_horizontal = 2
+grow_vertical = 2
+color = Color(0, 0, 0, 1)
+
+[node name="initial_background" type="Sprite2D" parent="."]
+position = Vector2(640, 450)
+texture = ExtResource("2")
+
+[node name="animated_asteroid" type="AnimatedSprite2D" parent="."]
+visible = false
+position = Vector2(608.222, 432.811)
+scale = Vector2(0.93, 0.93)
+sprite_frames = SubResource("7")
+autoplay = "default"
+frame = 5
+
+[node name="Polygon2D" type="Polygon2D" parent="."]
+modulate = Color(1, 1, 1, 0)
+position = Vector2(0, 6)
+polygon = PackedVector2Array(0, 0, 1280, 0, 1280, 900, 0, 900)
+
+[node name="asteroid" type="Sprite2D" parent="."]
+visible = false
+position = Vector2(620, 450)
+texture = ExtResource("3")
+
+[node name="ESCItem" type="Area2D" parent="."]
+process_mode = 1
+script = ExtResource("7")
+global_id = "intro_animation_player"
+combine_when_selected_action_is_in = PackedStringArray()
+animations = null
+
+[node name="AnimationPlayer" type="AnimationPlayer" parent="ESCItem"]
+root_node = NodePath("../..")
+libraries = {
+"": SubResource("AnimationLibrary_teoqk")
+}
diff --git a/game/rooms/no_escoria/no_escoria.tscn b/game/rooms/no_escoria/no_escoria.tscn
new file mode 100644
index 0000000..a5c9353
--- /dev/null
+++ b/game/rooms/no_escoria/no_escoria.tscn
@@ -0,0 +1,13 @@
+[gd_scene format=3 uid="uid://bv66iymp6v3mv"]
+
+[ext_resource type="Script" uid="uid://bhlf2vcb8gme7" path="res://game/rooms/no_escoria/player.gd" id="1_pqe6t"]
+[ext_resource type="Texture2D" uid="uid://bex7crp3v5020" path="res://icon.png" id="1_xxogh"]
+
+[node name="NoEscoria" type="Node2D" unique_id=1279639823]
+
+[node name="player" type="Area2D" parent="." unique_id=1039845384]
+position = Vector2(549, 289)
+script = ExtResource("1_pqe6t")
+
+[node name="Sprite2D" type="Sprite2D" parent="player" unique_id=309330691]
+texture = ExtResource("1_xxogh")
diff --git a/game/rooms/no_escoria/player.gd b/game/rooms/no_escoria/player.gd
new file mode 100644
index 0000000..9e05c56
--- /dev/null
+++ b/game/rooms/no_escoria/player.gd
@@ -0,0 +1,32 @@
+extends Area2D
+
+@export var speed = 400 # How fast the player will move (pixels/sec).
+var screen_size # Size of the game window.
+
+@onready var _change_scene: ChangeSceneCommand = ChangeSceneCommand.new()
+const next_scene_path: String = "res://game/rooms/room01/room01.tscn"
+
+func _ready():
+ screen_size = get_viewport_rect().size
+
+
+func _process(delta):
+ var velocity = Vector2.ZERO # The player's movement vector.
+ if Input.is_action_pressed("ui_right"):
+ velocity.x += 1
+ if Input.is_action_pressed("ui_left"):
+ velocity.x -= 1
+ if Input.is_action_pressed("ui_down"):
+ velocity.y += 1
+ if Input.is_action_pressed("ui_up"):
+ velocity.y -= 1
+
+ if velocity.length() > 0:
+ velocity = velocity.normalized() * speed
+
+ position += velocity * delta
+ position = position.clamp(Vector2.ZERO, screen_size)
+
+ if position.x > 800:
+ _change_scene.run([next_scene_path, false])
+ queue_free()
diff --git a/game/rooms/no_escoria/player.gd.uid b/game/rooms/no_escoria/player.gd.uid
new file mode 100644
index 0000000..04adcdf
--- /dev/null
+++ b/game/rooms/no_escoria/player.gd.uid
@@ -0,0 +1 @@
+uid://bhlf2vcb8gme7
diff --git a/game/rooms/test/phone.esc b/game/rooms/test/phone.esc
new file mode 100644
index 0000000..b13a65e
--- /dev/null
+++ b/game/rooms/test/phone.esc
@@ -0,0 +1,8 @@
+:look
+ if $pen in inventory:
+ say($weener, "Why use a phone when I have this pen? I can write.")
+ else:
+ say($weener, "I don't trust phones. You don't know when they'll ring and scare you.")
+
+:use pen
+ say($weener, "I will fill in the numbers.")
diff --git a/game/rooms/test/room_test.esc b/game/rooms/test/room_test.esc
new file mode 100644
index 0000000..b75c9b2
--- /dev/null
+++ b/game/rooms/test/room_test.esc
@@ -0,0 +1,4 @@
+:setup
+ if ESC_LAST_SCENE == "kitchen":
+ teleport($weener, $test_exit)
+ set_angle($weener, 180)
diff --git a/game/rooms/test/test.tscn b/game/rooms/test/test.tscn
new file mode 100644
index 0000000..b4e62b5
--- /dev/null
+++ b/game/rooms/test/test.tscn
@@ -0,0 +1,113 @@
+[gd_scene format=3 uid="uid://cbtqk144uipsv"]
+
+[ext_resource type="Script" uid="uid://c7fcpp72w3dnj" path="res://addons/escoria-core/game/core-scripts/esc_room.gd" id="1_jhg43"]
+[ext_resource type="PackedScene" uid="uid://bxxhvoforh8g8" path="res://game/characters/weener/weener.tscn" id="2_fmbdf"]
+[ext_resource type="Texture2D" uid="uid://bnjgnax8nlttv" path="res://game/rooms/test/test_bg.png" id="3_5kokq"]
+[ext_resource type="Script" uid="uid://fnwnfflaoeqp" path="res://addons/escoria-core/game/core-scripts/esc_background.gd" id="4_x54b2"]
+[ext_resource type="Script" uid="uid://5pbcieq7gpdo" path="res://addons/escoria-core/game/core-scripts/esc_terrain.gd" id="5_x54b2"]
+[ext_resource type="Script" uid="uid://beh3ds4eapldu" path="res://addons/escoria-core/game/core-scripts/esc_location.gd" id="6_4gqel"]
+[ext_resource type="Script" uid="uid://dshelmw7y44qg" path="res://addons/escoria-core/game/core-scripts/esc_item.gd" id="7_agkbc"]
+[ext_resource type="Script" uid="uid://chu4bvqgwxuts" path="res://addons/escoria-core/game/core-scripts/esc_interaction_location.gd" id="8_54mxh"]
+[ext_resource type="Texture2D" uid="uid://ddomp71uwr167" path="res://game/items/textures/bottle.png" id="10_wafjj"]
+[ext_resource type="PackedScene" uid="uid://cgs614ewjs78u" path="res://game/items/inventory/pen.tscn" id="11_co1tc"]
+[ext_resource type="Script" uid="uid://btt4cprco53ec" path="res://addons/escoria-core/game/core-scripts/esc_exit.gd" id="11_wafjj"]
+
+[sub_resource type="NavigationPolygon" id="NavigationPolygon_4gqel"]
+vertices = PackedVector2Array(628, 674.8125, 672.3281, 669.1797, 694.1797, 842, 628, 724.78906, 1171.6484, 842, 1800.4766, 889.4375, 1911, 984.5781, 1911, 1070, 11, 1070, 11, 928.21094, 1237.8828, 683.8203, 1526.5469, 757.4375, 346.09375, 796.0469, 211.74219, 787.8828, 301.64844, 753.59375)
+polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(4, 5, 6, 7, 8, 9, 2), PackedInt32Array(4, 10, 11, 5), PackedInt32Array(12, 3, 2, 9), PackedInt32Array(13, 14, 12, 9)])
+outlines = Array[PackedVector2Array]([PackedVector2Array(1, 923, 207, 779, 304, 742, 349, 785, 618, 717, 618, 666, 681, 658, 703, 832, 1165, 832, 1232, 672, 1530, 748, 1806, 881, 1921, 980, 1921, 1080, 1, 1080)])
+
+[node name="Test" type="Node2D" unique_id=1166794]
+script = ExtResource("1_jhg43")
+global_id = "test"
+esc_script = "res://game/rooms/test/room_test.esc"
+player_scene = ExtResource("2_fmbdf")
+metadata/_custom_type_script = "uid://c7fcpp72w3dnj"
+
+[node name="escbackground" type="TextureRect" parent="." unique_id=533934161]
+offset_right = 1920.0
+offset_bottom = 1080.0
+mouse_filter = 2
+texture = ExtResource("3_5kokq")
+script = ExtResource("4_x54b2")
+metadata/_custom_type_script = "uid://fnwnfflaoeqp"
+
+[node name="ESCTerrain" type="Node2D" parent="." unique_id=1609749800]
+script = ExtResource("5_x54b2")
+metadata/_custom_type_script = "uid://5pbcieq7gpdo"
+
+[node name="NavigationRegion2D" type="NavigationRegion2D" parent="ESCTerrain" unique_id=482689538]
+navigation_polygon = SubResource("NavigationPolygon_4gqel")
+
+[node name="Start" type="Marker2D" parent="." unique_id=1291454412]
+position = Vector2(957, 951)
+script = ExtResource("6_4gqel")
+global_id = "start"
+is_start_location = true
+metadata/_custom_type_script = "uid://beh3ds4eapldu"
+
+[node name="Phone" type="Area2D" parent="." unique_id=754116905]
+process_mode = 1
+position = Vector2(0, -2)
+script = ExtResource("7_agkbc")
+global_id = "phone"
+esc_script = "res://game/rooms/test/phone.esc"
+tooltip_name = "Phone"
+combine_when_selected_action_is_in = PackedStringArray()
+metadata/_custom_type_script = "uid://dshelmw7y44qg"
+
+[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Phone" unique_id=750375557]
+polygon = PackedVector2Array(537, 363, 551, 362, 555, 346, 549, 335, 503, 327, 476, 331, 444, 340, 426, 349, 421, 362, 426, 376, 445, 381, 440, 394, 440, 420, 476, 453, 511, 445, 550, 432, 556, 420, 552, 392)
+
+[node name="ESCInteractionLocation" type="Marker2D" parent="Phone" unique_id=1048861594]
+position = Vector2(565, 767)
+script = ExtResource("8_54mxh")
+metadata/_custom_type_script = "uid://chu4bvqgwxuts"
+
+[node name="Bottle" type="Area2D" parent="." unique_id=1730354307]
+process_mode = 1
+z_index = 1048
+position = Vector2(1549, 997)
+script = ExtResource("7_agkbc")
+global_id = "bottle"
+combine_when_selected_action_is_in = PackedStringArray()
+is_interactive = false
+inventory_texture = ExtResource("10_wafjj")
+inventory_texture_hovered = ExtResource("10_wafjj")
+metadata/_custom_type_script = "uid://dshelmw7y44qg"
+
+[node name="Sprite2D" type="Sprite2D" parent="Bottle" unique_id=1797859338]
+position = Vector2(0, -171)
+scale = Vector2(10.689665, 7.0120864)
+texture = ExtResource("10_wafjj")
+
+[node name="Pen" parent="." unique_id=1638794728 instance=ExtResource("11_co1tc")]
+position = Vector2(1824, 614)
+scale = Vector2(2, 2)
+tooltip_name = "Pen"
+combine_when_selected_action_is_in = PackedStringArray("use")
+default_action_inventory = "use"
+use_from_inventory_only = true
+
+[node name="ESCInteractionLocation" type="Marker2D" parent="Pen" unique_id=46124229]
+position = Vector2(-44.5, 141.5)
+script = ExtResource("8_54mxh")
+metadata/_custom_type_script = "uid://chu4bvqgwxuts"
+
+[node name="ESCExit" type="Area2D" parent="." unique_id=1821249842]
+position = Vector2(92, 675)
+script = ExtResource("11_wafjj")
+target_scene = "uid://dw2s1aomk3k0e"
+global_id = "exit_to_kitchen"
+tooltip_name = "To kitchen"
+metadata/_custom_type_script = "uid://btt4cprco53ec"
+
+[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="ESCExit" unique_id=1151309996]
+position = Vector2(59, 222)
+polygon = PackedVector2Array(33, -544, -151, -472, -151, 48, -106, 6, -10, -63, 51, -90)
+
+[node name="ESCInteractionLocation" type="Marker2D" parent="ESCExit" unique_id=242339506]
+position = Vector2(73, 222)
+script = ExtResource("8_54mxh")
+global_id = "test_exit"
+metadata/_custom_type_script = "uid://chu4bvqgwxuts"
diff --git a/game/rooms/test/test_bg.png b/game/rooms/test/test_bg.png
new file mode 100644
index 0000000..02682c3
--- /dev/null
+++ b/game/rooms/test/test_bg.png
Binary files differ
diff --git a/game/rooms/test/test_bg.png.import b/game/rooms/test/test_bg.png.import
new file mode 100644
index 0000000..dc0b7b6
--- /dev/null
+++ b/game/rooms/test/test_bg.png.import
@@ -0,0 +1,40 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bnjgnax8nlttv"
+path="res://.godot/imported/test_bg.png-129e26406ef58c404687bb02b892741d.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://game/rooms/test/test_bg.png"
+dest_files=["res://.godot/imported/test_bg.png-129e26406ef58c404687bb02b892741d.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/uastc_level=0
+compress/rdo_quality_loss=0.0
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/channel_remap/red=0
+process/channel_remap/green=1
+process/channel_remap/blue=2
+process/channel_remap/alpha=3
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/rooms/test_kitchen/kitchen.png b/game/rooms/test_kitchen/kitchen.png
new file mode 100644
index 0000000..71d6fa9
--- /dev/null
+++ b/game/rooms/test_kitchen/kitchen.png
Binary files differ
diff --git a/game/rooms/test_kitchen/kitchen.png.import b/game/rooms/test_kitchen/kitchen.png.import
new file mode 100644
index 0000000..4a9c5d2
--- /dev/null
+++ b/game/rooms/test_kitchen/kitchen.png.import
@@ -0,0 +1,40 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cdv11spgcle4e"
+path="res://.godot/imported/kitchen.png-f2ce326655b7e4a2376b8d8f4183d5de.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://game/rooms/test_kitchen/kitchen.png"
+dest_files=["res://.godot/imported/kitchen.png-f2ce326655b7e4a2376b8d8f4183d5de.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/uastc_level=0
+compress/rdo_quality_loss=0.0
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/channel_remap/red=0
+process/channel_remap/green=1
+process/channel_remap/blue=2
+process/channel_remap/alpha=3
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/rooms/test_kitchen/room_kitchen.esc b/game/rooms/test_kitchen/room_kitchen.esc
new file mode 100644
index 0000000..c50f2fd
--- /dev/null
+++ b/game/rooms/test_kitchen/room_kitchen.esc
@@ -0,0 +1,4 @@
+:setup
+ if ESC_LAST_SCENE == "test":
+ teleport($weener, $kitchen_exit)
+ set_angle($weener, 270)
diff --git a/game/rooms/test_kitchen/test_kitchen.tscn b/game/rooms/test_kitchen/test_kitchen.tscn
new file mode 100644
index 0000000..688c363
--- /dev/null
+++ b/game/rooms/test_kitchen/test_kitchen.tscn
@@ -0,0 +1,53 @@
+[gd_scene format=3 uid="uid://dw2s1aomk3k0e"]
+
+[ext_resource type="Script" uid="uid://c7fcpp72w3dnj" path="res://addons/escoria-core/game/core-scripts/esc_room.gd" id="1_j38dn"]
+[ext_resource type="PackedScene" uid="uid://bxxhvoforh8g8" path="res://game/characters/weener/weener.tscn" id="2_w42vq"]
+[ext_resource type="Texture2D" uid="uid://cdv11spgcle4e" path="res://game/rooms/test_kitchen/kitchen.png" id="3_u6s3a"]
+[ext_resource type="Script" uid="uid://fnwnfflaoeqp" path="res://addons/escoria-core/game/core-scripts/esc_background.gd" id="4_t26dx"]
+[ext_resource type="Script" uid="uid://5pbcieq7gpdo" path="res://addons/escoria-core/game/core-scripts/esc_terrain.gd" id="5_xa5sy"]
+[ext_resource type="Script" uid="uid://btt4cprco53ec" path="res://addons/escoria-core/game/core-scripts/esc_exit.gd" id="6_u6s3a"]
+[ext_resource type="Script" uid="uid://chu4bvqgwxuts" path="res://addons/escoria-core/game/core-scripts/esc_interaction_location.gd" id="7_t26dx"]
+
+[sub_resource type="NavigationPolygon" id="NavigationPolygon_kamrl"]
+vertices = PackedVector2Array(1910, 739.21094, 1910, 924.2969, 1732.2266, 896.4375, 1764.6719, 710.34375, 854.9922, 1028.0234, 819.60156, 981.1328, 809.28906, 895.1875, 919.78125, 897.10156, 1560.5391, 1031.9766, 1072.9063, 626.2969, 1131.9063, 571.97656, 1752.8125, 570.02344)
+polygons = Array[PackedInt32Array]([PackedInt32Array(0, 1, 2, 3), PackedInt32Array(4, 5, 6, 7, 8), PackedInt32Array(8, 7, 9, 10, 11, 3, 2)])
+outlines = Array[PackedVector2Array]([PackedVector2Array(1920, 731, 1774, 702, 1762, 560, 1128, 562, 1065, 620, 914, 887, 798, 885, 810, 985, 850, 1038, 1564, 1042, 1735, 907, 1920, 936)])
+
+[node name="TestKitchen" type="Node2D" unique_id=205166811]
+script = ExtResource("1_j38dn")
+global_id = "kitchen"
+esc_script = "res://game/rooms/test_kitchen/room_kitchen.esc"
+player_scene = ExtResource("2_w42vq")
+metadata/_custom_type_script = "uid://c7fcpp72w3dnj"
+
+[node name="escbackground" type="TextureRect" parent="." unique_id=2070587804]
+offset_right = 40.0
+offset_bottom = 40.0
+mouse_filter = 2
+texture = ExtResource("3_u6s3a")
+script = ExtResource("4_t26dx")
+metadata/_custom_type_script = "uid://fnwnfflaoeqp"
+
+[node name="ESCTerrain" type="Node2D" parent="." unique_id=568229096]
+script = ExtResource("5_xa5sy")
+metadata/_custom_type_script = "uid://5pbcieq7gpdo"
+
+[node name="NavigationRegion2D" type="NavigationRegion2D" parent="ESCTerrain" unique_id=1889897109]
+navigation_polygon = SubResource("NavigationPolygon_kamrl")
+
+[node name="ESCExit" type="Area2D" parent="." unique_id=1918860245]
+position = Vector2(1837, 822)
+script = ExtResource("6_u6s3a")
+target_scene = "uid://cbtqk144uipsv"
+global_id = "exit_to_test"
+tooltip_name = "To test"
+metadata/_custom_type_script = "uid://btt4cprco53ec"
+
+[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="ESCExit" unique_id=585897778]
+polygon = PackedVector2Array(-71, -112, 83, -81, 83, 117, -107, 88)
+
+[node name="ESCInteractionLocation" type="Marker2D" parent="ESCExit" unique_id=137473435]
+position = Vector2(-92, -12)
+script = ExtResource("7_t26dx")
+global_id = "kitchen_exit"
+metadata/_custom_type_script = "uid://chu4bvqgwxuts"