Compare commits
12 Commits
66ee9887c8
..
states
| Author | SHA1 | Date | |
|---|---|---|---|
| 9590e29956 | |||
| 1f4e17648d | |||
| 017263b2bb | |||
| 00ecde975e | |||
| e2dcad2e41 | |||
| 04f2325489 | |||
| 68929cef64 | |||
| ad410e5ec5 | |||
| 05532b1f6f | |||
| 569cde340b | |||
| a1601c9266 | |||
| 6452b8e2e3 |
@@ -4,6 +4,7 @@ extends CharacterBody2D
|
||||
|
||||
signal dead
|
||||
signal interacted
|
||||
signal color_switched(new_color: CollisionSwitcher.ObjectColor)
|
||||
|
||||
|
||||
const PICKUP_OFFSET = 16.0
|
||||
@@ -149,3 +150,7 @@ func _rearrange_pickups() -> void:
|
||||
|
||||
func _on_switch_buffer_timer_timeout() -> void:
|
||||
_is_switching_needed = false
|
||||
|
||||
|
||||
func _on_collision_switched(new_color: CollisionSwitcher.ObjectColor) -> void:
|
||||
color_switched.emit(new_color)
|
||||
|
||||
@@ -102,14 +102,17 @@ drag_bottom_margin = 0.1
|
||||
position = Vector2(0, -24)
|
||||
|
||||
[node name="SwitchBufferTimer" type="Timer" parent="." unique_id=115300327]
|
||||
process_callback = 0
|
||||
wait_time = 0.5
|
||||
one_shot = true
|
||||
|
||||
[node name="JumpBufferTimer" type="Timer" parent="." unique_id=740877224]
|
||||
process_callback = 0
|
||||
wait_time = 0.1
|
||||
one_shot = true
|
||||
|
||||
[node name="CoyoteTimeTimer" type="Timer" parent="." unique_id=117837002]
|
||||
process_callback = 0
|
||||
wait_time = 0.1
|
||||
one_shot = true
|
||||
|
||||
@@ -270,4 +273,5 @@ fall_state = NodePath("../FallState")
|
||||
fall_left_state = NodePath("../FallLeftState")
|
||||
fall_right_state = NodePath("../FallRightState")
|
||||
|
||||
[connection signal="switched" from="CollisionSwitcher" to="." method="_on_collision_switched"]
|
||||
[connection signal="timeout" from="SwitchBufferTimer" to="." method="_on_switch_buffer_timer_timeout"]
|
||||
|
||||
@@ -3,6 +3,15 @@ class_name CollisionSwitcher
|
||||
extends Node
|
||||
|
||||
|
||||
signal switched(new_color: CollisionSwitcher.ObjectColor)
|
||||
|
||||
|
||||
enum ObjectColor {
|
||||
White,
|
||||
Black,
|
||||
}
|
||||
|
||||
|
||||
enum Collisions {
|
||||
GREY_WORLD = 1 << 0,
|
||||
GREY_ENEMY = 1 << 4,
|
||||
@@ -82,11 +91,14 @@ func switch_color(switch_time := 0.0) -> void:
|
||||
|
||||
if is_zero_approx(switch_time):
|
||||
_state = State.Black if _state == State.White else State.White
|
||||
_emit_switch_signal()
|
||||
else:
|
||||
_state = State.TransitionToBlack if _state == State.White else State.TransitionToWhite
|
||||
|
||||
_intensity_tween = create_tween()
|
||||
_intensity_tween.tween_method(_set_shader_internsity, 0.0, MAX_INTENSITY, switch_time)
|
||||
_intensity_tween.tween_method(_set_shader_internsity, 0.0, MAX_INTENSITY, switch_time) \
|
||||
.set_ease(Tween.EASE_OUT_IN) \
|
||||
.set_trans(Tween.TRANS_SINE)
|
||||
_intensity_tween.finished.connect(_update_state)
|
||||
|
||||
|
||||
@@ -111,6 +123,7 @@ func _update_state() -> void:
|
||||
_state = State.Black
|
||||
State.TransitionToWhite:
|
||||
_state = State.White
|
||||
_emit_switch_signal()
|
||||
|
||||
|
||||
func _apply_color() -> void:
|
||||
@@ -147,3 +160,15 @@ func _apply_color_to_object(object: CollisionObject2D) -> void:
|
||||
func _apply_color_to_material(material: Material) -> void:
|
||||
var is_black := _state == State.Black or _state == State.TransitionToBlack
|
||||
material.set(SHADER_SWITCH_COLORS, is_black)
|
||||
|
||||
|
||||
func _emit_switch_signal() -> void:
|
||||
var color : ObjectColor
|
||||
match _state:
|
||||
State.White:
|
||||
color = ObjectColor.White
|
||||
State.Black:
|
||||
color = ObjectColor.Black
|
||||
_:
|
||||
return
|
||||
switched.emit(color)
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@tool
|
||||
class_name BookDoor
|
||||
extends LockedDoor
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@tool
|
||||
class_name CircleDoor
|
||||
extends LockedDoor
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@tool
|
||||
class_name Door
|
||||
extends Node2D
|
||||
|
||||
@@ -8,6 +9,13 @@ const ANIMATION_OPENING = "opening"
|
||||
const ANIMATION_CLOSING = "closing"
|
||||
|
||||
|
||||
@export var use_shader := true:
|
||||
set(value):
|
||||
use_shader = value
|
||||
if is_node_ready():
|
||||
_update_shader()
|
||||
|
||||
|
||||
var _needed_to_be_open := false
|
||||
var _needed_to_be_closed := false
|
||||
|
||||
@@ -19,6 +27,7 @@ var _needed_to_be_closed := false
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_update_shader()
|
||||
sprite.play(ANIMATION_CLOSED)
|
||||
|
||||
|
||||
@@ -50,6 +59,11 @@ func _close() -> void:
|
||||
static_body.process_mode = Node.PROCESS_MODE_INHERIT
|
||||
|
||||
|
||||
func _update_shader() -> void:
|
||||
var intensity := 0.5 if use_shader else 1.0
|
||||
sprite.material.set(CollisionSwitcher.SHADER_INTENSITY, intensity)
|
||||
|
||||
|
||||
func _on_animation_finished() -> void:
|
||||
match sprite.animation:
|
||||
ANIMATION_OPENING:
|
||||
|
||||
+15
-15
@@ -1,14 +1,14 @@
|
||||
[gd_scene load_steps=15 format=3 uid="uid://b7mhdrj3b6loq"]
|
||||
[gd_scene format=3 uid="uid://b7mhdrj3b6loq"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://5uqub2a6701b" path="res://game/doors/door.gd" id="1_vx1od"]
|
||||
[ext_resource type="Material" uid="uid://dojhoc6ljpt1a" path="res://game/materials/walls_gray.tres" id="1_xelsh"]
|
||||
[ext_resource type="Texture2D" uid="uid://sfjjweantpja" path="res://images/level/doors.png" id="3_ymlcn"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_cs8ri"]
|
||||
size = Vector2(9, 48)
|
||||
size = Vector2(6, 38)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_u7b5a"]
|
||||
size = Vector2(48, 48)
|
||||
size = Vector2(36, 38)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_5nqrw"]
|
||||
atlas = ExtResource("3_ymlcn")
|
||||
@@ -48,7 +48,7 @@ animations = [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_5nqrw")
|
||||
}],
|
||||
"loop": true,
|
||||
"loop": 1,
|
||||
"name": &"closed",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
@@ -62,7 +62,7 @@ animations = [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_4vug2")
|
||||
}],
|
||||
"loop": false,
|
||||
"loop": 0,
|
||||
"name": &"closing",
|
||||
"speed": 10.0
|
||||
}, {
|
||||
@@ -70,7 +70,7 @@ animations = [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_ymlcn")
|
||||
}],
|
||||
"loop": true,
|
||||
"loop": 1,
|
||||
"name": &"open",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
@@ -84,34 +84,34 @@ animations = [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_j83fq")
|
||||
}],
|
||||
"loop": false,
|
||||
"loop": 0,
|
||||
"name": &"opening",
|
||||
"speed": 10.0
|
||||
}]
|
||||
|
||||
[node name="Door" type="Node2D"]
|
||||
[node name="Door" type="Node2D" unique_id=2006466960]
|
||||
script = ExtResource("1_vx1od")
|
||||
|
||||
[node name="StaticBody2D" type="StaticBody2D" parent="."]
|
||||
position = Vector2(-8.5, 0)
|
||||
[node name="StaticBody2D" type="StaticBody2D" parent="." unique_id=584436734]
|
||||
|
||||
[node name="StaticBodyCollision" type="CollisionShape2D" parent="StaticBody2D"]
|
||||
[node name="StaticBodyCollision" type="CollisionShape2D" parent="StaticBody2D" unique_id=193176175]
|
||||
unique_name_in_owner = true
|
||||
shape = SubResource("RectangleShape2D_cs8ri")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="."]
|
||||
position = Vector2(-8.5, 0)
|
||||
[node name="Area2D" type="Area2D" parent="." unique_id=371280403]
|
||||
collision_layer = 0
|
||||
collision_mask = 136
|
||||
|
||||
[node name="AreaCollision" type="CollisionShape2D" parent="Area2D"]
|
||||
[node name="AreaCollision" type="CollisionShape2D" parent="Area2D" unique_id=853891699]
|
||||
unique_name_in_owner = true
|
||||
shape = SubResource("RectangleShape2D_u7b5a")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="." unique_id=1718827818]
|
||||
material = ExtResource("1_xelsh")
|
||||
position = Vector2(8, -5)
|
||||
sprite_frames = SubResource("SpriteFrames_r8rhb")
|
||||
animation = &"closed"
|
||||
frame_progress = 0.23665914
|
||||
|
||||
[connection signal="body_entered" from="Area2D" to="." method="_on_area_entered"]
|
||||
[connection signal="body_exited" from="Area2D" to="." method="_on_area_exited"]
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@tool
|
||||
extends Door
|
||||
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@tool
|
||||
class_name LockedDoor
|
||||
extends Door
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@tool
|
||||
class_name SquareDoor
|
||||
extends LockedDoor
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@tool
|
||||
class_name TriagleDoor
|
||||
extends LockedDoor
|
||||
|
||||
|
||||
+16
-492
@@ -3,8 +3,7 @@
|
||||
[ext_resource type="Script" uid="uid://c737mx0kxva7i" path="res://game/levels/abstract_level.gd" id="1_o2mui"]
|
||||
[ext_resource type="PackedScene" uid="uid://dtcad8tdx78tg" path="res://game/characters/player/player.tscn" id="2_r0ht6"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqu87loahl7wn" path="res://game/tiles/walls.tscn" id="3_3fw0b"]
|
||||
[ext_resource type="Texture2D" uid="uid://due8mmt5ww1sf" path="res://images/level/walls.png" id="3_fnnmn"]
|
||||
[ext_resource type="Material" uid="uid://dojhoc6ljpt1a" path="res://game/materials/walls_gray.tres" id="3_pi5fd"]
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="4_3fw0b"]
|
||||
[ext_resource type="Material" uid="uid://d2o2o1w8kb51g" path="res://game/materials/walls_white.tres" id="5_6b8cu"]
|
||||
[ext_resource type="PackedScene" uid="uid://nfgx201cn4ti" path="res://game/tiles/traps.tscn" id="5_b7vts"]
|
||||
[ext_resource type="Material" uid="uid://bhksbugqhxxa0" path="res://game/materials/walls_black.tres" id="6_x8k35"]
|
||||
@@ -12,494 +11,22 @@
|
||||
[ext_resource type="PackedScene" uid="uid://84lhc3yn8vub" path="res://game/menu/game_over_menu.tscn" id="8_b7vts"]
|
||||
[ext_resource type="PackedScene" uid="uid://bareycqj42c6e" path="res://game/menu/completion_menu.tscn" id="11_3fw0b"]
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_8ydah"]
|
||||
texture = ExtResource("3_fnnmn")
|
||||
0:0/0 = 0
|
||||
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -8, -8, -8, 8, -3, 8, -3, -3, 8, -3, 8, -8)
|
||||
1:0/0 = 0
|
||||
1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -8, -3)
|
||||
2:0/0 = 0
|
||||
2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
3:0/0 = 0
|
||||
3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, 3, 8, 3, 8, 8, 3, 8)
|
||||
4:0/0 = 0
|
||||
4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, -3, 3, -3, 8, -8, 8)
|
||||
5:0/0 = 0
|
||||
5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:0/0 = 0
|
||||
6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:1/0 = 0
|
||||
0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 8, -8, 8)
|
||||
2:1/0 = 0
|
||||
2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, 3, 8)
|
||||
3:1/0 = 0
|
||||
3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, -3, 3, -3)
|
||||
4:1/0 = 0
|
||||
4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, -3, -8, -3, -8, -8)
|
||||
5:1/0 = 0
|
||||
5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:1/0 = 0
|
||||
6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:2/0 = 0
|
||||
0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
1:2/0 = 0
|
||||
1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
2:2/0 = 0
|
||||
2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(8, -8, 8, 8, -8, 8, -8, 3, 3, 3, 3, -8)
|
||||
3:2/0 = 0
|
||||
3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
4:2/0 = 0
|
||||
4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
5:2/0 = 0
|
||||
5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:2/0 = 0
|
||||
6:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:3/0 = 0
|
||||
0:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -8, -3)
|
||||
1:3/0 = 0
|
||||
1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -8, -3, 8, -3, 8, -8)
|
||||
2:3/0 = 0
|
||||
2:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
3:3/0 = 0
|
||||
3:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, -8, 8, 8, 8, 8, 3)
|
||||
4:3/0 = 0
|
||||
4:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
5:3/0 = 0
|
||||
5:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:3/0 = 0
|
||||
6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, 8, 8, 8, 8, -8)
|
||||
6:4/0 = 0
|
||||
6:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 8, -8, 8)
|
||||
5:5/0 = 0
|
||||
5:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
4:5/0 = 0
|
||||
4:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, 3, -8, 3, -8, 8, 8, 8, 8, -8)
|
||||
3:5/0 = 0
|
||||
3:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
2:5/0 = 0
|
||||
2:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, -8, 8, -8, 3, 3, 3)
|
||||
1:5/0 = 0
|
||||
1:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
0:5/0 = 0
|
||||
0:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, -8, 8, -8, 3, 3, 3)
|
||||
0:4/0 = 0
|
||||
0:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
1:4/0 = 0
|
||||
1:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -3, -3, -3, 8, -8, 8)
|
||||
2:4/0 = 0
|
||||
2:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
3:4/0 = 0
|
||||
3:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -3, -3, -3, 8, -8, 8)
|
||||
4:4/0 = 0
|
||||
4:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 8, -8, 8)
|
||||
5:4/0 = 0
|
||||
5:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, 3, 8)
|
||||
0:6/0 = 0
|
||||
0:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
1:6/0 = 0
|
||||
1:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
2:6/0 = 0
|
||||
2:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
7:0/0 = 0
|
||||
7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:0/0 = 0
|
||||
8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:1/0 = 0
|
||||
8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:1/0 = 0
|
||||
7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:2/0 = 0
|
||||
7:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:2/0 = 0
|
||||
8:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:3/0 = 0
|
||||
8:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:3/0 = 0
|
||||
7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:4/0 = 0
|
||||
7:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:4/0 = 0
|
||||
8:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:5/0 = 0
|
||||
8:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:5/0 = 0
|
||||
7:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
3:6/0 = 0
|
||||
3:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -3, -3, -3, 8, -8, 8)
|
||||
4:6/0 = 0
|
||||
4:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
5:6/0 = 0
|
||||
5:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, 3, 8, 3, 8, 8, -8, 8, -8, -8)
|
||||
6:6/0 = 0
|
||||
6:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 3, 3, 3, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:6/0 = 0
|
||||
7:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:6/0 = 0
|
||||
8:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:7/0 = 0
|
||||
8:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:7/0 = 0
|
||||
7:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
6:7/0 = 0
|
||||
6:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(8, -8, -8, -8, -8, 8, -3, 8, -3, -3, 8, -3)
|
||||
5:7/0 = 0
|
||||
5:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, 3, 8, 3, 8, 8, -8, 8, -8, -8)
|
||||
4:7/0 = 0
|
||||
4:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, 3, -8, 3, -8, 8, 8, 8, 8, -8)
|
||||
3:7/0 = 0
|
||||
3:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, -3, 8, -3, 8, -8)
|
||||
3:7/0/physics_layer_0/polygon_1/points = PackedVector2Array(-8, 3, -3, 3, -3, 8, -8, 8)
|
||||
2:7/0 = 0
|
||||
2:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, -3, -8, -3, -8, -8)
|
||||
2:7/0/physics_layer_0/polygon_1/points = PackedVector2Array(3, 3, 8, 3, 8, 8, 3, 8)
|
||||
1:7/0 = 0
|
||||
1:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
0:7/0 = 0
|
||||
0:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -8, -3)
|
||||
0:8/0 = 0
|
||||
0:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 8, -8, -8, 8, -8, 8, -3, -3, -3, -3, 8)
|
||||
1:8/0 = 0
|
||||
1:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
2:8/0 = 0
|
||||
2:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
3:8/0 = 0
|
||||
3:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, 3, 8, 3, 8, 8, -8, 8, -8, -8)
|
||||
4:8/0 = 0
|
||||
4:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(8, -8, 8, 8, -8, 8, -8, 3, 3, 3, 3, -8)
|
||||
5:8/0 = 0
|
||||
5:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
|
||||
[sub_resource type="TileSet" id="TileSet_8xgvj"]
|
||||
physics_layer_0/collision_layer = 1
|
||||
physics_layer_0/collision_mask = 0
|
||||
sources/0 = SubResource("TileSetAtlasSource_8ydah")
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_3fw0b"]
|
||||
texture = ExtResource("3_fnnmn")
|
||||
0:0/0 = 0
|
||||
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -8, -8, -8, 8, -3, 8, -3, -3, 8, -3, 8, -8)
|
||||
1:0/0 = 0
|
||||
1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -8, -3)
|
||||
2:0/0 = 0
|
||||
2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
3:0/0 = 0
|
||||
3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, 3, 8, 3, 8, 8, 3, 8)
|
||||
4:0/0 = 0
|
||||
4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, -3, 3, -3, 8, -8, 8)
|
||||
5:0/0 = 0
|
||||
5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:0/0 = 0
|
||||
6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:1/0 = 0
|
||||
0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 8, -8, 8)
|
||||
2:1/0 = 0
|
||||
2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, 3, 8)
|
||||
3:1/0 = 0
|
||||
3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, -3, 3, -3)
|
||||
4:1/0 = 0
|
||||
4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, -3, -8, -3, -8, -8)
|
||||
5:1/0 = 0
|
||||
5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:1/0 = 0
|
||||
6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:2/0 = 0
|
||||
0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
1:2/0 = 0
|
||||
1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
2:2/0 = 0
|
||||
2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(8, -8, 8, 8, -8, 8, -8, 3, 3, 3, 3, -8)
|
||||
3:2/0 = 0
|
||||
3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
4:2/0 = 0
|
||||
4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
5:2/0 = 0
|
||||
5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:2/0 = 0
|
||||
6:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:3/0 = 0
|
||||
0:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -8, -3)
|
||||
1:3/0 = 0
|
||||
1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -8, -3, 8, -3, 8, -8)
|
||||
2:3/0 = 0
|
||||
2:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
3:3/0 = 0
|
||||
3:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, -8, 8, 8, 8, 8, 3)
|
||||
4:3/0 = 0
|
||||
4:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
5:3/0 = 0
|
||||
5:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:3/0 = 0
|
||||
6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, 8, 8, 8, 8, -8)
|
||||
6:4/0 = 0
|
||||
6:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 8, -8, 8)
|
||||
5:5/0 = 0
|
||||
5:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
4:5/0 = 0
|
||||
4:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, 3, -8, 3, -8, 8, 8, 8, 8, -8)
|
||||
3:5/0 = 0
|
||||
3:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
2:5/0 = 0
|
||||
2:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, -8, 8, -8, 3, 3, 3)
|
||||
1:5/0 = 0
|
||||
1:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
0:5/0 = 0
|
||||
0:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, -8, 8, -8, 3, 3, 3)
|
||||
0:4/0 = 0
|
||||
0:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
1:4/0 = 0
|
||||
1:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -3, -3, -3, 8, -8, 8)
|
||||
2:4/0 = 0
|
||||
2:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
3:4/0 = 0
|
||||
3:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -3, -3, -3, 8, -8, 8)
|
||||
4:4/0 = 0
|
||||
4:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 8, -8, 8)
|
||||
5:4/0 = 0
|
||||
5:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, 3, 8)
|
||||
0:6/0 = 0
|
||||
0:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
1:6/0 = 0
|
||||
1:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
2:6/0 = 0
|
||||
2:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
7:0/0 = 0
|
||||
7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:0/0 = 0
|
||||
8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:1/0 = 0
|
||||
8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:1/0 = 0
|
||||
7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:2/0 = 0
|
||||
7:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:2/0 = 0
|
||||
8:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:3/0 = 0
|
||||
8:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:3/0 = 0
|
||||
7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:4/0 = 0
|
||||
7:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:4/0 = 0
|
||||
8:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:5/0 = 0
|
||||
8:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:5/0 = 0
|
||||
7:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
3:6/0 = 0
|
||||
3:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -3, -3, -3, 8, -8, 8)
|
||||
4:6/0 = 0
|
||||
4:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
5:6/0 = 0
|
||||
5:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, 3, 8, 3, 8, 8, -8, 8, -8, -8)
|
||||
6:6/0 = 0
|
||||
6:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 3, 3, 3, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:6/0 = 0
|
||||
7:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:6/0 = 0
|
||||
8:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:7/0 = 0
|
||||
8:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:7/0 = 0
|
||||
7:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
6:7/0 = 0
|
||||
6:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(8, -8, -8, -8, -8, 8, -3, 8, -3, -3, 8, -3)
|
||||
5:7/0 = 0
|
||||
5:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, 3, 8, 3, 8, 8, -8, 8, -8, -8)
|
||||
4:7/0 = 0
|
||||
4:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, 3, -8, 3, -8, 8, 8, 8, 8, -8)
|
||||
3:7/0 = 0
|
||||
3:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, -3, 8, -3, 8, -8)
|
||||
3:7/0/physics_layer_0/polygon_1/points = PackedVector2Array(-8, 3, -3, 3, -3, 8, -8, 8)
|
||||
2:7/0 = 0
|
||||
2:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, -3, -8, -3, -8, -8)
|
||||
2:7/0/physics_layer_0/polygon_1/points = PackedVector2Array(3, 3, 8, 3, 8, 8, 3, 8)
|
||||
1:7/0 = 0
|
||||
1:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
0:7/0 = 0
|
||||
0:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -8, -3)
|
||||
0:8/0 = 0
|
||||
0:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 8, -8, -8, 8, -8, 8, -3, -3, -3, -3, 8)
|
||||
1:8/0 = 0
|
||||
1:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
2:8/0 = 0
|
||||
2:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
3:8/0 = 0
|
||||
3:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, 3, 8, 3, 8, 8, -8, 8, -8, -8)
|
||||
4:8/0 = 0
|
||||
4:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(8, -8, 8, 8, -8, 8, -8, 3, 3, 3, 3, -8)
|
||||
5:8/0 = 0
|
||||
5:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
|
||||
[sub_resource type="TileSet" id="TileSet_un604"]
|
||||
physics_layer_0/collision_layer = 2
|
||||
physics_layer_0/collision_mask = 0
|
||||
sources/0 = SubResource("TileSetAtlasSource_3fw0b")
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_rvm7w"]
|
||||
texture = ExtResource("3_fnnmn")
|
||||
0:0/0 = 0
|
||||
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -8, -8, -8, 8, -3, 8, -3, -3, 8, -3, 8, -8)
|
||||
1:0/0 = 0
|
||||
1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -8, -3)
|
||||
2:0/0 = 0
|
||||
2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
3:0/0 = 0
|
||||
3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, 3, 8, 3, 8, 8, 3, 8)
|
||||
4:0/0 = 0
|
||||
4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, -3, 3, -3, 8, -8, 8)
|
||||
5:0/0 = 0
|
||||
5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:0/0 = 0
|
||||
6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:1/0 = 0
|
||||
0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 8, -8, 8)
|
||||
2:1/0 = 0
|
||||
2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, 3, 8)
|
||||
3:1/0 = 0
|
||||
3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, -3, 3, -3)
|
||||
4:1/0 = 0
|
||||
4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, -3, -8, -3, -8, -8)
|
||||
5:1/0 = 0
|
||||
5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:1/0 = 0
|
||||
6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:2/0 = 0
|
||||
0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
1:2/0 = 0
|
||||
1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
2:2/0 = 0
|
||||
2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(8, -8, 8, 8, -8, 8, -8, 3, 3, 3, 3, -8)
|
||||
3:2/0 = 0
|
||||
3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
4:2/0 = 0
|
||||
4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
5:2/0 = 0
|
||||
5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:2/0 = 0
|
||||
6:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:3/0 = 0
|
||||
0:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -8, -3)
|
||||
1:3/0 = 0
|
||||
1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -8, -3, 8, -3, 8, -8)
|
||||
2:3/0 = 0
|
||||
2:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
3:3/0 = 0
|
||||
3:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, -8, 8, 8, 8, 8, 3)
|
||||
4:3/0 = 0
|
||||
4:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
5:3/0 = 0
|
||||
5:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
6:3/0 = 0
|
||||
6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, 8, 8, 8, 8, -8)
|
||||
6:4/0 = 0
|
||||
6:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 8, -8, 8)
|
||||
5:5/0 = 0
|
||||
5:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
4:5/0 = 0
|
||||
4:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, 3, -8, 3, -8, 8, 8, 8, 8, -8)
|
||||
3:5/0 = 0
|
||||
3:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
2:5/0 = 0
|
||||
2:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, -8, 8, -8, 3, 3, 3)
|
||||
1:5/0 = 0
|
||||
1:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 3, 8, 3, 8, 8, -8, 8)
|
||||
0:5/0 = 0
|
||||
0:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, -8, 8, -8, 3, 3, 3)
|
||||
0:4/0 = 0
|
||||
0:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
1:4/0 = 0
|
||||
1:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -3, -3, -3, 8, -8, 8)
|
||||
2:4/0 = 0
|
||||
2:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
3:4/0 = 0
|
||||
3:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -3, -3, -3, 8, -8, 8)
|
||||
4:4/0 = 0
|
||||
4:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, -3, -8, -3, 8, -8, 8)
|
||||
5:4/0 = 0
|
||||
5:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 8, -8, 8, 8, 3, 8)
|
||||
0:6/0 = 0
|
||||
0:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
1:6/0 = 0
|
||||
1:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
2:6/0 = 0
|
||||
2:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
7:0/0 = 0
|
||||
7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:0/0 = 0
|
||||
8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:1/0 = 0
|
||||
8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:1/0 = 0
|
||||
7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:2/0 = 0
|
||||
7:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:2/0 = 0
|
||||
8:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:3/0 = 0
|
||||
8:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:3/0 = 0
|
||||
7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:4/0 = 0
|
||||
7:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:4/0 = 0
|
||||
8:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:5/0 = 0
|
||||
8:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:5/0 = 0
|
||||
7:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
3:6/0 = 0
|
||||
3:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -3, -3, -3, 8, -8, 8)
|
||||
4:6/0 = 0
|
||||
4:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
5:6/0 = 0
|
||||
5:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, 3, 8, 3, 8, 8, -8, 8, -8, -8)
|
||||
6:6/0 = 0
|
||||
6:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 3, 3, 3, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:6/0 = 0
|
||||
7:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:6/0 = 0
|
||||
8:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
8:7/0 = 0
|
||||
8:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
7:7/0 = 0
|
||||
7:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
6:7/0 = 0
|
||||
6:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(8, -8, -8, -8, -8, 8, -3, 8, -3, -3, 8, -3)
|
||||
5:7/0 = 0
|
||||
5:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, 3, 8, 3, 8, 8, -8, 8, -8, -8)
|
||||
4:7/0 = 0
|
||||
4:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, 3, -8, 3, -8, 8, 8, 8, 8, -8)
|
||||
3:7/0 = 0
|
||||
3:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(3, -8, 3, -3, 8, -3, 8, -8)
|
||||
3:7/0/physics_layer_0/polygon_1/points = PackedVector2Array(-8, 3, -3, 3, -3, 8, -8, 8)
|
||||
2:7/0 = 0
|
||||
2:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, -3, -8, -3, -8, -8)
|
||||
2:7/0/physics_layer_0/polygon_1/points = PackedVector2Array(3, 3, 8, 3, 8, 8, 3, 8)
|
||||
1:7/0 = 0
|
||||
1:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 3, 8, 3, 8, 8, -8, 8)
|
||||
0:7/0 = 0
|
||||
0:7/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, -3, -8, -3)
|
||||
0:8/0 = 0
|
||||
0:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 8, -8, -8, 8, -8, 8, -3, -3, -3, -3, 8)
|
||||
1:8/0 = 0
|
||||
1:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, 3, 8, 3, -3, -8, -3)
|
||||
2:8/0 = 0
|
||||
2:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
3:8/0 = 0
|
||||
3:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-3, -8, -3, 3, 8, 3, 8, 8, -8, 8, -8, -8)
|
||||
4:8/0 = 0
|
||||
4:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(8, -8, 8, 8, -8, 8, -8, 3, 3, 3, 3, -8)
|
||||
5:8/0 = 0
|
||||
5:8/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
|
||||
[sub_resource type="TileSet" id="TileSet_jsd6f"]
|
||||
physics_layer_0/collision_layer = 32
|
||||
physics_layer_0/collision_mask = 0
|
||||
sources/0 = SubResource("TileSetAtlasSource_rvm7w")
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_8xgvj"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("4_3fw0b")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
shader_parameter/switch_colors = false
|
||||
shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 0.5
|
||||
shader_parameter/intensity = 0.5
|
||||
shader_parameter/scale = 0.1
|
||||
shader_parameter/seed = 0.0
|
||||
shader_parameter/direction = Vector2(1, 1)
|
||||
shader_parameter/use_world_pos = true
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3fw0b"]
|
||||
size = Vector2(32, 32)
|
||||
size = Vector2(38, 38)
|
||||
|
||||
[node name="AbstractLevel" type="Node2D" unique_id=1364620575]
|
||||
script = ExtResource("1_o2mui")
|
||||
@@ -521,16 +48,13 @@ script = ExtResource("1_o2mui")
|
||||
[node name="Tiles" type="Node2D" parent="." unique_id=1626037498]
|
||||
|
||||
[node name="GrayWalls" parent="Tiles" unique_id=557672309 instance=ExtResource("3_3fw0b")]
|
||||
material = ExtResource("3_pi5fd")
|
||||
tile_set = SubResource("TileSet_8xgvj")
|
||||
material = SubResource("ShaderMaterial_8xgvj")
|
||||
|
||||
[node name="BlackWalls" parent="Tiles" unique_id=1250602228 instance=ExtResource("3_3fw0b")]
|
||||
material = ExtResource("6_x8k35")
|
||||
tile_set = SubResource("TileSet_un604")
|
||||
|
||||
[node name="WhiteWalls" parent="Tiles" unique_id=940613078 instance=ExtResource("3_3fw0b")]
|
||||
material = ExtResource("5_6b8cu")
|
||||
tile_set = SubResource("TileSet_jsd6f")
|
||||
|
||||
[node name="Traps" parent="Tiles" unique_id=635748436 instance=ExtResource("5_b7vts")]
|
||||
|
||||
|
||||
+127
-113
File diff suppressed because one or more lines are too long
+236
-110
File diff suppressed because one or more lines are too long
@@ -0,0 +1,168 @@
|
||||
[gd_scene format=4 uid="uid://cc06c06hlv7ix"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://mpsu4g2b5h3a" path="res://game/levels/abstract_level.tscn" id="1_t037v"]
|
||||
[ext_resource type="PackedScene" uid="uid://cojxqx5al7kyv" path="res://game/doors/locked_door.tscn" id="2_iakit"]
|
||||
[ext_resource type="PackedScene" uid="uid://b7mhdrj3b6loq" path="res://game/doors/door.tscn" id="3_ylsm2"]
|
||||
[ext_resource type="PackedScene" uid="uid://b0pxe00dlyx7t" path="res://game/objects/informative/switch_action_tip.tscn" id="4_xx77b"]
|
||||
[ext_resource type="PackedScene" uid="uid://xny1x7me75gc" path="res://game/objects/decorative/mirror_l.tscn" id="5_bxukv"]
|
||||
[ext_resource type="PackedScene" uid="uid://dopjsft0y8mw5" path="res://game/objects/decorative/cabinet.tscn" id="5_uivyf"]
|
||||
[ext_resource type="PackedScene" uid="uid://b8pvlnpdnfmd0" path="res://game/objects/decorative/chair_f.tscn" id="6_go8g1"]
|
||||
[ext_resource type="PackedScene" uid="uid://bdwbdnbenueu1" path="res://game/objects/decorative/table_m.tscn" id="7_2a8w4"]
|
||||
[ext_resource type="PackedScene" uid="uid://b6wgujelmka5p" path="res://game/objects/decorative/chair_r.tscn" id="8_2a8w4"]
|
||||
[ext_resource type="PackedScene" uid="uid://c6qy8uybkn4x" path="res://game/objects/decorative/plate.tscn" id="10_7s8yo"]
|
||||
[ext_resource type="PackedScene" uid="uid://btpkbyyteewsh" path="res://game/objects/decorative/chair_b.tscn" id="10_ylsm2"]
|
||||
[ext_resource type="PackedScene" uid="uid://x82wjrsqdfd" path="res://game/objects/decorative/chair_l.tscn" id="11_7c6gx"]
|
||||
[ext_resource type="PackedScene" uid="uid://cvhovmnl050os" path="res://game/objects/decorative/wardrobe.tscn" id="13_7c6gx"]
|
||||
[ext_resource type="PackedScene" uid="uid://crccdk7wmuqig" path="res://game/objects/decorative/painting_h_l.tscn" id="14_u51cf"]
|
||||
[ext_resource type="PackedScene" uid="uid://baqawh1drerhk" path="res://game/objects/decorative/table_s.tscn" id="15_cys5i"]
|
||||
[ext_resource type="PackedScene" uid="uid://d330w1ygg6uxy" path="res://game/objects/decorative/painting_v_l.tscn" id="16_ddwrs"]
|
||||
[ext_resource type="PackedScene" uid="uid://bt4smb361amjj" path="res://game/objects/decorative/flask_s.tscn" id="16_v8xjl"]
|
||||
[ext_resource type="PackedScene" uid="uid://bmx60xftq8f2v" path="res://game/objects/decorative/mirror_s.tscn" id="17_ddwrs"]
|
||||
[ext_resource type="PackedScene" uid="uid://dike8xgbqdut2" path="res://game/killing_area.tscn" id="19_7s8yo"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_v8xjl"]
|
||||
size = Vector2(224, 8)
|
||||
|
||||
[node name="Level2" unique_id=840940252 instance=ExtResource("1_t037v")]
|
||||
|
||||
[node name="LockedDoor" parent="Doors" parent_id_path=PackedInt32Array(1468144392) index="0" unique_id=260812823 instance=ExtResource("2_iakit")]
|
||||
position = Vector2(-48, 296)
|
||||
|
||||
[node name="TunnelEntranceDoor" parent="Doors" parent_id_path=PackedInt32Array(1468144392) index="1" unique_id=1638160812 instance=ExtResource("3_ylsm2")]
|
||||
position = Vector2(670, 440)
|
||||
|
||||
[node name="TunnelExitDoor" parent="Doors" parent_id_path=PackedInt32Array(1468144392) index="2" unique_id=330998146 instance=ExtResource("3_ylsm2")]
|
||||
position = Vector2(963, 440)
|
||||
|
||||
[node name="Room1" type="Node2D" parent="Objects" parent_id_path=PackedInt32Array(1320033435) index="0" unique_id=1940245808]
|
||||
position = Vector2(45, 272)
|
||||
|
||||
[node name="SwitchActionTip" parent="Objects/Room1" index="0" unique_id=1162424532 instance=ExtResource("4_xx77b")]
|
||||
position = Vector2(57, -11)
|
||||
|
||||
[node name="MirrorL" parent="Objects/Room1" index="1" unique_id=1018611812 instance=ExtResource("5_bxukv")]
|
||||
position = Vector2(0, 20)
|
||||
|
||||
[node name="Cabinet" parent="Objects/Room1" index="2" unique_id=1667173563 instance=ExtResource("5_uivyf")]
|
||||
position = Vector2(0, 37)
|
||||
|
||||
[node name="Room2" type="Node2D" parent="Objects" parent_id_path=PackedInt32Array(1320033435) index="1" unique_id=965760986]
|
||||
position = Vector2(244, 268)
|
||||
|
||||
[node name="ChairF1" parent="Objects/Room2" index="0" unique_id=1244225115 instance=ExtResource("6_go8g1")]
|
||||
position = Vector2(-7, 38)
|
||||
|
||||
[node name="ChairF2" parent="Objects/Room2" index="1" unique_id=1055347084 instance=ExtResource("6_go8g1")]
|
||||
position = Vector2(10, 38)
|
||||
|
||||
[node name="ChairR" parent="Objects/Room2" index="2" unique_id=303868742 instance=ExtResource("8_2a8w4")]
|
||||
position = Vector2(-19, 38)
|
||||
|
||||
[node name="Plate" parent="Objects/Room2" index="3" unique_id=1006179530 instance=ExtResource("10_7s8yo")]
|
||||
position = Vector2(6, 33)
|
||||
|
||||
[node name="TableM" parent="Objects/Room2" index="4" unique_id=2013142431 instance=ExtResource("7_2a8w4")]
|
||||
position = Vector2(1, 43)
|
||||
|
||||
[node name="ChairB" parent="Objects/Room2" index="5" unique_id=783197386 instance=ExtResource("10_ylsm2")]
|
||||
position = Vector2(1, 38)
|
||||
|
||||
[node name="ChairL" parent="Objects/Room2" index="6" unique_id=1185316526 instance=ExtResource("11_7c6gx")]
|
||||
position = Vector2(83, 38)
|
||||
|
||||
[node name="Room3" type="Node2D" parent="Objects" parent_id_path=PackedInt32Array(1320033435) index="2" unique_id=2108329661]
|
||||
position = Vector2(309, 408)
|
||||
|
||||
[node name="MirrorL" parent="Objects/Room3" index="0" unique_id=1626082225 instance=ExtResource("5_bxukv")]
|
||||
position = Vector2(42, 28)
|
||||
|
||||
[node name="Cabinet1" parent="Objects/Room3" index="1" unique_id=490256385 instance=ExtResource("5_uivyf")]
|
||||
position = Vector2(42, 45)
|
||||
|
||||
[node name="Cabinet2" parent="Objects/Room3" index="2" unique_id=2079902971 instance=ExtResource("5_uivyf")]
|
||||
position = Vector2(145, 45)
|
||||
|
||||
[node name="Wardrobe1" parent="Objects/Room3" index="3" unique_id=564708342 instance=ExtResource("13_7c6gx")]
|
||||
position = Vector2(-64, 34)
|
||||
|
||||
[node name="Wardrobe2" parent="Objects/Room3" index="4" unique_id=1492059704 instance=ExtResource("13_7c6gx")]
|
||||
position = Vector2(-97, 34)
|
||||
|
||||
[node name="Wardrobe3" parent="Objects/Room3" index="5" unique_id=1911986622 instance=ExtResource("13_7c6gx")]
|
||||
position = Vector2(-31, 34)
|
||||
|
||||
[node name="ChairB" parent="Objects/Room3" index="6" unique_id=1469500400 instance=ExtResource("10_ylsm2")]
|
||||
position = Vector2(43, 42)
|
||||
|
||||
[node name="Room4" type="Node2D" parent="Objects" parent_id_path=PackedInt32Array(1320033435) index="3" unique_id=550870217]
|
||||
position = Vector2(589, 430)
|
||||
|
||||
[node name="PaintingHL" parent="Objects/Room4" index="0" unique_id=1371296774 instance=ExtResource("14_u51cf")]
|
||||
position = Vector2(0, -15)
|
||||
|
||||
[node name="ChairL" parent="Objects/Room4" index="1" unique_id=1485330081 instance=ExtResource("11_7c6gx")]
|
||||
position = Vector2(-70, 20)
|
||||
|
||||
[node name="FlaskS1" parent="Objects/Room4" index="2" unique_id=916310165 instance=ExtResource("16_v8xjl")]
|
||||
position = Vector2(-87, 10)
|
||||
|
||||
[node name="FlaskS2" parent="Objects/Room4" index="3" unique_id=337670743 instance=ExtResource("16_v8xjl")]
|
||||
position = Vector2(-78, 10)
|
||||
|
||||
[node name="FlaskS3" parent="Objects/Room4" index="4" unique_id=1299986928 instance=ExtResource("16_v8xjl")]
|
||||
position = Vector2(-83, 10)
|
||||
|
||||
[node name="TableS" parent="Objects/Room4" index="5" unique_id=1423743230 instance=ExtResource("15_cys5i")]
|
||||
position = Vector2(-80, 25)
|
||||
|
||||
[node name="Room5" type="Node2D" parent="Objects" parent_id_path=PackedInt32Array(1320033435) index="4" unique_id=1126502668]
|
||||
position = Vector2(1073, 410)
|
||||
|
||||
[node name="PaintingVL1" parent="Objects/Room5" index="0" unique_id=122380257 instance=ExtResource("16_ddwrs")]
|
||||
position = Vector2(-63, -12)
|
||||
|
||||
[node name="PaintingVL2" parent="Objects/Room5" index="1" unique_id=613659926 instance=ExtResource("16_ddwrs")]
|
||||
position = Vector2(61, -3)
|
||||
|
||||
[node name="PaintingVL3" parent="Objects/Room5" index="2" unique_id=2001285537 instance=ExtResource("16_ddwrs")]
|
||||
position = Vector2(-5, 4)
|
||||
|
||||
[node name="Room6" type="Node2D" parent="Objects" parent_id_path=PackedInt32Array(1320033435) index="5" unique_id=660805563]
|
||||
position = Vector2(1320, 406)
|
||||
|
||||
[node name="Wardrobe" parent="Objects/Room6" index="0" unique_id=668051858 instance=ExtResource("13_7c6gx")]
|
||||
position = Vector2(-77, 36)
|
||||
|
||||
[node name="MirrorS" parent="Objects/Room6" index="1" unique_id=2080883588 instance=ExtResource("17_ddwrs")]
|
||||
position = Vector2(-4, 37)
|
||||
|
||||
[node name="Chair" parent="Objects/Room6" index="2" unique_id=2117760164 instance=ExtResource("6_go8g1")]
|
||||
position = Vector2(-42, 44)
|
||||
|
||||
[node name="TableS" parent="Objects/Room6" index="3" unique_id=311193464 instance=ExtResource("15_cys5i")]
|
||||
position = Vector2(-43, 49)
|
||||
|
||||
[node name="Cabinet" parent="Objects/Room6" index="4" unique_id=1302842880 instance=ExtResource("5_uivyf")]
|
||||
position = Vector2(32, 47)
|
||||
|
||||
[node name="GrayWalls" parent="Tiles" parent_id_path=PackedInt32Array(1626037498) index="0" unique_id=557672309]
|
||||
tile_map_data = PackedByteArray("AAD+//T/AAACAAEAAAD+//X/AAACAAEAAAD+//b/AAACAAEAAAD+//f/AAACAAEAAAD+//j/AAACAAEAAAD+//n/AAACAAEAAAD+//r/AAACAAEAAAD+//v/AAACAAEAAAD+//z/AAACAAEAAAD+//3/AAACAAEAAAD+//7/AAACAAEAAAD+////AAACAAEAAAD+/wAAAAACAAEAAAD+/wEAAAACAAEAAAD+/wIAAAACAAEAAAD+/wMAAAACAAEAAAD+/wQAAAACAAEAAAD+/wUAAAACAAEAAAD+/wYAAAACAAEAAAD+/wcAAAACAAEAAAD+/wgAAAACAAEAAAD+/wkAAAACAAEAAAD+/woAAAACAAEAAAD+/wsAAAACAAEAAAABAPT/AAAAAAEAAAABAPX/AAAAAAEAAAABAPb/AAAAAAEAAAABAPf/AAAAAAEAAAABAPj/AAAAAAEAAAABAPn/AAAAAAEAAAABAPr/AAAAAAEAAAABAPv/AAAAAAEAAAABAPz/AAAAAAEAAAABAP3/AAAAAAEAAAABAP7/AAAAAAEAAAABAP//AAAAAAEAAAABAAAAAAAAAAEAAAABAAEAAAAAAAEAAAABAAIAAAAAAAEAAAABAAMAAAAAAAEAAAABAAQAAAAAAAEAAAABAAUAAAAAAAEAAAABAAYAAAAAAAEAAAABAAcAAAAAAAEAAAABAAgAAAAAAAEAAAABAAkAAAAAAAEAAAABAAoAAAAAAAEAAAABAAsAAAAAAAEAAAD8/xAAAAACAAIAAAD8/xQAAAABAAAAAAD9/xQAAAABAAAAAAD+/xQAAAABAAAAAAD//xQAAAABAAAAAAAAABQAAAABAAAAAAABABQAAAABAAAAAAACABQAAAABAAAAAAADABQAAAABAAAAAAAEABQAAAABAAAAAAAFABQAAAABAAAAAAAGABQAAAABAAAAAAAHABQAAAABAAAAAAAIABQAAAABAAAAAAAJABQAAAABAAAAAAAKABQAAAABAAAAAAD8/w8AAAACAAEAAAAVAA8AAAAAAAEAAAAVABAAAAAAAAEAAAAVABEAAAAAAAEAAAAVABIAAAAAAAEAAAAVABMAAAAAAAEAAAALABQAAAABAAAAAAAMABQAAAACAAAAAAASABQAAAAAAAAAAAATABQAAAABAAAAAAAUABQAAAABAAAAAAALABYAAAACAAEAAAALABcAAAACAAEAAAALABgAAAACAAEAAAALABkAAAACAAEAAAALABoAAAACAAEAAAALABsAAAACAAEAAAALABwAAAACAAEAAAAVABQAAAAEAAEAAAAMABUAAAACAAUAAAASABUAAAADAAUAAAALABUAAAADAAAAAAAMAB0AAAABAAAAAAANAB0AAAABAAAAAAAOAB0AAAABAAAAAAAPAB0AAAABAAAAAAAQAB0AAAABAAAAAAARAB0AAAABAAAAAAASAB0AAAABAAAAAAATAB0AAAABAAAAAAAUAB0AAAABAAAAAAAVAB0AAAABAAAAAAAWAB0AAAABAAAAAAAXAB0AAAABAAAAAAAYAB0AAAABAAAAAAAZAB0AAAABAAAAAAAaAB0AAAABAAAAAAAbAB0AAAABAAAAAAAcAB0AAAABAAAAAAAdAB0AAAABAAAAAAALAB0AAAADAAEAAAAeAB0AAAAAAAcAAAAeABwAAAAFAAEAAAAeABsAAAAFAAEAAAAeABoAAAACAAAAAAAaABgAAAAFAAEAAAAaABcAAAACAAEAAAAaABYAAAACAAEAAAAaABUAAAADAAAAAAAbABUAAAABAAIAAAAcABUAAAABAAIAAAAdABUAAAABAAIAAAAeABUAAAABAAIAAAAfABUAAAABAAIAAAAfAB0AAAABAAAAAAAgAB0AAAABAAAAAAAhAB0AAAABAAAAAAAiAB0AAAABAAAAAAAjAB0AAAABAAAAAAAkAB0AAAABAAAAAAAlAB0AAAABAAAAAAAmAB0AAAABAAAAAAAnAB0AAAABAAAAAAAoAB0AAAABAAAAAAAgABUAAAABAAIAAAAhABUAAAABAAIAAAAaABoAAAAAAAIAAAAaABkAAAAGAAEAAAApABgAAAAAAAEAAAApABkAAAAAAAIAAAApAB0AAAABAAAAAAAqAB0AAAABAAAAAAArAB0AAAABAAAAAAAsAB0AAAABAAAAAAAtAB0AAAABAAAAAAAuAB0AAAABAAAAAAAvAB0AAAABAAAAAAAwAB0AAAABAAAAAAAxAB0AAAABAAAAAAAyAB0AAAABAAAAAAAzAB0AAAABAAAAAAA0AB0AAAABAAAAAAA1AB0AAAABAAAAAAA2AB0AAAABAAAAAAA3AB0AAAABAAAAAAA4AB0AAAABAAAAAAA5AB0AAAABAAAAAAA6AB0AAAABAAAAAAA7AB0AAAACAAQAAAAqABkAAAABAAIAAAArABkAAAABAAIAAAAsABkAAAABAAIAAAAtABkAAAABAAIAAAAuABkAAAABAAIAAAAvABkAAAABAAIAAAAwABkAAAABAAIAAAAxABkAAAABAAIAAAAyABkAAAABAAIAAAAzABkAAAABAAIAAAA0ABkAAAABAAIAAAA1ABkAAAABAAIAAAA2ABkAAAABAAIAAAA3ABkAAAABAAIAAAA4ABkAAAABAAIAAAA5ABkAAAABAAIAAAA6ABkAAAABAAIAAAA7ABkAAAACAAIAAAA7ABgAAAACAAEAAABLAB0AAAABAAAAAABMAB0AAAABAAAAAABNAB0AAAABAAAAAABOAB0AAAABAAAAAABPAB0AAAABAAAAAABQAB0AAAABAAAAAABRAB0AAAABAAAAAABSAB0AAAABAAAAAABTAB0AAAABAAAAAABUAB0AAAABAAAAAABKAB0AAAADAAQAAABKAB4AAAAAAAEAAABKAB8AAAAAAAEAAABKACAAAAAAAAEAAABKACEAAAAAAAEAAAA7AB4AAAACAAEAAAA7AB8AAAACAAEAAAA7ACAAAAACAAEAAAA7ACEAAAACAAEAAAA8ACEAAAABAAIAAAA9ACEAAAABAAIAAAA+ACEAAAABAAIAAAA/ACEAAAABAAIAAABAACEAAAABAAIAAABBACEAAAABAAIAAABCACEAAAABAAIAAABDACEAAAABAAIAAABEACEAAAABAAIAAABFACEAAAABAAIAAABGACEAAAABAAIAAABHACEAAAABAAIAAABIACEAAAABAAIAAABJACEAAAABAAIAAABVAB0AAAABAAAAAABWAB0AAAABAAAAAABXAB0AAAACAAQAAABaAB0AAAAAAAEAAABaABwAAAAAAAEAAABaABsAAAAAAAEAAABaABoAAAAAAAEAAABaABkAAAAAAAEAAABaABgAAAAAAAEAAABaAB4AAAAAAAEAAABaAB8AAAAAAAEAAABaACAAAAAAAAEAAABaACEAAAAAAAEAAABaACIAAAAAAAEAAABaACMAAAAAAAEAAABaACQAAAAAAAEAAABaACUAAAAAAAEAAABaACYAAAAAAAEAAABaACcAAAAAAAEAAABaACgAAAAAAAEAAABaACkAAAAAAAEAAABaACoAAAAAAAEAAABXAB4AAAACAAEAAABXAB8AAAACAAEAAABXACAAAAACAAEAAABXACEAAAACAAEAAABXACIAAAACAAEAAABXACMAAAACAAEAAABXACQAAAACAAEAAABXACUAAAACAAEAAABXACYAAAACAAEAAABXACcAAAACAAEAAABXACgAAAACAAEAAABXACkAAAACAAEAAABXACoAAAACAAEAAABXACsAAAACAAEAAABXACwAAAACAAEAAABXAC0AAAACAAEAAABXAC4AAAACAAEAAABXAC8AAAACAAEAAABXADAAAAACAAEAAABXADEAAAACAAEAAABXADIAAAACAAEAAABXADMAAAACAAEAAABXADQAAAACAAEAAABaACsAAAAAAAEAAABaACwAAAAAAAEAAABaAC0AAAAAAAEAAABaAC4AAAAAAAEAAABaAC8AAAAAAAEAAABaADAAAAAAAAEAAABaADEAAAAAAAEAAABaADIAAAAAAAEAAABaADMAAAAAAAEAAABaADQAAAAAAAEAAAA=")
|
||||
|
||||
[node name="BlackWalls" parent="Tiles" parent_id_path=PackedInt32Array(1626037498) index="1" unique_id=1250602228]
|
||||
tile_map_data = PackedByteArray("AAANABQAAAABAAAAAAAOABQAAAABAAAAAAAPABQAAAABAAAAAAAQABQAAAABAAAAAAARABQAAAABAAAAAAANABUAAAABAAIAAAAOABUAAAABAAIAAAAPABUAAAABAAIAAAAQABUAAAABAAIAAAARABUAAAABAAIAAABYAB0AAAABAAAAAABZAB0AAAABAAAAAAA=")
|
||||
|
||||
[node name="WhiteWalls" parent="Tiles" parent_id_path=PackedInt32Array(1626037498) index="2" unique_id=940613078]
|
||||
tile_map_data = PackedByteArray("AAD8/wwAAAADAAAAAAD9/wwAAAABAAIAAAD8/w0AAAACAAEAAAD8/w4AAAACAAEAAAACAAwAAAABAAIAAAADAAwAAAABAAIAAAAEAAwAAAABAAIAAAAFAAwAAAABAAIAAAAGAAwAAAABAAIAAAAHAAwAAAABAAIAAAAIAAwAAAABAAIAAAAJAAwAAAABAAcAAAAJAA0AAAAGAAEAAAAJAA4AAAAGAAEAAAAJAA8AAAAGAAEAAAAJABAAAAAGAAEAAAAJABEAAAAGAAEAAAAJABIAAAAGAAEAAAAKAAwAAAABAAIAAAALAAwAAAABAAIAAAAMAAwAAAABAAIAAAANAAwAAAABAAIAAAAOAAwAAAABAAIAAAAPAAwAAAABAAIAAAAQAAwAAAABAAIAAAARAAwAAAABAAIAAAASAAwAAAABAAIAAAATAAwAAAABAAIAAAAUAAwAAAABAAIAAAAVAAwAAAAEAAAAAAAVAA0AAAAAAAEAAAAVAA4AAAAAAAEAAAAJABMAAAAGAAEAAAATABUAAAABAAIAAAAUABUAAAABAAIAAAAVABUAAAABAAIAAAAWABUAAAABAAIAAAAXABUAAAABAAIAAAAYABUAAAABAAIAAAAZABUAAAABAAIAAAAaABUAAAAEAAAAAAAaABcAAAAAAAEAAAAaABYAAAAAAAEAAAAiABUAAAABAAIAAAAjABUAAAABAAIAAAAkABUAAAABAAIAAAAlABUAAAABAAIAAAAmABUAAAABAAIAAAAnABUAAAABAAIAAAAoABUAAAABAAIAAAAaABoAAAADAAEAAAAbABoAAAAEAAIAAAAcABoAAAAEAAIAAAAdABoAAAAEAAIAAAAeABoAAAAEAAAAAAApABUAAAAEAAAAAAApABYAAAAAAAEAAAApABcAAAAAAAEAAAA7ABcAAAACAAEAAAA7ABYAAAACAAEAAAA7ABUAAAADAAAAAAA8ABUAAAABAAIAAAA9ABUAAAABAAIAAAA+ABUAAAABAAIAAAA/ABUAAAABAAIAAABAABUAAAABAAIAAABBABUAAAABAAIAAABCABUAAAABAAIAAABDABUAAAABAAIAAABEABUAAAABAAIAAABFABUAAAABAAIAAABGABUAAAABAAIAAABHABUAAAABAAIAAABIABUAAAABAAIAAABJABUAAAABAAIAAABLABUAAAABAAIAAABMABUAAAABAAIAAABNABUAAAABAAIAAABOABUAAAABAAIAAABPABUAAAABAAIAAABQABUAAAABAAIAAABRABUAAAABAAIAAABSABUAAAABAAIAAABTABUAAAABAAIAAABUABUAAAABAAIAAABVABUAAAABAAIAAABWABUAAAABAAIAAABXABUAAAABAAIAAABYABUAAAABAAIAAABZABUAAAABAAIAAAA8AB0AAAABAAAAAAA9AB0AAAABAAAAAAA+AB0AAAABAAAAAAA/AB0AAAABAAAAAABAAB0AAAABAAAAAABBAB0AAAABAAAAAABCAB0AAAABAAAAAABDAB0AAAABAAAAAABEAB0AAAABAAAAAABFAB0AAAABAAAAAABGAB0AAAABAAAAAABHAB0AAAABAAAAAABIAB0AAAABAAAAAABJAB0AAAABAAAAAABKABYAAAAGAAEAAABKABcAAAAGAAEAAABKABgAAAAGAAEAAABKABkAAAAGAAEAAABKABoAAAAGAAEAAABKABsAAAAGAAEAAABKABwAAAAGAAEAAABaABcAAAAAAAEAAABaABYAAAAAAAEAAABaABUAAAAEAAAAAABKABUAAAABAAcAAAABAAwAAAAAAAIAAAD+/wwAAAACAAIAAAA=")
|
||||
|
||||
[node name="Traps" parent="Tiles" parent_id_path=PackedInt32Array(1626037498) index="3" unique_id=635748436]
|
||||
tile_map_data = PackedByteArray("AAA8AB8AAAAAAAAAAAA9AB8AAAAAAAAAAAA+AB8AAAAAAAAAAAA/AB8AAAAAAAAAAABAAB8AAAAAAAAAAABBAB8AAAAAAAAAAABCAB8AAAAAAAAAAABDAB8AAAAAAAAAAABEAB8AAAAAAAAAAABFAB8AAAAAAAAAAABGAB8AAAAAAAAAAABHAB8AAAAAAAAAAABIAB8AAAAAAAAAAABJAB8AAAAAAAAAAAA8ACAAAAAAAAEAAAA9ACAAAAAAAAEAAAA+ACAAAAAAAAEAAAA/ACAAAAAAAAEAAABAACAAAAAAAAEAAABBACAAAAAAAAEAAABCACAAAAAAAAEAAABDACAAAAAAAAEAAABEACAAAAAAAAEAAABFACAAAAAAAAEAAABGACAAAAAAAAEAAABHACAAAAAAAAEAAABIACAAAAAAAAEAAABJACAAAAAAAAEAAABJACEAAAAAAAEAAABIACEAAAAAAAEAAABHACEAAAAAAAEAAABGACEAAAAAAAEAAABFACEAAAAAAAEAAABEACEAAAAAAAEAAABDACEAAAAAAAEAAABCACEAAAAAAAEAAABBACEAAAAAAAEAAABAACEAAAAAAAEAAAA/ACEAAAAAAAEAAAA+ACEAAAAAAAEAAAA9ACEAAAAAAAEAAAA8ACEAAAAAAAEAAAA=")
|
||||
|
||||
[node name="KillingArea" parent="KillingAreas" parent_id_path=PackedInt32Array(1935554921) index="0" unique_id=1891922549 instance=ExtResource("19_7s8yo")]
|
||||
position = Vector2(1072, 540)
|
||||
type = 1
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="KillingAreas/KillingArea" index="0" unique_id=1478981105]
|
||||
shape = SubResource("RectangleShape2D_v8xjl")
|
||||
|
||||
[node name="LevelEnd" parent="." index="10" unique_id=1018767708]
|
||||
position = Vector2(1424, 602)
|
||||
@@ -3,7 +3,7 @@
|
||||
[ext_resource type="PackedScene" uid="uid://mpsu4g2b5h3a" path="res://game/levels/abstract_level.tscn" id="1_bhhdo"]
|
||||
[ext_resource type="PackedScene" uid="uid://dx1yasi8wlaye" path="res://game/objects/decorative/bookstand.tscn" id="2_1t02d"]
|
||||
[ext_resource type="PackedScene" uid="uid://cojxqx5al7kyv" path="res://game/doors/locked_door.tscn" id="2_b6xh1"]
|
||||
[ext_resource type="Script" uid="uid://lxye5wqo5suq" path="res://game/levels/level_7.gd" id="2_sh0fj"]
|
||||
[ext_resource type="Script" uid="uid://lxye5wqo5suq" path="res://game/levels/level_final.gd" id="2_sh0fj"]
|
||||
[ext_resource type="PackedScene" uid="uid://cudbspmpx6sik" path="res://game/pickups/book_pickup.tscn" id="3_2esp0"]
|
||||
[ext_resource type="PackedScene" uid="uid://b7mhdrj3b6loq" path="res://game/doors/door.tscn" id="3_7erpt"]
|
||||
[ext_resource type="PackedScene" uid="uid://dioc4r03dfleq" path="res://game/doors/book_door.tscn" id="4_qqn64"]
|
||||
@@ -10,3 +10,5 @@ func _ready() -> void:
|
||||
$Objects/LeverPlatform.switching.connect($ConnectionCables/ConnectionCablePlatform.toggle)
|
||||
|
||||
$Objects/LeverMoving.switching.connect($Platforms/SelfMovingPlatform.toggle)
|
||||
|
||||
$Platforms/HiddenColorPlatform.set_player(player)
|
||||
|
||||
@@ -12,9 +12,11 @@
|
||||
[ext_resource type="PackedScene" uid="uid://bwmd8w677p7k3" path="res://game/platform/trigger_color_platform.tscn" id="5_a50fq"]
|
||||
[ext_resource type="PackedScene" uid="uid://dwvv5dj8lqif2" path="res://game/doors/triangle_door.tscn" id="6_75eok"]
|
||||
[ext_resource type="PackedScene" uid="uid://b7imlh4sl036i" path="res://game/doors/square_door.tscn" id="7_1skah"]
|
||||
[ext_resource type="PackedScene" uid="uid://cpntbx0bpni2t" path="res://game/platform/touch_color_platform.tscn" id="7_a50fq"]
|
||||
[ext_resource type="PackedScene" uid="uid://cudbspmpx6sik" path="res://game/pickups/book_pickup.tscn" id="7_fq0h3"]
|
||||
[ext_resource type="PackedScene" uid="uid://dioc4r03dfleq" path="res://game/doors/book_door.tscn" id="8_75eok"]
|
||||
[ext_resource type="PackedScene" uid="uid://c4gqqhlew67ay" path="res://game/pickups/circle_key_pickup.tscn" id="8_g1txn"]
|
||||
[ext_resource type="PackedScene" uid="uid://bqb2qncny11a" path="res://game/platform/hidden_color_platform.tscn" id="8_lxcjr"]
|
||||
[ext_resource type="PackedScene" uid="uid://ciubf1ttwc133" path="res://game/pickups/square_key_pickup.tscn" id="9_yrqjd"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqgmfpv2mhdpn" path="res://game/pickups/triangle_key_pickup.tscn" id="10_dea75"]
|
||||
[ext_resource type="PackedScene" uid="uid://be3mqeb784shj" path="res://game/objects/informative/movement_action_tip.tscn" id="10_ffor3"]
|
||||
@@ -25,14 +27,14 @@
|
||||
[ext_resource type="PackedScene" uid="uid://dx1yasi8wlaye" path="res://game/objects/decorative/bookstand.tscn" id="13_g3b4m"]
|
||||
[ext_resource type="PackedScene" uid="uid://bx0luh4vdob3q" path="res://game/characters/enemies/cultist.tscn" id="27_te8eb"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_h1708"]
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_lxcjr"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("4_lxcjr")
|
||||
shader_parameter/glow_interval = 1.0
|
||||
shader_parameter/glow_radius = 1.0
|
||||
shader_parameter/travel_time = 5.0
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_a50fq"]
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_te8eb"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("4_lxcjr")
|
||||
shader_parameter/glow_interval = 1.0
|
||||
@@ -49,12 +51,12 @@ point_count = 2
|
||||
script = ExtResource("2_a2sw7")
|
||||
|
||||
[node name="ConnectionCableDoor" parent="ConnectionCables" parent_id_path=PackedInt32Array(279521385) index="0" unique_id=1234500644 instance=ExtResource("3_a50fq")]
|
||||
material = SubResource("ShaderMaterial_h1708")
|
||||
material = SubResource("ShaderMaterial_lxcjr")
|
||||
position = Vector2(208, 13)
|
||||
points = PackedVector2Array(0, 0, 92, 0, 92, -49, 199, -49)
|
||||
|
||||
[node name="ConnectionCablePlatform" parent="ConnectionCables" parent_id_path=PackedInt32Array(279521385) index="1" unique_id=561577961 instance=ExtResource("3_a50fq")]
|
||||
material = SubResource("ShaderMaterial_a50fq")
|
||||
material = SubResource("ShaderMaterial_te8eb")
|
||||
position = Vector2(520, -35)
|
||||
points = PackedVector2Array(0, 0, 0, -76, -454, -76, -454, 3)
|
||||
|
||||
@@ -80,6 +82,15 @@ collision_layer = 2
|
||||
initial_color = 1
|
||||
platform_width = 104
|
||||
|
||||
[node name="TouchColorPlatform" parent="Platforms" parent_id_path=PackedInt32Array(1140671629) index="3" unique_id=1702050833 instance=ExtResource("7_a50fq")]
|
||||
position = Vector2(200, -25)
|
||||
platform_width = 80
|
||||
|
||||
[node name="HiddenColorPlatform" parent="Platforms" parent_id_path=PackedInt32Array(1140671629) index="4" unique_id=1861027364 instance=ExtResource("8_lxcjr")]
|
||||
position = Vector2(13, -104)
|
||||
collision_layer = 2
|
||||
platform_width = 80
|
||||
|
||||
[node name="LeverDoor" parent="Doors" parent_id_path=PackedInt32Array(1468144392) index="0" unique_id=1575363350 instance=ExtResource("2_r01v2")]
|
||||
position = Vector2(416, -56)
|
||||
|
||||
@@ -142,8 +153,6 @@ position = Vector2(803, -56)
|
||||
|
||||
[node name="Cultist1" parent="Enemies" parent_id_path=PackedInt32Array(857989772) index="0" unique_id=1676614852 instance=ExtResource("27_te8eb")]
|
||||
position = Vector2(743, -48)
|
||||
collision_layer = 64
|
||||
collision_mask = 33
|
||||
|
||||
[node name="Cultist2" parent="Enemies" parent_id_path=PackedInt32Array(857989772) index="1" unique_id=1025404981 instance=ExtResource("27_te8eb")]
|
||||
position = Vector2(936, -48)
|
||||
|
||||
@@ -2,14 +2,15 @@
|
||||
|
||||
[ext_resource type="Script" uid="uid://w4ofprtn7lu8" path="res://game/managers/level_manager.gd" id="1_te7jw"]
|
||||
[ext_resource type="PackedScene" uid="uid://dlpi1ptis3wna" path="res://game/levels/level_1.tscn" id="2_r84xe"]
|
||||
[ext_resource type="PackedScene" uid="uid://cc06c06hlv7ix" path="res://game/levels/level_2.tscn" id="3_yl05u"]
|
||||
[ext_resource type="PackedScene" uid="uid://ungdvjmfc6v7" path="res://game/levels/level_3.tscn" id="4_eo2u3"]
|
||||
[ext_resource type="PackedScene" uid="uid://cmp1cog2cbfh5" path="res://game/levels/level_4.tscn" id="5_yl05u"]
|
||||
[ext_resource type="PackedScene" uid="uid://brysu1p6fw88n" path="res://game/levels/level_5.tscn" id="6_eo2u3"]
|
||||
[ext_resource type="PackedScene" uid="uid://uanhjjloryf4" path="res://game/levels/level_6.tscn" id="7_da5al"]
|
||||
[ext_resource type="PackedScene" uid="uid://cddh8nh54mrog" path="res://game/levels/level_7.tscn" id="8_rvthr"]
|
||||
[ext_resource type="PackedScene" uid="uid://cifrkw15tbunt" path="res://game/levels/level_2.tscn" id="3_yl05u"]
|
||||
[ext_resource type="PackedScene" uid="uid://ungdvjmfc6v7" path="res://game/levels/level_3_old.tscn" id="4_eo2u3"]
|
||||
[ext_resource type="PackedScene" uid="uid://cc06c06hlv7ix" path="res://game/levels/level_2_old.tscn" id="4_sidtq"]
|
||||
[ext_resource type="PackedScene" uid="uid://cmp1cog2cbfh5" path="res://game/levels/level_4_old.tscn" id="5_yl05u"]
|
||||
[ext_resource type="PackedScene" uid="uid://brysu1p6fw88n" path="res://game/levels/level_5_old.tscn" id="6_eo2u3"]
|
||||
[ext_resource type="PackedScene" uid="uid://uanhjjloryf4" path="res://game/levels/level_6_old.tscn" id="7_da5al"]
|
||||
[ext_resource type="PackedScene" uid="uid://cddh8nh54mrog" path="res://game/levels/level_final.tscn" id="8_rvthr"]
|
||||
[ext_resource type="PackedScene" uid="uid://bmn74wc2vophn" path="res://game/levels/test_level.tscn" id="9_7ahfy"]
|
||||
|
||||
[node name="LevelManager" type="Node" unique_id=629915878]
|
||||
script = ExtResource("1_te7jw")
|
||||
levels = Array[PackedScene]([ExtResource("2_r84xe"), ExtResource("3_yl05u"), ExtResource("4_eo2u3"), ExtResource("5_yl05u"), ExtResource("6_eo2u3"), ExtResource("7_da5al"), ExtResource("8_rvthr"), ExtResource("9_7ahfy")])
|
||||
levels = Array[PackedScene]([ExtResource("2_r84xe"), ExtResource("3_yl05u"), ExtResource("4_sidtq"), ExtResource("4_eo2u3"), ExtResource("5_yl05u"), ExtResource("6_eo2u3"), ExtResource("7_da5al"), ExtResource("8_rvthr"), ExtResource("9_7ahfy")])
|
||||
|
||||
@@ -9,10 +9,10 @@ const MUSIC_BUS = "Music"
|
||||
|
||||
|
||||
@export_group("Pitch settings", "pitch")
|
||||
@export_range(0.9, 1.1, 0.01) var putch_ui_min := 1.0
|
||||
@export_range(0.9, 1.1, 0.01) var putch_ui_max := 1.0
|
||||
@export_range(0.9, 1.1, 0.01) var putch_sfx_min := 1.0
|
||||
@export_range(0.9, 1.1, 0.01) var putch_sfx_max := 1.0
|
||||
@export_range(0.9, 1.1, 0.01) var pitch_ui_min := 1.0
|
||||
@export_range(0.9, 1.1, 0.01) var pitch_ui_max := 1.0
|
||||
@export_range(0.9, 1.1, 0.01) var pitch_sfx_min := 1.0
|
||||
@export_range(0.9, 1.1, 0.01) var pitch_sfx_max := 1.0
|
||||
|
||||
@export_group("Number of players", "player_count")
|
||||
@export_range(1, 10) var player_count_ui := 1
|
||||
@@ -60,7 +60,7 @@ func _ready() -> void:
|
||||
func play_ui_stream(stream: AudioStream) -> AudioStreamPlayer:
|
||||
var player := _get_free_player(_ui_players)
|
||||
player.stream = stream
|
||||
player.pitch_scale = randf_range(putch_ui_min, putch_ui_max)
|
||||
player.pitch_scale = randf_range(pitch_ui_min, pitch_ui_max)
|
||||
player.play()
|
||||
return player
|
||||
|
||||
@@ -68,7 +68,7 @@ func play_ui_stream(stream: AudioStream) -> AudioStreamPlayer:
|
||||
func play_sfx_stream(stream: AudioStream, position: Vector2) -> AudioStreamPlayer2D:
|
||||
var player := _get_free_2d_player(_sfx_players)
|
||||
player.stream = stream
|
||||
player.pitch_scale = randf_range(putch_ui_min, putch_ui_max)
|
||||
player.pitch_scale = randf_range(pitch_ui_min, pitch_ui_max)
|
||||
player.position = position
|
||||
player.play()
|
||||
return player
|
||||
|
||||
@@ -26,10 +26,10 @@
|
||||
[node name="SoundManager" type="Node" unique_id=1917953940]
|
||||
process_mode = 3
|
||||
script = ExtResource("1_cg0sy")
|
||||
putch_ui_min = 0.95
|
||||
putch_ui_max = 1.05
|
||||
putch_sfx_min = 0.95
|
||||
putch_sfx_max = 1.05
|
||||
pitch_ui_min = 0.95
|
||||
pitch_ui_max = 1.05
|
||||
pitch_sfx_min = 0.95
|
||||
pitch_sfx_max = 1.05
|
||||
player_count_ui = 4
|
||||
player_count_sfx = 25
|
||||
ui_stream_accept = ExtResource("2_ge1il")
|
||||
|
||||
@@ -3,12 +3,15 @@
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="1_p23e2"]
|
||||
|
||||
[resource]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("1_p23e2")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
shader_parameter/switch_colors = true
|
||||
shader_parameter/switch_colors = false
|
||||
shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 1.0
|
||||
shader_parameter/intensity = 1.0
|
||||
shader_parameter/scale = 5.0
|
||||
shader_parameter/seed = 0.0
|
||||
shader_parameter/direction = Vector2(1, 1)
|
||||
shader_parameter/use_world_pos = false
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="1_rnyyp"]
|
||||
|
||||
[resource]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("1_rnyyp")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
@@ -11,4 +12,6 @@ shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 0.5
|
||||
shader_parameter/intensity = 0.5
|
||||
shader_parameter/scale = 0.1
|
||||
shader_parameter/seed = 0.0
|
||||
shader_parameter/direction = Vector2(1, 1)
|
||||
shader_parameter/use_world_pos = true
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(144, 64, 16, 32)
|
||||
[node name="Bookstand" type="Node2D" unique_id=764203715]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1927584709]
|
||||
position = Vector2(0, -10)
|
||||
texture = SubResource("AtlasTexture_opqiy")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(128, 96, 32, 32)
|
||||
[node name="Cabinet" type="Node2D" unique_id=776063180]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=633984423]
|
||||
position = Vector2(0, -11)
|
||||
texture = SubResource("AtlasTexture_sqimt")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(32, 96, 16, 32)
|
||||
[node name="ChairB" type="Node2D" unique_id=593320838]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1141861091]
|
||||
position = Vector2(0, -14)
|
||||
texture = SubResource("AtlasTexture_ea7rc")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(0, 96, 16, 32)
|
||||
[node name="ChairF" type="Node2D" unique_id=1967501122]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1824855132]
|
||||
position = Vector2(0, -14)
|
||||
texture = SubResource("AtlasTexture_1kw05")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(16, 96, 16, 32)
|
||||
[node name="ChairL" type="Node2D" unique_id=813233619]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=2136740309]
|
||||
position = Vector2(0, -14)
|
||||
texture = SubResource("AtlasTexture_cktuf")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(48, 96, 16, 32)
|
||||
[node name="ChairR" type="Node2D" unique_id=567783693]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1599831744]
|
||||
position = Vector2(0, -14)
|
||||
texture = SubResource("AtlasTexture_e7ewy")
|
||||
|
||||
@@ -24,6 +24,8 @@ shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 2.50000011875
|
||||
shader_parameter/intensity = 0.6000000285
|
||||
shader_parameter/scale = 75.0000035625
|
||||
shader_parameter/seed = 0.0
|
||||
shader_parameter/direction = Vector2(1, 1)
|
||||
shader_parameter/use_world_pos = false
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_tl0fg"]
|
||||
@@ -52,9 +54,10 @@ animations = [{
|
||||
script = SubResource("GDScript_4nvxe")
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1590498638]
|
||||
position = Vector2(0, -16)
|
||||
texture = SubResource("AtlasTexture_2ho61")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="." unique_id=628370504]
|
||||
material = SubResource("ShaderMaterial_2ho61")
|
||||
position = Vector2(0, 8)
|
||||
position = Vector2(0, -8)
|
||||
sprite_frames = SubResource("SpriteFrames_f0x6e")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(128, 80, 16, 16)
|
||||
[node name="FlaskL" type="Node2D" unique_id=1215208712]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1287451147]
|
||||
position = Vector2(0, -7)
|
||||
texture = SubResource("AtlasTexture_i1pbn")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(128, 64, 16, 16)
|
||||
[node name="FlaskS" type="Node2D" unique_id=565628633]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1428095427]
|
||||
position = Vector2(0, -6)
|
||||
texture = SubResource("AtlasTexture_wg65s")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(112, 64, 16, 16)
|
||||
[node name="Plate" type="Node2D" unique_id=611682922]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1274674649]
|
||||
position = Vector2(0, -1)
|
||||
texture = SubResource("AtlasTexture_q70ul")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(144, 32, 16, 16)
|
||||
[node name="RedortEndL" type="Node2D" unique_id=186703054]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=2083648757]
|
||||
position = Vector2(-1, -8)
|
||||
texture = SubResource("AtlasTexture_hbatg")
|
||||
@@ -9,4 +9,5 @@ region = Rect2(112, 48, 16, 16)
|
||||
[node name="RetortEndR" type="Node2D" unique_id=361163783]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=851249465]
|
||||
position = Vector2(1, -8)
|
||||
texture = SubResource("AtlasTexture_2d2yp")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(128, 48, 32, 16)
|
||||
[node name="RetortL" type="Node2D" unique_id=928599671]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=777287822]
|
||||
position = Vector2(-3, -8)
|
||||
texture = SubResource("AtlasTexture_8epgq")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(112, 32, 32, 16)
|
||||
[node name="RetortR" type="Node2D" unique_id=2131329697]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=889741540]
|
||||
position = Vector2(3, -8)
|
||||
texture = SubResource("AtlasTexture_f54r7")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(80, 0, 80, 32)
|
||||
[node name="TableL" type="Node2D" unique_id=1210198021]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1155132216]
|
||||
position = Vector2(-1, -9)
|
||||
texture = SubResource("AtlasTexture_l7gad")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(32, 0, 48, 32)
|
||||
[node name="TableM" type="Node2D" unique_id=639741163]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=881942302]
|
||||
position = Vector2(0, -9)
|
||||
texture = SubResource("AtlasTexture_runce")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(0, 0, 32, 32)
|
||||
[node name="TableS" type="Node2D" unique_id=1273697628]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1017827625]
|
||||
position = Vector2(0, -9)
|
||||
texture = SubResource("AtlasTexture_n2itf")
|
||||
|
||||
@@ -9,4 +9,5 @@ region = Rect2(96, 80, 32, 48)
|
||||
[node name="Wardrobe" type="Node2D" unique_id=1607339750]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=422307570]
|
||||
position = Vector2(0, -22)
|
||||
texture = SubResource("AtlasTexture_wbqlk")
|
||||
|
||||
@@ -14,7 +14,9 @@ region = Rect2(0, 32, 32, 32)
|
||||
[node name="MovementActionTip" unique_id=1113266380 instance=ExtResource("1_6vlve")]
|
||||
|
||||
[node name="SpriteKbd" parent="." index="0" unique_id=948959005]
|
||||
position = Vector2(-1, -15)
|
||||
texture = SubResource("AtlasTexture_qoa1y")
|
||||
|
||||
[node name="SpritePad" parent="." index="1" unique_id=1703375720]
|
||||
visible = false
|
||||
texture = SubResource("AtlasTexture_aui55")
|
||||
|
||||
@@ -109,17 +109,19 @@ script = ExtResource("2_5hu3b")
|
||||
initial_state = 0
|
||||
|
||||
[node name="CollisionShape2D" parent="." index="0" unique_id=2065213362]
|
||||
position = Vector2(0, -4)
|
||||
position = Vector2(0, -12)
|
||||
shape = SubResource("RectangleShape2D_tnscr")
|
||||
|
||||
[node name="HoverTip" parent="." index="1" unique_id=1961962362]
|
||||
position = Vector2(0, -11)
|
||||
position = Vector2(0, -19)
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="." index="2" unique_id=2086579452]
|
||||
position = Vector2(0, -8)
|
||||
sprite_frames = SubResource("SpriteFrames_kky3u")
|
||||
animation = &"turning_left"
|
||||
|
||||
[node name="BaseSprite" type="Sprite2D" parent="." index="3" unique_id=256419860]
|
||||
position = Vector2(0, -8)
|
||||
texture = SubResource("AtlasTexture_5upgc")
|
||||
|
||||
[connection signal="animation_finished" from="AnimatedSprite2D" to="." method="_on_animation_finished"]
|
||||
|
||||
@@ -2,6 +2,19 @@ class_name AbstractPickup
|
||||
extends Area2D
|
||||
|
||||
|
||||
const BOUNCE_SPEED = 250.0
|
||||
|
||||
|
||||
@export_range(0.0, 100.0) var max_bounce_offset := 0.0
|
||||
|
||||
|
||||
@onready var sprite : Sprite2D = $Sprite2D
|
||||
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
sprite.position.y = round(sin(Time.get_ticks_msec() / BOUNCE_SPEED) * max_bounce_offset)
|
||||
|
||||
|
||||
func _play_pickup_sound() -> void:
|
||||
SoundManager.play_sfx_stream(SoundManager.sfx_stream_key_picked_up, global_position)
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://cmnfpr2h2hbeu"]
|
||||
[gd_scene format=3 uid="uid://cmnfpr2h2hbeu"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://c54xcaigi43rn" path="res://game/pickups/abstract_pickup.gd" id="1_ek4cl"]
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="2_33jno"]
|
||||
@@ -12,19 +12,22 @@ shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 5.0000002375
|
||||
shader_parameter/intensity = 0.800000038
|
||||
shader_parameter/scale = 25.0000011875
|
||||
shader_parameter/seed = 0.0
|
||||
shader_parameter/direction = Vector2(1, 1)
|
||||
shader_parameter/use_world_pos = false
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_ek4cl"]
|
||||
radius = 7.0
|
||||
|
||||
[node name="AbstractPickup" type="Area2D"]
|
||||
[node name="AbstractPickup" type="Area2D" unique_id=1918087631]
|
||||
collision_layer = 0
|
||||
collision_mask = 136
|
||||
script = ExtResource("1_ek4cl")
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=787072909]
|
||||
material = SubResource("ShaderMaterial_4r7i4")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=1835897926]
|
||||
shape = SubResource("CircleShape2D_ek4cl")
|
||||
|
||||
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://cudbspmpx6sik"]
|
||||
[gd_scene format=3 uid="uid://cudbspmpx6sik"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cmnfpr2h2hbeu" path="res://game/pickups/abstract_pickup.tscn" id="1_e7pu1"]
|
||||
[ext_resource type="Script" uid="uid://sheh3mtq6k8o" path="res://game/pickups/book_pickup.gd" id="2_jsqc0"]
|
||||
@@ -8,8 +8,9 @@
|
||||
atlas = ExtResource("3_yg5bj")
|
||||
region = Rect2(16, 16, 16, 16)
|
||||
|
||||
[node name="BookPickup" instance=ExtResource("1_e7pu1")]
|
||||
[node name="BookPickup" unique_id=371783630 instance=ExtResource("1_e7pu1")]
|
||||
script = ExtResource("2_jsqc0")
|
||||
max_bounce_offset = 1.0
|
||||
|
||||
[node name="Sprite2D" parent="." index="0"]
|
||||
[node name="Sprite2D" parent="." index="0" unique_id=787072909]
|
||||
texture = SubResource("AtlasTexture_cpnvb")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://c4gqqhlew67ay"]
|
||||
[gd_scene format=3 uid="uid://c4gqqhlew67ay"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cmnfpr2h2hbeu" path="res://game/pickups/abstract_pickup.tscn" id="1_u687g"]
|
||||
[ext_resource type="Script" uid="uid://dbssfh6ecgstl" path="res://game/pickups/circle_key_pickup.gd" id="2_sjfny"]
|
||||
@@ -8,8 +8,9 @@
|
||||
atlas = ExtResource("3_pwkbp")
|
||||
region = Rect2(0, 0, 16, 16)
|
||||
|
||||
[node name="CircleKeyPickup" instance=ExtResource("1_u687g")]
|
||||
[node name="CircleKeyPickup" unique_id=479576639 instance=ExtResource("1_u687g")]
|
||||
script = ExtResource("2_sjfny")
|
||||
max_bounce_offset = 2.0
|
||||
|
||||
[node name="Sprite2D" parent="." index="0"]
|
||||
[node name="Sprite2D" parent="." index="0" unique_id=787072909]
|
||||
texture = SubResource("AtlasTexture_mprb4")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://ciubf1ttwc133"]
|
||||
[gd_scene format=3 uid="uid://ciubf1ttwc133"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cmnfpr2h2hbeu" path="res://game/pickups/abstract_pickup.tscn" id="1_20fsk"]
|
||||
[ext_resource type="Script" uid="uid://ck5tvlprgwlet" path="res://game/pickups/square_key_pickup.gd" id="2_5ybdl"]
|
||||
@@ -8,8 +8,9 @@
|
||||
atlas = ExtResource("3_5ybdl")
|
||||
region = Rect2(0, 16, 16, 16)
|
||||
|
||||
[node name="SquareKeyPickup" instance=ExtResource("1_20fsk")]
|
||||
[node name="SquareKeyPickup" unique_id=439452023 instance=ExtResource("1_20fsk")]
|
||||
script = ExtResource("2_5ybdl")
|
||||
max_bounce_offset = 2.0
|
||||
|
||||
[node name="Sprite2D" parent="." index="0"]
|
||||
[node name="Sprite2D" parent="." index="0" unique_id=787072909]
|
||||
texture = SubResource("AtlasTexture_fx152")
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://dqgmfpv2mhdpn"]
|
||||
[gd_scene format=3 uid="uid://dqgmfpv2mhdpn"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cmnfpr2h2hbeu" path="res://game/pickups/abstract_pickup.tscn" id="1_qr3v1"]
|
||||
[ext_resource type="Script" uid="uid://c73gihkak2xns" path="res://game/pickups/triangle_key_pickup.gd" id="2_pn8rn"]
|
||||
@@ -8,8 +8,9 @@
|
||||
atlas = ExtResource("3_5k6x8")
|
||||
region = Rect2(16, 0, 16, 16)
|
||||
|
||||
[node name="TriangleKeyPickup" instance=ExtResource("1_qr3v1")]
|
||||
[node name="TriangleKeyPickup" unique_id=1774919784 instance=ExtResource("1_qr3v1")]
|
||||
script = ExtResource("2_pn8rn")
|
||||
max_bounce_offset = 2.0
|
||||
|
||||
[node name="Sprite2D" parent="." index="0"]
|
||||
[node name="Sprite2D" parent="." index="0" unique_id=787072909]
|
||||
texture = SubResource("AtlasTexture_8ko2n")
|
||||
|
||||
@@ -3,13 +3,11 @@ class_name AbstractColorPlatform
|
||||
extends AbstractPlatform
|
||||
|
||||
|
||||
enum PlatformColor {
|
||||
White,
|
||||
Black,
|
||||
}
|
||||
|
||||
|
||||
@export var initial_color := PlatformColor.White
|
||||
@export var initial_color := CollisionSwitcher.ObjectColor.White:
|
||||
set(value):
|
||||
initial_color = value
|
||||
if Engine.is_editor_hint() and is_node_ready():
|
||||
collision_switcher.switch_color()
|
||||
|
||||
|
||||
@onready var collision_switcher : CollisionSwitcher = $CollisionSwitcher
|
||||
@@ -18,5 +16,5 @@ enum PlatformColor {
|
||||
func _ready() -> void:
|
||||
super._ready()
|
||||
collision_switcher.add_material(platform_sprite.material)
|
||||
if initial_color == PlatformColor.Black:
|
||||
if initial_color == CollisionSwitcher.ObjectColor.Black:
|
||||
collision_switcher.switch_color()
|
||||
|
||||
@@ -9,7 +9,6 @@ const SHADER_PLATFORM_WIDTH = "shader_parameter/platform_width"
|
||||
|
||||
const ANIMATION_COLOR_SWITCHING = "color_switching"
|
||||
const ANIMATION_HIDING = "hiding"
|
||||
const ANIMATION_TIMER = "timer"
|
||||
|
||||
const ANIMATION_SELF_MOVING = "self_moving"
|
||||
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
@tool
|
||||
class_name HiddenColorPlatform
|
||||
extends AbstractColorPlatform
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
super._ready()
|
||||
|
||||
icon_sprite.play(ANIMATION_HIDING)
|
||||
if not Engine.is_editor_hint():
|
||||
if initial_color == CollisionSwitcher.ObjectColor.White:
|
||||
platform_sprite.hide()
|
||||
|
||||
|
||||
func set_player(player: Player) -> void:
|
||||
player.color_switched.connect(_on_player_color_switched)
|
||||
|
||||
|
||||
func _on_player_color_switched(player_new_color: CollisionSwitcher.ObjectColor) -> void:
|
||||
if player_new_color == initial_color:
|
||||
platform_sprite.hide()
|
||||
else:
|
||||
platform_sprite.show()
|
||||
@@ -0,0 +1 @@
|
||||
uid://bmdc7dyijp211
|
||||
@@ -0,0 +1,49 @@
|
||||
[gd_scene format=3 uid="uid://bqb2qncny11a"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://wpkj48bqyuy2" path="res://game/platform/abstract_color_platform.tscn" id="1_s638m"]
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="2_4acet"]
|
||||
[ext_resource type="Script" uid="uid://bmdc7dyijp211" path="res://game/platform/hidden_color_platform.gd" id="2_nlrds"]
|
||||
[ext_resource type="Shader" uid="uid://d4hm3vjx1rhsf" path="res://game/shaders/platform.gdshader" id="3_nlrds"]
|
||||
[ext_resource type="Texture2D" uid="uid://cpcuokqv8u2xa" path="res://images/level/platform.png" id="4_h5jhn"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ff5f1"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("2_4acet")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
shader_parameter/switch_colors = false
|
||||
shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 1.0
|
||||
shader_parameter/intensity = 1.0
|
||||
shader_parameter/scale = 5.0
|
||||
shader_parameter/seed = 0.0
|
||||
shader_parameter/direction = Vector2(1, 1)
|
||||
shader_parameter/use_world_pos = false
|
||||
|
||||
[sub_resource type="ViewportTexture" id="ViewportTexture_17dby"]
|
||||
viewport_path = NodePath("SubViewport")
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_el5k2"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_nlrds")
|
||||
shader_parameter/tile_size = 8.0
|
||||
shader_parameter/platform_width = 24.0
|
||||
shader_parameter/atlas = ExtResource("4_h5jhn")
|
||||
shader_parameter/seed = 0.12241629
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_hm14r"]
|
||||
resource_local_to_scene = true
|
||||
size = Vector2(16, 7)
|
||||
|
||||
[node name="HiddenColorPlatform" unique_id=137546339 instance=ExtResource("1_s638m")]
|
||||
script = ExtResource("2_nlrds")
|
||||
|
||||
[node name="Sprite2D" parent="." index="0" unique_id=264863796]
|
||||
material = SubResource("ShaderMaterial_ff5f1")
|
||||
texture = SubResource("ViewportTexture_17dby")
|
||||
|
||||
[node name="PlatformRect" parent="SubViewport" parent_id_path=PackedInt32Array(226200089) index="0" unique_id=794315918]
|
||||
material = SubResource("ShaderMaterial_el5k2")
|
||||
|
||||
[node name="CollisionShape2D" parent="." index="2" unique_id=175449124]
|
||||
shape = SubResource("RectangleShape2D_hm14r")
|
||||
@@ -3,10 +3,60 @@ class_name TouchColorPlatform
|
||||
extends AbstractColorPlatform
|
||||
|
||||
|
||||
const INTENSITY = 0.85
|
||||
const INTENSITY_SET_TIME = 0.5
|
||||
|
||||
|
||||
const SWITCH_TIME = 1.5
|
||||
|
||||
|
||||
var _is_body_in := false
|
||||
|
||||
var _intensity_tween : Tween
|
||||
|
||||
|
||||
@onready var touch_check_collision: CollisionShape2D = $Area2D/CollisionShape2D
|
||||
@onready var area_collision_switcher : CollisionSwitcher = $CollisionSwitcher
|
||||
@onready var switch_timer: Timer = $SwitchTimer
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
super._ready()
|
||||
icon_sprite.hide()
|
||||
_reset_intensity()
|
||||
|
||||
|
||||
func rebuild_platform() -> void:
|
||||
super.rebuild_platform()
|
||||
touch_check_collision.shape.size.x = platform_width - 4
|
||||
|
||||
|
||||
func _switch() -> void:
|
||||
collision_switcher.switch_color(SWITCH_TIME)
|
||||
|
||||
|
||||
func _reset_intensity() -> void:
|
||||
if _intensity_tween != null and _intensity_tween.is_running():
|
||||
_intensity_tween.kill()
|
||||
_intensity_tween = create_tween()
|
||||
_intensity_tween.tween_property(platform_sprite.material, CollisionSwitcher.SHADER_INTENSITY, \
|
||||
INTENSITY, INTENSITY_SET_TIME)
|
||||
|
||||
|
||||
func _on_body_entered(_body: Node2D) -> void:
|
||||
_is_body_in = true
|
||||
_switch()
|
||||
|
||||
|
||||
func _on_body_exited(_body: Node2D) -> void:
|
||||
_is_body_in = false
|
||||
|
||||
|
||||
func _on_collision_switched(_color: CollisionSwitcher.ObjectColor) -> void:
|
||||
_reset_intensity()
|
||||
if _is_body_in:
|
||||
switch_timer.start()
|
||||
|
||||
|
||||
func _on_switch_timer_timeout() -> void:
|
||||
if _is_body_in:
|
||||
_switch()
|
||||
|
||||
@@ -3,12 +3,27 @@
|
||||
[ext_resource type="PackedScene" uid="uid://wpkj48bqyuy2" path="res://game/platform/abstract_color_platform.tscn" id="1_xxggt"]
|
||||
[ext_resource type="Shader" uid="uid://d4hm3vjx1rhsf" path="res://game/shaders/platform.gdshader" id="2_4n4xw"]
|
||||
[ext_resource type="Script" uid="uid://d2xfxje428psp" path="res://game/platform/touch_color_platform.gd" id="2_wa58h"]
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="3_vol56"]
|
||||
[ext_resource type="Texture2D" uid="uid://cpcuokqv8u2xa" path="res://images/level/platform.png" id="3_wa58h"]
|
||||
|
||||
[sub_resource type="ViewportTexture" id="ViewportTexture_4n4xw"]
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_wa58h"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_vol56")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
shader_parameter/switch_colors = false
|
||||
shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 1.0
|
||||
shader_parameter/intensity = 1.0
|
||||
shader_parameter/scale = 5.0
|
||||
shader_parameter/seed = 0.0
|
||||
shader_parameter/direction = Vector2(1, 1)
|
||||
shader_parameter/use_world_pos = false
|
||||
|
||||
[sub_resource type="ViewportTexture" id="ViewportTexture_vol56"]
|
||||
viewport_path = NodePath("SubViewport")
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_wa58h"]
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_4wo0k"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("2_4n4xw")
|
||||
shader_parameter/tile_size = 8.0
|
||||
@@ -16,7 +31,7 @@ shader_parameter/platform_width = 24.0
|
||||
shader_parameter/atlas = ExtResource("3_wa58h")
|
||||
shader_parameter/seed = 0.12241629
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_vol56"]
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_3k57e"]
|
||||
resource_local_to_scene = true
|
||||
size = Vector2(16, 7)
|
||||
|
||||
@@ -27,13 +42,14 @@ size = Vector2(12, 1)
|
||||
script = ExtResource("2_wa58h")
|
||||
|
||||
[node name="Sprite2D" parent="." index="0" unique_id=264863796]
|
||||
texture = SubResource("ViewportTexture_4n4xw")
|
||||
material = SubResource("ShaderMaterial_wa58h")
|
||||
texture = SubResource("ViewportTexture_vol56")
|
||||
|
||||
[node name="PlatformRect" parent="SubViewport" parent_id_path=PackedInt32Array(226200089) index="0" unique_id=794315918]
|
||||
material = SubResource("ShaderMaterial_wa58h")
|
||||
material = SubResource("ShaderMaterial_4wo0k")
|
||||
|
||||
[node name="CollisionShape2D" parent="." index="2" unique_id=175449124]
|
||||
shape = SubResource("RectangleShape2D_vol56")
|
||||
shape = SubResource("RectangleShape2D_3k57e")
|
||||
|
||||
[node name="CollisionSwitcher" parent="." index="3" unique_id=542648449 node_paths=PackedStringArray("objects")]
|
||||
objects = [NodePath(".."), NodePath("../Area2D")]
|
||||
@@ -46,3 +62,12 @@ collision_mask = 192
|
||||
position = Vector2(0, -4.5)
|
||||
shape = SubResource("RectangleShape2D_bhunq")
|
||||
debug_color = Color(0.9020316, 0.24375501, 0.4918024, 0.41960785)
|
||||
|
||||
[node name="SwitchTimer" type="Timer" parent="." index="5" unique_id=1137076745]
|
||||
wait_time = 0.5
|
||||
one_shot = true
|
||||
|
||||
[connection signal="switched" from="CollisionSwitcher" to="." method="_on_collision_switched"]
|
||||
[connection signal="body_entered" from="Area2D" to="." method="_on_body_entered"]
|
||||
[connection signal="body_exited" from="Area2D" to="." method="_on_body_exited"]
|
||||
[connection signal="timeout" from="SwitchTimer" to="." method="_on_switch_timer_timeout"]
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
shader_type canvas_item;
|
||||
|
||||
uniform sampler2D screen_texture : hint_screen_texture, filter_nearest;
|
||||
|
||||
void fragment() {
|
||||
vec4 screen_color = texture(screen_texture, SCREEN_UV);
|
||||
vec3 inverted_color = 1.0 - screen_color.rgb;
|
||||
COLOR.rgb = vec3(inverted_color);
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://cdakbomof1cc6
|
||||
+87
-4
@@ -12,7 +12,11 @@ texture = ExtResource("1_wrl76")
|
||||
0:0/animation_frame_2/duration = 1.0
|
||||
0:0/animation_frame_3/duration = 1.0
|
||||
0:0/0 = 0
|
||||
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 7, 8, 7, 8, 8, -8, 8)
|
||||
0:0/0/terrain_set = 0
|
||||
0:0/0/terrain = 0
|
||||
0:0/0/terrains_peering_bit/right_side = 0
|
||||
0:0/0/terrains_peering_bit/bottom_side = 0
|
||||
0:0/0/terrains_peering_bit/left_side = 0
|
||||
0:1/animation_columns = 4
|
||||
0:1/animation_speed = 5.0
|
||||
0:1/animation_mode = 1
|
||||
@@ -21,11 +25,90 @@ texture = ExtResource("1_wrl76")
|
||||
0:1/animation_frame_2/duration = 1.0
|
||||
0:1/animation_frame_3/duration = 1.0
|
||||
0:1/0 = 0
|
||||
0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8)
|
||||
0:1/0/terrain_set = 0
|
||||
0:1/0/terrain = 0
|
||||
0:1/0/terrains_peering_bit/right_side = 0
|
||||
0:1/0/terrains_peering_bit/bottom_side = 0
|
||||
0:1/0/terrains_peering_bit/left_side = 0
|
||||
0:1/0/terrains_peering_bit/top_side = 0
|
||||
0:2/animation_speed = 5.0
|
||||
0:2/animation_frame_0/duration = 1.0
|
||||
0:2/animation_frame_1/duration = 1.0
|
||||
0:2/animation_frame_2/duration = 1.0
|
||||
0:2/animation_frame_3/duration = 1.0
|
||||
0:2/0 = 0
|
||||
0:2/0/terrain_set = 0
|
||||
0:2/0/terrain = 0
|
||||
0:2/0/terrains_peering_bit/bottom_side = 0
|
||||
0:2/0/terrains_peering_bit/left_side = 0
|
||||
0:3/animation_speed = 5.0
|
||||
0:3/animation_frame_0/duration = 1.0
|
||||
0:3/animation_frame_1/duration = 1.0
|
||||
0:3/animation_frame_2/duration = 1.0
|
||||
0:3/animation_frame_3/duration = 1.0
|
||||
0:3/0 = 0
|
||||
0:3/0/terrain_set = 0
|
||||
0:3/0/terrain = 0
|
||||
0:3/0/terrains_peering_bit/bottom_side = 0
|
||||
0:3/0/terrains_peering_bit/left_side = 0
|
||||
0:3/0/terrains_peering_bit/top_side = 0
|
||||
0:4/animation_speed = 5.0
|
||||
0:4/animation_frame_0/duration = 1.0
|
||||
0:4/animation_frame_1/duration = 1.0
|
||||
0:4/animation_frame_2/duration = 1.0
|
||||
0:4/animation_frame_3/duration = 1.0
|
||||
0:4/0 = 0
|
||||
0:4/0/terrain_set = 0
|
||||
0:4/0/terrain = 0
|
||||
0:4/0/terrains_peering_bit/right_side = 0
|
||||
0:4/0/terrains_peering_bit/bottom_side = 0
|
||||
0:5/animation_speed = 5.0
|
||||
0:5/animation_frame_0/duration = 1.0
|
||||
0:5/animation_frame_1/duration = 1.0
|
||||
0:5/animation_frame_2/duration = 1.0
|
||||
0:5/animation_frame_3/duration = 1.0
|
||||
0:5/0 = 0
|
||||
0:5/0/terrain_set = 0
|
||||
0:5/0/terrain = 0
|
||||
0:5/0/terrains_peering_bit/right_side = 0
|
||||
0:5/0/terrains_peering_bit/bottom_side = 0
|
||||
0:5/0/terrains_peering_bit/top_side = 0
|
||||
0:6/animation_speed = 5.0
|
||||
0:6/animation_frame_0/duration = 1.0
|
||||
0:6/animation_frame_1/duration = 1.0
|
||||
0:6/animation_frame_2/duration = 1.0
|
||||
0:6/animation_frame_3/duration = 1.0
|
||||
0:6/0 = 0
|
||||
0:6/0/terrain_set = 0
|
||||
0:6/0/terrain = 0
|
||||
0:6/0/terrains_peering_bit/right_side = 0
|
||||
0:6/0/terrains_peering_bit/left_side = 0
|
||||
0:6/0/terrains_peering_bit/top_side = 0
|
||||
0:7/animation_speed = 5.0
|
||||
0:7/animation_frame_0/duration = 1.0
|
||||
0:7/animation_frame_1/duration = 1.0
|
||||
0:7/animation_frame_2/duration = 1.0
|
||||
0:7/animation_frame_3/duration = 1.0
|
||||
0:7/0 = 0
|
||||
0:7/0/terrain_set = 0
|
||||
0:7/0/terrain = 0
|
||||
0:7/0/terrains_peering_bit/left_side = 0
|
||||
0:7/0/terrains_peering_bit/top_side = 0
|
||||
0:8/animation_speed = 5.0
|
||||
0:8/animation_frame_0/duration = 1.0
|
||||
0:8/animation_frame_1/duration = 1.0
|
||||
0:8/animation_frame_2/duration = 1.0
|
||||
0:8/animation_frame_3/duration = 1.0
|
||||
0:8/0 = 0
|
||||
0:8/0/terrain_set = 0
|
||||
0:8/0/terrain = 0
|
||||
0:8/0/terrains_peering_bit/right_side = 0
|
||||
0:8/0/terrains_peering_bit/top_side = 0
|
||||
|
||||
[sub_resource type="TileSet" id="TileSet_un604"]
|
||||
physics_layer_0/collision_layer = 16
|
||||
physics_layer_0/collision_mask = 16
|
||||
terrain_set_0/mode = 2
|
||||
terrain_set_0/terrain_0/name = "Water"
|
||||
terrain_set_0/terrain_0/color = Color(0.17461759, 0.21010289, 0.99999994, 1)
|
||||
sources/0 = SubResource("TileSetAtlasSource_3fw0b")
|
||||
|
||||
[node name="Traps" type="TileMapLayer" unique_id=397992951]
|
||||
|
||||
+1374
-146
File diff suppressed because it is too large
Load Diff
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -2,7 +2,7 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://due8mmt5ww1sf"
|
||||
uid="uid://pejb3q2yd6kr"
|
||||
path="res://.godot/imported/walls.png-37a3ca517acd966878c86ac131ff4ba1.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
|
||||
Reference in New Issue
Block a user