diff --git a/Scenes/Interactable/Computer.tscn b/Scenes/Interactable/Computer.tscn index f64ce029..5a0930f5 100644 --- a/Scenes/Interactable/Computer.tscn +++ b/Scenes/Interactable/Computer.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=8 format=3 uid="uid://doqmmuuuprl3s"] +[gd_scene load_steps=10 format=3 uid="uid://doqmmuuuprl3s"] -[ext_resource type="Script" uid="uid://duhodrhcnoslh" path="res://Scripts/Interactables/Switch.cs" id="1_62csb"] +[ext_resource type="Script" uid="uid://ck54glo7xbuq8" path="res://Scripts/Actors/Computer.cs" id="1_6kf2l"] [ext_resource type="Texture2D" uid="uid://dfjdl48v8kt2l" path="res://Sprites/Props/Computer2.png" id="2_tlxq6"] +[ext_resource type="Script" uid="uid://rlevd6krqglv" path="res://Scripts/Components/SpriteAnimationStartupRotator.cs" id="3_l1hw5"] [sub_resource type="CircleShape2D" id="CircleShape2D_wv7xi"] @@ -17,6 +18,10 @@ region = Rect2(16, 0, 16, 16) atlas = ExtResource("2_tlxq6") region = Rect2(32, 0, 16, 16) +[sub_resource type="AtlasTexture" id="AtlasTexture_6kf2l"] +atlas = ExtResource("2_tlxq6") +region = Rect2(48, 0, 16, 16) + [sub_resource type="SpriteFrames" id="SpriteFrames_7837l"] animations = [{ "frames": [{ @@ -24,7 +29,7 @@ animations = [{ "texture": SubResource("AtlasTexture_6yfpu") }], "loop": true, -"name": &"default", +"name": &"Down", "speed": 5.0 }, { "frames": [{ @@ -32,7 +37,7 @@ animations = [{ "texture": SubResource("AtlasTexture_jl6l5") }], "loop": true, -"name": &"left", +"name": &"Left", "speed": 5.0 }, { "frames": [{ @@ -40,17 +45,27 @@ animations = [{ "texture": SubResource("AtlasTexture_jxgtm") }], "loop": true, -"name": &"right", +"name": &"Right", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": SubResource("AtlasTexture_6kf2l") +}], +"loop": true, +"name": &"Up", "speed": 5.0 }] [node name="Computer" type="Area2D" groups=["Interactable"]] collision_layer = 4 collision_mask = 2 -script = ExtResource("1_62csb") +script = ExtResource("1_6kf2l") [node name="CollisionShape2D" type="CollisionShape2D" parent="."] shape = SubResource("CircleShape2D_wv7xi") [node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] sprite_frames = SubResource("SpriteFrames_7837l") +animation = &"Down" +script = ExtResource("3_l1hw5") diff --git a/Scenes/Maps/RebelBase.tscn b/Scenes/Maps/RebelBase.tscn index 19d0510c..ebb6f764 100644 --- a/Scenes/Maps/RebelBase.tscn +++ b/Scenes/Maps/RebelBase.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=27 format=4 uid="uid://bx31ou6tw3kd1"] +[gd_scene load_steps=29 format=4 uid="uid://bx31ou6tw3kd1"] [ext_resource type="Script" uid="uid://doxmbokehw8ci" path="res://Scripts/GameManager.cs" id="1_jpse7"] [ext_resource type="PackedScene" uid="uid://c4pr2707hbeph" path="res://Scenes/Actors/fsm_player.tscn" id="2_8erab"] @@ -19,6 +19,8 @@ [ext_resource type="Texture2D" uid="uid://bbdrws471xslc" path="res://Sprites/Actors/Rumia-world.png" id="10_6rpbc"] [ext_resource type="PackedScene" uid="uid://bjb1xv0ny1qim" path="res://Scenes/Props/Chair.tscn" id="14_2ugqu"] [ext_resource type="PackedScene" uid="uid://cyy5i38sf7fid" path="res://Scenes/Props/Locker.tscn" id="14_6rpbc"] +[ext_resource type="PackedScene" uid="uid://doqmmuuuprl3s" path="res://Scenes/Interactable/Computer.tscn" id="15_ce68b"] +[ext_resource type="PackedScene" uid="uid://bc64lr3vlwchq" path="res://Scenes/Door_Vertical.tscn" id="16_cjue1"] [ext_resource type="PackedScene" uid="uid://cke02i4e3bxld" path="res://Scenes/Props/MainFrame2.tscn" id="17_u3bx7"] [ext_resource type="PackedScene" uid="uid://cqrkisw6jg24w" path="res://Scenes/Props/MainFrame1.tscn" id="18_27jx1"] [ext_resource type="PackedScene" uid="uid://b3tyacxxw88lx" path="res://Scenes/Utils/StreamPlayerWithName.tscn" id="19_8erab"] @@ -65,7 +67,7 @@ tile_set = ExtResource("2_m7mag") metadata/_edit_lock_ = true [node name="Props" type="TileMapLayer" parent="Tilemaps"] -tile_map_data = PackedByteArray("AAAEACAAAAAGAAAAAAAFACAAAAAHAAAAAAAGACAAAAAGAAAAAAAHACAAAAAHAAAAAAAAACAAAAAGAAAAAAABACAAAAAHAAAAAAD+/yAAAAAGAAAAAAD//yAAAAAHAAAAAAD+/yMAAAAIAAAAAAD+/yQAAAAIAAEAAAAHACMAAAAIAAAAAAAHACQAAAAIAAEAAAAbABcAAAAIAAYAAAAbABgAAAAIAAYAAAAbABkAAAAIAAYAAAAbABoAAAAIAAYAAAAcABsAAAAHAAUAAAAdABsAAAAHAAUAAAAeABsAAAAHAAUAAAAfABsAAAAHAAUAAAAgABcAAAAGAAYAAAAgABgAAAAGAAYAAAAgABkAAAAGAAYAAAAgABoAAAAGAAYAAAAcABYAAAAHAAcAAAAdABYAAAAHAAcAAAAeABYAAAAHAAcAAAAfABYAAAAHAAcAAAAcABoAAAALAAQAAAAfABoAAAALAAQAAAAhAB0AAQAAAAAACwAhAB4AAQAAAAAACwAhAB8AAQAAAAAACwAaAB0AAQAAAAAACwAaAB4AAQAAAAAACwAaAB8AAQAAAAAACwAYAB0AAQAAAAAACwAYAB4AAQAAAAAACwAYAB8AAQAAAAAACwAjAB0AAQAAAAAACwAjAB4AAQAAAAAACwAjAB8AAQAAAAAACwAjACEAAQAAAAAAAgAkACEAAQAAAAAAAgAkABgAAQAAAAAAAgAkABkAAQAAAAAAAgAXABQAAQAAAAAAAgAXABUAAQAAAAAAAgAXACEAAQAAAAAADQAYACEAAQAAAAAADQAXACAAAQAAAAAADQAYACAAAQAAAAAAEAAZACEAAQAAAAAAEAAZACAAAQAAAAAAEAAkACAAAQAAAAAAEAAjACAAAQAAAAAAEAAiACAAAQAAAAAAEAAhACAAAQAAAAAAEAAhACEAAQAAAAAAEAAiACEAAQAAAAAAEAAfACEAAQAAAAAAEAAgACEAAQAAAAAAEAAgACAAAQAAAAAAEAAeACEAAQAAAAAADAAcACEAAQAAAAAADAAdACEAAQAAAAAADAAQABgAAQAAAAAADAARABgAAQAAAAAADAABABgAAQAAAAAADAAHACEAAQAAAAAADAAHACIAAQAAAAAADAAJACAAAQAAAAAADAAKACAAAQAAAAAADAAJACEAAQAAAAAADAAJACIAAQAAAAAADAADABEAAAAIAAAAAAADABIAAAAIAAEAAAD6/xAAAAAGAAAAAAD7/xAAAAAHAAAAAAA=") +tile_map_data = PackedByteArray("AAAEACAAAAAGAAAAAAAFACAAAAAHAAAAAAAGACAAAAAGAAAAAAAHACAAAAAHAAAAAAAAACAAAAAGAAAAAAABACAAAAAHAAAAAAD+/yAAAAAGAAAAAAD//yAAAAAHAAAAAAD+/yMAAAAIAAAAAAD+/yQAAAAIAAEAAAAHACMAAAAIAAAAAAAHACQAAAAIAAEAAAAbABcAAAAIAAYAAAAbABgAAAAIAAYAAAAbABkAAAAIAAYAAAAbABoAAAAIAAYAAAAcABsAAAAHAAUAAAAdABsAAAAHAAUAAAAeABsAAAAHAAUAAAAfABsAAAAHAAUAAAAgABcAAAAGAAYAAAAgABgAAAAGAAYAAAAgABkAAAAGAAYAAAAgABoAAAAGAAYAAAAcABYAAAAHAAcAAAAdABYAAAAHAAcAAAAeABYAAAAHAAcAAAAfABYAAAAHAAcAAAAcABoAAAALAAQAAAAfABoAAAALAAQAAAAhAB0AAQAAAAAACwAhAB4AAQAAAAAACwAhAB8AAQAAAAAACwAaAB0AAQAAAAAACwAaAB4AAQAAAAAACwAaAB8AAQAAAAAACwAYAB0AAQAAAAAACwAYAB4AAQAAAAAACwAYAB8AAQAAAAAACwAjAB0AAQAAAAAACwAjAB4AAQAAAAAACwAjAB8AAQAAAAAACwAjACEAAQAAAAAAAgAkACEAAQAAAAAAAgAkABgAAQAAAAAAAgAkABkAAQAAAAAAAgAXABQAAQAAAAAAAgAXABUAAQAAAAAAAgAXACEAAQAAAAAADQAYACEAAQAAAAAADQAXACAAAQAAAAAADQAYACAAAQAAAAAAEAAZACEAAQAAAAAAEAAZACAAAQAAAAAAEAAkACAAAQAAAAAAEAAjACAAAQAAAAAAEAAiACAAAQAAAAAAEAAhACAAAQAAAAAAEAAhACEAAQAAAAAAEAAiACEAAQAAAAAAEAAfACEAAQAAAAAAEAAgACEAAQAAAAAAEAAgACAAAQAAAAAAEAAeACEAAQAAAAAADAAcACEAAQAAAAAADAAdACEAAQAAAAAADAAQABgAAQAAAAAADAARABgAAQAAAAAADAABABgAAQAAAAAADAAHACEAAQAAAAAADAAHACIAAQAAAAAADAAJACAAAQAAAAAADAAKACAAAQAAAAAADAAJACEAAQAAAAAADAAJACIAAQAAAAAADAADABEAAAAIAAAAAAADABIAAAAIAAEAAAD6/xAAAAAGAAAAAAD7/xAAAAAHAAAAAAAEAB4AAAAJAAwAAAAEAB8AAAAJAA0AAAD//xcAAAAJAAwAAAD//xgAAAAJAA0AAAASABgAAAAJAAwAAAASABkAAAAJAA0AAAAPAB4AAAAJAAwAAAAPAB8AAAAJAA0AAAABAB4AAAAKAAwAAAABAB8AAAAKAA0AAAAAABcAAAAKAAwAAAAAABgAAAAKAA0AAAABABYAAAAKAAwAAAABABcAAAAKAA0AAAAMAB4AAAAKAAwAAAAMAB8AAAAKAA0AAAD8/xYAAAAKAAwAAAD8/xcAAAAKAA0AAAAIABYAAAAJAAwAAAAIABcAAAAJAA0AAAAFABYAAAAKAAwAAAAFABcAAAAKAA0AAAAEABYAAAAJAAwAAAAEABcAAAAJAA0AAAATABgAAAALAAQAAAAVABgAAAALAAQAAAAUABgAAAAKAAQAAAD8/w8AAQAAAAAAAgD8/xAAAQAAAAAAAgD5/w8AAQAAAAAADAD4/w8AAQAAAAAADAD5/xAAAQAAAAAADAD9/w8AAQAAAAAADAD+/w8AAQAAAAAADAD4/xMAAQAAAAAADAD4/xIAAQAAAAAADAA=") tile_set = ExtResource("2_m7mag") metadata/_edit_lock_ = true @@ -101,6 +103,24 @@ texture = SubResource("AtlasTexture_cr26l") [node name="CollisionShape2D" type="CollisionShape2D" parent="Tilemaps/Actors/Rumia"] shape = SubResource("CircleShape2D_cr26l") +[node name="Chair2" parent="Tilemaps/Actors" instance=ExtResource("14_2ugqu")] +position = Vector2(-80, 250) + +[node name="Colonel" type="Area2D" parent="Tilemaps/Actors" groups=["Interactable"]] +position = Vector2(-80, 262) +collision_layer = 68 +collision_mask = 0 +script = ExtResource("9_cr26l") +Events = Array[Object]([SubResource("Resource_2ugqu")]) +metadata/_edit_group_ = true + +[node name="Sprite2D" type="Sprite2D" parent="Tilemaps/Actors/Colonel"] +position = Vector2(0, -12.115) +texture = SubResource("AtlasTexture_cr26l") + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Tilemaps/Actors/Colonel"] +shape = SubResource("CircleShape2D_cr26l") + [node name="Mainframe2" parent="Tilemaps/Actors" instance=ExtResource("17_u3bx7")] position = Vector2(275, 511) @@ -115,9 +135,46 @@ position = Vector2(287, 511) [node name="Chair" parent="Tilemaps/Actors" instance=ExtResource("14_2ugqu")] position = Vector2(43, 286) +Direction = 3 -[node name="Chair2" parent="Tilemaps/Actors" instance=ExtResource("14_2ugqu")] -position = Vector2(-80, 250) +[node name="Computer" parent="Tilemaps/Actors" instance=ExtResource("15_ce68b")] +position = Vector2(17, 517) + +[node name="Computer2" parent="Tilemaps/Actors" instance=ExtResource("15_ce68b")] +position = Vector2(79, 517) + +[node name="Computer3" parent="Tilemaps/Actors" instance=ExtResource("15_ce68b")] +position = Vector2(-17, 517) + +[node name="Computer5" parent="Tilemaps/Actors" instance=ExtResource("15_ce68b")] +position = Vector2(-90, 260) +Direction = 0 + +[node name="Computer6" parent="Tilemaps/Actors" instance=ExtResource("15_ce68b")] +position = Vector2(55, 287) +Direction = 2 + +[node name="Computer4" parent="Tilemaps/Actors" instance=ExtResource("15_ce68b")] +position = Vector2(104, 517) + +[node name="Chair3" parent="Tilemaps/Actors" instance=ExtResource("14_2ugqu")] +position = Vector2(-17, 531) +Direction = 0 + +[node name="Chair4" parent="Tilemaps/Actors" instance=ExtResource("14_2ugqu")] +position = Vector2(17, 531) +Direction = 0 + +[node name="Chair5" parent="Tilemaps/Actors" instance=ExtResource("14_2ugqu")] +position = Vector2(79, 531) +Direction = 0 + +[node name="Chair6" parent="Tilemaps/Actors" instance=ExtResource("14_2ugqu")] +position = Vector2(104, 532) +Direction = 0 + +[node name="VerticalDoor" parent="Tilemaps/Actors" instance=ExtResource("16_cjue1")] +position = Vector2(292, 408) [node name="ControlPad" parent="Tilemaps" node_paths=PackedStringArray("Targets") instance=ExtResource("9_700kw")] position = Vector2(134, 371) diff --git a/Scenes/Props/Chair.tscn b/Scenes/Props/Chair.tscn index 6e26085c..937f28f3 100644 --- a/Scenes/Props/Chair.tscn +++ b/Scenes/Props/Chair.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=14 format=3 uid="uid://bjb1xv0ny1qim"] +[gd_scene load_steps=15 format=3 uid="uid://bjb1xv0ny1qim"] [ext_resource type="Texture2D" uid="uid://c8rj2wjj7ho3j" path="res://Sprites/Props/Chair.png" id="1_a0rvv"] [ext_resource type="Script" uid="uid://0hfmpf6i0icv" path="res://Scripts/Actors/Chair.cs" id="1_yxrrg"] +[ext_resource type="Script" uid="uid://rlevd6krqglv" path="res://Scripts/Components/SpriteAnimationStartupRotator.cs" id="3_eq5fp"] [sub_resource type="AtlasTexture" id="AtlasTexture_yxrrg"] atlas = ExtResource("1_a0rvv") @@ -102,6 +103,7 @@ SpinTime = 1.0 [node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] sprite_frames = SubResource("SpriteFrames_hgjbl") animation = &"Down" +script = ExtResource("3_eq5fp") [node name="CollisionShape2D" type="CollisionShape2D" parent="."] position = Vector2(0.5, -1) diff --git a/Scenes/test.tscn b/Scenes/test.tscn index f12f7470..46a478db 100644 --- a/Scenes/test.tscn +++ b/Scenes/test.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=117 format=4 uid="uid://bv451a8wgty4u"] +[gd_scene load_steps=118 format=4 uid="uid://bv451a8wgty4u"] [ext_resource type="Script" uid="uid://doxmbokehw8ci" path="res://Scripts/GameManager.cs" id="1_8tmoj"] [ext_resource type="PackedScene" uid="uid://c4pr2707hbeph" path="res://Scenes/Actors/fsm_player.tscn" id="2_ksslq"] @@ -56,6 +56,7 @@ [ext_resource type="PackedScene" uid="uid://dnbtou2fklyvp" path="res://Scenes/Actors/alarm_sign.tscn" id="36_rd6f6"] [ext_resource type="PackedScene" uid="uid://c8lgk4wnyi1e6" path="res://Scenes/Actors/HealthStation.tscn" id="38_kuhg5"] [ext_resource type="Script" uid="uid://donxnd50p7dm8" path="res://Scripts/Resources/Events/AlarmDisableEvent.cs" id="40_7qam0"] +[ext_resource type="Script" uid="uid://b5fesrd4lv8t1" path="res://Scripts/Resources/Events/EventResource.cs" id="42_gd7x4"] [ext_resource type="Script" uid="uid://d0a0o50j82eo6" path="res://Scripts/Activables/ScriptableBase.cs" id="42_wigyb"] [ext_resource type="PackedScene" uid="uid://fxvlaidieiv7" path="res://Scenes/Interactable/ScriptableAreaTrigger.tscn" id="43_kf3qc"] [ext_resource type="Script" uid="uid://dkihoo85jfec5" path="res://Scripts/Resources/Events/MovePlayerEvent.cs" id="44_klwgh"] @@ -125,7 +126,7 @@ WaitForCompletion = true [sub_resource type="Resource" id="Resource_b25hy"] script = ExtResource("46_i0omr") -TimelineName = &"timeline" +TimelineName = &"testintro" WaitForCompletion = true [sub_resource type="CircleShape2D" id="CircleShape2D_8wuck"] @@ -133,14 +134,14 @@ WaitForCompletion = true [sub_resource type="Resource" id="Resource_ji7au"] resource_local_to_scene = true script = ExtResource("46_i0omr") -TimelineName = &"timeline" +TimelineName = &"computer2" WaitForCompletion = true metadata/_custom_type_script = "uid://ddv26x2qilprb" [sub_resource type="Resource" id="Resource_fasrq"] resource_local_to_scene = true script = ExtResource("46_i0omr") -TimelineName = &"timeline" +TimelineName = &"compuer_control_1" WaitForCompletion = true metadata/_custom_type_script = "uid://ddv26x2qilprb" @@ -162,7 +163,7 @@ WaitForCompletion = true [sub_resource type="Resource" id="Resource_068l7"] script = ExtResource("46_i0omr") -TimelineName = &"timeline" +TimelineName = &"rumia_defeat" WaitForCompletion = true [sub_resource type="Resource" id="Resource_l3nop"] @@ -189,7 +190,7 @@ WaitForCompletion = true [sub_resource type="Resource" id="Resource_b1dht"] script = ExtResource("46_i0omr") -TimelineName = &"timeline" +TimelineName = &"Rumia_Intro" WaitForCompletion = true [sub_resource type="Resource" id="Resource_xrgpy"] @@ -198,7 +199,7 @@ ActivationType = 0 Targets = Array[NodePath]([NodePath("../Rumia")]) WaitForCompletion = true -[sub_resource type="Resource" id="Resource_bwt6v"] +[sub_resource type="Resource" id="Resource_gd7x4"] resource_local_to_scene = true script = ExtResource("49_0si7g") Target = NodePath(".") @@ -524,7 +525,7 @@ Invisible = true metadata/_edit_group_ = true [node name="ScriptableAreaTrigger" parent="Factory Tilemaps/LevelProps/DebugTeleporter" instance=ExtResource("43_kf3qc")] -Events = Array[Object]([SubResource("Resource_usuub")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_usuub")]) [node name="BlueKeycard2" parent="Factory Tilemaps/LevelProps" instance=ExtResource("35_rblsn")] position = Vector2(-1032, -317) @@ -605,7 +606,7 @@ Target = NodePath("../HorizontalDoor") [node name="AlarmBox" parent="Factory Tilemaps/LevelProps" instance=ExtResource("17_dppcs")] position = Vector2(-713, -153) -Events = Array[Object]([SubResource("Resource_hppa0")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_hppa0")]) [node name="Teleporter" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("30_8fdby")] position = Vector2(-808, -167) @@ -691,20 +692,20 @@ Target = NodePath("../HorizontalDoor4") [node name="AlarmBox8" parent="Factory Tilemaps/LevelProps" instance=ExtResource("17_dppcs")] position = Vector2(-1174, 133) -Events = Array[Object]([SubResource("Resource_hppa0")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_hppa0")]) [node name="AlarmBox10" parent="Factory Tilemaps/LevelProps" instance=ExtResource("17_dppcs")] position = Vector2(-1256, -55) -Events = Array[Object]([SubResource("Resource_hppa0")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_hppa0")]) [node name="AlarmBox9" parent="Factory Tilemaps/LevelProps" instance=ExtResource("17_dppcs")] position = Vector2(-1506, -188) -Events = Array[Object]([SubResource("Resource_hppa0")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_hppa0")]) [node name="LevelStartTrigger" parent="Factory Tilemaps/LevelProps" instance=ExtResource("43_kf3qc")] position = Vector2(-781, -160) scale = Vector2(1.455, 1.455) -Events = Array[Object]([SubResource("Resource_5er5x"), SubResource("Resource_b25hy")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_5er5x"), SubResource("Resource_b25hy")]) [node name="AreaTrigger2" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("28_6au4t")] position = Vector2(-435, -162) @@ -740,12 +741,13 @@ _trackName = "computer1" [node name="Computer2" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Targets") instance=ExtResource("31_243ec")] position = Vector2(-1464, -276) +Direction = 2 Targets = [NodePath("Script2")] [node name="Script2" type="Node2D" parent="Factory Tilemaps/LevelProps/Computer2"] position = Vector2(120, 25) script = ExtResource("42_wigyb") -Events = Array[Object]([SubResource("Resource_ji7au")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_ji7au")]) [node name="Computer5" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Targets") instance=ExtResource("31_243ec")] position = Vector2(-1344, -251) @@ -753,7 +755,7 @@ Targets = [NodePath("Computer5Script")] [node name="Computer5Script" type="Node2D" parent="Factory Tilemaps/LevelProps/Computer5"] script = ExtResource("42_wigyb") -Events = Array[Object]([SubResource("Resource_fasrq"), SubResource("Resource_yot54")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_fasrq"), SubResource("Resource_yot54")]) [node name="Computer3" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("31_243ec")] position = Vector2(-612.57, -358.528) @@ -761,7 +763,7 @@ Target = NodePath("Script") [node name="Script" type="Node2D" parent="Factory Tilemaps/LevelProps/Computer3"] script = ExtResource("42_wigyb") -Events = Array[Object]([SubResource("Resource_o2kpk")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_o2kpk")]) [node name="Computer4" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("31_243ec")] position = Vector2(-791, -505) @@ -769,7 +771,7 @@ Target = NodePath("Node2D") [node name="Node2D" type="Node2D" parent="Factory Tilemaps/LevelProps/Computer4"] script = ExtResource("42_wigyb") -Events = Array[Object]([SubResource("Resource_s3g2w")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_s3g2w")]) [node name="Label" type="Label" parent="Factory Tilemaps/LevelProps/Computer4"] offset_left = -5.0 @@ -797,11 +799,11 @@ position = Vector2(-792, -407) [node name="BossBattleEndScript" type="Node2D" parent="Factory Tilemaps/LevelProps"] position = Vector2(-1628.53, -477.628) script = ExtResource("42_wigyb") -Events = Array[Object]([SubResource("Resource_068l7"), SubResource("Resource_l3nop")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_068l7"), SubResource("Resource_l3nop")]) [node name="BossBattleStartScript" parent="Factory Tilemaps/LevelProps" instance=ExtResource("43_kf3qc")] position = Vector2(-1487, -396) -Events = Array[Object]([SubResource("Resource_4f4id"), SubResource("Resource_s2o7m"), SubResource("Resource_b1dht"), SubResource("Resource_xrgpy"), SubResource("Resource_bwt6v")]) +Events = Array[ExtResource("42_gd7x4")]([SubResource("Resource_4f4id"), SubResource("Resource_s2o7m"), SubResource("Resource_b1dht"), SubResource("Resource_xrgpy"), SubResource("Resource_gd7x4")]) [node name="Enemy13" parent="Factory Tilemaps/LevelProps" instance=ExtResource("47_u1ve6")] position = Vector2(-1657, -788) @@ -987,7 +989,7 @@ position = Vector2(-2000, -736) [node name="ControlPad8" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Targets") instance=ExtResource("12_hfkf1")] position = Vector2(-2027, -735) Targets = [NodePath("../HorizontalForceField")] -Requirements = Array[ExtResource("6_8tdlb")]([ExtResource("84_ma1ta")]) +Requirements = [ExtResource("84_ma1ta")] [node name="Ammo6" parent="Factory Tilemaps/LevelProps" instance=ExtResource("34_17pjh")] position = Vector2(-872, -220) diff --git a/Scripts/Actors/Chair.cs b/Scripts/Actors/Chair.cs index 7a100865..9c6ecb4a 100644 --- a/Scripts/Actors/Chair.cs +++ b/Scripts/Actors/Chair.cs @@ -1,11 +1,13 @@ using Godot; using System; using System.Threading.Tasks; +using Cirno.Scripts.Components; +using Cirno.Scripts.Enums; -public partial class Chair : StaticBody2D +public partial class Chair : StaticBody2D, IIRotateable { [Export] - public ChairDirection Direction { get; private set; } = ChairDirection.Down; + public Direction Direction { get; set; } = Direction.Down; private AnimatedSprite2D _animatedSprite; @@ -20,7 +22,7 @@ public partial class Chair : StaticBody2D { _animatedSprite = GetNode("AnimatedSprite2D"); - _animatedSprite.Play(Direction.ToString()); + //_animatedSprite.Play(Direction.ToString()); } public override void _Process(double delta) @@ -44,13 +46,5 @@ public partial class Chair : StaticBody2D _timer = 0; } - - public enum ChairDirection - { - Up, - Down, - Left, - Right, - } } diff --git a/Scripts/Actors/Computer.cs b/Scripts/Actors/Computer.cs new file mode 100644 index 00000000..ddbfb701 --- /dev/null +++ b/Scripts/Actors/Computer.cs @@ -0,0 +1,13 @@ +using Cirno.Scripts.Components; +using Cirno.Scripts.Enums; +using Cirno.Scripts.Interactables; +using Godot; + +namespace Cirno.Scripts.Actors; + +public partial class Computer : Switch, IIRotateable +{ + [Export] + public Direction Direction { get; set; } = Direction.Down; + +} \ No newline at end of file diff --git a/Scripts/Actors/Computer.cs.uid b/Scripts/Actors/Computer.cs.uid new file mode 100644 index 00000000..3635455b --- /dev/null +++ b/Scripts/Actors/Computer.cs.uid @@ -0,0 +1 @@ +uid://ck54glo7xbuq8 diff --git a/Scripts/Components/IIRotateable.cs b/Scripts/Components/IIRotateable.cs new file mode 100644 index 00000000..cde06f2f --- /dev/null +++ b/Scripts/Components/IIRotateable.cs @@ -0,0 +1,8 @@ +using Cirno.Scripts.Enums; + +namespace Cirno.Scripts.Components; + +public interface IIRotateable +{ + public Direction Direction { get; set; } +} \ No newline at end of file diff --git a/Scripts/Components/SpriteAnimationStartupRotator.cs b/Scripts/Components/SpriteAnimationStartupRotator.cs new file mode 100644 index 00000000..3258206e --- /dev/null +++ b/Scripts/Components/SpriteAnimationStartupRotator.cs @@ -0,0 +1,16 @@ +using Cirno.Scripts.Enums; +using Godot; + +namespace Cirno.Scripts.Components; + +public partial class SpriteAnimationStartupRotator : AnimatedSprite2D +{ + public override void _Ready() + { + var parent = GetParent(); + + var sprite = GetParent().GetNode("AnimatedSprite2D"); + + sprite.Play(parent.Direction.ToString()); + } +} \ No newline at end of file diff --git a/Scripts/Components/SpriteAnimationStartupRotator.cs.uid b/Scripts/Components/SpriteAnimationStartupRotator.cs.uid new file mode 100644 index 00000000..d271c029 --- /dev/null +++ b/Scripts/Components/SpriteAnimationStartupRotator.cs.uid @@ -0,0 +1 @@ +uid://rlevd6krqglv diff --git a/Scripts/Enums/Direction.cs b/Scripts/Enums/Direction.cs new file mode 100644 index 00000000..69322ced --- /dev/null +++ b/Scripts/Enums/Direction.cs @@ -0,0 +1,9 @@ +namespace Cirno.Scripts.Enums; + +public enum Direction +{ + Up, + Down, + Left, + Right, +} \ No newline at end of file diff --git a/Sprites/Props/Computer2.aseprite b/Sprites/Props/Computer2.aseprite index 25ed322c..dc714267 100644 --- a/Sprites/Props/Computer2.aseprite +++ b/Sprites/Props/Computer2.aseprite @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:61cb0dbbcd315b34576e224fec2fe982d1224f5d66d160ee221891f8143a4229 -size 1729 +oid sha256:fc36374496bf2f6f4eb9001da966cb4fbbb2ec27ec8c00594828b39e98e1eb03 +size 2003 diff --git a/Sprites/Props/Computer2.png b/Sprites/Props/Computer2.png index 6135b043..1b712657 100644 --- a/Sprites/Props/Computer2.png +++ b/Sprites/Props/Computer2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:903f1e2e4e60d306003c725191e23d6e650a5f8b8fd1a139310fbf0a5521e691 -size 519 +oid sha256:f50eb14811475bda49891185bd2a7b6c9ac68ec7dea34ce010626b91f9718e76 +size 572