diff --git a/project.godot b/project.godot index e012de52b9..a592060138 100644 --- a/project.godot +++ b/project.godot @@ -297,7 +297,10 @@ locale/translations_pot_files=PackedStringArray("res://scenes/menus/title/compon 2d_physics/layer_8="enemies hitbox" 2d_physics/layer_9="repellable" 2d_physics/layer_10="non_walkable_floor" +2d_physics/layer_11="bridge" +2d_physics/layer_12="bridge_edge" 2d_physics/layer_13="hookable" +2d_physics/layer_14="void" [physics] diff --git a/scenes/game_elements/characters/components/bridge_gym.tscn b/scenes/game_elements/characters/components/bridge_gym.tscn new file mode 100644 index 0000000000..fad48f2c59 --- /dev/null +++ b/scenes/game_elements/characters/components/bridge_gym.tscn @@ -0,0 +1,201 @@ +[gd_scene format=4 uid="uid://bjp4hviy07lsm"] + +[ext_resource type="TileSet" uid="uid://oynx002hv8tl" path="res://tiles/water.tres" id="1_38mc3"] +[ext_resource type="TileSet" uid="uid://b8qnr0owsbhhn" path="res://tiles/exterior_floors.tres" id="3_dm6f1"] +[ext_resource type="TileSet" uid="uid://do0ffypatd77h" path="res://tiles/bridges.tres" id="4_5gjxp"] +[ext_resource type="Material" uid="uid://64aeyjitacv3" path="res://scenes/game_elements/props/void/void_chromakey_material.tres" id="4_ecrva"] +[ext_resource type="TileSet" uid="uid://ciq5guijvlyb0" path="res://tiles/void_chromakey.tres" id="5_acu0n"] +[ext_resource type="PackedScene" uid="uid://dgrrudegturnw" path="res://scenes/game_elements/characters/npcs/townie.tscn" id="5_fvumg"] +[ext_resource type="TileSet" uid="uid://b778cuoftt88r" path="res://tiles/elevation_2.tres" id="6_bxm7h"] +[ext_resource type="Script" uid="uid://dagrhfrj0f33i" path="res://scenes/game_logic/camera_behaviors/frame_camera_behavior.gd" id="6_g7lcl"] +[ext_resource type="PackedScene" uid="uid://dohb701lxbe5s" path="res://scenes/game_elements/props/hookable_needle/hookable_needle.tscn" id="6_laptb"] +[ext_resource type="PackedScene" uid="uid://evb46lm6ssu2" path="res://scenes/game_elements/props/hookable_pin/hookable_pin.tscn" id="7_g7lcl"] +[ext_resource type="Script" uid="uid://id28maao3vdy" path="res://scenes/game_logic/walk_behaviors/path_walk_behavior.gd" id="14_cvbam"] +[ext_resource type="Script" uid="uid://csev4hv57utxv" path="res://scenes/game_logic/walk_behaviors/character_speeds.gd" id="15_2m3fx"] +[ext_resource type="PackedScene" uid="uid://d37mebu7atru7" path="res://scenes/game_elements/characters/enemies/guard/guard.tscn" id="16_n8plq"] +[ext_resource type="SpriteFrames" uid="uid://d1k25io0tiiij" path="res://scenes/game_elements/characters/enemies/guard/components/storyvoretorch_frames_blue.tres" id="17_bxm7h"] +[ext_resource type="AudioStream" uid="uid://dgpeb1dtmfqud" path="res://assets/third_party/sounds/characters/enemies/guard/AlertSound.ogg" id="18_i16x3"] +[ext_resource type="AudioStream" uid="uid://4ec6e2alns71" path="res://assets/third_party/sounds/characters/enemies/guard/GrassFoot.ogg" id="19_6bk2g"] +[ext_resource type="AudioStream" uid="uid://c7om8kdork2rx" path="res://assets/third_party/sounds/characters/enemies/guard/Torch.ogg" id="20_38mc3"] +[ext_resource type="AudioStream" uid="uid://bwif2oo6ymiu2" path="res://assets/third_party/sounds/characters/enemies/guard/TorchHit.ogg" id="21_10wm7"] +[ext_resource type="Script" uid="uid://cwoclmik3db2" path="res://scenes/game_logic/walk_behaviors/follow_walk_behavior.gd" id="22_w1003"] +[ext_resource type="Script" uid="uid://dn4ijphw4e84s" path="res://scenes/game_logic/bridge_crossing_behavior.gd" id="23_xw04w"] +[ext_resource type="PackedScene" uid="uid://iu2q66clupc6" path="res://scenes/game_elements/characters/player/player.tscn" id="24_bnhx6"] +[ext_resource type="SpriteFrames" uid="uid://07di3updrwh0" path="res://scenes/game_elements/characters/components/sprite_frames/storyweaver_purple.tres" id="25_yy51g"] + +[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_acu0n"] +radius = 5.0 +height = 21.0 + +[sub_resource type="Resource" id="Resource_ah1i7"] +script = ExtResource("15_2m3fx") +walk_speed = 150.0 +run_speed = 150.0 +metadata/_custom_type_script = "uid://csev4hv57utxv" + +[sub_resource type="Curve2D" id="Curve2D_2m3fx"] +_data = { +"points": PackedVector2Array(0, 0, 0, 0, -217, -281, 0, 0, 0, 0, 339, -291) +} +point_count = 2 + +[sub_resource type="Curve2D" id="Curve2D_dm6f1"] +_data = { +"points": PackedVector2Array(0, 0, 0, 0, -1350, -573, 0, 0, 0, 0, -462, -577) +} +point_count = 2 + +[node name="CharacterRandomizerTest" type="Node2D" unique_id=136000252] + +[node name="TileMapLayers" type="Node2D" parent="." unique_id=1483527644] + +[node name="Water" type="TileMapLayer" parent="TileMapLayers" unique_id=2123466117] +tile_map_data = PackedByteArray("AAD4//n/AAAAAAAAAAD5//n/AAAAAAAAAAD6//n/AAAAAAAAAAD7//n/AAAAAAAAAAD8//n/AAAAAAAAAAD9//n/AAAAAAAAAAD+//n/AAAAAAAAAAD///n/AAAAAAAAAAAAAPn/AAAAAAAAAAABAPn/AAAAAAAAAAACAPn/AAAAAAAAAAADAPn/AAAAAAAAAAAEAPn/AAAAAAAAAAAFAPn/AAAAAAAAAAAGAPn/AAAAAAAAAAAHAPn/AAAAAAAAAAAIAPn/AAAAAAAAAAAJAPn/AAAAAAAAAAAKAPn/AAAAAAAAAAALAPn/AAAAAAAAAAAMAPn/AAAAAAAAAAANAPn/AAAAAAAAAAAOAPn/AAAAAAAAAAAPAPn/AAAAAAAAAAAQAPn/AAAAAAAAAAARAPn/AAAAAAAAAAARAPr/AAAAAAAAAAARAPv/AAAAAAAAAAARAPz/AAAAAAAAAAARAP3/AAAAAAAAAAARAP7/AAAAAAAAAAARAP//AAAAAAAAAAARAAAAAAAAAAAAAAARAAEAAAAAAAAAAAARAAIAAAAAAAAAAAARAAMAAAAAAAAAAAARAAQAAAAAAAAAAAARAAUAAAAAAAAAAAARAAYAAAAAAAAAAAARAAcAAAAAAAAAAAARAAgAAAAAAAAAAAARAAkAAAAAAAAAAAARAAoAAAAAAAAAAAAQAAoAAAAAAAAAAAAPAAoAAAAAAAAAAAAOAAoAAAAAAAAAAAANAAoAAAAAAAAAAAAMAAoAAAAAAAAAAAALAAoAAAAAAAAAAAAKAAoAAAAAAAAAAAAJAAoAAAAAAAAAAAAIAAoAAAAAAAAAAAAHAAoAAAAAAAAAAAAGAAoAAAAAAAAAAAAFAAoAAAAAAAAAAAD4/wYAAAAAAAAAAAD4/wUAAAAAAAAAAAD4/wQAAAAAAAAAAAD4/wMAAAAAAAAAAAD4/wIAAAAAAAAAAAD4/wEAAAAAAAAAAAD4/wAAAAAAAAAAAAD4////AAAAAAAAAAD4//7/AAAAAAAAAAD4//3/AAAAAAAAAAD4//z/AAAAAAAAAAD4//v/AAAAAAAAAAD4//r/AAAAAAAAAAD///r/AAAAAAAAAAD///v/AAAAAAAAAAD///z/AAAAAAAAAAD///3/AAAAAAAAAAD///7/AAAAAAAAAAD/////AAAAAAAAAAD//wAAAAAAAAAAAAD//wEAAAAAAAAAAAD//wIAAAAAAAAAAAD//wMAAAAAAAAAAAD//wQAAAAAAAAAAAD//wUAAAAAAAAAAAD//wYAAAAAAAAAAAAAAPr/AAAAAAAAAAAAAPv/AAAAAAAAAAAAAPz/AAAAAAAAAAAAAP3/AAAAAAAAAAAAAP7/AAAAAAAAAAAAAP//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAYAAAAAAAAAAAABAPr/AAAAAAAAAAABAPv/AAAAAAAAAAABAPz/AAAAAAAAAAABAP3/AAAAAAAAAAABAP7/AAAAAAAAAAABAP//AAAAAAAAAAABAAAAAAAAAAAAAAABAAEAAAAAAAAAAAABAAIAAAAAAAAAAAABAAMAAAAAAAAAAAABAAQAAAAAAAAAAAABAAUAAAAAAAAAAAABAAYAAAAAAAAAAQACAPr/AAAAAAAAAAACAPv/AAAAAAAAAAACAPz/AAAAAAAAAAACAP3/AAAAAAAAAAACAP7/AAAAAAAAAAACAP//AAAAAAAAAAACAAAAAAAAAAAAAAACAAEAAAAAAAAAAAACAAIAAAAAAAAAAAACAAMAAAAAAAAAAAACAAQAAAAAAAAAAAACAAUAAAAAAAAAAAACAAYAAAAAAAAAAQAFAAkAAAAAAAAAAAAGAAkAAAAAAAAAAAAHAAkAAAAAAAAAAAAIAAkAAAAAAAAAAAAJAAkAAAAAAAAAAAAKAAkAAAAAAAAAAAAIAPr/AAAAAAAAAAAIAPv/AAAAAAAAAAAIAPz/AAAAAAAAAAAIAP3/AAAAAAAAAAAIAP7/AAAAAAAAAAAIAP//AAAAAAAAAAAIAAAAAAAAAAAAAAAIAAEAAAAAAAAAAAAIAAIAAAAAAAAAAAAIAAMAAAAAAAAAAAAIAAQAAAAAAAAAAAAIAAUAAAAAAAAAAAAIAAYAAAAAAAAAAAAIAAcAAAAAAAAAAAAIAAgAAAAAAAAAAAAJAPr/AAAAAAAAAAAJAPv/AAAAAAAAAAAJAPz/AAAAAAAAAAAJAP3/AAAAAAAAAAAJAP7/AAAAAAAAAAAJAP//AAAAAAAAAAAJAAAAAAAAAAAAAAAJAAEAAAAAAAAAAAAJAAIAAAAAAAAAAAAJAAMAAAAAAAAAAAAJAAQAAAAAAAAAAAAJAAUAAAAAAAAAAAAJAAYAAAAAAAAAAAAJAAcAAAAAAAAAAAAJAAgAAAAAAAAAAAAKAPr/AAAAAAAAAAAKAPv/AAAAAAAAAAAKAPz/AAAAAAAAAAAKAP3/AAAAAAAAAAAKAP7/AAAAAAAAAAAKAP//AAAAAAAAAAAKAAEAAAAAAAAAAAAKAAIAAAAAAAAAAAAKAAMAAAAAAAAAAAAKAAQAAAAAAAAAAAAKAAUAAAAAAAAAAAAKAAYAAAAAAAAAAAAKAAcAAAAAAAAAAAAKAAgAAAAAAAAAAAD5//7/AAAAAAAAAAD5////AAAAAAAAAAD6//7/AAAAAAAAAAD6////AAAAAAAAAAD7//7/AAAAAAAAAAD7////AAAAAAAAAAD8//7/AAAAAAAAAAD8////AAAAAAAAAAD9//7/AAAAAAAAAAD9////AAAAAAAAAAD+//7/AAAAAAAAAAD+////AAAAAAAAAAADAP7/AAAAAAAAAAADAP//AAAAAAAAAAAEAP7/AAAAAAAAAAAEAP//AAAAAAAAAAAFAP7/AAAAAAAAAAAFAP//AAAAAAAAAAAGAP7/AAAAAAAAAAAGAP//AAAAAAAAAAAHAP7/AAAAAAAAAAAHAP//AAAAAAAAAAD7/wQAAAAAAAAAAAD7/wUAAAAAAAAAAAD8/wQAAAAAAAAAAAD8/wUAAAAAAAAAAAD9/wQAAAAAAAAAAAD9/wUAAAAAAAAAAAD+/wQAAAAAAAAAAAD+/wUAAAAAAAAAAAADAAQAAAAAAAAAAAADAAUAAAAAAAAAAAAEAAQAAAAAAAAAAAAEAAUAAAAAAAAAAAAFAAQAAAAAAAAAAAAFAAUAAAAAAAAAAAAGAAQAAAAAAAAAAAAGAAUAAAAAAAAAAAAHAAQAAAAAAAAAAAAHAAUAAAAAAAAAAAAGAAYAAAAAAAAAAAAGAAcAAAAAAAAAAAAHAAYAAAAAAAAAAAAHAAcAAAAAAAAAAAADAAYAAAAAAAAAAQAEAAYAAAAAAAAAAAALAP7/AAAAAAAAAAALAP//AAAAAAAAAAALAAQAAAAAAAAAAAALAAUAAAAAAAAAAAALAAYAAAAAAAAAAAAMAP7/AAAAAAAAAAAMAP//AAAAAAAAAAAMAAQAAAAAAAAAAAAMAAUAAAAAAAAAAAAMAAYAAAAAAAAAAAANAP7/AAAAAAAAAAANAP//AAAAAAAAAAANAAQAAAAAAAAAAAANAAUAAAAAAAAAAAANAAYAAAAAAAAAAAAOAP7/AAAAAAAAAAAOAP//AAAAAAAAAAAOAAQAAAAAAAAAAAAOAAUAAAAAAAAAAAAOAAYAAAAAAAAAAAAPAP7/AAAAAAAAAAAPAP//AAAAAAAAAAAPAAQAAAAAAAAAAAAPAAUAAAAAAAAAAAAPAAYAAAAAAAAAAAAQAP7/AAAAAAAAAAAQAP//AAAAAAAAAAAQAAQAAAAAAAAAAAAQAAUAAAAAAAAAAAAQAAYAAAAAAAAAAAAKAAAAAAAAAAAAAAD5/wYAAAAAAAAAAAD6/wYAAAAAAAAAAAD7/wYAAAAAAAAAAAD8/wYAAAAAAAAAAAD9/wYAAAAAAAAAAAD+/wYAAAAAAAAAAAD5/wIAAAAAAAAAAAD6/wIAAAAAAAAAAAD7/wIAAAAAAAAAAAD7/wMAAAAAAAAAAAD8/wIAAAAAAAAAAAD8/wMAAAAAAAAAAAD9/wIAAAAAAAAAAAD9/wMAAAAAAAAAAAD+/wIAAAAAAAAAAAD+/wMAAAAAAAAAAAD4//f/AAAAAAAAAAD4//j/AAAAAAAAAAD5//f/AAAAAAAAAAD6//f/AAAAAAAAAAD7//f/AAAAAAAAAAD8//f/AAAAAAAAAAD9//f/AAAAAAAAAAD+//f/AAAAAAAAAAD///f/AAAAAAAAAAAAAPf/AAAAAAAAAAABAPf/AAAAAAAAAAACAPf/AAAAAAAAAAADAPf/AAAAAAAAAAAEAPf/AAAAAAAAAAAFAPf/AAAAAAAAAAAGAPf/AAAAAAAAAAAHAPf/AAAAAAAAAAAIAPf/AAAAAAAAAAAIAPj/AAAAAAAAAAAJAPf/AAAAAAAAAAAJAPj/AAAAAAAAAAAKAPf/AAAAAAAAAAAKAPj/AAAAAAAAAAALAPf/AAAAAAAAAAALAPj/AAAAAAAAAAAMAPf/AAAAAAAAAAAMAPj/AAAAAAAAAAANAPf/AAAAAAAAAAANAPj/AAAAAAAAAAAOAPf/AAAAAAAAAAAOAPj/AAAAAAAAAAAPAPf/AAAAAAAAAAAPAPj/AAAAAAAAAAAQAPf/AAAAAAAAAAAQAPj/AAAAAAAAAAARAPf/AAAAAAAAAAARAPj/AAAAAAAAAAD///j/AAAAAAAAAAAAAPj/AAAAAAAAAAABAPj/AAAAAAAAAAACAPj/AAAAAAAAAAD+/wcAAAAAAAAAAAD+/wgAAAAAAAAAAAD+/wkAAAAAAAAAAAD+/woAAAAAAAAAAAD//wcAAAAAAAAAAAD//wgAAAAAAAAAAAD//wkAAAAAAAAAAAD//woAAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAkAAAAAAAAAAAAAAAoAAAAAAAAAAAD+/wsAAAAAAAAAAAD//wsAAAAAAAAAAAAAAAsAAAAAAAAAAAABAAsAAAAAAAAAAAACAAsAAAAAAAAAAAADAAsAAAAAAAAAAAAEAAsAAAAAAAAAAAAFAAsAAAAAAAAAAAAGAAsAAAAAAAAAAAD6/wcAAAAAAAAAAQD7/wcAAAAAAAAAAQD8/wcAAAAAAAAAAQD9/wcAAAAAAAAAAQD4/wcAAAAAAAAAAAD4/wgAAAAAAAAAAAD4/wkAAAAAAAAAAAD4/woAAAAAAAAAAAD4/wsAAAAAAAAAAAD5/wcAAAAAAAAAAAD5/wgAAAAAAAAAAAD5/wkAAAAAAAAAAAD5/woAAAAAAAAAAAD5/wsAAAAAAAAAAAD6/wsAAAAAAAAAAAD7/wsAAAAAAAAAAAD8/wsAAAAAAAAAAAD9/wsAAAAAAAAAAAD5/wMAAAAAAAAAAQD6/wMAAAAAAAAAAQAIAAsAAAAAAAAAAAAJAAsAAAAAAAAAAAAKAAsAAAAAAAAAAAALAAsAAAAAAAAAAAAMAAsAAAAAAAAAAAANAAsAAAAAAAAAAAAOAAsAAAAAAAAAAAAPAAsAAAAAAAAAAAAQAAsAAAAAAAAAAAARAAsAAAAAAAAAAAAHAAsAAAAAAAAAAAA=") +tile_set = ExtResource("1_38mc3") + +[node name="Grass" type="TileMapLayer" parent="TileMapLayers" unique_id=1802885670] +tile_map_data = PackedByteArray("AAD+/wEAAQACAAIAAAD+/wAAAQACAAAAAAD9/wEAAQABAAIAAAD9/wAAAQABAAAAAAD8/wEAAQABAAIAAAD8/wAAAQABAAAAAAD7/wEAAQABAAIAAAD7/wAAAQABAAAAAAD6/wEAAQABAAIAAAD6/wAAAQABAAAAAAD5/wEAAQAAAAIAAAD5/wAAAQAAAAAAAAAHAAMAAQACAAIAAAAHAAIAAQACAAEAAAAHAAEAAQACAAEAAAAHAAAAAQACAAAAAAAGAAMAAQABAAIAAAAGAAIAAQABAAEAAAAGAAEAAQABAAEAAAAGAAAAAQABAAAAAAAFAAMAAQABAAIAAAAFAAIAAQABAAEAAAAFAAEAAQABAAEAAAAFAAAAAQABAAAAAAAEAAMAAQABAAIAAAAEAAIAAQABAAEAAAAEAAEAAQABAAEAAAAEAAAAAQABAAAAAAADAAMAAQAAAAIAAAADAAIAAQAAAAEAAAADAAEAAQAAAAEAAAADAAAAAQAAAAAAAAAHAP3/AQACAAIAAAAHAPz/AQACAAEAAAAHAPv/AQACAAEAAAAHAPr/AQACAAAAAAAGAP3/AQABAAIAAAAGAPz/AQABAAEAAAAGAPv/AQABAAEAAAAGAPr/AQABAAAAAAAFAP3/AQABAAIAAAAFAPz/AQABAAEAAAAFAPv/AQABAAEAAAAFAPr/AQABAAAAAAAEAP3/AQABAAIAAAAEAPz/AQABAAEAAAAEAPv/AQABAAEAAAAEAPr/AQABAAAAAAADAP3/AQAAAAIAAAADAPz/AQAAAAEAAAADAPv/AQAAAAEAAAADAPr/AQAAAAAAAAAQAP3/AQACAAIAAAAQAPz/AQACAAEAAAAQAPv/AQACAAEAAAAQAPr/AQACAAAAAAAPAP3/AQABAAIAAAAPAPz/AQABAAEAAAAPAPv/AQABAAEAAAAPAPr/AQABAAAAAAAOAP3/AQABAAIAAAAOAPz/AQABAAEAAAAOAPv/AQABAAEAAAAOAPr/AQABAAAAAAANAP3/AQABAAIAAAANAPz/AQABAAEAAAANAPv/AQABAAEAAAANAPr/AQABAAAAAAAMAP3/AQABAAIAAAAMAPz/AQABAAEAAAAMAPv/AQABAAEAAAAMAPr/AQABAAAAAAALAP3/AQAAAAIAAAALAPz/AQAAAAEAAAALAPv/AQAAAAEAAAALAPr/AQAAAAAAAAAQAAgAAQACAAEAAAAQAAcAAQACAAAAAAAPAAgAAQABAAEAAAAPAAcAAQABAAAAAAAOAAgAAQABAAEAAAAOAAcAAQABAAAAAAANAAgAAQABAAEAAAANAAcAAQABAAAAAAAMAAgAAQABAAEAAAAMAAcAAQABAAAAAAALAAgAAQAAAAEAAAALAAcAAQAAAAAAAAAQAAkAAQACAAIAAAAPAAkAAQABAAIAAAAOAAkAAQABAAIAAAANAAkAAQABAAIAAAAMAAkAAQABAAIAAAALAAkAAQAAAAIAAAALAAAAAQAAAAAAAAALAAEAAQAAAAEAAAALAAIAAQAAAAEAAAALAAMAAQAAAAIAAAAMAAAAAQABAAAAAAAMAAEAAQABAAEAAAAMAAIAAQABAAEAAAAMAAMAAQABAAIAAAANAAAAAQABAAAAAAANAAEAAQABAAEAAAANAAIAAQABAAEAAAANAAMAAQABAAIAAAAOAAAAAQABAAAAAAAOAAEAAQABAAEAAAAOAAIAAQABAAEAAAAOAAMAAQABAAIAAAAPAAAAAQABAAAAAAAPAAEAAQABAAEAAAAPAAIAAQABAAEAAAAPAAMAAQABAAIAAAAQAAAAAQACAAAAAAAQAAEAAQACAAEAAAAQAAIAAQACAAEAAAAQAAMAAQACAAIAAAD+//3/AQACAAIAAAD+//z/AQACAAEAAAD+//v/AQACAAEAAAD+//r/AQACAAAAAAD9//3/AQABAAIAAAD9//z/AQABAAEAAAD9//v/AQABAAEAAAD9//r/AQABAAAAAAD8//3/AQABAAIAAAD8//z/AQABAAEAAAD8//v/AQABAAEAAAD8//r/AQABAAAAAAD7//3/AQABAAIAAAD7//z/AQABAAEAAAD7//v/AQABAAEAAAD7//r/AQABAAAAAAD6//3/AQABAAIAAAD6//z/AQABAAEAAAD6//v/AQABAAEAAAD6//r/AQABAAAAAAD5//3/AQAAAAIAAAD5//z/AQAAAAEAAAD5//v/AQAAAAEAAAD5//r/AQAAAAAAAAD+//j/AQACAAMAAAD9//j/AQABAAMAAAD8//j/AQABAAMAAAD7//j/AQABAAMAAAD6//j/AQABAAMAAAD5//j/AQAAAAMAAAAHAPj/AQACAAMAAAAGAPj/AQABAAMAAAAFAPj/AQABAAMAAAAEAPj/AQABAAMAAAADAPj/AQAAAAMAAAAFAAkAAQACAAIAAAAFAAgAAQACAAEAAAAFAAcAAQACAAAAAAAEAAkAAQABAAEAAAAEAAgAAQABAAEAAAAEAAcAAQABAAAAAAADAAkAAQABAAEAAAADAAgAAQABAAEAAAADAAcAAQABAAAAAAACAAkAAQABAAEAAAACAAgAAQABAAEAAAACAAcAAQABAAAAAAABAAkAAQAAAAEAAAABAAgAAQAAAAEAAAABAAcAAQAAAAAAAAAEAAoAAQACAAIAAAADAAoAAQABAAIAAAACAAoAAQABAAIAAAABAAoAAQAAAAIAAAA=") +tile_set = ExtResource("3_dm6f1") + +[node name="Sand" type="TileMapLayer" parent="TileMapLayers" unique_id=1537636464] +tile_map_data = PackedByteArray("AAALAAAAAQAFAAMAAAAMAAAAAQAHAAAAAAAMAAIAAQAGAAIAAAAMAAEAAQAIAAEAAAALAAIAAQAFAAMAAAAOAAIAAQAHAAAAAAANAAIAAQAGAAMAAAAOAAMAAQAIAAIAAAAOAAgAAQAHAAIAAAAOAAcAAQAIAAAAAAALAAgAAQAFAAMAAAAMAAgAAQAGAAMAAAANAAgAAQAGAAMAAAAFAAcAAQAIAAEAAAAGAAgAAQAGAAMAAAAHAAgAAQAHAAMAAAAFAAgAAQAGAAIAAAAFAAYAAQAIAAAAAAAFAAMAAQAIAAIAAAAFAAIAAQAFAAEAAAAFAAEAAQAHAAEAAAAFAAAAAQAFAAAAAAAEAAEAAQAGAAMAAAADAAEAAQAFAAMAAAAHAAAAAQAHAAMAAAAGAAAAAQAGAAMAAAAGAAIAAQAGAAMAAAAHAAIAAQAHAAMAAAD+/wEAAQAHAAIAAAD+/wAAAQAIAAAAAAD5/wEAAQAFAAIAAAD6/wEAAQAGAAMAAAD7/wEAAQAGAAMAAAD8/wEAAQAGAAIAAAD9/wEAAQAGAAMAAAD5/wAAAQAIAAAAAAD8//3/AQAIAAIAAAD+//3/AQAIAAIAAAD+//v/AQAHAAAAAAD5//3/AQAIAAIAAAD+//z/AQAIAAEAAAD7//v/AQAGAAMAAAD5//v/AQAFAAAAAAD5//z/AQAIAAEAAAD6//v/AQAGAAMAAAADAPv/AQAFAAMAAAAFAPv/AQAHAAAAAAAEAPv/AQAGAAMAAAAFAP3/AQAIAAIAAAAFAPz/AQAIAAEAAAAMAPz/AQAIAAEAAAAMAP3/AQAIAAIAAAAOAPv/AQAGAAAAAAANAPv/AQAGAAMAAAAMAPv/AQAFAAAAAAAPAPz/AQAHAAIAAAAPAPv/AQAHAAAAAAAOAPz/AQAFAAIAAAD8/wAAAQAIAAAAAAD8//z/AQAIAAEAAAD8//v/AQAGAAAAAAD9//v/AQAGAAMAAAAEAAgAAQAGAAMAAAADAAgAAQAGAAMAAAACAAgAAQAFAAMAAAA=") +tile_set = ExtResource("3_dm6f1") + +[node name="BridgeShadows" type="TileMapLayer" parent="TileMapLayers" unique_id=1311480422] +tile_set = ExtResource("4_5gjxp") + +[node name="Bridges" type="TileMapLayer" parent="TileMapLayers" unique_id=1252120220] +tile_map_data = PackedByteArray("AAAFAAYAAwAAAAMAAAAFAAUAAwAAAAIAAAAFAAQAAwAAAAIAAAAFAAMAAwAAAAEAAAALAAIAAwACAAAAAAAKAAIAAwABAAAAAAAJAAIAAwABAAAAAAAIAAIAAwABAAAAAAAHAAIAAwAAAAAAAAALAAAAAwACAAAAAAAKAAAAAwABAAAAAAAJAAAAAwABAAAAAAAIAAAAAwABAAAAAAAHAAAAAwAAAAAAAAAMAP3/AwAAAAEAAAAMAP7/AwAAAAIAAAAMAP//AwAAAAIAAAAMAAAAAwAAAAMAAAD+/wEAAwAAAAAAAAD//wEAAwABAAAAAAAAAAEAAwABAAAAAAABAAEAAwABAAAAAAACAAEAAwABAAAAAAADAAEAAwACAAAAAAD+//3/AwAAAAEAAAD+//7/AwAAAAIAAAD+////AwAAAAIAAAD+/wAAAwAAAAMAAAD5//3/AwAAAAEAAAD5//7/AwAAAAIAAAD5////AwAAAAIAAAD5/wAAAwAAAAMAAAALAAgAAwACAAAAAAAKAAgAAwABAAAAAAAJAAgAAwABAAAAAAAIAAgAAwABAAAAAAAHAAgAAwAAAAAAAAAFAP3/AwAAAAEAAAAFAP7/AwAAAAIAAAAFAP//AwAAAAIAAAAFAAAAAwAAAAMAAAADAPv/AwACAAAAAAACAPv/AwABAAAAAAABAPv/AwABAAAAAAAAAPv/AwABAAAAAAD///v/AwABAAAAAAD+//v/AwAAAAAAAAAOAAcAAwAAAAMAAAAOAAYAAwAAAAIAAAAOAAUAAwAAAAIAAAAOAAQAAwAAAAIAAAAOAAMAAwAAAAEAAAD8/wMAAwAAAAIAAAD8/wQAAwAAAAMAAQD8/wEAAwAAAAEAAAD8/wIAAwAAAAIAAAABAPj/AwABAAAAAAAAAPj/AwABAAAAAAD///j/AwABAAAAAAD+//j/AwAAAAAAAAACAPj/AwABAAAAAAADAPj/AwACAAAAAAA=") +tile_set = ExtResource("4_5gjxp") + +[node name="Void" type="TileMapLayer" parent="TileMapLayers" unique_id=1464084109] +material = ExtResource("4_ecrva") +tile_map_data = PackedByteArray("AAANAAUADQABAAAAAAAPAAUADQABAAAAAAAOAAUADQABAAMAAAAMAAUADQAAAAAAAAAJAAMADQADAAMAAAAJAP//DQADAAMAAAANAAYADQACAAEAAAAMAAYADQAAAAIAAAAQAAYADQACAAIAAAAPAAYADQAAAAIAAAAQAAUADQACAAAAAAANAAcADQADAAIAAAA=") +tile_set = ExtResource("5_acu0n") + +[node name="Cliffs" type="TileMapLayer" parent="TileMapLayers" unique_id=1848148639] +tile_map_data = PackedByteArray("AAADAAgABAACAAIAAAADAAcABAACAAEAAAACAAgABAABAAIAAQACAAcABAABAAEAAAABAAgABAAAAAIAAAABAAcABAAAAAEAAAACAAkABAADAAcAAAADAAYABAACAAAAAAACAAYABAABAAAAAAABAAYABAAAAAAAAAD9/wkABAACAAIAAAD9/wgABAACAAEAAAD9/wcABAACAAAAAAD8/wkABAABAAIAAAD8/wgABAABAAEAAAD8/wcABAABAAAAAAD7/wkABAABAAIAAAD7/wgABAABAAEAAAD7/wcABAABAAAAAAD6/wkABAAAAAIAAAD6/wgABAAAAAEAAAD6/wcABAAAAAAAAAD5/wMABAAAAAAAAAD6/wMABAACAAAAAAD6/wQABAACAAIAAAD5/wQABAAAAAIAAAA=") +tile_set = ExtResource("6_bxm7h") + +[node name="Bridges_1" type="TileMapLayer" parent="TileMapLayers" unique_id=1053340844] +tile_map_data = PackedByteArray("AAAFAAYAAwAAAAMAAAAFAAUAAwAAAAIAAAAFAAQAAwAAAAIAAAAFAAMAAwAAAAEAAAALAAIAAwACAAAAAAAKAAIAAwABAAAAAAAJAAIAAwABAAAAAAAIAAIAAwABAAAAAAAHAAIAAwAAAAAAAAALAAAAAwACAAAAAAAKAAAAAwABAAAAAAAJAAAAAwABAAAAAAAIAAAAAwABAAAAAAAHAAAAAwAAAAAAAAAMAP3/AwAAAAEAAAAMAP7/AwAAAAIAAAAMAP//AwAAAAIAAAAMAAAAAwAAAAMAAAD+/wEAAwAAAAAAAAD//wEAAwABAAAAAAAAAAEAAwABAAAAAAABAAEAAwABAAAAAAACAAEAAwABAAAAAAADAAEAAwACAAAAAAD+//3/AwAAAAEAAAD+//7/AwAAAAIAAAD+////AwAAAAIAAAD+/wAAAwAAAAMAAAD5//3/AwAAAAEAAAD5//7/AwAAAAIAAAD5////AwAAAAIAAAD5/wAAAwAAAAMAAAALAAgAAwACAAAAAAAKAAgAAwABAAAAAAAJAAgAAwABAAAAAAAIAAgAAwABAAAAAAAHAAgAAwAAAAAAAAAFAP3/AwAAAAEAAAAFAP7/AwAAAAIAAAAFAP//AwAAAAIAAAAFAAAAAwAAAAMAAAADAPv/AwACAAAAAAACAPv/AwABAAAAAAABAPv/AwABAAAAAAAAAPv/AwABAAAAAAD///v/AwABAAAAAAD+//v/AwAAAAAAAAAOAAcAAwAAAAMAAAAOAAYAAwAAAAIAAAAOAAUAAwAAAAIAAAAOAAQAAwAAAAIAAAAOAAMAAwAAAAEAAAD8/wMAAwAAAAIAAAD8/wQAAwAAAAMAAQD8/wEAAwAAAAEAAAD8/wIAAwAAAAIAAAABAPj/AwABAAAAAAAAAPj/AwABAAAAAAD///j/AwABAAAAAAD+//j/AwAAAAAAAAACAPj/AwABAAAAAAADAPj/AwACAAAAAAABAAcAAwACAAAAAAAAAAcAAwABAAAAAAD//wcAAwABAAAAAAD+/wcAAwABAAAAAAD9/wcAAwAAAAAAAAD8/woAAwAAAAMAAQD8/wkAAwAAAAEAAAD6/wUAAwAAAAIAAAD6/wYAAwAAAAIAAAD6/wcAAwAAAAMAAAD6/wQAAwAAAAEAAAA=") +tile_set = ExtResource("4_5gjxp") + +[node name="OnTheGround" type="Node2D" parent="." unique_id=668565137] +y_sort_enabled = true + +[node name="Player" parent="OnTheGround" unique_id=1193933081 instance=ExtResource("24_bnhx6")] +position = Vector2(349, 132) +player_name = "StoryWeaver" +sprite_frames = ExtResource("25_yy51g") + +[node name="Camera2D" type="Camera2D" parent="OnTheGround/Player" unique_id=977187794] +limit_left = -512 +limit_top = -576 +limit_right = 1152 +limit_bottom = 768 +limit_smoothed = true +position_smoothing_enabled = true + +[node name="FrameCameraBehavior" type="Node2D" parent="OnTheGround/Player/Camera2D" unique_id=1488444448 node_paths=PackedStringArray("camera", "main_target", "frame_target")] +script = ExtResource("6_g7lcl") +camera = NodePath("..") +main_target = NodePath("../..") +frame_target = NodePath("../../PlayerHook/HookEnding") +metadata/_custom_type_script = "uid://dagrhfrj0f33i" + +[node name="GrapplePoints" type="Node2D" parent="OnTheGround" unique_id=559850195] +y_sort_enabled = true + +[node name="HookableNeedle" parent="OnTheGround/GrapplePoints" unique_id=1182662384 instance=ExtResource("6_laptb")] +position = Vector2(611, 384) + +[node name="HookableNeedle2" parent="OnTheGround/GrapplePoints" unique_id=514230335 instance=ExtResource("6_laptb")] +position = Vector2(607, 100) + +[node name="HookableNeedle3" parent="OnTheGround/GrapplePoints" unique_id=2112484196 instance=ExtResource("6_laptb")] +position = Vector2(607, -115) + +[node name="HookableNeedle4" parent="OnTheGround/GrapplePoints" unique_id=1442278259 instance=ExtResource("6_laptb")] +position = Vector2(552, 475) + +[node name="HookablePin" parent="OnTheGround/GrapplePoints" unique_id=2071223292 instance=ExtResource("7_g7lcl")] +position = Vector2(467, -158) + +[node name="HookablePin4" parent="OnTheGround/GrapplePoints" unique_id=433465366 instance=ExtResource("7_g7lcl")] +position = Vector2(-228, 34) + +[node name="HookablePin2" parent="OnTheGround/GrapplePoints" unique_id=671519384 instance=ExtResource("7_g7lcl")] +position = Vector2(742, -225) + +[node name="HookablePin3" parent="OnTheGround/GrapplePoints" unique_id=1698856891 instance=ExtResource("7_g7lcl")] +position = Vector2(735, 475) + +[node name="StalkingTownie" parent="OnTheGround" unique_id=1098678013 instance=ExtResource("5_fvumg")] +position = Vector2(968, -252) +collision_mask = 8720 + +[node name="FollowWalkBehavior" type="Node2D" parent="OnTheGround/StalkingTownie" unique_id=704259613 node_paths=PackedStringArray("target", "character")] +script = ExtResource("22_w1003") +target = NodePath("../../Player") +character = NodePath("..") +metadata/_custom_type_script = "uid://cwoclmik3db2" + +[node name="BridgeCrossingBehavior" type="Area2D" parent="OnTheGround/StalkingTownie" unique_id=2004913725 node_paths=PackedStringArray("character")] +collision_layer = 0 +collision_mask = 1024 +script = ExtResource("23_xw04w") +character = NodePath("..") +metadata/_custom_type_script = "uid://dn4ijphw4e84s" + +[node name="CollisionShape2D2" type="CollisionShape2D" parent="OnTheGround/StalkingTownie/BridgeCrossingBehavior" unique_id=1508694602] +rotation = -1.5708 +shape = SubResource("CapsuleShape2D_acu0n") +debug_color = Color(0.8414687, 0.38268504, 0, 0.41960785) + +[node name="PacingTownie" parent="OnTheGround" unique_id=382928374 instance=ExtResource("5_fvumg")] +position = Vector2(-221, -288) +collision_mask = 8720 +character_seed = 3355563542 + +[node name="PathWalkBehavior" type="Node2D" parent="OnTheGround/PacingTownie" unique_id=667735708 node_paths=PackedStringArray("walking_path", "character")] +script = ExtResource("14_cvbam") +speeds = SubResource("Resource_ah1i7") +walking_path = NodePath("../../../Paths/PacingTowniePath") +character = NodePath("..") +metadata/_custom_type_script = "uid://id28maao3vdy" + +[node name="BridgeCrossingBehavior" type="Area2D" parent="OnTheGround/PacingTownie" unique_id=9909409 node_paths=PackedStringArray("character")] +collision_layer = 0 +collision_mask = 1024 +script = ExtResource("23_xw04w") +character = NodePath("..") +metadata/_custom_type_script = "uid://dn4ijphw4e84s" + +[node name="CollisionShape2D2" type="CollisionShape2D" parent="OnTheGround/PacingTownie/BridgeCrossingBehavior" unique_id=445513069] +rotation = -1.5708 +shape = SubResource("CapsuleShape2D_acu0n") +debug_color = Color(0.8414687, 0.38268504, 0, 0.41960785) + +[node name="Guard-GoingBackAndForth" parent="OnTheGround" unique_id=689832587 node_paths=PackedStringArray("patrol_path") instance=ExtResource("16_n8plq")] +position = Vector2(-422, -478) +sprite_frames = ExtResource("17_bxm7h") +alerted_sound_stream = ExtResource("18_i16x3") +footsteps_sound_stream = ExtResource("19_6bk2g") +idle_sound_stream = ExtResource("20_38mc3") +alert_others_sound_stream = ExtResource("21_10wm7") +patrol_path = NodePath("../../Paths/Guard-GoingBackAndForth-PatrolPath") +move_speed = 200.0 +time_to_detect_player = 2.0 +detection_area_scale = 0.4 + +[node name="Paths" type="Node2D" parent="." unique_id=278895922] + +[node name="PacingTowniePath" type="Path2D" parent="Paths" unique_id=430828835] +curve = SubResource("Curve2D_2m3fx") + +[node name="Guard-GoingBackAndForth-PatrolPath" type="Path2D" parent="Paths" unique_id=1971565653] +position = Vector2(928, 95) +curve = SubResource("Curve2D_dm6f1") + +[node name="ScreenOverlay" type="CanvasLayer" parent="." unique_id=98137815] diff --git a/scenes/game_elements/characters/enemies/guard/guard.tscn b/scenes/game_elements/characters/enemies/guard/guard.tscn index e8ef2b2b66..67c27210c0 100644 --- a/scenes/game_elements/characters/enemies/guard/guard.tscn +++ b/scenes/game_elements/characters/enemies/guard/guard.tscn @@ -9,6 +9,7 @@ [ext_resource type="SpriteFrames" uid="uid://ovu5wqo15s5g" path="res://scenes/quests/template_quests/NO_EDIT/1_NO_EDIT_stealth/NO_EDIT_stealth_components/NO_EDIT_guard_enemy.tres" id="5_mswbt"] [ext_resource type="Script" uid="uid://dy68p7gf07pi3" path="res://scenes/game_logic/sprite_behaviors/character_sprite_behavior.gd" id="7_klpct"] [ext_resource type="Script" uid="uid://b3hx1n2yl88qr" path="res://scenes/game_logic/character_animation_player_behavior.gd" id="9_8vt0k"] +[ext_resource type="Script" uid="uid://dn4ijphw4e84s" path="res://scenes/game_logic/bridge_crossing_behavior.gd" id="10_mswbt"] [sub_resource type="CircleShape2D" id="CircleShape2D_g173s"] radius = 35.0 @@ -200,9 +201,12 @@ _data = { &"walk": SubResource("Animation_8vt0k") } +[sub_resource type="CircleShape2D" id="CircleShape2D_innil"] +radius = 7.0 + [node name="Guard" type="CharacterBody2D" unique_id=689832587 groups=["guard_enemy"]] collision_layer = 0 -collision_mask = 528 +collision_mask = 8720 motion_mode = 1 script = ExtResource("1_g173s") @@ -336,6 +340,17 @@ volume_db = -2.0 max_distance = 500.0 bus = &"SFX" +[node name="BridgeCrossingBehavior" type="Area2D" parent="." unique_id=65400463 node_paths=PackedStringArray("character")] +collision_layer = 0 +collision_mask = 1024 +script = ExtResource("10_mswbt") +character = NodePath("..") +metadata/_custom_type_script = "uid://dn4ijphw4e84s" + +[node name="CollisionShape2D" type="CollisionShape2D" parent="BridgeCrossingBehavior" unique_id=47726962] +shape = SubResource("CircleShape2D_innil") +debug_color = Color(0.8414687, 0.38268504, 0, 0.41960785) + [connection signal="body_entered" from="InstantDetectionArea" to="." method="_on_instant_detection_area_body_entered"] [connection signal="body_entered" from="DetectionArea" to="." method="_on_detection_area_body_entered"] [connection signal="body_exited" from="DetectionArea" to="." method="_on_detection_area_body_exited"] diff --git a/scenes/game_elements/characters/player/components/player.gd b/scenes/game_elements/characters/player/components/player.gd index 1822d18faa..0b9a29d0ac 100644 --- a/scenes/game_elements/characters/player/components/player.gd +++ b/scenes/game_elements/characters/player/components/player.gd @@ -68,6 +68,7 @@ var _initial_speeds: CharacterSpeeds @onready var player_repel: Node2D = %PlayerRepel @onready var player_hook: PlayerHook = %PlayerHook @onready var player_sprite: AnimatedSprite2D = %PlayerSprite +@onready var bridge_crossing_behavior: BridgeCrossingBehavior = %BridgeCrossingBehavior @onready var _walk_sound: AudioStreamPlayer2D = %WalkSound @@ -81,15 +82,18 @@ func _set_mode(new_mode: Mode) -> void: _toggle_player_behavior(input_walk_behavior, true) _toggle_player_behavior(player_interaction, true) _toggle_abilities() + bridge_crossing_behavior.monitoring = true Mode.SYSTEM_CONTROLLED: _toggle_player_behavior(input_walk_behavior, false) _toggle_player_behavior(player_interaction, true) _toggle_abilities() + bridge_crossing_behavior.monitoring = false Mode.DEFEATED: _toggle_player_behavior(input_walk_behavior, false) _toggle_player_behavior(player_interaction, false) _toggle_player_behavior(player_repel, false) _toggle_player_behavior(player_hook, false) + bridge_crossing_behavior.monitoring = false if mode != previous_mode: mode_changed.emit(mode) diff --git a/scenes/game_elements/characters/player/components/player_hook.gd b/scenes/game_elements/characters/player/components/player_hook.gd index cbd99043c8..f4fce2fda3 100644 --- a/scenes/game_elements/characters/player/components/player_hook.gd +++ b/scenes/game_elements/characters/player/components/player_hook.gd @@ -254,6 +254,7 @@ func pull_string() -> void: if character.has_method("take_control"): character.take_control(self) character.set_collision_mask_value(Enums.CollisionLayers.NON_WALKABLE_FLOOR, false) + character.set_collision_mask_value(Enums.CollisionLayers.VOID, false) # If the entity has a got_pulled handler, call it and connect to the pull_released signal # of the HookableArea. The entity is responsible to call it. @@ -276,6 +277,7 @@ func _on_pull_released(cancelled: bool) -> void: ## non-walkable floor. func stop_pulling() -> void: character.set_collision_mask_value(Enums.CollisionLayers.NON_WALKABLE_FLOOR, true) + character.set_collision_mask_value(Enums.CollisionLayers.VOID, true) pulling = false # After pulling, return control to the user. if character.has_method("return_control"): diff --git a/scenes/game_elements/characters/player/player.tscn b/scenes/game_elements/characters/player/player.tscn index 413a6621ca..af52110154 100644 --- a/scenes/game_elements/characters/player/player.tscn +++ b/scenes/game_elements/characters/player/player.tscn @@ -13,6 +13,7 @@ [ext_resource type="Texture2D" uid="uid://dxaq5piwxqnht" path="res://scenes/game_elements/characters/player/components/dust.png" id="12_3in67"] [ext_resource type="PackedScene" uid="uid://cl06pid826dtg" path="res://scenes/game_elements/characters/player/components/player_repel.tscn" id="12_tnibl"] [ext_resource type="PackedScene" uid="uid://b3111eergq5yg" path="res://scenes/game_elements/characters/player/components/player_hook.tscn" id="13_ecbbk"] +[ext_resource type="Script" uid="uid://dn4ijphw4e84s" path="res://scenes/game_logic/bridge_crossing_behavior.gd" id="16_8jhju"] [ext_resource type="Script" uid="uid://bk52qjv58locq" path="res://scenes/game_logic/light2d_behaviors/artificial_light_behavior.gd" id="16_ecbbk"] [ext_resource type="Texture2D" uid="uid://b5ooaiyxdrp6a" path="res://scenes/game_elements/components/light_texture_256x256.tres" id="16_tnibl"] @@ -349,8 +350,12 @@ _data = { &"got_hit": SubResource("Animation_4ypcv") } +[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_ecbbk"] +radius = 5.0 +height = 21.0 + [node name="Player" type="CharacterBody2D" unique_id=296354958 groups=["player"]] -collision_mask = 531 +collision_mask = 8723 motion_mode = 1 wall_min_slide_angle = 0.017453292 safe_margin = 1.0 @@ -458,6 +463,18 @@ unique_name_in_owner = true root_node = NodePath("../../PlayerRepel") libraries/ = SubResource("AnimationLibrary_1n58k") +[node name="BridgeCrossingBehavior" type="Area2D" parent="." unique_id=457107742 node_paths=PackedStringArray("character")] +unique_name_in_owner = true +collision_layer = 0 +collision_mask = 1024 +script = ExtResource("16_8jhju") +character = NodePath("..") + +[node name="CollisionShape2D" type="CollisionShape2D" parent="BridgeCrossingBehavior" unique_id=1926006827] +rotation = -1.5708 +shape = SubResource("CapsuleShape2D_ecbbk") +debug_color = Color(0.8414687, 0.38268504, 0, 0.41960785) + [connection signal="running_changed" from="InputWalkBehavior" to="PlayerDustParticles" method="set_emitting"] [connection signal="running_changed" from="InputWalkBehavior" to="AnimationPlayer" method="_on_input_walk_behavior_running_changed"] [connection signal="aiming_changed" from="PlayerHook" to="." method="_on_player_hook_aiming_changed"] diff --git a/scenes/game_elements/components/custom_hookable_objects_test.tscn b/scenes/game_elements/components/custom_hookable_objects_test.tscn index e04839a771..06fdbd9717 100644 --- a/scenes/game_elements/components/custom_hookable_objects_test.tscn +++ b/scenes/game_elements/components/custom_hookable_objects_test.tscn @@ -76,7 +76,7 @@ tile_map_data = PackedByteArray("AAAIAAEABAACAAQAAAAHAAEABAABAAQAAAAGAAEABAABAAQ tile_set = ExtResource("4_3uytt") [node name="Bridge" type="TileMapLayer" parent="TileMapLayers" unique_id=1571624698] -tile_map_data = PackedByteArray("AAAQAAgAAwABAAAAAAARAAgAAwABAAAAAAASAAgAAwABAAAAAAATAAgAAwABAAAAAAAUAAgAAwABAAAAAAAPAAgAAwAAAAAAAAAVAAgAAwACAAAAAAASAAUAAwAAAAIAAAASAAQAAwAAAAIAAAASAAMAAwAAAAEAAAASAAYAAwAAAAMAAAARAAEAAwACAAAAAAAQAAEAAwABAAAAAAAPAAEAAwAAAAAAAAA=") +tile_map_data = PackedByteArray("AAAQAAgAAwABAAAAAAARAAgAAwABAAAAAAASAAgAAwABAAAAAAATAAgAAwABAAAAAAAUAAgAAwABAAAAAAAPAAgAAwAAAAAAAAAVAAgAAwACAAAAAAASAAUAAwAAAAIAAAASAAQAAwAAAAIAAAASAAMAAwAAAAEAAAASAAYAAwAAAAMAAQARAAEAAwACAAAAAAAQAAEAAwABAAAAAAAPAAEAAwAAAAAAAAA=") tile_set = ExtResource("6_obhrw") [node name="Fence" type="TileMapLayer" parent="TileMapLayers" unique_id=1482788515] diff --git a/scenes/game_logic/bridge_crossing_behavior.gd b/scenes/game_logic/bridge_crossing_behavior.gd new file mode 100644 index 0000000000..cde3a05837 --- /dev/null +++ b/scenes/game_logic/bridge_crossing_behavior.gd @@ -0,0 +1,61 @@ +# SPDX-FileCopyrightText: The Threadbare Authors +# SPDX-License-Identifier: MPL-2.0 +@tool +class_name BridgeCrossingBehavior +extends Area2D +## Adjusts character collision layers when they walk across bridges +## +## Bridges cross non-walkable floor layers, like water or void, as well as +## cliff edges, which also have collisions to stop the character walking off the +## edge. are walls. This component detects when the character is walking across +## a bridge & adjusts the collisions on the character. Give it a collision +## shape that has the same centre as [member character]'s collision shape but +## is a bit smaller. + +## The character controlled by this component. Typically this is this +## node's parent, in which case this will be configured automatically. +@export var character: CharacterBody2D: + set = _set_character + + +func _set_character(new_value: CharacterBody2D) -> void: + character = new_value + update_configuration_warnings() + + +func _get_configuration_warnings() -> PackedStringArray: + var warnings := PackedStringArray() + if not character: + warnings.append("No character set.") + return warnings + + +func _enter_tree() -> void: + if not character and get_parent() is CharacterBody2D: + character = get_parent() + + +func _ready() -> void: + collision_layer = 0 + collision_mask = 0 + set_collision_mask_value(Enums.CollisionLayers.BRIDGE, true) + + if Engine.is_editor_hint(): + return + + body_entered.connect(_on_bridge_entered) + body_exited.connect(_on_bridge_exited) + + +func _on_bridge_entered(_body: Node2D) -> void: + _set_on_bridge(true) + + +func _on_bridge_exited(_body: Node2D) -> void: + _set_on_bridge(false) + + +func _set_on_bridge(on_bridge: bool) -> void: + character.set_collision_mask_value(Enums.CollisionLayers.NON_WALKABLE_FLOOR, not on_bridge) + character.set_collision_mask_value(Enums.CollisionLayers.WALLS, not on_bridge) + character.set_collision_mask_value(Enums.CollisionLayers.BRIDGE_EDGE, on_bridge) diff --git a/scenes/game_logic/bridge_crossing_behavior.gd.uid b/scenes/game_logic/bridge_crossing_behavior.gd.uid new file mode 100644 index 0000000000..26e4d8b734 --- /dev/null +++ b/scenes/game_logic/bridge_crossing_behavior.gd.uid @@ -0,0 +1 @@ +uid://dn4ijphw4e84s diff --git a/scenes/globals/enums.gd b/scenes/globals/enums.gd index 166c3b6209..9a61816e9b 100644 --- a/scenes/globals/enums.gd +++ b/scenes/globals/enums.gd @@ -23,7 +23,10 @@ enum CollisionLayers { ENEMIES_HITBOX = 8, REPELLABLE = 9, NON_WALKABLE_FLOOR = 10, + BRIDGE = 11, + BRIDGE_EDGE = 12, HOOKABLE = 13, + VOID = 14, } ## Flags for player abilities diff --git a/scenes/quests/lore_quests/quest_001/3_stealth_level/stealth_level.tscn b/scenes/quests/lore_quests/quest_001/3_stealth_level/stealth_level.tscn index c13eb98a5c..83f0266b84 100644 --- a/scenes/quests/lore_quests/quest_001/3_stealth_level/stealth_level.tscn +++ b/scenes/quests/lore_quests/quest_001/3_stealth_level/stealth_level.tscn @@ -53,7 +53,7 @@ [sub_resource type="Curve2D" id="Curve2D_vnsq3"] _data = { -"points": PackedVector2Array(0, 0, 0, 0, -20, -31, 0, 0, 0, 0, -21, 353) +"points": PackedVector2Array(0, 0, 0, 0, -20, -31, 0, 0, 0, 0, -22, 771) } point_count = 2 @@ -147,7 +147,6 @@ type = 2 metadata/_custom_type_script = "uid://bgmwplmj3bfls" [node name="Level" type="Node2D" unique_id=1653863263] -y_sort_enabled = true [node name="StealthGameLogic" type="Node" parent="." unique_id=884618699] script = ExtResource("1_f6lvl") @@ -178,7 +177,7 @@ tile_map_data = PackedByteArray("AAAJAAcAAAAAAAAAAAAKAAgAAAAAAAAAAAALAAgAAAAAAAA tile_set = ExtResource("8_v1vyj") [node name="Stones" type="TileMapLayer" parent="TileMapLayers" unique_id=1628731558] -tile_map_data = PackedByteArray("AAAjAAgABAAAAAIAAAAhAAUABAABAAIAAAAiAAUABAABAAIAAAAgAAYABAACAAIAAAAfAAcABAACAAIAAAAeAAcABAABAAIAAAAdAAcABAABAAIAAAAcAAcABAABAAIAAAAgAAUABAAAAAAAAAAbAAcABAABAAIAAAAaAAcABAABAAIAAAAZAAcABAABAAIAAAAYAAcABAABAAIAAAAXAAcABAABAAIAAAAWAAcABAABAAIAAAAVAAcABAABAAIAAAAUAAcABAABAAIAAAATAAcABAABAAIAAAASAAcABAABAAIAAAARAAcABAABAAIAAAALAAcABAABAAIAAAAMAAcABAABAAIAAAANAAcABAABAAIAAAAOAAcABAABAAIAAAAPAAcABAABAAIAAAAQAAcABAABAAIAAAAKAAcABAAAAAIAAAAJAAYABAAAAAIAAAAFAAMABAACAAIAAAAEAAQABAACAAIAAAADAAQABAABAAIAAAACAAQABAABAAIAAAABAAQABAABAAIAAAAAAAQABAABAAIAAAD//wQABAAAAAIAAAAkAAwABAAAAAIAAAAlAA4ABAAAAAIAAAAlABEABAAAAAIAAAAmABIABAAAAAIAAAAnABIABAABAAIAAAAoABIABAABAAIAAAApABMABAAAAAIAAAAqABMABAABAAIAAAArABMABAABAAIAAAAsABUABAAAAAIAAAAtABYABAAAAAIAAAAuABcABAAAAAIAAAAvABcABAABAAIAAAAwABcABAABAAIAAAAxABcABAABAAIAAAAyABcABAABAAIAAAAzABcABAABAAIAAAA0ABcABAACAAIAAAA1ABQABAABAAIAAAA2ABQABAABAAIAAAA3ABQABAABAAIAAAA4ABQABAABAAIAAAA5ABQABAABAAIAAAA+ABQABAABAAIAAAA9ABQABAABAAIAAAA8ABQABAABAAIAAAA7ABQABAABAAIAAAA6ABQABAABAAIAAAA/ABQABAACAAIAAAA8ABIABAABAAIAAAA9ABIABAABAAIAAAA4AA8ABAABAAQAAAA5AA8ABAABAAQAAAA6AA8ABAABAAQAAAA7AA8ABAABAAQAAAA8AA8ABAABAAQAAAA9AA8ABAABAAQAAABAABIABAABAAIAAABBABIABAABAAIAAABCABIABAABAAIAAABDABIABAABAAIAAABEABIABAACAAIAAABGAA8ABAAAAAIAAABHAA8ABAABAAIAAABIAA8ABAABAAIAAABJAA8ABAABAAIAAABKAA8ABAABAAIAAABLAA8ABAABAAIAAABMAA8ABAACAAIAAABHABMABAAAAAIAAABIABUABAAAAAIAAABJABUABAABAAIAAABKABUABAACAAIAAABLABQABAACAAIAAABOABMABAAAAAIAAABPABMABAABAAIAAABQABMABAABAAIAAABRABMABAABAAIAAABSABMABAABAAIAAABTABMABAABAAIAAABaABMABAABAAIAAABZABMABAABAAIAAABYABMABAABAAIAAABXABMABAABAAIAAABWABMABAABAAIAAABVABMABAABAAIAAABUABMABAABAAIAAABbABQABAAAAAIAAABcABQABAABAAIAAABdABQABAACAAIAAABeABMABAABAAIAAABfABMABAABAAIAAABgABMABAABAAIAAABhABMABAABAAIAAABiABMABAABAAIAAABjABMABAABAAIAAABkABMABAACAAIAAABlABEABAABAAIAAABmABEABAABAAIAAABnABEABAACAAIAAABoAA4ABAABAAIAAABpAA4ABAABAAIAAABqAA4ABAABAAIAAABrAA4ABAABAAIAAABsABAABAAAAAIAAABtABAABAABAAIAAABuABIABAAAAAIAAABzABIABAACAAIAAAB0ABAABAACAAIAAAByABIABAABAAIAAABxABIABAABAAIAAABwABIABAABAAIAAABvABIABAABAAIAAAB0AAwABAACAAIAAAAxAAwABAACAAIAAAAyAAsABAACAAIAAAAwAAwABAABAAIAAAAvAAwABAABAAIAAAAuAAwABAABAAIAAAAtAAwABAABAAIAAAAsAAwABAABAAIAAAArAAwABAABAAIAAAAqAA4ABAACAAIAAAA=") +tile_map_data = PackedByteArray("AAAjAAgABAAAAAIAAAAhAAUABAABAAIAAAAiAAUABAABAAIAAAAgAAYABAACAAIAAAAfAAcABAACAAIAAAAeAAcABAABAAIAAAAdAAcABAABAAIAAAAcAAcABAABAAIAAAAgAAUABAAAAAAAAAAbAAcABAABAAIAAAAaAAcABAABAAIAAAAZAAcABAABAAIAAAAYAAcABAABAAIAAAAXAAcABAABAAIAAAAWAAcABAABAAIAAAAVAAcABAABAAIAAAAUAAcABAABAAIAAAATAAcABAABAAIAAAASAAcABAABAAIAAAARAAcABAABAAIAAAALAAcABAABAAIAAAAMAAcABAABAAIAAAANAAcABAABAAIAAAAOAAcABAABAAIAAAAPAAcABAABAAIAAAAQAAcABAABAAIAAAAKAAcABAAAAAIAAAAJAAYABAAAAAIAAAAFAAMABAACAAIAAAAEAAQABAACAAIAAAADAAQABAABAAIAAAACAAQABAABAAIAAAABAAQABAABAAIAAAAAAAQABAABAAIAAAD//wQABAAAAAIAAAAkAAwABAAAAAIAAAAlAA4ABAAAAAIAAAAlABEABAAAAAIAAAAmABIABAAAAAIAAAAnABIABAABAAIAAAAoABIABAABAAIAAAApABMABAAAAAIAAAAqABMABAABAAIAAAArABMABAABAAIAAAAsABUABAAAAAIAAAAtABYABAAAAAIAAAAuABcABAAAAAIAAAAvABcABAABAAIAAAAwABcABAABAAIAAAAxABcABAABAAIAAAAyABcABAABAAIAAAAzABcABAABAAIAAAA0ABcABAACAAIAAAA1ABQABAABAAIAAAA2ABQABAABAAIAAAA3ABQABAABAAIAAAA4ABQABAABAAIAAAA5ABQABAABAAIAAAA+ABQABAABAAIAAAA9ABQABAABAAIAAAA8ABQABAABAAIAAAA7ABQABAABAAIAAAA6ABQABAABAAIAAAA/ABQABAACAAIAAAA8ABIABAABAAIAAAA9ABIABAABAAIAAAA4AA8ABAABAAQAAAA5AA8ABAABAAQAAAA6AA8ABAABAAQAAAA7AA8ABAABAAQAAAA8AA8ABAABAAQAAAA9AA8ABAABAAQAAABAABIABAABAAIAAABBABIABAABAAIAAABCABIABAABAAIAAABDABIABAABAAIAAABEABIABAACAAIAAABGAA8ABAAAAAIAAABHAA8ABAABAAIAAABIAA8ABAABAAIAAABJAA8ABAABAAIAAABKAA8ABAABAAIAAABLAA8ABAABAAIAAABMAA8ABAACAAIAAABHABMABAAAAAIAAABIABUABAAAAAIAAABJABUABAABAAIAAABKABUABAACAAIAAABLABQABAACAAIAAABOABMABAAAAAIAAABPABMABAABAAIAAABQABMABAABAAIAAABRABMABAABAAIAAABSABMABAABAAIAAABTABMABAABAAIAAABaABMABAABAAIAAABZABMABAABAAIAAABYABMABAABAAIAAABXABMABAABAAIAAABWABMABAABAAIAAABVABMABAABAAIAAABUABMABAABAAIAAABbABQABAAAAAIAAABcABQABAABAAIAAABdABQABAACAAIAAABeABMABAABAAIAAABfABMABAABAAIAAABgABMABAABAAIAAABhABMABAABAAIAAABiABMABAABAAIAAABjABMABAABAAIAAABkABMABAACAAIAAABlABEABAABAAIAAABmABEABAABAAIAAABnABEABAACAAIAAABoAA4ABAABAAIAAABpAA4ABAABAAIAAABqAA4ABAABAAIAAABrAA4ABAABAAIAAABsABAABAAAAAIAAABtABAABAABAAIAAABuABIABAAAAAIAAABzABIABAACAAIAAAB0ABAABAACAAIAAAByABIABAABAAIAAABxABIABAABAAIAAABwABIABAABAAIAAABvABIABAABAAIAAAB0AAwABAACAAIAAAAxAAwABAACAAIAAAAyAAsABAACAAIAAAAwAAwABAABAAIAAAAvAAwABAABAAIAAAAuAAwABAABAAIAAAAtAAwABAABAAIAAAAsAAwABAABAAIAAAArAAwABAABAAIAAAAqAA4ABAACAAIAAABEABEABAACAAAAAAA=") tile_set = ExtResource("9_86cpf") occlusion_enabled = false collision_enabled = false @@ -192,6 +191,7 @@ tile_map_data = PackedByteArray("AAAOAAcABQADAAIAAAAOAAEABQADAAAAAAAOAAIABQADAAE tile_set = ExtResource("7_qg4dv") [node name="Paths" type="TileMapLayer" parent="TileMapLayers" unique_id=667722762] +visible = false tile_map_data = PackedByteArray("AAAmAAgABQADAAIAAAACAAAAAQAIAAAAAAACAAEAAQAIAAEAAAACAAIAAQAIAAEAAAACAAMAAQAFAAIAAAADAAMAAQAGAAMAAAAEAAMAAQAGAAMAAAAFAAMAAQAHAAMAAAAKAAMAAQAHAAEAAAAJAAMAAQAFAAMAAAAKAAQAAQAIAAIAAAAKAAIAAQAIAAAAAABmAA0AAQAGAAAAAABnAA0AAQAGAAAAAABoAA0AAQAGAAAAAABpAA0AAQAGAAAAAABqAA0AAQAGAAAAAABrAA0AAQAGAAAAAABsAA0AAQAGAAAAAABnAA4AAQAGAAIAAABmAA4AAQAGAAIAAABoAA4AAQAGAAIAAABpAA4AAQAGAAIAAABqAA4AAQAGAAIAAABrAA4AAQAGAAIAAABsAA4AAQAGAAIAAABtAA0AAQAGAAAAAABuAA0AAQAGAAAAAABvAA0AAQAGAAAAAABwAA0AAQAHAAAAAABwAA4AAQAHAAIAAABvAA4AAQAGAAIAAABuAA4AAQAGAAIAAABtAA4AAQAGAAIAAABlAA0AAQAFAAAAAABjAA4AAQAHAAMAAABiAA4AAQAFAAMAAABTABEAAQAGAAEAAABUABEAAQAGAAEAAABVABEAAQAGAAEAAABWABEAAQAHAAEAAABVABIAAQAGAAEAAABWABIAAQAHAAEAAABWABMAAQAHAAIAAABVABMAAQAGAAIAAABUABMAAQAGAAIAAABTABMAAQAGAAIAAABSABMAAQAGAAIAAABSABIAAQAFAAEAAABSABEAAQAFAAEAAABSABAAAQAFAAAAAABTABAAAQAGAAAAAABUABAAAQAGAAAAAABVABAAAQAGAAAAAABTABIAAQAGAAEAAABUABIAAQAGAAEAAABWABAAAQAGAAAAAABOABEAAQAFAAMAAABPABEAAQAHAAEAAABPABAAAQAIAAAAAABPABIAAQAIAAEAAABPABMAAQAFAAIAAABQABMAAQAGAAMAAABRABMAAQAGAAMAAABEABEAAQAHAAMAAABDABEAAQAGAAMAAABCABEAAQAFAAMAAAA7ABMAAQAIAAIAAAA7ABIAAQAFAAAAAAA8ABIAAQAGAAMAAAA9ABIAAQAHAAMAAAAzABIAAQAFAAMAAAA0ABIAAQAHAAMAAAArABMAAQAHAAMAAAAqABMAAQAGAAMAAAApABMAAQAFAAIAAAApABIAAQAIAAAAAAAnAAgAAQAIAAIAAAAnAAcAAQAIAAAAAAAnAA0AAQAIAAAAAAAnAA4AAQAIAAIAAAAZAAQAAQAFAAMAAAAaAAQAAQAGAAMAAAAbAAQAAQAGAAMAAAAcAAQAAQAGAAMAAAAdAAQAAQAGAAMAAAAeAAQAAQAHAAMAAAAXAAQAAQAHAAMAAAAWAAQAAQAGAAMAAAAVAAQAAQAGAAMAAAAUAAQAAQAGAAMAAAATAAQAAQAGAAMAAAASAAQAAQAFAAEAAAASAAUAAQAIAAIAAAASAAMAAQAHAAAAAAARAAMAAQAGAAMAAAAQAAMAAQAFAAMAAABXABAAAQAHAAMAAABaABAAAQAFAAMAAABbABAAAQAHAAMAAABlAA4AAQAFAAIAAABzAAcAAQAIAAEAAABzAAgAAQAIAAEAAABzAAkAAQAIAAEAAABzAAoAAQAIAAIAAABzAAYAAQAIAAEAAABzAAUAAQAIAAEAAABzAAQAAQAIAAAAAAA=") tile_set = ExtResource("7_qg4dv") @@ -220,7 +220,7 @@ tile_map_data = PackedByteArray("AABFABIAAwACAAMAAABGABIAAwACAAMAAABHABIAAwACAAM tile_set = ExtResource("8_c2gs0") [node name="Bridges" type="TileMapLayer" parent="TileMapLayers" unique_id=1451880413] -tile_map_data = PackedByteArray("AAAJAAMAAwACAAAAAAAIAAMAAwABAAAAAAAHAAMAAwABAAAAAAAGAAMAAwABAAAAAAAFAAMAAwAAAAAAAABLABEAAwABAAAAAABKABEAAwABAAAAAABJABEAAwABAAAAAABIABEAAwABAAAAAABHABEAAwABAAAAAABGABEAAwABAAAAAABFABEAAwABAAAAAABEABEAAwAAAAAAAABOABEAAwACAAAAAABNABEAAwABAAAAAABMABEAAwABAAAAAAByABEAAwACAAEAAAA=") +tile_map_data = PackedByteArray("AAAJAAMAAwACAAAAAAAIAAMAAwABAAAAAAAHAAMAAwABAAAAAAAGAAMAAwABAAAAAAAFAAMAAwAAAAAAAABLABEAAwABAAAAAABKABEAAwABAAAAAABJABEAAwABAAAAAABIABEAAwABAAAAAABHABEAAwABAAAAAABGABEAAwABAAAAAABFABEAAwABAAAAAABEABEAAwAAAAAAAABOABEAAwACAAAAAABNABEAAwABAAAAAABMABEAAwABAAAAAAByABEAAwACAAEAAAAOAA4AAwAAAAMAAQAOAA0AAwAAAAIAAAAOAAwAAwAAAAIAAAAOAAsAAwAAAAIAAAAOAAoAAwAAAAIAAAAOAAkAAwAAAAIAAAAOAAgAAwAAAAIAAAAOAAcAAwAAAAEAAAACAAkAAwAAAAMAAQACAAgAAwAAAAIAAAACAAcAAwAAAAIAAAACAAYAAwAAAAIAAAACAAUAAwAAAAIAAAACAAQAAwAAAAEAAAALAPv/AwAAAAEAAAALAPz/AwAAAAIAAAALAP3/AwAAAAIAAAALAP7/AwAAAAIAAAALAP//AwAAAAIAAAALAAAAAwAAAAIAAAALAAEAAwAAAAMAAAD7/wIAAwAAAAAAAAD8/wIAAwABAAAAAAD9/wIAAwABAAAAAAD+/wIAAwABAAAAAAD//wIAAwACAAAAAAA=") tile_set = ExtResource("8_c2gs0") [node name="Tree" parent="TileMapLayers" unique_id=1789345129 instance=ExtResource("11_75rvf")] @@ -700,6 +700,7 @@ sprite_frames = ExtResource("21_p2u32") [node name="Camera2D" type="Camera2D" parent="Player" unique_id=857685128] unique_name_in_owner = true process_mode = 3 +limit_enabled = false limit_left = 0 limit_top = 0 position_smoothing_enabled = true diff --git a/scenes/world_map/frays_end.tscn b/scenes/world_map/frays_end.tscn index 7c2ddd3d8d..afbba04f09 100644 --- a/scenes/world_map/frays_end.tscn +++ b/scenes/world_map/frays_end.tscn @@ -78,7 +78,7 @@ stream = ExtResource("2_epsnn") position = Vector2(0, 8) [node name="Water" type="TileMapLayer" parent="TileMapLayers" unique_id=1840175252] -tile_map_data = PackedByteArray("AAABABcAAAAAAAAAAAABABYAAAAAAAAAAAACABcAAAAAAAAAAAACABYAAAAAAAAAAAACABUAAAAAAAAAAAADABUAAAAAAAAAAAAEABUAAAAAAAAAAAADABYAAAAAAAAAAAAEABYAAAAAAAAAAAAFABYAAAAAAAAAAAAFABUAAAAAAAAAAAAGABYAAAAAAAAAAAAGABUAAAAAAAAAAAAHABUAAAAAAAAAAAAHABYAAAAAAAAAAAAIABUAAAAAAAAAAAAIABQAAAAAAAAAAAAJABQAAAAAAAAAAAAKABQAAAAAAAAAAAAKABUAAAAAAAAAAAAJABUAAAAAAAAAAAALABUAAAAAAAAAAAAMABUAAAAAAAAAAAANABUAAAAAAAAAAAANABQAAAAAAAAAAAAMABQAAAAAAAAAAAALABQAAAAAAAAAAAAOABQAAAAAAAAAAAAOABUAAAAAAAAAAAAQABUAAAAAAAAAAAARABUAAAAAAAAAAAARABQAAAAAAAAAAAAQABQAAAAAAAAAAAASABQAAAAAAAAAAAATABQAAAAAAAAAAAAUABQAAAAAAAAAAAAVABQAAAAAAAAAAAAWABQAAAAAAAAAAAAXABQAAAAAAAAAAAAYABQAAAAAAAAAAAAZABQAAAAAAAAAAAAaABQAAAAAAAAAAAAaABUAAAAAAAAAAAAZABUAAAAAAAAAAAAYABUAAAAAAAAAAAAXABUAAAAAAAAAAAAWABUAAAAAAAAAAAAVABUAAAAAAAAAAAAUABUAAAAAAAAAAAATABUAAAAAAAAAAAASABUAAAAAAAAAAAAZABYAAAAAAAAAAAAaABYAAAAAAAAAAAAaABcAAAAAAAAAAAAbABcAAAAAAAAAAAAcABcAAAAAAAAAAAAbABgAAAAAAAAAAAAcABgAAAAAAAAAAAAdABgAAAAAAAAAAAAcABkAAAAAAAAAAAAdABkAAAAAAAAAAAAeABkAAAAAAAAAAAAfABkAAAAAAAAAAAAdABoAAAAAAAAAAAAeABoAAAAAAAAAAAAfABoAAAAAAAAAAAADABcAAAAAAAAAAAAEABcAAAAAAAAAAAAFABcAAAAAAAAAAAAGABcAAAAAAAAAAAAHABcAAAAAAAAAAAAIABYAAAAAAAAAAAAJABYAAAAAAAAAAAAKABYAAAAAAAAAAAALABYAAAAAAAAAAAAMABYAAAAAAAAAAAANABYAAAAAAAAAAAAOABYAAAAAAAAAAAAQABYAAAAAAAAAAAARABYAAAAAAAAAAAASABYAAAAAAAAAAAATABYAAAAAAAAAAAAUABYAAAAAAAAAAAAVABYAAAAAAAAAAAAWABYAAAAAAAAAAAAXABYAAAAAAAAAAAAYABYAAAAAAAAAAAAZABcAAAAAAAAAAAAaABgAAAAAAAAAAAAaABkAAAAAAAAAAAAbABkAAAAAAAAAAAAbABoAAAAAAAAAAAAcABoAAAAAAAAAAAAcABQAAAAAAAAAAAAdABQAAAAAAAAAAAAcABUAAAAAAAAAAAAdABUAAAAAAAAAAAAeABUAAAAAAAAAAAAfABUAAAAAAAAAAAAfABYAAAAAAAAAAAAeABYAAAAAAAAAAAAdABYAAAAAAAAAAAAcABYAAAAAAAAAAAAdABcAAAAAAAAAAAAeABcAAAAAAAAAAAAfABcAAAAAAAAAAAAeABgAAAAAAAAAAAAfABgAAAAAAAAAAAAWABcAAAAAAAAAAAAWABgAAAAAAAAAAAAXABgAAAAAAAAAAAAYABgAAAAAAAAAAAAYABcAAAAAAAAAAAAXABcAAAAAAAAAAAAYABkAAAAAAAAAAAAXABkAAAAAAAAAAAAYABoAAAAAAAAAAAAZABkAAAAAAAAAAAAZABgAAAAAAAAAAAAZABoAAAAAAAAAAAAaABoAAAAAAAAAAAAXABoAAAAAAAAAAAAYABsAAAAAAAAAAAAZABsAAAAAAAAAAAAaABsAAAAAAAAAAAAbABsAAAAAAAAAAAAcABsAAAAAAAAAAAAdABsAAAAAAAAAAQAeABsAAAAAAAAAAQAfABsAAAAAAAAAAQAdABwAAAAAAAAAAQAeABwAAAAAAAAAAAAfABwAAAAAAAAAAAAAABYAAAAAAAAAAAAAABcAAAAAAAAAAAABABUAAAAAAAAAAgAAABUAAAAAAAAAAgAbABYAAAAAAAAAAgD//xcAAAAAAAAAAAD//xgAAAAAAAAAAAD//xkAAAAAAAAAAAD//xoAAAAAAAAAAAD//xsAAAAAAAAAAAD//xwAAAAAAAAAAAAPABQAAAAAAAAAAQAPABUAAAAAAAAAAQAPABYAAAAAAAAAAQAbABQAAAAAAAAAAQAbABUAAAAAAAAAAQAAABgAAAAAAAAAAQABABgAAAAAAAAAAQACABgAAAAAAAAAAQADABgAAAAAAAAAAQAEABgAAAAAAAAAAQAFABgAAAAAAAAAAQAGABgAAAAAAAAAAQAHABgAAAAAAAAAAQAIABcAAAAAAAAAAQAJABcAAAAAAAAAAQAKABcAAAAAAAAAAQALABcAAAAAAAAAAQAMABcAAAAAAAAAAQANABcAAAAAAAAAAQAOABcAAAAAAAAAAQAPABcAAAAAAAAAAQAQABcAAAAAAAAAAQARABcAAAAAAAAAAQASABcAAAAAAAAAAQATABcAAAAAAAAAAQAUABcAAAAAAAAAAQAVABcAAAAAAAAAAQAVABgAAAAAAAAAAQAWABkAAAAAAAAAAQAWABoAAAAAAAAAAQAXABsAAAAAAAAAAQAXABwAAAAAAAAAAQAYABwAAAAAAAAAAQAZABwAAAAAAAAAAQAaABwAAAAAAAAAAQAbABwAAAAAAAAAAQAcABwAAAAAAAAAAQA=") +tile_map_data = PackedByteArray("AAABABcAAAAAAAAAAAABABYAAAAAAAAAAAACABcAAAAAAAAAAAACABYAAAAAAAAAAAACABUAAAAAAAAAAAADABUAAAAAAAAAAAAEABUAAAAAAAAAAAADABYAAAAAAAAAAAAEABYAAAAAAAAAAAAFABYAAAAAAAAAAAAFABUAAAAAAAAAAAAGABYAAAAAAAAAAAAGABUAAAAAAAAAAAAHABUAAAAAAAAAAAAHABYAAAAAAAAAAAAIABUAAAAAAAAAAAAIABQAAAAAAAAAAAAJABQAAAAAAAAAAAAKABQAAAAAAAAAAAAKABUAAAAAAAAAAAAJABUAAAAAAAAAAAALABUAAAAAAAAAAAAMABUAAAAAAAAAAAANABUAAAAAAAAAAAANABQAAAAAAAAAAAAMABQAAAAAAAAAAAALABQAAAAAAAAAAAAOABQAAAAAAAAAAAAOABUAAAAAAAAAAAARABUAAAAAAAAAAAARABQAAAAAAAAAAAAQABQAAAAAAAAAAAASABQAAAAAAAAAAAATABQAAAAAAAAAAAAUABQAAAAAAAAAAAAVABQAAAAAAAAAAAAWABQAAAAAAAAAAAAXABQAAAAAAAAAAAAYABQAAAAAAAAAAAAZABQAAAAAAAAAAAAaABQAAAAAAAAAAAAaABUAAAAAAAAAAAAZABUAAAAAAAAAAAAYABUAAAAAAAAAAAAXABUAAAAAAAAAAAAWABUAAAAAAAAAAAAVABUAAAAAAAAAAAAUABUAAAAAAAAAAAATABUAAAAAAAAAAAASABUAAAAAAAAAAAAZABYAAAAAAAAAAAAaABYAAAAAAAAAAAAaABcAAAAAAAAAAAAbABcAAAAAAAAAAAAcABcAAAAAAAAAAAAbABgAAAAAAAAAAAAcABgAAAAAAAAAAAAdABgAAAAAAAAAAAAcABkAAAAAAAAAAAAdABkAAAAAAAAAAAAeABkAAAAAAAAAAAAfABkAAAAAAAAAAAAdABoAAAAAAAAAAAAeABoAAAAAAAAAAAAfABoAAAAAAAAAAAADABcAAAAAAAAAAAAEABcAAAAAAAAAAAAFABcAAAAAAAAAAAAGABcAAAAAAAAAAAAHABcAAAAAAAAAAAAIABYAAAAAAAAAAAAJABYAAAAAAAAAAAAKABYAAAAAAAAAAAALABYAAAAAAAAAAAAMABYAAAAAAAAAAAANABYAAAAAAAAAAAAOABYAAAAAAAAAAAAQABYAAAAAAAAAAAARABYAAAAAAAAAAAASABYAAAAAAAAAAAATABYAAAAAAAAAAAAUABYAAAAAAAAAAAAVABYAAAAAAAAAAAAWABYAAAAAAAAAAAAXABYAAAAAAAAAAAAYABYAAAAAAAAAAAAZABcAAAAAAAAAAAAaABgAAAAAAAAAAAAaABkAAAAAAAAAAAAbABkAAAAAAAAAAAAbABoAAAAAAAAAAAAcABoAAAAAAAAAAAAcABQAAAAAAAAAAAAdABQAAAAAAAAAAAAcABUAAAAAAAAAAAAdABUAAAAAAAAAAAAeABUAAAAAAAAAAAAfABUAAAAAAAAAAAAfABYAAAAAAAAAAAAeABYAAAAAAAAAAAAdABYAAAAAAAAAAAAcABYAAAAAAAAAAAAdABcAAAAAAAAAAAAeABcAAAAAAAAAAAAfABcAAAAAAAAAAAAeABgAAAAAAAAAAAAfABgAAAAAAAAAAAAWABcAAAAAAAAAAAAWABgAAAAAAAAAAAAXABgAAAAAAAAAAAAYABgAAAAAAAAAAAAYABcAAAAAAAAAAAAXABcAAAAAAAAAAAAYABkAAAAAAAAAAAAXABkAAAAAAAAAAAAYABoAAAAAAAAAAAAZABkAAAAAAAAAAAAZABgAAAAAAAAAAAAZABoAAAAAAAAAAAAaABoAAAAAAAAAAAAXABoAAAAAAAAAAAAYABsAAAAAAAAAAAAZABsAAAAAAAAAAAAaABsAAAAAAAAAAAAbABsAAAAAAAAAAAAcABsAAAAAAAAAAAAdABsAAAAAAAAAAQAeABsAAAAAAAAAAQAfABsAAAAAAAAAAQAdABwAAAAAAAAAAQAeABwAAAAAAAAAAAAfABwAAAAAAAAAAAAAABYAAAAAAAAAAAAAABcAAAAAAAAAAAABABUAAAAAAAAAAgAAABUAAAAAAAAAAgD//xcAAAAAAAAAAAD//xgAAAAAAAAAAAD//xkAAAAAAAAAAAD//xoAAAAAAAAAAAD//xsAAAAAAAAAAAD//xwAAAAAAAAAAAAPABQAAAAAAAAAAQAbABQAAAAAAAAAAQAAABgAAAAAAAAAAQABABgAAAAAAAAAAQACABgAAAAAAAAAAQADABgAAAAAAAAAAQAEABgAAAAAAAAAAQAFABgAAAAAAAAAAQAGABgAAAAAAAAAAQAHABgAAAAAAAAAAQAIABcAAAAAAAAAAQAJABcAAAAAAAAAAQAKABcAAAAAAAAAAQALABcAAAAAAAAAAQAMABcAAAAAAAAAAQANABcAAAAAAAAAAQAOABcAAAAAAAAAAQAPABcAAAAAAAAAAQAQABcAAAAAAAAAAQARABcAAAAAAAAAAQASABcAAAAAAAAAAQATABcAAAAAAAAAAQAUABcAAAAAAAAAAQAVABcAAAAAAAAAAQAVABgAAAAAAAAAAQAWABkAAAAAAAAAAQAWABoAAAAAAAAAAQAXABsAAAAAAAAAAQAXABwAAAAAAAAAAQAYABwAAAAAAAAAAQAZABwAAAAAAAAAAQAaABwAAAAAAAAAAQAbABwAAAAAAAAAAQAcABwAAAAAAAAAAQAQABUAAAAAAAAAAAAPABUAAAAAAAAAAAAPABYAAAAAAAAAAAAbABUAAAAAAAAAAAAbABYAAAAAAAAAAAA=") tile_set = ExtResource("4_6ss6a") [node name="ModulateAsSkyBehavior" type="Node" parent="TileMapLayers/Water" unique_id=1052174442 node_paths=PackedStringArray("canvas_item")] @@ -88,11 +88,11 @@ metadata/_custom_type_script = "uid://ctko5bdas16ah" [node name="Foam" type="TileMapLayer" parent="TileMapLayers" unique_id=632936150] scale = Vector2(1.00113, 1) -tile_map_data = PackedByteArray("AAAAABUAAgAAAAAAAAABABUAAgAAAAAAAAACABUAAgAAAAAAAAADABUAAgAAAAAAAAAEABUAAgAAAAAAAAAFABUAAgAAAAAAAAAGABUAAgAAAAAAAAAHABUAAgAAAAAAAAAHABQAAgAAAAAAAAAIABQAAgAAAAAAAAAJABQAAgAAAAAAAAAKABQAAgAAAAAAAAALABQAAgAAAAAAAAAMABQAAgAAAAAAAAANABQAAgAAAAAAAAAOABQAAgAAAAAAAAAPABQAAgAAAAAAAAAQABQAAgAAAAAAAAARABQAAgAAAAAAAAASABQAAgAAAAAAAAATABQAAgAAAAAAAAAUABQAAgAAAAAAAAAVABQAAgAAAAAAAAAWABQAAgAAAAAAAAAXABQAAgAAAAAAAAAYABQAAgAAAAAAAAAZABQAAgAAAAAAAAAaABQAAgAAAAAAAAAbABQAAgAAAAAAAAAcABQAAgAAAAAAAAAdABQAAgAAAAAAAAAeABQAAgAAAAAAAAAeABUAAgAAAAAAAAAfABUAAgAAAAAAAAAVABgAAgAAAAAAAAAAABkAAgAAAAAAAAAAABoAAgAAAAAAAAAAABsAAgAAAAAAAAAAABwAAgAAAAAAAAAAAB0AAgAAAAAAAAAAAB4AAgAAAAAAAAAAAB8AAgAAAAAAAAAVABkAAgAAAAAAAAAWABoAAgAAAAAAAAAVABoAAgAAAAAAAAAWABsAAgAAAAAAAAAfABwAAgAAAAAAAAAfAB0AAgAAAAAAAAAfAB4AAgAAAAAAAAAfAB8AAgAAAAAAAAA=") +tile_map_data = PackedByteArray("AAAAABUAAgAAAAAAAAABABUAAgAAAAAAAAACABUAAgAAAAAAAAADABUAAgAAAAAAAAAEABUAAgAAAAAAAAAFABUAAgAAAAAAAAAGABUAAgAAAAAAAAAHABUAAgAAAAAAAAAHABQAAgAAAAAAAAAIABQAAgAAAAAAAAAJABQAAgAAAAAAAAAKABQAAgAAAAAAAAALABQAAgAAAAAAAAAMABQAAgAAAAAAAAANABQAAgAAAAAAAAAOABQAAgAAAAAAAAAPABQAAgAAAAAAAAAQABQAAgAAAAAAAAARABQAAgAAAAAAAAATABQAAgAAAAAAAAAUABQAAgAAAAAAAAAVABQAAgAAAAAAAAAWABQAAgAAAAAAAAAXABQAAgAAAAAAAAAYABQAAgAAAAAAAAAZABQAAgAAAAAAAAAaABQAAgAAAAAAAAAbABQAAgAAAAAAAAAcABQAAgAAAAAAAAAdABQAAgAAAAAAAAAeABQAAgAAAAAAAAAeABUAAgAAAAAAAAAfABUAAgAAAAAAAAAVABgAAgAAAAAAAAAAABkAAgAAAAAAAAAAABoAAgAAAAAAAAAAABsAAgAAAAAAAAAAABwAAgAAAAAAAAAAAB0AAgAAAAAAAAAAAB4AAgAAAAAAAAAAAB8AAgAAAAAAAAAVABkAAgAAAAAAAAAWABoAAgAAAAAAAAAVABoAAgAAAAAAAAAWABsAAgAAAAAAAAAfABwAAgAAAAAAAAAfAB0AAgAAAAAAAAAfAB4AAgAAAAAAAAAfAB8AAgAAAAAAAAASABQAAgAAAAAAAAA=") tile_set = ExtResource("5_ppslc") [node name="Stone_Level0" type="TileMapLayer" parent="TileMapLayers" unique_id=1567249514] -tile_map_data = PackedByteArray("AAAeABQABAAAAAIAAAAfABQABAACAAIAAAAdAAsABAAAAAMAAAAdABMABAABAAIAAAAeABMABAABAAIAAAAfABMABAABAAIAAAAAABQABAABAAIAAAABABQABAABAAIAAAACABQABAABAAIAAAADABQABAABAAIAAAAEABQABAABAAIAAAAFABQABAABAAIAAAAGABQABAABAAIAAAAHABQABAACAAIAAAAcABMABAABAAIAAAAbABMABAABAAIAAQAaABMABAABAAIAAAAZABMABAABAAIAAAAYABMABAABAAIAAAAXABMABAABAAIAAAAWABMABAABAAIAAAAVABMABAABAAIAAAAUABMABAABAAIAAAATABMABAABAAIAAAASABMABAABAAIAAAARABMABAABAAIAAAAQABMABAABAAIAAAAPABMABAABAAIAAQAOABMABAABAAIAAAANABMABAABAAIAAAAMABMABAABAAIAAAALABMABAABAAIAAAAKABMABAABAAIAAAAJABMABAABAAIAAAAIABMABAABAAIAAAA=") +tile_map_data = PackedByteArray("AAAeABQABAAAAAIAAAAfABQABAACAAIAAAAdAAsABAAAAAMAAAAdABMABAABAAIAAAAeABMABAABAAIAAAAfABMABAABAAIAAAAAABQABAABAAIAAAABABQABAABAAIAAAACABQABAABAAIAAAADABQABAABAAIAAAAEABQABAABAAIAAAAFABQABAABAAIAAAAGABQABAABAAIAAAAHABQABAACAAIAAAAcABMABAABAAIAAAAbABMABAABAAIAAQAaABMABAABAAIAAAAZABMABAABAAIAAAAYABMABAABAAIAAAAXABMABAABAAIAAAAWABMABAABAAIAAAAVABMABAABAAIAAAAUABMABAABAAIAAAATABMABAABAAIAAAASABMABAABAAIAAAARABMABAABAAIAAAAQABMABAABAAIAAAAPABMABAABAAIAAAAOABMABAABAAIAAAANABMABAABAAIAAAAMABMABAABAAIAAAALABMABAABAAIAAAAKABMABAABAAIAAAAJABMABAABAAIAAAAIABMABAABAAIAAAA=") tile_set = ExtResource("6_5j6h7") metadata/_edit_lock_ = true @@ -134,7 +134,7 @@ tile_map_data = PackedByteArray("AAAPABMAAwAAAAEAAAAPABUAAwAAAAIAAAAPABYAAwAAAAI tile_set = ExtResource("8_ns5r3") [node name="Piers" type="TileMapLayer" parent="TileMapLayers" unique_id=855664120] -tile_map_data = PackedByteArray("AAAbABMAAwAAAAEAAAAbABQAAwAAAAIAAAAbABUAAwAAAAIAAAAbABYAAwAAAAMAAAA=") +tile_map_data = PackedByteArray("AAAbABMAAwAAAAEAAAAbABQAAwAAAAIAAAAbABUAAwAAAAIAAAAbABYAAwAAAAMAAQA=") tile_set = ExtResource("8_ns5r3") [node name="Grass_Level2" type="TileMapLayer" parent="TileMapLayers" unique_id=787768027] diff --git a/tiles/bridges.tres b/tiles/bridges.tres index 45134046c0..f46ca1a81c 100644 --- a/tiles/bridges.tres +++ b/tiles/bridges.tres @@ -8,48 +8,71 @@ texture_region_size = Vector2i(64, 64) 0:0/0 = 0 0:0/0/terrain_set = 0 0:0/0/terrain = 0 +0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -24, 32, -24, 32, 24, 16, 24) +0:0/0/physics_layer_1/polygon_0/points = PackedVector2Array(32, -24, 32, -32, 24, -32) +0:0/0/physics_layer_1/polygon_1/points = PackedVector2Array(32, 24, 32, 32, 24, 32) 0:0/0/terrains_peering_bit/right_side = 0 1:0/0 = 0 1:0/0/terrain_set = 0 1:0/0/terrain = 0 +1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -24, 32, -24, 32, 24, -32, 24) +1:0/0/physics_layer_1/polygon_0/points = PackedVector2Array(-32, -32, 32, -32, 32, -26, -32, -26) +1:0/0/physics_layer_1/polygon_1/points = PackedVector2Array(-32, 24, 32, 24, 32, 32, -32, 32) 1:0/0/terrains_peering_bit/right_side = 0 1:0/0/terrains_peering_bit/left_side = 0 2:0/0 = 0 2:0/0/terrain_set = 0 2:0/0/terrain = 0 +2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, -24, -16, -24, -16, 24, -32, 24) +2:0/0/physics_layer_1/polygon_0/points = PackedVector2Array(-32, -32, -24, -32, -32, -24) +2:0/0/physics_layer_1/polygon_1/points = PackedVector2Array(-32, 24, -32, 24, -24, 32, -32, 32) 2:0/0/terrains_peering_bit/left_side = 0 0:1/0 = 0 0:1/0/terrain_set = 0 0:1/0/terrain = 0 +0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-24, 24, 24, 24, 24, 32, -24, 32) +0:1/0/physics_layer_1/polygon_0/points = PackedVector2Array(-32, 24, -24, 32, -32, 32) +0:1/0/physics_layer_1/polygon_1/points = PackedVector2Array(24, 32, 32, 24, 32, 32) 0:1/0/terrains_peering_bit/bottom_side = 0 1:1/0 = 0 2:1/0 = 0 0:2/0 = 0 0:2/0/terrain_set = 0 0:2/0/terrain = 0 +0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-24, -32, 24, -32, 24, 32, -24, 32) +0:2/0/physics_layer_1/polygon_0/points = PackedVector2Array(-32, -32, -32, -32, -26, -32, -26, 32, -32, 32) +0:2/0/physics_layer_1/polygon_1/points = PackedVector2Array(25, -32, 32, -32, 32, 32, 25, 32) 0:2/0/terrains_peering_bit/bottom_side = 0 0:2/0/terrains_peering_bit/top_side = 0 1:2/0 = 0 +0:3/next_alternative_id = 2 0:3/0 = 0 0:3/0/terrain_set = 0 0:3/0/terrain = 0 +0:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-24, -32, 24, -32, 24, -24, -24, -24) +0:3/0/physics_layer_1/polygon_0/points = PackedVector2Array(-32, -24, -24, -32, -32, -32) +0:3/0/physics_layer_1/polygon_1/points = PackedVector2Array(24, -32, 32, -32, 32, -24) 0:3/0/terrains_peering_bit/top_side = 0 +0:3/1 = 1 +0:3/1/physics_layer_0/polygon_0/points = PackedVector2Array(-24, -32, 24, -32, 24, 0, -24, 0) +0:3/1/physics_layer_1/polygon_0/points = PackedVector2Array(-32, -32, -24, -32, -24, 8, 24, 8, 24, -32, 32, -32, 32, 24, 32, 32, -32, 32) 2:3/0 = 0 2:2/0 = 0 -2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-19.593307, -26.124409, -18.799213, 22.622784, 23.897308, 22.941414, 23.791874, -26.124409, -20.059814, -26.124409) +2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-32, 24, -32, -24, -16, -24, -16, 24) +2:2/0/physics_layer_0/polygon_1/points = PackedVector2Array(16, 24, 16, -24, 32, -24, 32, 24) +2:2/0/physics_layer_1/polygon_0/points = PackedVector2Array(-32, -32, 32, -32, 32, -24, 16, -25.401325, 16, 24.836853, 32, 24, 32, 32, -32, 32, -32, 24, -16, 24, -16, -23.143429, -32, -24) 1:3/0 = 0 -1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-26.530273, -21.450008, 27.402245, -21.029629, 27.402245, 15.294277, -27.094748, 15.805267, -27.094748, -22.578957) +1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-24, -32, 24, -32, 24, -16, -24, -16) +1:3/0/physics_layer_0/polygon_1/points = PackedVector2Array(-24, 16, 24, 16, 24, 32, -24, 32) +1:3/0/physics_layer_1/polygon_0/points = PackedVector2Array(-32, -32, -24, -32, -23.990143, -16, 24.554615, -16, 24, -32, 32, -32, 32, 32, 24, 32, 24.554611, 16, -23.990143, 16, -24, 32, -32, 32) [resource] tile_size = Vector2i(64, 64) occlusion_layer_0/light_mask = 1 -physics_layer_0/collision_layer = 16 +physics_layer_0/collision_layer = 1024 physics_layer_0/collision_mask = 0 -physics_layer_0/collision_priority = 100.0 -physics_layer_1/collision_layer = 8 +physics_layer_1/collision_layer = 2048 physics_layer_1/collision_mask = 0 -physics_layer_2/collision_layer = 512 -physics_layer_2/collision_mask = 0 terrain_set_0/mode = 2 terrain_set_0/terrain_0/name = "Bridge" terrain_set_0/terrain_0/color = Color(0.404068, 0.229965, 0.149571, 1) diff --git a/tiles/void_chromakey.tres b/tiles/void_chromakey.tres index 93d50e2733..b4779563e2 100644 --- a/tiles/void_chromakey.tres +++ b/tiles/void_chromakey.tres @@ -110,7 +110,7 @@ physics_layer_0/collision_mask = 0 physics_layer_0/collision_priority = 100.0 physics_layer_1/collision_layer = 8 physics_layer_1/collision_mask = 0 -physics_layer_2/collision_layer = 512 +physics_layer_2/collision_layer = 8192 physics_layer_2/collision_mask = 0 terrain_set_0/mode = 2 terrain_set_0/terrain_0/name = "VoidChromakey"