Feat: New graphics for room 8

This commit is contained in:
Balloonpopper
2022-03-04 09:56:42 +11:00
committed by Julian Murgia
parent 7e6fb7b047
commit 7a64c7707f
10 changed files with 319 additions and 110 deletions

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=12 format=2]
[gd_scene load_steps=18 format=2]
[ext_resource path="res://addons/escoria-core/game/core-scripts/esc_terrain.gd" type="Script" id=1]
[ext_resource path="res://addons/escoria-core/game/core-scripts/esc_background.gd" type="Script" id=2]
@@ -7,68 +7,200 @@
[ext_resource path="res://addons/escoria-core/game/core-scripts/esc_item.gd" type="Script" id=5]
[ext_resource path="res://addons/escoria-core/game/core-scripts/esc_room.gd" type="Script" id=6]
[ext_resource path="res://addons/escoria-core/game/core-scripts/esc_location.gd" type="Script" id=7]
[ext_resource path="res://game/rooms/room08/room8background.png" type="Texture" id=8]
[ext_resource path="res://game/rooms/room08/locked_button.png" type="Texture" id=9]
[ext_resource path="res://game/rooms/room08/door.png" type="Texture" id=10]
[ext_resource path="res://game/rooms/room08/unlocked_button.png" type="Texture" id=11]
[sub_resource type="NavigationPolygon" id=1]
vertices = PoolVector2Array( 1143.08, 613.35, 1267.68, 669.029, 1275.03, 799.721, -9.16094, 803.802, -6.44019, 711.297, 84.5821, 654.06, 742.298, 623.672, 581.028, 613.592, 583.548, 574.535, 707.02, 574.535, 714.58, 611.072, 3.15687, 646.051, 59.2201, 628.698, 129.634, 615.792, 530.631, 612.332, 550.79, 623.672, 783.875, 609.812 )
polygons = [ PoolIntArray( 0, 1, 2, 3, 4, 5, 6 ), PoolIntArray( 7, 8, 9, 10 ), PoolIntArray( 4, 11, 12, 5 ), PoolIntArray( 5, 13, 14, 15 ), PoolIntArray( 7, 10, 6, 15 ), PoolIntArray( 6, 16, 0 ), PoolIntArray( 6, 5, 15 ) ]
outlines = [ PoolVector2Array( -6.44019, 711.297, 3.15687, 646.051, 59.2201, 628.698, 84.5821, 654.06, 129.634, 615.792, 530.631, 612.332, 550.79, 623.672, 581.028, 613.592, 583.548, 574.535, 707.02, 574.535, 714.58, 611.072, 742.298, 623.672, 783.875, 609.812, 1143.08, 613.35, 1267.68, 669.029, 1275.03, 799.721, -9.16094, 803.802 ) ]
vertices = PoolVector2Array( 4.26837, 653.779, 86.2684, 608.779, 87.2684, 635.779, 1260.27, 808.779, 3.26837, 810.779, 112.268, 621.779, 642.268, 624.779, 1259.27, 687.779, 642.268, 586.779, 790.268, 585.779, 791.268, 624.779, 1154.27, 622.779 )
polygons = [ PoolIntArray( 0, 1, 2 ), PoolIntArray( 3, 4, 0, 2 ), PoolIntArray( 3, 2, 5, 6, 7 ), PoolIntArray( 6, 8, 9, 10 ), PoolIntArray( 7, 6, 10 ), PoolIntArray( 7, 10, 11 ) ]
outlines = [ PoolVector2Array( 4.26837, 653.779, 86.2684, 608.779, 87.2684, 635.779, 112.268, 621.779, 642.268, 624.779, 642.268, 586.779, 790.268, 585.779, 791.268, 624.779, 1154.27, 622.779, 1259.27, 687.779, 1260.27, 808.779, 3.26837, 810.779 ) ]
[sub_resource type="Animation" id=2]
resource_name = "door_close"
[sub_resource type="Animation" id=5]
length = 0.001
tracks/0/type = "value"
tracks/0/path = NodePath("door:polygon")
tracks/0/path = NodePath("door1:position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.5 ),
"transitions": PoolRealArray( 1, 1 ),
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ PoolVector2Array( 557.104, 45.8, 743.623, 45.8, 744.482, 48.9414, 555.602, 48.274 ), PoolVector2Array( 557.104, 45.8, 743.623, 45.8, 746.798, 345.025, 557.898, 347.406 ) ]
"values": [ Vector2( 723, 203 ) ]
}
tracks/1/type = "value"
tracks/1/path = NodePath(".:is_exit")
tracks/1/path = NodePath("door2:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PoolRealArray( 0.6 ),
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ false ]
"update": 0,
"values": [ Vector2( 723, 203 ) ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("door3: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( 723, 203 ) ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("door4:position")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 723, 203 ) ]
}
tracks/4/type = "value"
tracks/4/path = NodePath("door3:texture")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ ExtResource( 10 ) ]
}
tracks/5/type = "value"
tracks/5/path = NodePath("door4:texture")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ ExtResource( 10 ) ]
}
[sub_resource type="Animation" id=2]
resource_name = "door_close"
length = 1.5
tracks/0/type = "value"
tracks/0/path = NodePath("door1:position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.2, 1.5 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 547, 203 ), Vector2( 547, 203 ), Vector2( 723, 203 ) ]
}
tracks/1/type = "value"
tracks/1/path = NodePath("door2: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, 1.5 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 899, 203 ), Vector2( 899, 203 ), Vector2( 723, 203 ) ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("door3:position")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0, 1.3 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 547, 203 ), Vector2( 723, 203 ) ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("door4:position")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0, 1.3 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 899, 203 ), Vector2( 723, 203 ) ]
}
[sub_resource type="Animation" id=3]
resource_name = "door_open"
length = 1.5
tracks/0/type = "value"
tracks/0/path = NodePath("door:polygon")
tracks/0/path = NodePath("door1:position")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.5 ),
"transitions": PoolRealArray( 1, 1 ),
"times": PoolRealArray( 0, 0.2, 1.5 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ PoolVector2Array( 557.104, 45.8, 743.623, 45.8, 746.798, 345.025, 557.898, 347.406 ), PoolVector2Array( 557.104, 45.8, 743.623, 45.8, 744.482, 48.9414, 555.602, 48.274 ) ]
"values": [ Vector2( 723, 203 ), Vector2( 723, 203 ), Vector2( 547, 203 ) ]
}
tracks/1/type = "value"
tracks/1/path = NodePath(".:is_exit")
tracks/1/path = NodePath("door2: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.6 ),
"times": PoolRealArray( 0, 0.2, 1.5 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 723, 203 ), Vector2( 723, 203 ), Vector2( 899, 203 ) ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("door3:position")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0, 1.3 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 1,
"values": [ false, true ]
"update": 0,
"values": [ Vector2( 723, 203 ), Vector2( 547, 203 ) ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("door4:position")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0, 1.3 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector2( 723, 203 ), Vector2( 899, 203 ) ]
}
[sub_resource type="RectangleShape2D" id=4]
extents = Vector2( 20.3273, 18.0047 )
extents = Vector2( 31, 30.5 )
[sub_resource type="RectangleShape2D" id=6]
extents = Vector2( 31.5, 31 )
[node name="room8" type="Node2D"]
script = ExtResource( 6 )
@@ -80,40 +212,6 @@ esc_script = "res://game/rooms/room08/esc/room08.esc"
player_scene = ExtResource( 4 )
camera_limits = [ Rect2( 0, 0, 1289, 555 ) ]
[node name="background" type="TextureRect" parent="."]
margin_right = 1289.0
margin_bottom = 555.0
mouse_filter = 2
script = ExtResource( 2 )
__meta__ = {
"_edit_lock_": true,
"_edit_use_anchors_": false
}
[node name="l_platform" type="Line2D" parent="background"]
position = Vector2( 2, -266 )
points = PoolVector2Array( -2.96298, 712.01, 129.973, 614.429, 1167.5, 612.894, 1274.59, 669.705, 1273.25, 812.694, 2.36697, 811.043, 2.36697, 713.389 )
[node name="l_door" type="Line2D" parent="background"]
position = Vector2( 0, -266 )
points = PoolVector2Array( 6.61201, 704.409, 6.61203, 389.558, 87.755, 339.775, 87.5463, 649.784 )
__meta__ = {
"_editor_description_": ""
}
[node name="m_door" type="Line2D" parent="background"]
position = Vector2( 0, -267.828 )
points = PoolVector2Array( 555.952, 615.32, 554.538, 311.267, 744.043, 312.679, 746.871, 615.32, 557.367, 616.734 )
[node name="Label" type="Label" parent="background"]
margin_right = 48.0
margin_bottom = 16.0
custom_fonts/font = ExtResource( 3 )
text = "Room 8"
__meta__ = {
"_edit_use_anchors_": false
}
[node name="walkable_area" type="Navigation2D" parent="."]
script = ExtResource( 1 )
@@ -124,6 +222,46 @@ __meta__ = {
"_editor_description_": ""
}
[node name="player_start" type="Position2D" parent="."]
position = Vector2( 76.7617, 437.649 )
script = ExtResource( 7 )
global_id = "r8_player_start"
is_start_location = true
[node name="background" type="TextureRect" parent="."]
margin_right = 1289.0
margin_bottom = 555.0
mouse_filter = 2
texture = ExtResource( 8 )
script = ExtResource( 2 )
__meta__ = {
"_edit_lock_": true,
"_edit_use_anchors_": false
}
[node name="Label" type="Label" parent="background"]
margin_right = 48.0
margin_bottom = 16.0
custom_fonts/font = ExtResource( 3 )
text = "Room 8"
[node name="Label2" type="Label" parent="background"]
margin_left = 835.0
margin_top = 12.0
margin_right = 1133.0
margin_bottom = 201.0
custom_fonts/font = ExtResource( 3 )
text = "This room demonstrates mixing Escoria
with an external GDScript puzzle.
Global variables are set by the puzzle
when completed that are referenced
by future Escoria script code to animate
the door opening etc.
Unlocking the puzzle disables (and
hides) the locked button, showing the
unlocked graphic underneath."
[node name="Hotspots" type="Node" parent="."]
[node name="l_door" type="Area2D" parent="Hotspots"]
@@ -140,7 +278,7 @@ dialog_color = Color( 1, 1, 1, 1 )
animations = null
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Hotspots/l_door"]
polygon = PoolVector2Array( 2.93237, 447.051, 2.93237, 127.051, 88.9324, 71.0505, 90.9324, 379.051 )
polygon = PoolVector2Array( 1, 420, 1, 107, 105, 63, 108, 352 )
[node name="Position2D" type="Position2D" parent="Hotspots/l_door"]
position = Vector2( 45.47, 383.99 )
@@ -148,65 +286,101 @@ script = ExtResource( 7 )
[node name="m_door" type="Area2D" parent="Hotspots"]
pause_mode = 1
position = Vector2( 0, -1 )
script = ExtResource( 5 )
__meta__ = {
"_editor_description_": ""
}
global_id = "r8_m_door"
esc_script = "res://game/rooms/room08/esc/middle_exit.esc"
is_exit = true
tooltip_name = "Exit"
inventory_texture = ExtResource( 10 )
dialog_color = Color( 1, 1, 1, 1 )
animations = null
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="Hotspots/m_door"]
visible = false
polygon = PoolVector2Array( 557.522, 348.813, 551.222, 42.6524, 743.99, 43.9123, 750.289, 345.033 )
polygon = PoolVector2Array( 630, 349, 628, 51, 815, 51, 815, 349 )
[node name="Position2D" type="Position2D" parent="Hotspots/m_door"]
position = Vector2( 653.466, 366.589 )
position = Vector2( 724, 354 )
script = ExtResource( 7 )
[node name="door" type="Polygon2D" parent="Hotspots/m_door"]
color = Color( 0.4, 0.501961, 1, 1 )
polygon = PoolVector2Array( 557.104, 45.8, 743.623, 45.8, 746.798, 345.025, 557.898, 347.406 )
[node name="AnimationPlayer" type="AnimationPlayer" parent="Hotspots/m_door"]
anims/RESET = SubResource( 5 )
anims/door_close = SubResource( 2 )
anims/door_open = SubResource( 3 )
[node name="door1" type="Sprite" parent="Hotspots/m_door"]
position = Vector2( 723, 203 )
z_index = -1
texture = ExtResource( 10 )
[node name="door2" type="Sprite" parent="Hotspots/m_door"]
position = Vector2( 723, 203 )
scale = Vector2( -1, -1 )
z_index = -1
texture = ExtResource( 10 )
[node name="door3" type="Sprite" parent="Hotspots/m_door"]
position = Vector2( 723, 203 )
scale = Vector2( 1, -1 )
z_index = -1
texture = ExtResource( 10 )
[node name="door4" type="Sprite" parent="Hotspots/m_door"]
position = Vector2( 723, 203 )
scale = Vector2( -1, 1 )
z_index = -1
texture = ExtResource( 10 )
[node name="door_background" type="Polygon2D" parent="Hotspots/m_door"]
z_index = -2
color = Color( 0, 0, 0, 1 )
polygon = PoolVector2Array( 635, 55, 810, 56, 810, 350, 634, 350 )
[node name="r8_mini_puzzle_unlocked" type="Area2D" parent="Hotspots"]
pause_mode = 1
script = ExtResource( 5 )
global_id = "r8_mini_puzzle_unlocked"
inventory_texture = ExtResource( 11 )
dialog_color = Color( 1, 1, 1, 1 )
animations = null
[node name="unlocked_button" type="Sprite" parent="Hotspots/r8_mini_puzzle_unlocked"]
position = Vector2( 527, 190 )
texture = ExtResource( 11 )
[node name="r8_mini_puzzle_button" type="Area2D" parent="Hotspots"]
pause_mode = 1
script = ExtResource( 5 )
global_id = "r8_button_puzzle"
global_id = "r8_mini_puzzle_button"
esc_script = "res://game/rooms/room08/esc/button_puzzle.esc"
tooltip_name = "Button"
default_action = "use"
inventory_texture = ExtResource( 9 )
dialog_color = Color( 1, 1, 1, 1 )
animations = null
[node name="button" type="Line2D" parent="Hotspots/r8_mini_puzzle_button"]
position = Vector2( -588.313, 5.65686 )
points = PoolVector2Array( 1048.39, 178.619, 1048.39, 208.814, 1076.99, 208.814, 1078.05, 183.387, 1052.09, 183.916 )
default_color = Color( 0.4, 0.501961, 1, 1 )
[node name="locked_button" type="Sprite" parent="Hotspots/r8_mini_puzzle_button"]
position = Vector2( 527, 190 )
texture = ExtResource( 9 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="Hotspots/r8_mini_puzzle_button"]
position = Vector2( 474.343, 201.414 )
position = Vector2( 526, 191.5 )
shape = SubResource( 4 )
[node name="Position2D" type="Position2D" parent="Hotspots/r8_mini_puzzle_button"]
position = Vector2( 474.801, 369.29 )
position = Vector2( 532, 370 )
script = ExtResource( 7 )
[node name="button_puzzle" type="Label" parent="Hotspots/r8_mini_puzzle_button"]
margin_left = 445.617
margin_top = 166.124
margin_right = 508.617
margin_bottom = 182.124
margin_left = 488.0
margin_top = 128.0
margin_right = 572.0
margin_bottom = 149.0
custom_fonts/font = ExtResource( 3 )
text = "Run puzzle"
__meta__ = {
"_edit_use_anchors_": false
}
[node name="r8_reset_puzzle_button" type="Area2D" parent="Hotspots"]
pause_mode = 1
@@ -219,32 +393,23 @@ default_action = "use"
dialog_color = Color( 1, 1, 1, 1 )
animations = null
[node name="button" type="Line2D" parent="Hotspots/r8_reset_puzzle_button"]
position = Vector2( -588.313, 5.65686 )
points = PoolVector2Array( 1048.39, 178.619, 1048.39, 208.814, 1076.99, 208.814, 1078.05, 183.387, 1052.09, 183.916 )
default_color = Color( 0.4, 0.501961, 1, 1 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="Hotspots/r8_reset_puzzle_button"]
position = Vector2( 474.343, 201.414 )
shape = SubResource( 4 )
[node name="Position2D" type="Position2D" parent="Hotspots/r8_reset_puzzle_button"]
position = Vector2( 474.801, 369.29 )
position = Vector2( 511.185, 370 )
script = ExtResource( 7 )
[node name="reset_puzzle" type="Label" parent="Hotspots/r8_reset_puzzle_button"]
margin_left = 441.128
margin_top = 166.124
margin_right = 512.128
margin_bottom = 182.124
margin_left = 466.185
margin_top = 126.0
margin_right = 560.185
margin_bottom = 147.0
custom_fonts/font = ExtResource( 3 )
text = "Reset puzzle"
__meta__ = {
"_edit_use_anchors_": false
}
[node name="player_start" type="Position2D" parent="."]
position = Vector2( 76.7617, 437.649 )
script = ExtResource( 7 )
global_id = "r8_player_start"
is_start_location = true
[node name="Sprite3" type="Sprite" parent="Hotspots/r8_reset_puzzle_button"]
position = Vector2( 139.185, 0 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="Hotspots/r8_reset_puzzle_button"]
position = Vector2( 510.685, 190 )
shape = SubResource( 6 )
[node name="Node" type="Node" parent="Hotspots"]