diff --git a/blobby1.ico b/blobby1.ico new file mode 100644 index 0000000..a099ee1 Binary files /dev/null and b/blobby1.ico differ diff --git a/project.godot b/project.godot index 48c7400..27da77b 100644 --- a/project.godot +++ b/project.godot @@ -60,7 +60,8 @@ GlobalState="*res://src/Autoload/GlobalState.tscn" [debug] -settings/fps/force_fps=144 +settings/fps/force_fps=60 +settings/stdout/print_fps=true [display] @@ -122,6 +123,7 @@ move_left={ "events": [ Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":-1.0,"script":null) , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"physical_scancode":0,"unicode":0,"echo":false,"script":null) , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":14,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":16777231,"unicode":0,"echo":false,"script":null) ] } move_right={ @@ -129,12 +131,14 @@ move_right={ "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"physical_scancode":0,"unicode":0,"echo":false,"script":null) , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":1.0,"script":null) , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"button_index":15,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":16777233,"unicode":0,"echo":false,"script":null) ] } jump={ "deadzone": 0.5, "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"physical_scancode":0,"unicode":0,"echo":false,"script":null) , Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":0,"pressure":0.0,"pressed":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":16777232,"unicode":0,"echo":false,"script":null) ] } pause={ @@ -154,6 +158,7 @@ duck={ "events": [ Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":13,"pressure":0.0,"pressed":false,"script":null) , Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":1.0,"script":null) , Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":83,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":16777234,"unicode":0,"echo":false,"script":null) ] } click={ @@ -164,6 +169,7 @@ click={ interact={ "deadzone": 0.5, "events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":69,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":16777221,"unicode":0,"echo":false,"script":null) ] } @@ -182,6 +188,7 @@ interact={ [physics] common/physics_fps=120 +2d/thread_model=2 2d/cell_size=100 common/enable_object_picking=false @@ -191,6 +198,7 @@ common/enable_object_picking=false quality/intended_usage/framebuffer_allocation=0 quality/intended_usage/framebuffer_allocation.mobile=0 2d/snapping/use_gpu_pixel_snap=true +threads/thread_model=2 environment/default_environment="res://default_env.tres" quality/2d/use_pixel_snap=true environment/2d/use_nvidia_rect_flicker_workaround=true diff --git a/src/Actors/Enemies/Beings/Caterpillar.tscn b/src/Actors/Enemies/Beings/Caterpillar.tscn index 43c293e..af4cfec 100644 --- a/src/Actors/Enemies/Beings/Caterpillar.tscn +++ b/src/Actors/Enemies/Beings/Caterpillar.tscn @@ -7,7 +7,7 @@ extents = Vector2( 2.72463, 1.17848 ) [sub_resource type="RectangleShape2D" id=2] -extents = Vector2( 15, 6.12039 ) +extents = Vector2( 18.75, 6.38067 ) [sub_resource type="RectangleShape2D" id=3] extents = Vector2( 14.563, 9.38461 ) @@ -64,9 +64,10 @@ modulate = Color( 0, 0.0392157, 1, 1 ) position = Vector2( 0, -6.44095 ) collision_layer = 2 input_pickable = false +monitorable = false [node name="CollisionShape2D" type="CollisionShape2D" parent="StompDetector"] -position = Vector2( 0, -0.2 ) +position = Vector2( 0, 0.0602803 ) shape = SubResource( 2 ) [node name="EnemySkin" type="Area2D" parent="." groups=["player"]] diff --git a/src/Actors/Enemies/Beings/WhatAreFrog.tscn b/src/Actors/Enemies/Beings/WhatAreFrog.tscn index b09acfc..b05331b 100644 --- a/src/Actors/Enemies/Beings/WhatAreFrog.tscn +++ b/src/Actors/Enemies/Beings/WhatAreFrog.tscn @@ -426,7 +426,7 @@ graph_offset = Vector2( -340, -193 ) extents = Vector2( 12, 9 ) [sub_resource type="RectangleShape2D" id=2] -extents = Vector2( 15, 5.12039 ) +extents = Vector2( 18.5714, 2.85714 ) [sub_resource type="RectangleShape2D" id=3] extents = Vector2( 18.2143, 13.5955 ) @@ -466,7 +466,6 @@ position = Vector2( 0, -7 ) texture = ExtResource( 1 ) hframes = 2 vframes = 4 -frame = 1 [node name="AnimationPlayer" type="AnimationPlayer" parent="FrogSprite"] anims/RESET = SubResource( 5 ) @@ -551,9 +550,10 @@ position = Vector2( 0, -10 ) scale = Vector2( 0.7, 0.7 ) collision_layer = 2 input_pickable = false +monitorable = false [node name="CollisionShape2D" type="CollisionShape2D" parent="StompDetector"] -position = Vector2( 1.19209e-07, -1.42857 ) +position = Vector2( 0, -1.42857 ) shape = SubResource( 2 ) [node name="EnemySkin" type="Area2D" parent="."] diff --git a/src/Autoload/GlobalState.gd b/src/Autoload/GlobalState.gd index 91570cc..874ad82 100644 --- a/src/Autoload/GlobalState.gd +++ b/src/Autoload/GlobalState.gd @@ -1,10 +1,30 @@ extends Node -var progress_dict := {} setget set_progress +var progress_dict := {} setget set_progress, get_progress var wallet := 0 setget set_wallet func set_progress(value) -> void: progress_dict = value +func get_progress() -> Dictionary: + return progress_dict + +func set_savepoint(levelName: String, position: Vector2) -> void: + if(!progress_dict.has(levelName)): + progress_dict[levelName] = {} + progress_dict[levelName]["savepoint"] = position + +func get_property_value(levelName: String, propertyName: String) -> int: + if progress_dict.has(levelName) && progress_dict[levelName].has(propertyName): + return progress_dict[levelName][propertyName] + else: + return 0 + +func get_savepoint(levelName: String) -> Vector2: + if progress_dict.has(levelName) && progress_dict[levelName].has("savepoint"): + return progress_dict[levelName]["savepoint"] + else: + return Vector2() + func set_wallet(value) -> void: wallet = value diff --git a/src/Contraptions/Triggers/FrogFreeButton.gd b/src/Contraptions/Triggers/FrogFreeButton.gd index 5d01e36..73f4c78 100644 --- a/src/Contraptions/Triggers/FrogFreeButton.gd +++ b/src/Contraptions/Triggers/FrogFreeButton.gd @@ -4,7 +4,6 @@ signal button_pushed onready var activatorArea = $"%ActivatorArea" onready var indicatorPlayer = $"%IndicatorPlayer" -onready var elevator = get_node("./Portal") onready var signalManager := get_tree().root.get_child(1).get_node("%SignalManager") onready var unactivatable_timer := $Timer @@ -13,7 +12,7 @@ var activatable = false func _process(delta): if activatable && Input.is_action_just_released("interact"): selfActivate() - signalManager.emit_signal("button_pushed") + self.emit_signal("button_pushed") func selfActivate(): diff --git a/src/Contraptions/Triggers/FrogFreeButton.tscn b/src/Contraptions/Triggers/FrogFreeButton.tscn index 0d98c37..65856e8 100644 --- a/src/Contraptions/Triggers/FrogFreeButton.tscn +++ b/src/Contraptions/Triggers/FrogFreeButton.tscn @@ -40,9 +40,11 @@ tracks/0/keys = { radius = 18.0 [node name="FrogFreeButton" type="Node2D"] +z_index = -1 script = ExtResource( 1 ) [node name="Button" type="Sprite" parent="."] +z_index = -2 texture = ExtResource( 2 ) __meta__ = { "_editor_description_": "YXNlcHJpdGVfd2l6YXJkX2NvbmZpZwpwbGF5ZXJ8PVNwcml0ZS9BbmltYXRpb25QbGF5ZXIKc291cmNlfD1yZXM6Ly9hc3NldHMvbmV1dHJhbCBvYmplY3QvYnV0dG9uLmFzZXByaXRlCmxheWVyfD0Kb3BfZXhwfD1GYWxzZQpvX2ZvbGRlcnw9Cm9fbmFtZXw9Cm9ubHlfdmlzaWJsZXw9RmFsc2UKb19leF9wfD0K" @@ -50,13 +52,11 @@ __meta__ = { [node name="Digit" type="Sprite" parent="."] position = Vector2( 0.5, 0.5 ) -z_index = 1 texture = ExtResource( 4 ) hframes = 10 [node name="Indicator" type="Sprite" parent="."] position = Vector2( 0, -7 ) -z_index = 1 texture = ExtResource( 3 ) __meta__ = { "_editor_description_": "YXNlcHJpdGVfd2l6YXJkX2NvbmZpZwpwbGF5ZXJ8PUluZGljYXRvcjIvQW5pbWF0aW9uUGxheWVyCnNvdXJjZXw9cmVzOi8vYXNzZXRzL25ldXRyYWwgb2JqZWN0L2J1dHRvblN0YXRlSW5kaWNhdG9yLmFzZXByaXRlCmxheWVyfD0Kb3BfZXhwfD1GYWxzZQpvX2ZvbGRlcnw9Cm9fbmFtZXw9Cm9ubHlfdmlzaWJsZXw9RmFsc2UKb19leF9wfD0K" diff --git a/src/Environment/Flag.gdshader b/src/Environment/Flag.gdshader new file mode 100644 index 0000000..f973a2d --- /dev/null +++ b/src/Environment/Flag.gdshader @@ -0,0 +1,14 @@ +shader_type canvas_item; + +uniform float speed = 0.6; +uniform float frequency_y = 3.0; +uniform float frequency_x = 3.0; +uniform float amplitude = 0.3; +uniform float inclination = 1.0; + + +void vertex() { + VERTEX.y += sin((UV.x - TIME * speed) * frequency_y) * amplitude * UV.x; + VERTEX.x += cos((UV.y - TIME * speed) * frequency_x) * amplitude * 0.5 * UV.x; + VERTEX.x -= UV.y * inclination; +} \ No newline at end of file diff --git a/src/Environment/FlagMaterial.tres b/src/Environment/FlagMaterial.tres new file mode 100644 index 0000000..0d54de0 --- /dev/null +++ b/src/Environment/FlagMaterial.tres @@ -0,0 +1,11 @@ +[gd_resource type="ShaderMaterial" load_steps=2 format=2] + +[ext_resource path="res://src/Environment/Flag.gdshader" type="Shader" id=1] + +[resource] +shader = ExtResource( 1 ) +shader_param/speed = 0.6 +shader_param/frequency_y = 10.0 +shader_param/frequency_x = 3.0 +shader_param/amplitude = 1.0 +shader_param/inclination = 1.0 diff --git a/src/Levels/Falling Level.tscn b/src/Levels/Falling Level.tscn index 4285936..ac194ad 100644 --- a/src/Levels/Falling Level.tscn +++ b/src/Levels/Falling Level.tscn @@ -36,10 +36,7 @@ drag_margin_top = 0.38 drag_margin_bottom = 0.0 [node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"] -frame = 6 - -[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"] -frame = 10 +frame = 8 [node name="Blobby" parent="." instance=ExtResource( 3 )] unique_name_in_owner = true diff --git a/src/Levels/Level 1.tscn b/src/Levels/Level 1.tscn index c62b09d..cdfa8f7 100644 --- a/src/Levels/Level 1.tscn +++ b/src/Levels/Level 1.tscn @@ -36,10 +36,10 @@ unique_name_in_owner = true drag_margin_bottom = 0.3 [node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"] -frame = 1 +frame = 5 [node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"] -frame = 1 +frame = 5 [node name="Blobby" parent="." instance=ExtResource( 8 )] unique_name_in_owner = true diff --git a/src/Levels/Level 2.tscn b/src/Levels/Level 2.tscn index ea8e2ae..59ca3b8 100644 --- a/src/Levels/Level 2.tscn +++ b/src/Levels/Level 2.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=18 format=2] +[gd_scene load_steps=19 format=2] [ext_resource path="res://src/Environment/AlienShipTileSet.tres" type="TileSet" id=1] [ext_resource path="res://src/Contraptions/Portal/Portal.tscn" type="PackedScene" id=2] @@ -19,6 +19,8 @@ [sub_resource type="AnimationNodeStateMachinePlayback" id=4] +[sub_resource type="AnimationNodeStateMachinePlayback" id=5] + [node name="Level 2" type="Node2D"] script = ExtResource( 15 ) __meta__ = { @@ -42,13 +44,11 @@ unique_name_in_owner = true drag_margin_bottom = 0.3 [node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"] -frame = 2 - -[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"] -frame = 2 +frame = 12 [node name="Blobby" parent="." instance=ExtResource( 9 )] unique_name_in_owner = true +position = Vector2( 2385, -81 ) [node name="AnimationTree" parent="Blobby/BlobbySprite" index="0"] parameters/playback = SubResource( 4 ) @@ -89,6 +89,12 @@ tile_data = PoolIntArray( -1179518, 1, 0, -1179517, 0, 0, -1179515, 0, 0, -11795 [node name="WhatAreFrog" parent="." instance=ExtResource( 14 )] position = Vector2( 3432, -10 ) +[node name="Digit" parent="WhatAreFrog" index="2"] +visible = false + +[node name="AnimationTree" parent="WhatAreFrog/FrogSprite" index="1"] +parameters/playback = SubResource( 5 ) + [node name="TileMap" type="TileMap" parent="."] unique_name_in_owner = true tile_set = ExtResource( 1 ) @@ -240,6 +246,9 @@ position = Vector2( 3279, -192 ) [node name="SavePoint" parent="." instance=ExtResource( 16 )] position = Vector2( 2502, -120 ) +[node name="AnimationPlayer" parent="SavePoint" index="2"] +autoplay = "RollOutFlag" + [connection signal="body_exited" from="Blobby/BlobbySkin" to="Blobby" method="_on_BlobbySkin_body_exited"] [editable path="SignalManager"] @@ -252,3 +261,5 @@ position = Vector2( 2502, -120 ) [editable path="PitArea2"] [editable path="PitArea3"] [editable path="PitArea4"] +[editable path="WhatAreFrog"] +[editable path="SavePoint"] diff --git a/src/Levels/Level 3.tscn b/src/Levels/Level 3.tscn index b6ff10f..4c96338 100644 --- a/src/Levels/Level 3.tscn +++ b/src/Levels/Level 3.tscn @@ -1,364 +1,71 @@ -[gd_scene load_steps=30 format=2] +[gd_scene load_steps=16 format=2] -[ext_resource path="res://src/Environment/AlienShipTileSet.tres" type="TileSet" id=1] -[ext_resource path="res://src/Utilities/SignalManager.tscn" type="PackedScene" id=2] -[ext_resource path="res://src/Utilities/LevelState.tscn" type="PackedScene" id=3] -[ext_resource path="res://src/Actors/BlobbyCam.tscn" type="PackedScene" id=4] -[ext_resource path="res://src/Actors/Enemies/Beings/BoundFrog.tscn" type="PackedScene" id=5] -[ext_resource path="res://src/Actors/Enemies/Beings/Flyer.tscn" type="PackedScene" id=6] +[ext_resource path="res://src/Levels/Level 4.tscn" type="PackedScene" id=1] +[ext_resource path="res://src/Environment/AlienShipTileSet.tres" type="TileSet" id=2] [ext_resource path="res://src/NeutralObjects/Coin.tscn" type="PackedScene" id=7] -[ext_resource path="res://src/Actors/Blobby/Blobby.tscn" type="PackedScene" id=8] -[ext_resource path="res://src/UserInterface/UserInterface.tscn" type="PackedScene" id=9] -[ext_resource path="res://src/Contraptions/Triggers/WhyButton.tscn" type="PackedScene" id=10] -[ext_resource path="res://src/Contraptions/Portal/Portal.tscn" type="PackedScene" id=11] -[ext_resource path="res://src/Levels/Level 3.gd" type="Script" id=12] -[ext_resource path="res://src/Platforms/SpringPlatform.tscn" type="PackedScene" id=13] -[ext_resource path="res://src/Platforms/DropThroughPlatform.tscn" type="PackedScene" id=14] +[ext_resource path="res://src/Utilities/SignalManager.tscn" type="PackedScene" id=36] +[ext_resource path="res://src/Utilities/LevelState.tscn" type="PackedScene" id=37] +[ext_resource path="res://src/Actors/BlobbyCam.tscn" type="PackedScene" id=38] +[ext_resource path="res://src/Platforms/FlyingPlatformClean.tscn" type="PackedScene" id=40] +[ext_resource path="res://src/Contraptions/Portal/Portal.tscn" type="PackedScene" id=41] +[ext_resource path="res://src/Platforms/DropThroughPlatform.tscn" type="PackedScene" id=42] +[ext_resource path="res://src/Actors/Enemies/Beings/Flyer.tscn" type="PackedScene" id=45] +[ext_resource path="res://src/Actors/Blobby/Blobby.tscn" type="PackedScene" id=46] +[ext_resource path="res://src/UserInterface/UserInterface.tscn" type="PackedScene" id=47] +[ext_resource path="res://src/Levels/Level 3.gd" type="Script" id=48] [sub_resource type="AnimationNodeStateMachinePlayback" id=4] -[sub_resource type="AnimationNodeStateMachinePlayback" id=5] - -[sub_resource type="Animation" id=6] -length = 0.001 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 0, -"values": [ 0 ] -} - -[sub_resource type="Animation" id=7] -resource_name = "hunting" -length = 1.62 -loop = true -step = 0.01 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ 0 ] -} -tracks/1/type = "value" -tracks/1/path = NodePath(".:scale") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ Vector2( -1, 1 ) ] -} - -[sub_resource type="Animation" id=8] -resource_name = "huntingLeft" -length = 0.042 -loop = true -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ 0 ] -} -tracks/1/type = "value" -tracks/1/path = NodePath(".:scale") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ Vector2( 1, 1 ) ] -} - -[sub_resource type="Animation" id=9] -resource_name = "searching" -length = 1.62 -loop = true -step = 0.01 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0.02 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ 1 ] -} -tracks/1/type = "value" -tracks/1/path = NodePath(".:scale") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ Vector2( -1, 1 ) ] -} - -[sub_resource type="Animation" id=10] -resource_name = "searchingLeft" -length = 1.62 -loop = true -step = 0.01 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ 1 ] -} -tracks/1/type = "value" -tracks/1/path = NodePath(".:scale") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ Vector2( 1, 1 ) ] -} - -[sub_resource type="AnimationNodeStateMachinePlayback" id=11] - -[sub_resource type="Animation" id=12] -resource_name = "pushing" -length = 0.5 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = false -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0, 0.2, 0.4 ), -"transitions": PoolRealArray( 1, 1, 1 ), -"update": 1, -"values": [ 0.0, 1.0, 2.0 ] -} - -[sub_resource type="Animation" id=13] -length = 0.1 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = false -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ 0.0 ] -} - -[sub_resource type="Animation" id=14] -resource_name = "onning" -length = 0.6 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = false -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0, 0.2, 0.3, 0.5 ), -"transitions": PoolRealArray( 1, 1, 1, 1 ), -"update": 1, -"values": [ 5.0, 2.0, 6.0, 4.0 ] -} - -[sub_resource type="Animation" id=15] -length = 0.1 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = false -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ 0.0 ] -} - -[sub_resource type="Animation" id=16] -resource_name = "onning" -length = 0.6 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = false -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0, 0.2, 0.3, 0.5 ), -"transitions": PoolRealArray( 1, 1, 1, 1 ), -"update": 1, -"values": [ 7.0, 8.0, 6.0, 4.0 ] -} - -[sub_resource type="Animation" id=17] -length = 0.1 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = false -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0 ), -"transitions": PoolRealArray( 1 ), -"update": 1, -"values": [ 0.0 ] -} - -[sub_resource type="Animation" id=18] -resource_name = "onning" -length = 0.6 -tracks/0/type = "value" -tracks/0/path = NodePath(".:frame") -tracks/0/interp = 1 -tracks/0/loop_wrap = false -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/keys = { -"times": PoolRealArray( 0, 0.2, 0.3, 0.5 ), -"transitions": PoolRealArray( 1, 1, 1, 1 ), -"update": 1, -"values": [ 1.0, 2.0, 3.0, 4.0 ] -} +[sub_resource type="AnimationNodeStateMachinePlayback" id=6] [node name="Level 3" type="Node2D"] -script = ExtResource( 12 ) +script = ExtResource( 48 ) __meta__ = { "_edit_horizontal_guides_": [ 464.0 ], "_edit_vertical_guides_": [ 2880.0 ] } -[node name="SignalManager" parent="." instance=ExtResource( 2 )] +[node name="SignalManager" parent="." instance=ExtResource( 36 )] -[node name="LevelState" parent="." instance=ExtResource( 3 )] +[node name="LevelState" parent="." instance=ExtResource( 37 )] unique_name_in_owner = true -[node name="UserInterface" parent="." instance=ExtResource( 9 )] -unique_name_in_owner = true +[node name="UserInterface" parent="." instance=ExtResource( 47 )] [node name="Timer" parent="UserInterface/HUD/HUDOverlay/GetBackTimer" index="0"] wait_time = 20.0 -[node name="BlobbyCam" parent="." instance=ExtResource( 4 )] -unique_name_in_owner = true -drag_margin_top = 0.13 -drag_margin_bottom = 0.3 - -[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"] -frame = 8 - -[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"] -frame = 8 - -[node name="Blobby" parent="." instance=ExtResource( 8 )] +[node name="PauseScreen" parent="UserInterface" index="1"] +margin_left = 3.15372 +margin_top = 0.456848 +margin_right = 3.15375 +margin_bottom = 0.456848 + +[node name="BlobbyCam" parent="." instance=ExtResource( 38 )] + +[node name="Blobby" parent="." instance=ExtResource( 46 )] unique_name_in_owner = true +position = Vector2( 63, 336 ) [node name="AnimationTree" parent="Blobby/BlobbySprite" index="0"] parameters/playback = SubResource( 4 ) +[node name="Portal" parent="." instance=ExtResource( 41 )] +position = Vector2( 745, 312 ) +next_scene = ExtResource( 1 ) + [node name="Coin" parent="." instance=ExtResource( 7 )] -position = Vector2( 216, -216 ) +position = Vector2( 204, 207 ) [node name="Coin2" parent="." instance=ExtResource( 7 )] -position = Vector2( 695, -48 ) +position = Vector2( 745, 126 ) [node name="Coin3" parent="." instance=ExtResource( 7 )] -position = Vector2( 1272, -192 ) - -[node name="Flyer" parent="." instance=ExtResource( 6 )] -position = Vector2( 483, -270 ) -aggressive = false - -[node name="AnimationTree" parent="Flyer/FlyerSprite" index="1"] -parameters/playback = SubResource( 5 ) - -[node name="Position2D2" parent="Flyer/PatrolPath" index="0"] -position = Vector2( -3, -21 ) - -[node name="Position2D3" parent="Flyer/PatrolPath" index="1"] -position = Vector2( -3, 12 ) - -[node name="Flyer2" parent="." instance=ExtResource( 6 )] -position = Vector2( 1041, -32 ) -aggressive = false - -[node name="AnimationPlayer" parent="Flyer2/FlyerSprite" index="0"] -anims/RESET = SubResource( 6 ) -anims/hunting = SubResource( 7 ) -anims/huntingLeft = SubResource( 8 ) -anims/searching = SubResource( 9 ) -anims/searchingLeft = SubResource( 10 ) - -[node name="AnimationTree" parent="Flyer2/FlyerSprite" index="1"] -parameters/playback = SubResource( 11 ) - -[node name="Position2D2" parent="Flyer2/PatrolPath" index="0"] -position = Vector2( -3, -21 ) - -[node name="Position2D3" parent="Flyer2/PatrolPath" index="1"] -position = Vector2( -3, 12 ) - -[node name="BoundFrog" parent="." instance=ExtResource( 5 )] -position = Vector2( 778, -9 ) - -[node name="BoundFrog2" parent="." instance=ExtResource( 5 )] -position = Vector2( 1266, -537 ) - -[node name="Portal" parent="." instance=ExtResource( 11 )] -position = Vector2( 1368, -552 ) - -[node name="SpringPlatform" parent="." instance=ExtResource( 13 )] -position = Vector2( 1272, -36 ) - -[node name="SpringPlatform2" parent="." instance=ExtResource( 13 )] -position = Vector2( 600, -279 ) +position = Vector2( 384, 99 ) [node name="TileMap" type="TileMap" parent="."] unique_name_in_owner = true -tile_set = ExtResource( 1 ) +tile_set = ExtResource( 2 ) cell_size = Vector2( 24, 24 ) cell_quadrant_size = 3 cell_custom_transform = Transform2D( 24, 0, 0, 24, 0, 0 ) @@ -366,57 +73,27 @@ collision_layer = 8 collision_mask = 8 bake_navigation = true format = 1 -tile_data = PoolIntArray( -1966085, 1610612751, 0, -1966084, 1610612746, 0, -1966083, 1610612746, 0, -1966082, 1610612746, 0, -1966081, 1610612746, 0, -2031616, 1610612746, 0, -2031615, 1610612746, 0, -2031614, 1610612746, 0, -2031613, 1610612746, 0, -2031612, 1610612746, 0, -2031611, 1610612746, 0, -2031610, 1610612746, 0, -2031609, 1610612746, 0, -2031608, 1610612746, 0, -2031607, 1610612746, 0, -2031606, 1610612746, 0, -2031605, 1610612746, 0, -2031604, 1610612746, 0, -2031603, 1610612746, 0, -2031602, 1610612746, 0, -2031601, 1610612746, 0, -2031600, 1610612746, 0, -2031599, 1610612746, 0, -2031598, 1610612746, 0, -2031597, 1610612746, 0, -2031596, 1610612746, 0, -2031595, 1610612746, 0, -2031594, 1610612746, 0, -2031593, 1610612746, 0, -2031592, 1610612746, 0, -2031591, 1610612746, 0, -2031590, 1610612746, 0, -2031589, 1610612746, 0, -2031588, 1610612746, 0, -2031587, 1610612746, 0, -2031586, 1610612746, 0, -2031585, 1610612746, 0, -2031584, 1610612746, 0, -2031583, 1610612746, 0, -2031582, 1610612746, 0, -2031581, 1610612746, 0, -2031580, 1610612746, 0, -2031579, 1610612746, 0, -2031578, 1610612746, 0, -2031577, 1610612746, 0, -2031576, 1610612746, 0, -2031575, 1610612746, 0, -2031574, 1610612746, 0, -2031573, 1610612746, 0, -2031572, 1610612746, 0, -2031571, 1610612746, 0, -2031570, 1610612746, 0, -2031569, 1610612746, 0, -2031568, 1610612746, 0, -2031567, 1610612746, 0, -2031566, 1610612746, 0, -2031565, 1610612746, 0, -2031564, 1610612746, 0, -2031563, 1610612746, 0, -2031562, 1610612746, 0, -2031561, 1610612746, 0, -2031560, 1610612746, 0, -2031559, 1610612746, 0, -2031558, 1610612746, 0, -2031557, -1073741809, 0, -1900549, -1610612726, 0, -1900548, 1610612739, 0, -1900547, 1610612738, 0, -1900546, 1610612738, 0, -1900545, 1610612738, 0, -1966080, 1610612738, 0, -1966079, 1610612738, 0, -1966078, 1610612738, 0, -1966077, 1610612738, 0, -1966076, 1610612738, 0, -1966075, 1610612738, 0, -1966074, 1610612738, 0, -1966073, 1610612738, 0, -1966072, 1610612738, 0, -1966071, 1610612738, 0, -1966070, 1610612738, 0, -1966069, 1610612738, 0, -1966068, 1610612738, 0, -1966067, 1610612738, 0, -1966066, 1610612738, 0, -1966065, 1610612738, 0, -1966064, 1610612738, 0, -1966063, 1610612738, 0, -1966062, 1610612738, 0, -1966061, 1610612738, 0, -1966060, 1610612738, 0, -1966059, 1610612738, 0, -1966058, 1610612738, 0, -1966057, 1610612738, 0, -1966056, 1610612738, 0, -1966055, 1610612738, 0, -1966054, 3, 0, -1966053, 3, 0, -1966052, 1610612738, 0, -1966051, 1610612738, 0, -1966050, 1610612738, 0, -1966049, 1610612738, 0, -1966048, 1610612738, 0, -1966047, 1610612738, 0, -1966046, 1610612738, 0, -1966045, 1610612738, 0, -1966044, 1610612738, 0, -1966043, 1610612738, 0, -1966042, 1610612738, 0, -1966041, 1610612738, 0, -1966040, 1610612738, 0, -1966039, 1610612738, 0, -1966038, 1610612738, 0, -1966037, 1610612738, 0, -1966036, 1610612738, 0, -1966035, 1610612738, 0, -1966034, 1610612738, 0, -1966033, 1610612738, 0, -1966032, 1610612738, 0, -1966031, 1610612738, 0, -1966030, 1610612738, 0, -1966029, 1610612738, 0, -1966028, 1610612738, 0, -1966027, 1610612738, 0, -1966026, 1610612738, 0, -1966025, 1610612738, 0, -1966024, 1610612738, 0, -1966023, 1610612738, 0, -1966022, 1610612739, 0, -1966021, -1073741814, 0, -1835013, -1610612726, 0, -1835012, -1610612734, 0, -1900518, -1073741822, 0, -1900517, -1610612734, 0, -1900486, -1073741822, 0, -1900485, -1073741814, 0, -1769477, -1610612726, 0, -1769476, -1610612734, 0, -1834982, -1073741822, 0, -1834981, -1610612734, 0, -1834950, -1073741822, 0, -1834949, -1073741814, 0, -1703941, -1610612726, 0, -1703940, -1610612734, 0, -1769446, -1073741822, 0, -1769445, -1610612734, 0, -1769414, -1073741822, 0, -1769413, -1073741814, 0, -1638405, -1610612726, 0, -1638404, -1610612734, 0, -1703910, -1073741822, 0, -1703909, -1610612734, 0, -1703878, -1073741822, 0, -1703877, -1073741814, 0, -1572869, -1610612726, 0, -1572868, -1610612734, 0, -1638374, -1073741822, 0, -1638373, 1610612739, 0, -1638372, 2, 0, -1638371, 2, 0, -1638370, 2, 0, -1638369, 2, 0, -1638368, 2, 0, -1638367, 2, 0, -1638366, 2, 0, -1638365, -1610612729, 0, -1638342, -1073741822, 0, -1638341, -1073741814, 0, -1507333, -1610612726, 0, -1507332, -1610612734, 0, -1572838, -1073741817, 0, -1572837, 1610612738, 0, -1572836, 1610612738, 0, -1572835, 1610612738, 0, -1572834, 1610612738, 0, -1572833, 1610612738, 0, -1572832, 1610612738, 0, -1572831, 1610612738, 0, -1572830, 1610612738, 0, -1572829, 1610612743, 0, -1572806, -1073741822, 0, -1572805, -1073741814, 0, -1441797, -1610612726, 0, -1441796, -1610612734, 0, -1507270, -1073741822, 0, -1507269, -1073741814, 0, -1376261, -1610612726, 0, -1376260, -1610612734, 0, -1441751, 7, 0, -1441750, 2, 0, -1441749, 2, 0, -1441748, 2, 0, -1441747, 2, 0, -1441746, 2, 0, -1441745, 2, 0, -1441744, 2, 0, -1441743, 2, 0, -1441742, 2, 0, -1441741, 2, 0, -1441740, 2, 0, -1441739, 2, 0, -1441738, 2, 0, -1441737, 2, 0, -1441736, 2, 0, -1441735, 2, 0, -1441734, 3, 0, -1441733, -1073741814, 0, -1310725, -1610612726, 0, -1310724, -1610612734, 0, -1376215, -1073741817, 0, -1376214, 1610612738, 0, -1376213, 1610612738, 0, -1376212, 1610612738, 0, -1376211, 1610612738, 0, -1376210, 1610612738, 0, -1376209, 1610612738, 0, -1376208, 1610612738, 0, -1376207, 1610612738, 0, -1376206, 1610612738, 0, -1376205, 1610612738, 0, -1376204, 1610612738, 0, -1376203, 1610612738, 0, -1376202, 1610612738, 0, -1376201, 1610612738, 0, -1376200, 1610612738, 0, -1376199, 1610612738, 0, -1376198, 3, 0, -1376197, -1073741814, 0, -1245189, -1610612726, 0, -1245188, -1610612734, 0, -1310683, 2, 0, -1310682, 2, 0, -1310681, 2, 0, -1310662, -1073741822, 0, -1310661, -1073741814, 0, -1179653, -1610612726, 0, -1179652, -1610612734, 0, -1245126, -1073741822, 0, -1245125, -1073741814, 0, -1114117, -1610612726, 0, -1114116, -1610612734, 0, -1179615, 2, 0, -1179614, 2, 0, -1179613, 2, 0, -1179612, 2, 0, -1179590, -1073741822, 0, -1179589, -1073741814, 0, -1048581, -1610612726, 0, -1048580, -1610612734, 0, -1114054, -1073741822, 0, -1114053, -1073741814, 0, -983045, -1610612726, 0, -983044, -1610612734, 0, -983043, -1610612727, 0, -983042, -1610612727, 0, -983041, -1610612727, 0, -1048576, -1610612727, 0, -1048575, -1610612727, 0, -1048574, -1610612727, 0, -1048573, -1610612727, 0, -1048572, -1610612727, 0, -1048571, -1610612727, 0, -1048570, -1610612727, 0, -1048569, -1610612727, 0, -1048568, -1610612727, 0, -1048567, -1610612727, 0, -1048566, -1610612727, 0, -1048565, -1610612727, 0, -1048564, -1610612727, 0, -1048563, -1610612727, 0, -1048562, -1610612727, 0, -1048561, -1610612727, 0, -1048560, -1610612727, 0, -1048559, -1610612727, 0, -1048558, -1610612727, 0, -1048557, -1610612727, 0, -1048556, 7, 0, -1048555, 2, 0, -1048554, -1610612729, 0, -1048553, -1610612727, 0, -1048552, -1610612727, 0, -1048551, -1610612727, 0, -1048550, -1610612727, 0, -1048549, -1610612727, 0, -1048548, -1610612727, 0, -1048547, -1610612727, 0, -1048546, 2, 0, -1048545, 2, 0, -1048544, 2, 0, -1048543, -1610612727, 0, -1048542, -1610612727, 0, -1048541, -1610612727, 0, -1048540, -1610612727, 0, -1048539, -1610612727, 0, -1048538, -1610612727, 0, -1048537, -1610612727, 0, -1048536, -1610612727, 0, -1048535, -1610612727, 0, -1048534, -1610612727, 0, -1048533, -1610612727, 0, -1048518, -1073741822, 0, -1048517, -1073741814, 0, -917509, -1610612726, 0, -917508, -1610612734, 0, -917507, -1610612727, 0, -917506, -1610612727, 0, -917505, -1610612727, 0, -983040, -1610612727, 0, -983039, -1610612727, 0, -983038, -1610612727, 0, -983037, -1610612727, 0, -983036, -1610612727, 0, -983035, -1610612727, 0, -983034, -1610612727, 0, -983033, -1610612727, 0, -983032, -1610612727, 0, -983031, -1610612727, 0, -983030, -1610612727, 0, -983029, -1610612727, 0, -983028, -1610612727, 0, -983027, -1610612727, 0, -983026, -1610612727, 0, -983025, -1610612727, 0, -983024, -1610612727, 0, -983023, -1610612727, 0, -983022, 7, 0, -983021, 2, 0, -983020, 3, 0, -983019, 1610612738, 0, -983018, 1610612743, 0, -983017, -1610612727, 0, -983016, -1610612727, 0, -983015, -1610612727, 0, -983014, -1610612727, 0, -983013, -1610612727, 0, -983012, -1610612727, 0, -983011, -1610612727, 0, -983010, -1610612727, 0, -983009, -1610612727, 0, -983008, -1610612727, 0, -983007, -1610612727, 0, -983006, -1610612727, 0, -983005, -1610612727, 0, -983004, -1610612727, 0, -983003, -1610612727, 0, -983002, -1610612727, 0, -983001, -1610612727, 0, -983000, -1610612727, 0, -982999, -1610612727, 0, -982998, -1610612727, 0, -982997, -1610612727, 0, -982982, -1073741822, 0, -982981, -1073741814, 0, -851973, -1610612726, 0, -851972, -1610612734, 0, -851971, -1610612727, 0, -851970, -1610612727, 0, -851969, -1610612727, 0, -917504, -1610612727, 0, -917503, -1610612727, 0, -917502, -1610612727, 0, -917501, -1610612727, 0, -917500, -1610612727, 0, -917499, -1610612727, 0, -917498, -1610612727, 0, -917497, -1610612727, 0, -917496, -1610612727, 0, -917495, -1610612727, 0, -917494, -1610612727, 0, -917493, -1610612727, 0, -917492, -1610612727, 0, -917491, -1610612727, 0, -917490, -1610612727, 0, -917489, -1610612727, 0, -917488, 7, 0, -917487, 2, 0, -917486, 3, 0, -917485, 1610612738, 0, -917484, 1610612743, 0, -917483, -1610612727, 0, -917482, -1610612727, 0, -917481, -1610612727, 0, -917480, -1610612727, 0, -917479, -1610612727, 0, -917478, -1610612727, 0, -917477, 2, 0, -917476, 2, 0, -917475, 2, 0, -917474, -1610612727, 0, -917473, -1610612727, 0, -917472, -1610612727, 0, -917471, -1610612727, 0, -917470, -1610612727, 0, -917469, -1610612727, 0, -917468, -1610612727, 0, -917467, -1610612727, 0, -917466, -1610612727, 0, -917465, -1610612727, 0, -917464, -1610612727, 0, -917463, -1610612727, 0, -917462, -1610612727, 0, -917461, -1610612727, 0, -917460, -1610612727, 0, -917446, -1073741822, 0, -917445, -1073741814, 0, -786437, -1610612726, 0, -786436, -1610612734, 0, -786435, -1610612727, 0, -786434, -1610612727, 0, -786433, -1610612727, 0, -851968, -1610612727, 0, -851967, -1610612727, 0, -851966, -1610612727, 0, -851965, -1610612727, 0, -851964, -1610612727, 0, -851963, -1610612727, 0, -851962, 7, 0, -851961, 2, 0, -851960, 2, 0, -851959, 2, 0, -851958, 2, 0, -851957, 2, 0, -851956, 2, 0, -851955, 2, 0, -851954, 2, 0, -851953, 2, 0, -851952, 3, 0, -851951, 1610612739, 0, -851950, 1610612743, 0, -851949, -1610612727, 0, -851948, -1610612727, 0, -851947, -1610612727, 0, -851946, -1610612727, 0, -851945, -1610612727, 0, -851944, -1610612727, 0, -851943, -1610612727, 0, -851942, -1610612727, 0, -851941, -1610612727, 0, -851940, -1610612727, 0, -851939, -1610612727, 0, -851938, -1610612727, 0, -851937, -1610612727, 0, -851936, -1610612727, 0, -851935, -1610612727, 0, -851934, -1610612727, 0, -851933, -1610612727, 0, -851932, -1610612727, 0, -851931, -1610612727, 0, -851930, -1610612727, 0, -851929, -1610612727, 0, -851928, -1610612727, 0, -851927, -1610612727, 0, -851926, -1610612727, 0, -851925, -1610612727, 0, -851924, -1610612727, 0, -851910, -1073741822, 0, -851909, -1073741814, 0, -720901, -1610612726, 0, -720900, -1610612734, 0, -720899, -1610612727, 0, -720898, -1610612727, 0, -720897, -1610612727, 0, -786432, -1610612727, 0, -786431, -1610612727, 0, -786430, -1610612727, 0, -786428, -1610612727, 0, -786427, -1610612727, 0, -786426, -1073741822, 0, -786425, 3, 0, -786424, 1610612738, 0, -786423, 1610612738, 0, -786422, 1610612738, 0, -786421, 1610612738, 0, -786420, 1610612738, 0, -786419, 1610612738, 0, -786418, 1610612738, 0, -786417, 1610612738, 0, -786416, 1610612738, 0, -786415, 1610612743, 0, -786414, -1610612727, 0, -786413, -1610612727, 0, -786412, -1610612727, 0, -786411, -1610612727, 0, -786410, -1610612727, 0, -786409, -1610612727, 0, -786408, -1610612727, 0, -786407, -1610612727, 0, -786406, -1610612727, 0, -786405, -1610612727, 0, -786404, -1610612727, 0, -786403, -1610612727, 0, -786402, -1610612727, 0, -786401, -1610612727, 0, -786400, -1610612727, 0, -786399, -1610612727, 0, -786398, -1610612727, 0, -786397, -1610612727, 0, -786396, -1610612727, 0, -786395, -1610612727, 0, -786394, -1610612727, 0, -786393, -1610612727, 0, -786392, -1610612727, 0, -786391, -1610612727, 0, -786390, -1610612727, 0, -786389, -1610612727, 0, -786388, -1610612727, 0, -786374, -1073741822, 0, -786373, -1073741814, 0, -655365, -1610612726, 0, -655364, -1610612734, 0, -655363, -1610612727, 0, -655362, -1610612727, 0, -655361, -1610612727, 0, -720896, -1610612727, 0, -720895, -1610612727, 0, -720894, -1610612727, 0, -720892, -1610612727, 0, -720891, -1610612727, 0, -720890, -1073741822, 0, -720889, -1610612734, 0, -720888, -1610612727, 0, -720887, -1610612727, 0, -720886, -1610612727, 0, -720885, -1610612727, 0, -720884, -1610612727, 0, -720883, -1610612727, 0, -720882, -1610612727, 0, -720881, -1610612727, 0, -720880, -1610612727, 0, -720879, -1610612727, 0, -720878, -1610612727, 0, -720877, -1610612727, 0, -720876, -1610612727, 0, -720875, -1610612727, 0, -720874, -1610612727, 0, -720873, -1610612727, 0, -720872, -1610612727, 0, -720871, -1610612727, 0, -720870, -1610612727, 0, -720869, -1610612727, 0, -720868, -1610612727, 0, -720867, -1610612727, 0, -720866, -1610612727, 0, -720865, -1610612727, 0, -720864, -1610612727, 0, -720863, -1610612727, 0, -720862, -1610612727, 0, -720861, -1610612727, 0, -720860, -1610612727, 0, -720859, -1610612727, 0, -720858, -1610612727, 0, -720857, -1610612727, 0, -720856, -1610612727, 0, -720855, -1610612727, 0, -720854, -1610612727, 0, -720853, -1610612727, 0, -720852, -1610612727, 0, -720838, -1073741822, 0, -720837, -1073741814, 0, -589829, -1610612726, 0, -589828, -1610612734, 0, -589827, -1610612727, 0, -589826, -1610612727, 0, -589825, -1610612727, 0, -655360, -1610612727, 0, -655359, -1610612727, 0, -655358, -1610612727, 0, -655356, -1610612727, 0, -655355, -1610612727, 0, -655354, -1073741822, 0, -655353, -1610612734, 0, -655352, -1610612727, 0, -655351, -1610612727, 0, -655350, -1610612727, 0, -655349, -1610612727, 0, -655348, -1610612727, 0, -655347, -1610612727, 0, -655346, -1610612727, 0, -655345, -1610612727, 0, -655344, -1610612727, 0, -655343, -1610612727, 0, -655342, 7, 0, -655341, 2, 0, -655340, 2, 0, -655339, 2, 0, -655338, 2, 0, -655337, 2, 0, -655336, 2, 0, -655335, 2, 0, -655334, 2, 0, -655333, 2, 0, -655332, 2, 0, -655331, 2, 0, -655330, 2, 0, -655329, 2, 0, -655328, 2, 0, -655327, 2, 0, -655326, 2, 0, -655325, -1610612729, 0, -655324, -1610612727, 0, -655323, -1610612727, 0, -655322, -1610612727, 0, -655321, -1610612727, 0, -655320, -1610612727, 0, -655319, -1610612727, 0, -655318, -1610612727, 0, -655317, -1610612727, 0, -655316, -1610612727, 0, -655302, -1073741822, 0, -655301, -1073741814, 0, -524293, -1610612726, 0, -524292, -1610612734, 0, -524291, -1610612727, 0, -524290, -1610612727, 0, -524289, -1610612727, 0, -589824, -1610612727, 0, -589823, -1610612727, 0, -589822, -1610612727, 0, -589820, -1610612727, 0, -589819, -1610612727, 0, -589818, -1073741822, 0, -589817, -1610612734, 0, -589816, -1610612727, 0, -589815, -1610612727, 0, -589814, -1610612727, 0, -589813, -1610612727, 0, -589812, -1610612727, 0, -589811, -1610612727, 0, -589810, -1610612727, 0, -589809, -1610612727, 0, -589808, 7, 0, -589807, 2, 0, -589806, 3, 0, -589805, 3, 0, -589804, 1610612738, 0, -589803, 1610612738, 0, -589802, 1610612738, 0, -589801, 1610612738, 0, -589800, 1610612738, 0, -589799, 1610612738, 0, -589798, 1610612738, 0, -589797, 1610612738, 0, -589796, 1610612738, 0, -589795, 1610612738, 0, -589794, 1610612738, 0, -589793, 1610612738, 0, -589792, 1610612738, 0, -589791, 1610612738, 0, -589790, 1610612738, 0, -589789, 1610612743, 0, -589788, -1610612727, 0, -589787, -1610612727, 0, -589786, -1610612727, 0, -589785, -1610612727, 0, -589784, -1610612727, 0, -589783, -1610612727, 0, -589782, -1610612727, 0, -589781, -1610612727, 0, -589780, -1610612727, 0, -589766, -1073741822, 0, -589765, -1073741814, 0, -458757, -1610612726, 0, -458756, -1610612734, 0, -458755, -1610612727, 0, -458754, -1610612727, 0, -458753, -1610612727, 0, -524288, -1610612727, 0, -524287, -1610612727, 0, -524286, -1610612727, 0, -524284, -1610612727, 0, -524283, -1610612727, 0, -524282, -1073741822, 0, -524281, 3, 0, -524280, 2, 0, -524279, 2, 0, -524278, 2, 0, -524277, 2, 0, -524276, 2, 0, -524275, 2, 0, -524274, 2, 0, -524273, 2, 0, -524272, 3, 0, -524271, 3, 0, -524270, 1610612738, 0, -524269, 1610612743, 0, -524268, -1610612727, 0, -524267, -1610612727, 0, -524266, -1610612727, 0, -524265, -1610612727, 0, -524264, -1610612727, 0, -524263, -1610612727, 0, -524262, -1610612727, 0, -524261, -1610612727, 0, -524260, -1610612727, 0, -524259, -1610612727, 0, -524258, -1610612727, 0, -524257, -1610612727, 0, -524256, -1610612727, 0, -524255, -1610612727, 0, -524254, -1610612727, 0, -524253, -1610612727, 0, -524252, 7, 0, -524251, 2, 0, -524250, 2, 0, -524248, -1610612727, 0, -524247, -1610612727, 0, -524246, -1610612727, 0, -524245, -1610612727, 0, -524244, -1610612727, 0, -524230, -1073741822, 0, -524229, -1073741814, 0, -393221, -1610612726, 0, -393220, -1610612734, 0, -393219, -1610612727, 0, -393218, -1610612727, 0, -393217, -1610612727, 0, -458752, -1610612727, 0, -458751, -1610612727, 0, -458750, -1610612727, 0, -458748, -1610612727, 0, -458747, -1610612727, 0, -458746, -1073741817, 0, -458745, 1610612738, 0, -458744, 1610612738, 0, -458743, 1610612738, 0, -458742, 1610612738, 0, -458741, 1610612738, 0, -458740, 1610612738, 0, -458739, 1610612738, 0, -458738, 1610612738, 0, -458737, 1610612738, 0, -458736, 1610612738, 0, -458735, 1610612743, 0, -458731, -1610612727, 0, -458730, -1610612727, 0, -458729, -1610612727, 0, -458728, -1610612727, 0, -458727, -1610612727, 0, -458726, -1610612727, 0, -458725, -1610612727, 0, -458724, -1610612727, 0, -458723, -1610612727, 0, -458722, -1610612727, 0, -458721, -1610612727, 0, -458720, -1610612727, 0, -458719, -1610612727, 0, -458718, -1610612727, 0, -458717, -1610612727, 0, -458716, -1073741817, 0, -458715, 1610612738, 0, -458714, 1610612738, 0, -458713, 2, 0, -458712, 2, 0, -458711, -1610612727, 0, -458710, -1610612727, 0, -458709, -1610612727, 0, -458694, -1073741822, 0, -458693, -1073741814, 0, -327685, -1610612726, 0, -327684, -1610612734, 0, -327683, -1610612727, 0, -327682, -1610612727, 0, -327681, -1610612727, 0, -393216, -1610612727, 0, -393215, -1610612727, 0, -393214, -1610612727, 0, -393212, -1610612727, 0, -393211, -1610612727, 0, -393210, -1610612727, 0, -393209, -1610612727, 0, -393208, -1610612727, 0, -393207, -1610612727, 0, -393206, -1610612727, 0, -393205, -1610612727, 0, -393204, -1610612727, 0, -393203, -1610612727, 0, -393202, -1610612727, 0, -393201, -1610612727, 0, -393200, -1610612727, 0, -393199, -1610612727, 0, -393198, -1610612727, 0, -393197, -1610612727, 0, -393196, -1610612727, 0, -393195, -1610612727, 0, -393194, -1610612727, 0, -393193, -1610612727, 0, -393192, -1610612727, 0, -393191, -1610612727, 0, -393190, -1610612727, 0, -393189, -1610612727, 0, -393188, -1610612727, 0, -393187, -1610612727, 0, -393186, -1610612727, 0, -393185, -1610612727, 0, -393184, -1610612727, 0, -393183, -1610612727, 0, -393182, -1610612727, 0, -393181, -1610612727, 0, -393180, -1610612727, 0, -393179, -1610612727, 0, -393178, -1610612727, 0, -393177, -1610612727, 0, -393176, -1610612727, 0, -393175, -1610612727, 0, -393174, -1610612727, 0, -393173, -1610612727, 0, -393158, -1073741822, 0, -393157, -1073741814, 0, -262149, -1610612726, 0, -262148, -1610612734, 0, -262147, -1610612727, 0, -262146, -1610612727, 0, -262145, -1610612727, 0, -327680, -1610612727, 0, -327679, -1610612727, 0, -327678, -1610612727, 0, -327676, -1610612727, 0, -327664, -1610612727, 0, -327663, -1610612727, 0, -327662, -1610612727, 0, -327661, -1610612727, 0, -327660, -1610612727, 0, -327659, -1610612727, 0, -327658, -1610612727, 0, -327657, -1610612727, 0, -327656, -1610612727, 0, -327655, 7, 0, -327654, 2, 0, -327653, 2, 0, -327652, 2, 0, -327651, 2, 0, -327650, 2, 0, -327649, 2, 0, -327648, 2, 0, -327647, 2, 0, -327646, 2, 0, -327645, 2, 0, -327644, 2, 0, -327643, 2, 0, -327642, 2, 0, -327641, 2, 0, -327640, 2, 0, -327639, 2, 0, -327638, 2, 0, -327637, -1610612729, 0, -327636, -1610612727, 0, -327622, -1073741822, 0, -327621, -1073741814, 0, -196613, -1610612726, 0, -196612, -1610612734, 0, -196611, -1610612727, 0, -196610, -1610612727, 0, -196609, -1610612727, 0, -262144, -1610612727, 0, -262143, -1610612727, 0, -262142, -1610612727, 0, -262140, -1610612727, 0, -262139, -1610612727, 0, -262138, -1610612727, 0, -262137, -1610612727, 0, -262136, -1610612727, 0, -262135, -1610612727, 0, -262134, -1610612727, 0, -262133, -1610612727, 0, -262132, -1610612727, 0, -262131, -1610612727, 0, -262130, -1610612727, 0, -262129, -1610612727, 0, -262128, -1610612727, 0, -262127, -1610612727, 0, -262126, -1610612727, 0, -262125, -1610612727, 0, -262124, -1610612727, 0, -262123, -1610612727, 0, -262119, -1073741822, 0, -262118, 1610612739, 0, -262117, 1610612738, 0, -262116, 1610612738, 0, -262115, 1610612738, 0, -262114, 1610612738, 0, -262113, 1610612738, 0, -262112, 1610612738, 0, -262111, 1610612738, 0, -262110, 1610612738, 0, -262109, 1610612738, 0, -262108, 1610612738, 0, -262107, 1610612738, 0, -262106, 1610612738, 0, -262105, 1610612738, 0, -262104, 1610612738, 0, -262103, 1610612738, 0, -262102, 1610612738, 0, -262101, 1610612743, 0, -262100, -1610612727, 0, -262086, -1073741822, 0, -262085, -1073741814, 0, -131077, -1610612726, 0, -131076, -1610612734, 0, -131075, -1610612727, 0, -131074, -1610612727, 0, -131073, -1610612727, 0, -196608, -1610612727, 0, -196607, -1610612727, 0, -196606, -1610612727, 0, -196605, -1610612727, 0, -196604, -1610612727, 0, -196603, -1610612727, 0, -196602, -1610612727, 0, -196601, -1610612727, 0, -196600, -1610612727, 0, -196599, -1610612727, 0, -196598, -1610612727, 0, -196597, -1610612727, 0, -196596, -1610612727, 0, -196595, -1610612727, 0, -196594, -1610612727, 0, -196593, -1610612727, 0, -196592, -1610612727, 0, -196591, -1610612727, 0, -196590, -1610612727, 0, -196587, 7, 0, -196586, 2, 0, -196585, 2, 0, -196584, 2, 0, -196583, 3, 0, -196582, -1610612734, 0, -196581, -1610612727, 0, -196580, -1610612727, 0, -196579, -1610612727, 0, -196578, -1610612727, 0, -196577, -1610612727, 0, -196576, -1610612727, 0, -196575, -1610612727, 0, -196574, -1610612727, 0, -196573, -1610612727, 0, -196572, -1610612727, 0, -196571, -1610612727, 0, -196570, -1610612727, 0, -196569, -1610612727, 0, -196566, -1610612727, 0, -196565, -1610612727, 0, -196564, -1610612727, 0, -196550, -1073741822, 0, -196549, -1073741814, 0, -65541, -1610612726, 0, -65540, -1610612734, 0, -65539, -1610612727, 0, -65538, -1610612727, 0, -65537, -1610612727, 0, -131072, -1610612727, 0, -131071, -1610612727, 0, -131070, -1610612727, 0, -131069, -1610612727, 0, -131068, -1610612727, 0, -131067, -1610612727, 0, -131066, -1610612727, 0, -131065, -1610612727, 0, -131064, -1610612727, 0, -131063, -1610612727, 0, -131062, -1610612727, 0, -131061, -1610612727, 0, -131060, -1610612727, 0, -131059, -1610612727, 0, -131058, -1610612727, 0, -131057, -1610612727, 0, -131056, -1610612727, 0, -131055, -1610612727, 0, -131054, 7, 0, -131053, 2, 0, -131052, 2, 0, -131051, 3, 0, -131050, 3, 0, -131049, 3, 0, -131048, 3, 0, -131047, 3, 0, -131046, -1610612734, 0, -131045, -1610612727, 0, -131044, -1610612727, 0, -131043, -1610612727, 0, -131042, -1610612727, 0, -131041, -1610612727, 0, -131040, -1610612727, 0, -131039, -1610612727, 0, -131038, -1610612727, 0, -131037, -1610612727, 0, -131036, -1610612727, 0, -131035, -1610612727, 0, -131034, -1610612727, 0, -131033, -1610612727, 0, -131032, -1610612727, 0, -131031, -1610612727, 0, -131030, -1610612727, 0, -131029, -1610612727, 0, -131028, -1610612727, 0, -131014, -1073741822, 0, -131013, -1073741814, 0, -5, -1610612726, 0, -4, -1610612734, 0, -3, -1610612727, 0, -2, -1610612727, 0, -1, -1610612727, 0, -65536, -1610612727, 0, -65535, -1610612727, 0, -65534, -1610612727, 0, -65533, -1610612727, 0, -65532, -1610612727, 0, -65531, -1610612727, 0, -65530, -1610612727, 0, -65529, -1610612727, 0, -65528, -1610612727, 0, -65527, -1610612727, 0, -65526, -1610612727, 0, -65525, -1610612727, 0, -65524, -1610612727, 0, -65523, -1610612727, 0, -65522, -1610612727, 0, -65521, -1610612727, 0, -65520, 7, 0, -65519, 2, 0, -65518, 2, 0, -65517, 3, 0, -65516, 3, 0, -65515, 3, 0, -65514, 3, 0, -65513, 3, 0, -65512, 3, 0, -65511, 3, 0, -65510, -1610612734, 0, -65509, -1610612727, 0, -65508, -1610612727, 0, -65507, -1610612727, 0, -65506, -1610612727, 0, -65505, -1610612727, 0, -65504, -1610612727, 0, -65503, -1610612727, 0, -65502, -1610612727, 0, -65501, -1610612727, 0, -65500, -1610612727, 0, -65499, -1610612727, 0, -65498, -1610612727, 0, -65497, -1610612727, 0, -65496, -1610612727, 0, -65495, -1610612727, 0, -65494, -1610612727, 0, -65493, -1610612727, 0, -65478, -1073741822, 0, -65477, -1073741814, 0, 65531, -1610612726, 0, 65532, 1610612739, 0, 65533, 2, 0, 65534, 2, 0, 65535, 2, 0, 0, 2, 0, 1, 2, 0, 2, 2, 0, 3, 2, 0, 4, 2, 0, 5, 2, 0, 6, 2, 0, 7, 2, 0, 8, 2, 0, 9, 2, 0, 10, 2, 0, 11, 2, 0, 12, 2, 0, 13, 2, 0, 14, 2, 0, 15, 2, 0, 16, 2, 0, 17, 2, 0, 18, 2, 0, 19, 2, 0, 20, 2, 0, 21, 2, 0, 22, 2, 0, 23, 2, 0, 24, 2, 0, 25, 1610612739, 0, 26, 1610612739, 0, 27, 2, 0, 28, 2, 0, 29, 2, 0, 30, 2, 0, 31, 2, 0, 32, 2, 0, 33, 2, 0, 34, 2, 0, 35, 2, 0, 36, 2, 0, 37, 2, 0, 38, 2, 0, 39, 2, 0, 40, 2, 0, 41, 2, 0, 42, 2, 0, 43, 2, 0, 44, 2, 0, 45, 2, 0, 46, 2, 0, 47, 2, 0, 48, 2, 0, 49, 2, 0, 50, 2, 0, 51, 2, 0, 52, 2, 0, 53, 2, 0, 54, 2, 0, 55, 2, 0, 56, 2, 0, 57, 2, 0, 58, 3, 0, 59, -1073741814, 0, 131067, -1610612721, 0, 131068, 10, 0, 131069, 10, 0, 131070, 10, 0, 131071, 10, 0, 65536, 10, 0, 65537, 10, 0, 65538, 10, 0, 65539, 10, 0, 65540, 10, 0, 65541, 10, 0, 65542, 10, 0, 65543, 10, 0, 65544, 10, 0, 65545, 10, 0, 65546, 10, 0, 65547, 10, 0, 65548, 10, 0, 65549, 10, 0, 65550, 10, 0, 65551, 10, 0, 65552, 10, 0, 65553, 10, 0, 65554, 10, 0, 65555, 10, 0, 65556, 10, 0, 65557, 10, 0, 65558, 10, 0, 65559, 10, 0, 65560, 10, 0, 65561, 10, 0, 65562, 10, 0, 65563, 10, 0, 65564, 10, 0, 65565, 10, 0, 65566, 10, 0, 65567, 10, 0, 65568, 10, 0, 65569, 10, 0, 65570, 10, 0, 65571, 10, 0, 65572, 10, 0, 65573, 10, 0, 65574, 10, 0, 65575, 10, 0, 65576, 10, 0, 65577, 10, 0, 65578, 10, 0, 65579, 10, 0, 65580, 10, 0, 65581, 10, 0, 65582, 10, 0, 65583, 10, 0, 65584, 10, 0, 65585, 10, 0, 65586, 10, 0, 65587, 10, 0, 65588, 10, 0, 65589, 10, 0, 65590, 10, 0, 65591, 10, 0, 65592, 10, 0, 65593, 10, 0, 65594, 10, 0, 65595, 15, 0 ) +tile_data = PoolIntArray( 65535, 1610612751, 0, 0, 1610612746, 0, 1, 1610612746, 0, 2, 1610612746, 0, 3, 1610612746, 0, 4, 1610612746, 0, 5, 1610612746, 0, 6, 1610612746, 0, 7, 1610612746, 0, 8, 1610612746, 0, 9, 1610612746, 0, 10, 1610612746, 0, 11, 1610612746, 0, 12, 1610612746, 0, 13, 1610612746, 0, 14, 1610612746, 0, 15, 1610612746, 0, 16, 1610612746, 0, 17, 1610612746, 0, 18, 1610612746, 0, 19, 1610612746, 0, 20, 1610612746, 0, 21, 1610612746, 0, 22, 1610612746, 0, 23, 1610612746, 0, 24, 1610612746, 0, 25, 1610612746, 0, 26, 1610612746, 0, 27, 1610612746, 0, 28, 1610612746, 0, 29, 1610612746, 0, 30, 1610612746, 0, 31, 1610612746, 0, 32, 1610612746, 0, 33, 1610612746, 0, 34, -1073741809, 0, 131071, -1610612726, 0, 65536, 3, 0, 65537, 1610612738, 0, 65538, 1610612738, 0, 65539, 1610612738, 0, 65540, 1610612738, 0, 65541, 1610612738, 0, 65542, 1610612738, 0, 65543, 1610612738, 0, 65544, 1610612738, 0, 65545, 1610612738, 0, 65546, 1610612738, 0, 65547, 1610612738, 0, 65548, 1610612738, 0, 65549, 1610612738, 0, 65550, 1610612738, 0, 65551, 1610612738, 0, 65552, 1610612738, 0, 65553, 1610612738, 0, 65554, 1610612738, 0, 65555, 1610612738, 0, 65556, 1610612738, 0, 65557, 1610612738, 0, 65558, 1610612738, 0, 65559, 1610612738, 0, 65560, 1610612738, 0, 65561, 1610612738, 0, 65562, 1610612738, 0, 65563, 1610612738, 0, 65564, 1610612738, 0, 65565, 1610612738, 0, 65566, 1610612738, 0, 65567, 1610612738, 0, 65568, 1610612738, 0, 65569, 3, 0, 65570, -1073741814, 0, 196607, -1610612726, 0, 131072, -1610612734, 0, 131073, 9, 0, 131074, 9, 0, 131075, 9, 0, 131076, 9, 0, 131077, 9, 0, 131078, 9, 0, 131079, 9, 0, 131080, 9, 0, 131081, 9, 0, 131082, 9, 0, 131083, 9, 0, 131084, 9, 0, 131085, 9, 0, 131086, 9, 0, 131087, 9, 0, 131088, 9, 0, 131089, 9, 0, 131090, 9, 0, 131091, 9, 0, 131092, 9, 0, 131093, 9, 0, 131094, 9, 0, 131095, 9, 0, 131096, 9, 0, 131097, 9, 0, 131098, 9, 0, 131099, 9, 0, 131100, 9, 0, 131101, 9, 0, 131102, 9, 0, 131103, 9, 0, 131104, 9, 0, 131105, -1073741822, 0, 131106, -1073741814, 0, 262143, -1610612726, 0, 196608, -1610612734, 0, 196609, 9, 0, 196610, 9, 0, 196611, 9, 0, 196612, 9, 0, 196613, 9, 0, 196614, 9, 0, 196615, 9, 0, 196616, 9, 0, 196617, 9, 0, 196618, 9, 0, 196619, 9, 0, 196620, 9, 0, 196621, 9, 0, 196622, 9, 0, 196623, 9, 0, 196624, 9, 0, 196625, 9, 0, 196626, 9, 0, 196627, 9, 0, 196628, 9, 0, 196629, 9, 0, 196630, 9, 0, 196631, 9, 0, 196632, 9, 0, 196633, 9, 0, 196634, 9, 0, 196635, 9, 0, 196636, 9, 0, 196637, 9, 0, 196638, 9, 0, 196639, 9, 0, 196640, 9, 0, 196641, -1073741822, 0, 196642, -1073741814, 0, 327679, -1610612726, 0, 262144, -1610612734, 0, 262145, 9, 0, 262146, 9, 0, 262147, 9, 0, 262148, 9, 0, 262149, 9, 0, 262150, 9, 0, 262151, 9, 0, 262152, 9, 0, 262153, 9, 0, 262154, 9, 0, 262155, 9, 0, 262156, 9, 0, 262157, 9, 0, 262158, 9, 0, 262159, 9, 0, 262160, 9, 0, 262161, 9, 0, 262162, 9, 0, 262163, 9, 0, 262164, 9, 0, 262165, 9, 0, 262166, 9, 0, 262167, 9, 0, 262168, 9, 0, 262169, 9, 0, 262170, 9, 0, 262171, 9, 0, 262172, 9, 0, 262173, 9, 0, 262174, 9, 0, 262175, 9, 0, 262176, 9, 0, 262177, -1073741822, 0, 262178, -1073741814, 0, 393215, -1610612726, 0, 327680, -1610612734, 0, 327681, 9, 0, 327682, 9, 0, 327683, 9, 0, 327684, 9, 0, 327685, 9, 0, 327686, 9, 0, 327687, 9, 0, 327688, 9, 0, 327689, 9, 0, 327690, 9, 0, 327691, 9, 0, 327692, 9, 0, 327693, 9, 0, 327694, 9, 0, 327695, 9, 0, 327696, 9, 0, 327697, 9, 0, 327698, 9, 0, 327699, 9, 0, 327700, 9, 0, 327701, 9, 0, 327702, 9, 0, 327703, 9, 0, 327704, 9, 0, 327705, 9, 0, 327706, 9, 0, 327707, 9, 0, 327708, 9, 0, 327709, 9, 0, 327710, 9, 0, 327711, 9, 0, 327712, 9, 0, 327713, -1073741822, 0, 327714, -1073741814, 0, 458751, -1610612726, 0, 393216, -1610612734, 0, 393217, 9, 0, 393218, 9, 0, 393219, 9, 0, 393220, 9, 0, 393221, 9, 0, 393222, 9, 0, 393223, 9, 0, 393224, 9, 0, 393225, 9, 0, 393226, 9, 0, 393227, 9, 0, 393228, 9, 0, 393229, 9, 0, 393230, 9, 0, 393231, 9, 0, 393232, 9, 0, 393233, 9, 0, 393234, 9, 0, 393235, 9, 0, 393236, 9, 0, 393237, 9, 0, 393238, 9, 0, 393239, 9, 0, 393240, 9, 0, 393241, 9, 0, 393242, 9, 0, 393243, 7, 0, 393244, 2, 0, 393245, 2, 0, 393246, 2, 0, 393247, 2, 0, 393248, 2, 0, 393249, 3, 0, 393250, -1073741814, 0, 524287, -1610612726, 0, 458752, -1610612734, 0, 458753, 9, 0, 458754, 9, 0, 458755, 9, 0, 458756, 9, 0, 458757, 9, 0, 458758, 9, 0, 458759, 9, 0, 458760, 9, 0, 458761, 9, 0, 458762, 9, 0, 458763, 9, 0, 458764, 9, 0, 458765, 9, 0, 458766, 9, 0, 458767, 9, 0, 458768, 9, 0, 458769, 9, 0, 458770, 9, 0, 458771, 9, 0, 458772, 9, 0, 458773, 9, 0, 458774, 9, 0, 458775, 9, 0, 458776, 9, 0, 458777, 9, 0, 458778, 9, 0, 458779, -1073741822, 0, 458780, 3, 0, 458781, 3, 0, 458782, 3, 0, 458783, 3, 0, 458784, 3, 0, 458785, 3, 0, 458786, -1073741814, 0, 589823, -1610612726, 0, 524288, -1610612734, 0, 524289, 9, 0, 524290, 9, 0, 524291, 9, 0, 524292, 9, 0, 524293, 9, 0, 524294, 9, 0, 524295, 9, 0, 524296, 9, 0, 524297, 9, 0, 524298, 9, 0, 524299, 9, 0, 524300, 9, 0, 524301, 9, 0, 524302, 9, 0, 524303, 9, 0, 524304, 9, 0, 524305, 9, 0, 524306, 9, 0, 524307, 9, 0, 524308, 9, 0, 524309, 9, 0, 524310, 9, 0, 524311, 9, 0, 524312, 7, 0, 524313, 2, 0, 524314, 2, 0, 524315, 3, 0, 524316, 3, 0, 524317, 3, 0, 524318, 3, 0, 524319, 3, 0, 524320, 3, 0, 524321, 3, 0, 524322, -1073741814, 0, 655359, -1610612726, 0, 589824, -1610612734, 0, 589825, 9, 0, 589826, 9, 0, 589827, 9, 0, 589828, 9, 0, 589829, 9, 0, 589830, 9, 0, 589831, 7, 0, 589832, 2, 0, 589833, -1610612729, 0, 589835, 9, 0, 589836, 9, 0, 589837, 9, 0, 589838, 9, 0, 589839, 9, 0, 589840, 9, 0, 589841, 9, 0, 589842, 9, 0, 589843, 9, 0, 589844, 2, 0, 589845, 2, 0, 589846, 9, 0, 589847, 9, 0, 589848, -1073741817, 0, 589849, 1610612738, 0, 589850, 1610612738, 0, 589851, 3, 0, 589852, 3, 0, 589853, 3, 0, 589854, 3, 0, 589855, 3, 0, 589856, 3, 0, 589857, 3, 0, 589858, -1073741814, 0, 720895, -1610612726, 0, 655360, -1610612734, 0, 655361, 9, 0, 655362, 9, 0, 655363, 9, 0, 655364, 9, 0, 655365, 9, 0, 655366, 9, 0, 655367, 9, 0, 655368, 9, 0, 655369, 9, 0, 655370, 9, 0, 655371, 9, 0, 655372, 9, 0, 655373, 9, 0, 655374, 9, 0, 655375, 9, 0, 655376, 9, 0, 655377, 9, 0, 655378, 9, 0, 655379, 9, 0, 655380, 9, 0, 655381, 9, 0, 655382, 9, 0, 655383, 9, 0, 655384, 9, 0, 655385, 9, 0, 655386, 9, 0, 655387, -1073741817, 0, 655388, 1610612738, 0, 655389, 1610612738, 0, 655390, 1610612738, 0, 655391, 1610612738, 0, 655392, 1610612738, 0, 655393, 3, 0, 655394, -1073741814, 0, 786431, -1610612726, 0, 720896, -1610612734, 0, 720897, 9, 0, 720898, 9, 0, 720899, 9, 0, 720900, 9, 0, 720901, 9, 0, 720902, 9, 0, 720903, 9, 0, 720904, 9, 0, 720905, 9, 0, 720906, 9, 0, 720907, 9, 0, 720908, 9, 0, 720909, 7, 0, 720910, 2, 0, 720911, 2, 0, 720912, -1610612729, 0, 720913, 9, 0, 720914, 9, 0, 720915, 9, 0, 720916, 9, 0, 720917, 9, 0, 720918, 9, 0, 720919, 9, 0, 720920, 9, 0, 720921, 9, 0, 720922, 9, 0, 720923, 9, 0, 720924, 9, 0, 720925, 9, 0, 720926, 9, 0, 720927, 9, 0, 720928, 9, 0, 720929, -1073741822, 0, 720930, -1073741814, 0, 851967, -1610612726, 0, 786432, -1610612734, 0, 786433, 9, 0, 786434, 9, 0, 786435, 9, 0, 786436, 7, 0, 786437, 2, 0, 786438, 2, 0, 786439, 2, 0, 786440, 2, 0, 786441, 2, 0, 786442, -1610612729, 0, 786443, 9, 0, 786444, 9, 0, 786445, -1073741817, 0, 786446, 1610612738, 0, 786447, 1610612738, 0, 786448, 1610612743, 0, 786450, 9, 0, 786451, 9, 0, 786452, 9, 0, 786453, 9, 0, 786454, 9, 0, 786455, 9, 0, 786456, 9, 0, 786457, 9, 0, 786458, 9, 0, 786459, 9, 0, 786460, 9, 0, 786461, 9, 0, 786462, 9, 0, 786463, 9, 0, 786464, 9, 0, 786465, -1073741822, 0, 786466, -1073741814, 0, 917503, -1610612726, 0, 851968, -1610612734, 0, 851969, 9, 0, 851970, 9, 0, 851971, 9, 0, 851972, -1073741822, 0, 851973, 3, 0, 851974, 3, 0, 851975, 3, 0, 851976, 3, 0, 851977, 3, 0, 851978, -1610612734, 0, 851979, 9, 0, 851980, 9, 0, 851981, 9, 0, 851982, 9, 0, 851983, 9, 0, 851984, 9, 0, 851985, 9, 0, 851986, 9, 0, 851987, 9, 0, 851988, 9, 0, 851989, 9, 0, 851990, 9, 0, 851991, 9, 0, 851992, 9, 0, 851993, 9, 0, 851994, 9, 0, 851995, 9, 0, 851996, 9, 0, 851997, 9, 0, 851998, 9, 0, 851999, 9, 0, 852000, 9, 0, 852001, -1073741822, 0, 852002, -1073741814, 0, 983039, -1610612726, 0, 917504, 3, 0, 917505, 2, 0, 917506, 2, 0, 917507, 2, 0, 917508, 3, 0, 917509, 3, 0, 917510, 3, 0, 917511, 3, 0, 917512, 3, 0, 917513, 3, 0, 917514, 3, 0, 917515, 2, 0, 917516, 2, 0, 917517, 2, 0, 917518, 2, 0, 917519, 2, 0, 917520, 2, 0, 917521, 2, 0, 917522, 2, 0, 917523, 2, 0, 917524, 2, 0, 917525, 2, 0, 917526, 2, 0, 917527, 2, 0, 917528, 2, 0, 917529, 2, 0, 917530, 2, 0, 917531, 2, 0, 917532, 2, 0, 917533, 2, 0, 917534, 2, 0, 917535, 2, 0, 917536, 2, 0, 917537, 1610612739, 0, 917538, -1073741814, 0, 1048575, -1610612721, 0, 983040, 10, 0, 983041, 10, 0, 983042, 10, 0, 983043, 10, 0, 983044, 10, 0, 983045, 10, 0, 983046, 10, 0, 983047, 10, 0, 983048, 10, 0, 983049, 10, 0, 983050, 10, 0, 983051, 10, 0, 983052, 10, 0, 983053, 10, 0, 983054, 10, 0, 983055, 10, 0, 983056, 10, 0, 983057, 10, 0, 983058, 10, 0, 983059, 10, 0, 983060, 10, 0, 983061, 10, 0, 983062, 10, 0, 983063, 10, 0, 983064, 10, 0, 983065, 10, 0, 983066, 10, 0, 983067, 10, 0, 983068, 10, 0, 983069, 10, 0, 983070, 10, 0, 983071, 10, 0, 983072, 10, 0, 983073, 10, 0, 983074, 15, 0 ) -[node name="DropThroughPlatform" parent="." instance=ExtResource( 14 )] -position = Vector2( 1128, -27 ) -tile_data = PoolIntArray( -2949142, 1, 0, -2949141, 0, 0, -2949140, 0, 0, -2949139, 0, 0, -2949138, 0, 0, -2949137, 2, 0, -393222, 1, 0, -393221, 0, 0, -393219, 2, 0, -458751, 1, 0, -458750, 0, 0, -458748, 2, 0 ) +[node name="DropThroughPlatform" parent="." instance=ExtResource( 42 )] -[node name="WhyButton" parent="." instance=ExtResource( 10 )] -position = Vector2( 696, -600 ) +[node name="Flyer" parent="." instance=ExtResource( 45 )] +position = Vector2( 552, 288 ) +blindspot_angle = 20 +acceleration = 90 +max_speed = 120 +weight = 0.2 -[node name="Indicator1" parent="WhyButton" index="1"] -visible = false +[node name="AnimationTree" parent="Flyer/FlyerSprite" index="1"] +parameters/playback = SubResource( 6 ) -[node name="Indicator3" parent="WhyButton" index="3"] -visible = false +[node name="FlyingPlatformClean" parent="." instance=ExtResource( 40 )] +position = Vector2( 384, 168 ) -[node name="WhyButton2" parent="." instance=ExtResource( 10 )] -position = Vector2( 912, -120 ) - -[node name="ButtonPlayer" parent="WhyButton2/Button" index="0"] -anims/pushing = SubResource( 12 ) - -[node name="Indicator1" parent="WhyButton2" index="1"] -visible = false - -[node name="Indicator1Player" parent="WhyButton2/Indicator1" index="0"] -anims/offing = SubResource( 13 ) -anims/onning = SubResource( 14 ) - -[node name="Indicator2Player" parent="WhyButton2/Indicator2" index="0"] -anims/offing = SubResource( 15 ) -anims/onning = SubResource( 16 ) - -[node name="Indicator3" parent="WhyButton2" index="3"] -visible = false - -[node name="Indicator3Player" parent="WhyButton2/Indicator3" index="0"] -anims/offing = SubResource( 17 ) -anims/onning = SubResource( 18 ) - -[connection signal="ready" from="." to="BoundFrog" method="_on_Level_ready"] [connection signal="body_exited" from="Blobby/BlobbySkin" to="Blobby" method="_on_BlobbySkin_body_exited"] -[connection signal="button_pushed" from="WhyButton" to="BoundFrog2" method="_on_WhyButton_button_pushed"] -[connection signal="button_pushed" from="WhyButton2" to="BoundFrog" method="_on_WhyButton_button_pushed"] -[editable path="SignalManager"] -[editable path="LevelState"] [editable path="UserInterface"] [editable path="UserInterface/HUD"] -[editable path="BlobbyCam"] [editable path="Blobby"] [editable path="Flyer"] -[editable path="Flyer2"] -[editable path="WhyButton"] -[editable path="WhyButton2"] +[editable path="FlyingPlatformClean"] diff --git a/src/Levels/Level 4.gd b/src/Levels/Level 4.gd new file mode 100644 index 0000000..d013757 --- /dev/null +++ b/src/Levels/Level 4.gd @@ -0,0 +1 @@ +extends LevelTemplate diff --git a/src/Levels/Level 4.tscn b/src/Levels/Level 4.tscn new file mode 100644 index 0000000..9f1e43d --- /dev/null +++ b/src/Levels/Level 4.tscn @@ -0,0 +1,335 @@ +[gd_scene load_steps=26 format=2] + +[ext_resource path="res://src/Environment/AlienShipTileSet.tres" type="TileSet" id=1] +[ext_resource path="res://src/Utilities/SignalManager.tscn" type="PackedScene" id=2] +[ext_resource path="res://src/Utilities/LevelState.tscn" type="PackedScene" id=3] +[ext_resource path="res://src/Actors/BlobbyCam.tscn" type="PackedScene" id=4] +[ext_resource path="res://src/Actors/Enemies/Beings/BoundFrog.tscn" type="PackedScene" id=5] +[ext_resource path="res://src/Actors/Enemies/Beings/Flyer.tscn" type="PackedScene" id=6] +[ext_resource path="res://src/NeutralObjects/Coin.tscn" type="PackedScene" id=7] +[ext_resource path="res://src/Actors/Blobby/Blobby.tscn" type="PackedScene" id=8] +[ext_resource path="res://src/UserInterface/UserInterface.tscn" type="PackedScene" id=9] +[ext_resource path="res://src/Contraptions/Triggers/FrogFreeButton.tscn" type="PackedScene" id=10] +[ext_resource path="res://src/Contraptions/Portal/Portal.tscn" type="PackedScene" id=11] +[ext_resource path="res://src/Levels/Level 4.gd" type="Script" id=12] +[ext_resource path="res://src/Platforms/SpringPlatform.tscn" type="PackedScene" id=13] +[ext_resource path="res://src/Platforms/DropThroughPlatform.tscn" type="PackedScene" id=14] + +[sub_resource type="AnimationNodeStateMachinePlayback" id=4] + +[sub_resource type="AnimationNodeStateMachinePlayback" id=5] + +[sub_resource type="Animation" id=6] +length = 0.001 +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ 0 ] +} + +[sub_resource type="Animation" id=7] +resource_name = "hunting" +length = 1.62 +loop = true +step = 0.01 +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath(".:scale") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ Vector2( -1, 1 ) ] +} + +[sub_resource type="Animation" id=8] +resource_name = "huntingLeft" +length = 0.042 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath(".:scale") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=9] +resource_name = "searching" +length = 1.62 +loop = true +step = 0.01 +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0.02 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 1 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath(".:scale") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ Vector2( -1, 1 ) ] +} + +[sub_resource type="Animation" id=10] +resource_name = "searchingLeft" +length = 1.62 +loop = true +step = 0.01 +tracks/0/type = "value" +tracks/0/path = NodePath(".:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 1 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath(".:scale") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="AnimationNodeStateMachinePlayback" id=11] + +[sub_resource type="AnimationNodeStateMachinePlayback" id=14] + +[sub_resource type="Animation" id=12] +length = 0.001 +tracks/0/type = "value" +tracks/0/path = NodePath(".:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, -7 ) ] +} + +[sub_resource type="Animation" id=13] +resource_name = "onning" +length = 0.809 +tracks/0/type = "value" +tracks/0/path = NodePath(".:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.8 ), +"transitions": PoolRealArray( 1, 2.73207 ), +"update": 0, +"values": [ Vector2( 0, -7 ), Vector2( 0, 7 ) ] +} + +[node name="Level 4" type="Node2D"] +script = ExtResource( 12 ) +__meta__ = { +"_edit_horizontal_guides_": [ 464.0 ], +"_edit_vertical_guides_": [ 2880.0 ] +} + +[node name="SignalManager" parent="." instance=ExtResource( 2 )] + +[node name="LevelState" parent="." instance=ExtResource( 3 )] +unique_name_in_owner = true + +[node name="UserInterface" parent="." instance=ExtResource( 9 )] +unique_name_in_owner = true + +[node name="Timer" parent="UserInterface/HUD/HUDOverlay/GetBackTimer" index="0"] +wait_time = 20.0 + +[node name="BlobbyCam" parent="." instance=ExtResource( 4 )] +unique_name_in_owner = true +drag_margin_top = 0.13 +drag_margin_bottom = 0.3 + +[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"] +frame = 6 + +[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"] +frame = 6 + +[node name="Blobby" parent="." instance=ExtResource( 8 )] +unique_name_in_owner = true + +[node name="AnimationTree" parent="Blobby/BlobbySprite" index="0"] +parameters/playback = SubResource( 4 ) + +[node name="Coin" parent="." instance=ExtResource( 7 )] +position = Vector2( 216, -216 ) + +[node name="Coin2" parent="." instance=ExtResource( 7 )] +position = Vector2( 695, -48 ) + +[node name="Coin3" parent="." instance=ExtResource( 7 )] +position = Vector2( 1272, -192 ) + +[node name="Flyer" parent="." instance=ExtResource( 6 )] +position = Vector2( 483, -270 ) +aggressive = false + +[node name="AnimationTree" parent="Flyer/FlyerSprite" index="1"] +parameters/playback = SubResource( 5 ) + +[node name="Position2D2" parent="Flyer/PatrolPath" index="0"] +position = Vector2( -3, -21 ) + +[node name="Position2D3" parent="Flyer/PatrolPath" index="1"] +position = Vector2( -3, 12 ) + +[node name="Flyer2" parent="." instance=ExtResource( 6 )] +position = Vector2( 1041, -32 ) +aggressive = false + +[node name="AnimationPlayer" parent="Flyer2/FlyerSprite" index="0"] +anims/RESET = SubResource( 6 ) +anims/hunting = SubResource( 7 ) +anims/huntingLeft = SubResource( 8 ) +anims/searching = SubResource( 9 ) +anims/searchingLeft = SubResource( 10 ) + +[node name="AnimationTree" parent="Flyer2/FlyerSprite" index="1"] +parameters/playback = SubResource( 11 ) + +[node name="Position2D2" parent="Flyer2/PatrolPath" index="0"] +position = Vector2( -3, -21 ) + +[node name="Position2D3" parent="Flyer2/PatrolPath" index="1"] +position = Vector2( -3, 12 ) + +[node name="BoundFrog" parent="." instance=ExtResource( 5 )] +position = Vector2( 778, -9 ) + +[node name="BoundFrog2" parent="." instance=ExtResource( 5 )] +position = Vector2( 1266, -537 ) + +[node name="Digit" parent="BoundFrog2/WhatAreFrog" index="2"] +frame = 1 + +[node name="AnimationTree" parent="BoundFrog2/WhatAreFrog/FrogSprite" index="1"] +root_motion_track = NodePath(".") +parameters/playback = SubResource( 14 ) + +[node name="Portal" parent="." instance=ExtResource( 11 )] +position = Vector2( 1368, -552 ) + +[node name="SpringPlatform" parent="." instance=ExtResource( 13 )] +position = Vector2( 1272, -36 ) + +[node name="SpringPlatform2" parent="." instance=ExtResource( 13 )] +position = Vector2( 600, -279 ) + +[node name="TileMap" type="TileMap" parent="."] +unique_name_in_owner = true +tile_set = ExtResource( 1 ) +cell_size = Vector2( 24, 24 ) +cell_quadrant_size = 3 +cell_custom_transform = Transform2D( 24, 0, 0, 24, 0, 0 ) +collision_layer = 8 +collision_mask = 8 +bake_navigation = true +format = 1 +tile_data = PoolIntArray( -1966085, 1610612751, 0, -1966084, 1610612746, 0, -1966083, 1610612746, 0, -1966082, 1610612746, 0, -1966081, 1610612746, 0, -2031616, 1610612746, 0, -2031615, 1610612746, 0, -2031614, 1610612746, 0, -2031613, 1610612746, 0, -2031612, 1610612746, 0, -2031611, 1610612746, 0, -2031610, 1610612746, 0, -2031609, 1610612746, 0, -2031608, 1610612746, 0, -2031607, 1610612746, 0, -2031606, 1610612746, 0, -2031605, 1610612746, 0, -2031604, 1610612746, 0, -2031603, 1610612746, 0, -2031602, 1610612746, 0, -2031601, 1610612746, 0, -2031600, 1610612746, 0, -2031599, 1610612746, 0, -2031598, 1610612746, 0, -2031597, 1610612746, 0, -2031596, 1610612746, 0, -2031595, 1610612746, 0, -2031594, 1610612746, 0, -2031593, 1610612746, 0, -2031592, 1610612746, 0, -2031591, 1610612746, 0, -2031590, 1610612746, 0, -2031589, 1610612746, 0, -2031588, 1610612746, 0, -2031587, 1610612746, 0, -2031586, 1610612746, 0, -2031585, 1610612746, 0, -2031584, 1610612746, 0, -2031583, 1610612746, 0, -2031582, 1610612746, 0, -2031581, 1610612746, 0, -2031580, 1610612746, 0, -2031579, 1610612746, 0, -2031578, 1610612746, 0, -2031577, 1610612746, 0, -2031576, 1610612746, 0, -2031575, 1610612746, 0, -2031574, 1610612746, 0, -2031573, 1610612746, 0, -2031572, 1610612746, 0, -2031571, 1610612746, 0, -2031570, 1610612746, 0, -2031569, 1610612746, 0, -2031568, 1610612746, 0, -2031567, 1610612746, 0, -2031566, 1610612746, 0, -2031565, 1610612746, 0, -2031564, 1610612746, 0, -2031563, 1610612746, 0, -2031562, 1610612746, 0, -2031561, 1610612746, 0, -2031560, 1610612746, 0, -2031559, 1610612746, 0, -2031558, 1610612746, 0, -2031557, -1073741809, 0, -1900549, -1610612726, 0, -1900548, 1610612739, 0, -1900547, 1610612738, 0, -1900546, 1610612738, 0, -1900545, 1610612738, 0, -1966080, 1610612738, 0, -1966079, 1610612738, 0, -1966078, 1610612738, 0, -1966077, 1610612738, 0, -1966076, 1610612738, 0, -1966075, 1610612738, 0, -1966074, 1610612738, 0, -1966073, 1610612738, 0, -1966072, 1610612738, 0, -1966071, 1610612738, 0, -1966070, 1610612738, 0, -1966069, 1610612738, 0, -1966068, 1610612738, 0, -1966067, 1610612738, 0, -1966066, 1610612738, 0, -1966065, 1610612738, 0, -1966064, 1610612738, 0, -1966063, 1610612738, 0, -1966062, 1610612738, 0, -1966061, 1610612738, 0, -1966060, 1610612738, 0, -1966059, 1610612738, 0, -1966058, 1610612738, 0, -1966057, 1610612738, 0, -1966056, 1610612738, 0, -1966055, 1610612738, 0, -1966054, 3, 0, -1966053, 3, 0, -1966052, 1610612738, 0, -1966051, 1610612738, 0, -1966050, 1610612738, 0, -1966049, 1610612738, 0, -1966048, 1610612738, 0, -1966047, 1610612738, 0, -1966046, 1610612738, 0, -1966045, 1610612738, 0, -1966044, 1610612738, 0, -1966043, 1610612738, 0, -1966042, 1610612738, 0, -1966041, 1610612738, 0, -1966040, 1610612738, 0, -1966039, 1610612738, 0, -1966038, 1610612738, 0, -1966037, 1610612738, 0, -1966036, 1610612738, 0, -1966035, 1610612738, 0, -1966034, 1610612738, 0, -1966033, 1610612738, 0, -1966032, 1610612738, 0, -1966031, 1610612738, 0, -1966030, 1610612738, 0, -1966029, 1610612738, 0, -1966028, 1610612738, 0, -1966027, 1610612738, 0, -1966026, 1610612738, 0, -1966025, 1610612738, 0, -1966024, 1610612738, 0, -1966023, 1610612738, 0, -1966022, 1610612739, 0, -1966021, -1073741814, 0, -1835013, -1610612726, 0, -1835012, -1610612734, 0, -1900518, -1073741822, 0, -1900517, -1610612734, 0, -1900486, -1073741822, 0, -1900485, -1073741814, 0, -1769477, -1610612726, 0, -1769476, -1610612734, 0, -1834982, -1073741822, 0, -1834981, -1610612734, 0, -1834950, -1073741822, 0, -1834949, -1073741814, 0, -1703941, -1610612726, 0, -1703940, -1610612734, 0, -1769446, -1073741822, 0, -1769445, -1610612734, 0, -1769414, -1073741822, 0, -1769413, -1073741814, 0, -1638405, -1610612726, 0, -1638404, -1610612734, 0, -1703910, -1073741822, 0, -1703909, -1610612734, 0, -1703878, -1073741822, 0, -1703877, -1073741814, 0, -1572869, -1610612726, 0, -1572868, -1610612734, 0, -1638374, -1073741822, 0, -1638373, 1610612739, 0, -1638372, 2, 0, -1638371, 2, 0, -1638370, 2, 0, -1638369, 2, 0, -1638368, 2, 0, -1638367, 2, 0, -1638366, 2, 0, -1638365, -1610612729, 0, -1638342, -1073741822, 0, -1638341, -1073741814, 0, -1507333, -1610612726, 0, -1507332, -1610612734, 0, -1572838, -1073741817, 0, -1572837, 1610612738, 0, -1572836, 1610612738, 0, -1572835, 1610612738, 0, -1572834, 1610612738, 0, -1572833, 1610612738, 0, -1572832, 1610612738, 0, -1572831, 1610612738, 0, -1572830, 1610612738, 0, -1572829, 1610612743, 0, -1572806, -1073741822, 0, -1572805, -1073741814, 0, -1441797, -1610612726, 0, -1441796, -1610612734, 0, -1507270, -1073741822, 0, -1507269, -1073741814, 0, -1376261, -1610612726, 0, -1376260, -1610612734, 0, -1441751, 7, 0, -1441750, 2, 0, -1441749, 2, 0, -1441748, 2, 0, -1441747, 2, 0, -1441746, 2, 0, -1441745, 2, 0, -1441744, 2, 0, -1441743, 2, 0, -1441742, 2, 0, -1441741, 2, 0, -1441740, 2, 0, -1441739, 2, 0, -1441738, 2, 0, -1441737, 2, 0, -1441736, 2, 0, -1441735, 2, 0, -1441734, 3, 0, -1441733, -1073741814, 0, -1310725, -1610612726, 0, -1310724, -1610612734, 0, -1376215, -1073741817, 0, -1376214, 1610612738, 0, -1376213, 1610612738, 0, -1376212, 1610612738, 0, -1376211, 1610612738, 0, -1376210, 1610612738, 0, -1376209, 1610612738, 0, -1376208, 1610612738, 0, -1376207, 1610612738, 0, -1376206, 1610612738, 0, -1376205, 1610612738, 0, -1376204, 1610612738, 0, -1376203, 1610612738, 0, -1376202, 1610612738, 0, -1376201, 1610612738, 0, -1376200, 1610612738, 0, -1376199, 1610612738, 0, -1376198, 3, 0, -1376197, -1073741814, 0, -1245189, -1610612726, 0, -1245188, -1610612734, 0, -1310683, 2, 0, -1310682, 2, 0, -1310681, 2, 0, -1310662, -1073741822, 0, -1310661, -1073741814, 0, -1179653, -1610612726, 0, -1179652, -1610612734, 0, -1245126, -1073741822, 0, -1245125, -1073741814, 0, -1114117, -1610612726, 0, -1114116, -1610612734, 0, -1179615, 2, 0, -1179614, 2, 0, -1179613, 2, 0, -1179612, 2, 0, -1179590, -1073741822, 0, -1179589, -1073741814, 0, -1048581, -1610612726, 0, -1048580, -1610612734, 0, -1114054, -1073741822, 0, -1114053, -1073741814, 0, -983045, -1610612726, 0, -983044, -1610612734, 0, -983043, -1610612727, 0, -983042, -1610612727, 0, -983041, -1610612727, 0, -1048576, -1610612727, 0, -1048575, -1610612727, 0, -1048574, -1610612727, 0, -1048573, -1610612727, 0, -1048572, -1610612727, 0, -1048571, -1610612727, 0, -1048570, -1610612727, 0, -1048569, -1610612727, 0, -1048568, -1610612727, 0, -1048567, -1610612727, 0, -1048566, -1610612727, 0, -1048565, -1610612727, 0, -1048564, -1610612727, 0, -1048563, -1610612727, 0, -1048562, -1610612727, 0, -1048561, -1610612727, 0, -1048560, -1610612727, 0, -1048559, -1610612727, 0, -1048558, -1610612727, 0, -1048557, -1610612727, 0, -1048556, 7, 0, -1048555, 2, 0, -1048554, -1610612729, 0, -1048553, -1610612727, 0, -1048552, -1610612727, 0, -1048551, -1610612727, 0, -1048550, -1610612727, 0, -1048549, -1610612727, 0, -1048548, -1610612727, 0, -1048547, -1610612727, 0, -1048546, 2, 0, -1048545, 2, 0, -1048544, 2, 0, -1048543, -1610612727, 0, -1048542, -1610612727, 0, -1048541, -1610612727, 0, -1048540, -1610612727, 0, -1048539, -1610612727, 0, -1048538, -1610612727, 0, -1048537, -1610612727, 0, -1048536, -1610612727, 0, -1048535, -1610612727, 0, -1048534, -1610612727, 0, -1048533, -1610612727, 0, -1048518, -1073741822, 0, -1048517, -1073741814, 0, -917509, -1610612726, 0, -917508, -1610612734, 0, -917507, -1610612727, 0, -917506, -1610612727, 0, -917505, -1610612727, 0, -983040, -1610612727, 0, -983039, -1610612727, 0, -983038, -1610612727, 0, -983037, -1610612727, 0, -983036, -1610612727, 0, -983035, -1610612727, 0, -983034, -1610612727, 0, -983033, -1610612727, 0, -983032, -1610612727, 0, -983031, -1610612727, 0, -983030, -1610612727, 0, -983029, -1610612727, 0, -983028, -1610612727, 0, -983027, -1610612727, 0, -983026, -1610612727, 0, -983025, -1610612727, 0, -983024, -1610612727, 0, -983023, -1610612727, 0, -983022, 7, 0, -983021, 2, 0, -983020, 3, 0, -983019, 1610612738, 0, -983018, 1610612743, 0, -983017, -1610612727, 0, -983016, -1610612727, 0, -983015, -1610612727, 0, -983014, -1610612727, 0, -983013, -1610612727, 0, -983012, -1610612727, 0, -983011, -1610612727, 0, -983010, -1610612727, 0, -983009, -1610612727, 0, -983008, -1610612727, 0, -983007, -1610612727, 0, -983006, -1610612727, 0, -983005, -1610612727, 0, -983004, -1610612727, 0, -983003, -1610612727, 0, -983002, -1610612727, 0, -983001, -1610612727, 0, -983000, -1610612727, 0, -982999, -1610612727, 0, -982998, -1610612727, 0, -982997, -1610612727, 0, -982982, -1073741822, 0, -982981, -1073741814, 0, -851973, -1610612726, 0, -851972, -1610612734, 0, -851971, -1610612727, 0, -851970, -1610612727, 0, -851969, -1610612727, 0, -917504, -1610612727, 0, -917503, -1610612727, 0, -917502, -1610612727, 0, -917501, -1610612727, 0, -917500, -1610612727, 0, -917499, -1610612727, 0, -917498, -1610612727, 0, -917497, -1610612727, 0, -917496, -1610612727, 0, -917495, -1610612727, 0, -917494, -1610612727, 0, -917493, -1610612727, 0, -917492, -1610612727, 0, -917491, -1610612727, 0, -917490, -1610612727, 0, -917489, -1610612727, 0, -917488, 7, 0, -917487, 2, 0, -917486, 3, 0, -917485, 1610612738, 0, -917484, 1610612743, 0, -917483, -1610612727, 0, -917482, -1610612727, 0, -917481, -1610612727, 0, -917480, -1610612727, 0, -917479, -1610612727, 0, -917478, -1610612727, 0, -917477, 2, 0, -917476, 2, 0, -917475, 2, 0, -917474, -1610612727, 0, -917473, -1610612727, 0, -917472, -1610612727, 0, -917471, -1610612727, 0, -917470, -1610612727, 0, -917469, -1610612727, 0, -917468, -1610612727, 0, -917467, -1610612727, 0, -917466, -1610612727, 0, -917465, -1610612727, 0, -917464, -1610612727, 0, -917463, -1610612727, 0, -917462, -1610612727, 0, -917461, -1610612727, 0, -917460, -1610612727, 0, -917446, -1073741822, 0, -917445, -1073741814, 0, -786437, -1610612726, 0, -786436, -1610612734, 0, -786435, -1610612727, 0, -786434, -1610612727, 0, -786433, -1610612727, 0, -851968, -1610612727, 0, -851967, -1610612727, 0, -851966, -1610612727, 0, -851965, -1610612727, 0, -851964, -1610612727, 0, -851963, -1610612727, 0, -851962, 7, 0, -851961, 2, 0, -851960, 2, 0, -851959, 2, 0, -851958, 2, 0, -851957, 2, 0, -851956, 2, 0, -851955, 2, 0, -851954, 2, 0, -851953, 2, 0, -851952, 3, 0, -851951, 1610612739, 0, -851950, 1610612743, 0, -851949, -1610612727, 0, -851948, -1610612727, 0, -851947, -1610612727, 0, -851946, -1610612727, 0, -851945, -1610612727, 0, -851944, -1610612727, 0, -851943, -1610612727, 0, -851942, -1610612727, 0, -851941, -1610612727, 0, -851940, -1610612727, 0, -851939, -1610612727, 0, -851938, -1610612727, 0, -851937, -1610612727, 0, -851936, -1610612727, 0, -851935, -1610612727, 0, -851934, -1610612727, 0, -851933, -1610612727, 0, -851932, -1610612727, 0, -851931, -1610612727, 0, -851930, -1610612727, 0, -851929, -1610612727, 0, -851928, -1610612727, 0, -851927, -1610612727, 0, -851926, -1610612727, 0, -851925, -1610612727, 0, -851924, -1610612727, 0, -851910, -1073741822, 0, -851909, -1073741814, 0, -720901, -1610612726, 0, -720900, -1610612734, 0, -720899, -1610612727, 0, -720898, -1610612727, 0, -720897, -1610612727, 0, -786432, -1610612727, 0, -786431, -1610612727, 0, -786430, -1610612727, 0, -786428, -1610612727, 0, -786427, -1610612727, 0, -786426, -1073741822, 0, -786425, 3, 0, -786424, 1610612738, 0, -786423, 1610612738, 0, -786422, 1610612738, 0, -786421, 1610612738, 0, -786420, 1610612738, 0, -786419, 1610612738, 0, -786418, 1610612738, 0, -786417, 1610612738, 0, -786416, 1610612738, 0, -786415, 1610612743, 0, -786414, -1610612727, 0, -786413, -1610612727, 0, -786412, -1610612727, 0, -786411, -1610612727, 0, -786410, -1610612727, 0, -786409, -1610612727, 0, -786408, -1610612727, 0, -786407, -1610612727, 0, -786406, -1610612727, 0, -786405, -1610612727, 0, -786404, -1610612727, 0, -786403, -1610612727, 0, -786402, -1610612727, 0, -786401, -1610612727, 0, -786400, -1610612727, 0, -786399, -1610612727, 0, -786398, -1610612727, 0, -786397, -1610612727, 0, -786396, -1610612727, 0, -786395, -1610612727, 0, -786394, -1610612727, 0, -786393, -1610612727, 0, -786392, -1610612727, 0, -786391, -1610612727, 0, -786390, -1610612727, 0, -786389, -1610612727, 0, -786388, -1610612727, 0, -786374, -1073741822, 0, -786373, -1073741814, 0, -655365, -1610612726, 0, -655364, -1610612734, 0, -655363, -1610612727, 0, -655362, -1610612727, 0, -655361, -1610612727, 0, -720896, -1610612727, 0, -720895, -1610612727, 0, -720894, -1610612727, 0, -720892, -1610612727, 0, -720891, -1610612727, 0, -720890, -1073741822, 0, -720889, -1610612734, 0, -720888, -1610612727, 0, -720887, -1610612727, 0, -720886, -1610612727, 0, -720885, -1610612727, 0, -720884, -1610612727, 0, -720883, -1610612727, 0, -720882, -1610612727, 0, -720881, -1610612727, 0, -720880, -1610612727, 0, -720879, -1610612727, 0, -720878, -1610612727, 0, -720877, -1610612727, 0, -720876, -1610612727, 0, -720875, -1610612727, 0, -720874, -1610612727, 0, -720873, -1610612727, 0, -720872, -1610612727, 0, -720871, -1610612727, 0, -720870, -1610612727, 0, -720869, -1610612727, 0, -720868, -1610612727, 0, -720867, -1610612727, 0, -720866, -1610612727, 0, -720865, -1610612727, 0, -720864, -1610612727, 0, -720863, -1610612727, 0, -720862, -1610612727, 0, -720861, -1610612727, 0, -720860, -1610612727, 0, -720859, -1610612727, 0, -720858, -1610612727, 0, -720857, -1610612727, 0, -720856, -1610612727, 0, -720855, -1610612727, 0, -720854, -1610612727, 0, -720853, -1610612727, 0, -720852, -1610612727, 0, -720838, -1073741822, 0, -720837, -1073741814, 0, -589829, -1610612726, 0, -589828, -1610612734, 0, -589827, -1610612727, 0, -589826, -1610612727, 0, -589825, -1610612727, 0, -655360, -1610612727, 0, -655359, -1610612727, 0, -655358, -1610612727, 0, -655356, -1610612727, 0, -655355, -1610612727, 0, -655354, -1073741822, 0, -655353, -1610612734, 0, -655352, -1610612727, 0, -655351, -1610612727, 0, -655350, -1610612727, 0, -655349, -1610612727, 0, -655348, -1610612727, 0, -655347, -1610612727, 0, -655346, -1610612727, 0, -655345, -1610612727, 0, -655344, -1610612727, 0, -655343, -1610612727, 0, -655342, 7, 0, -655341, 2, 0, -655340, 2, 0, -655339, 2, 0, -655338, 2, 0, -655337, 2, 0, -655336, 2, 0, -655335, 2, 0, -655334, 2, 0, -655333, 2, 0, -655332, 2, 0, -655331, 2, 0, -655330, 2, 0, -655329, 2, 0, -655328, 2, 0, -655327, 2, 0, -655326, 2, 0, -655325, -1610612729, 0, -655324, -1610612727, 0, -655323, -1610612727, 0, -655322, -1610612727, 0, -655321, -1610612727, 0, -655320, -1610612727, 0, -655319, -1610612727, 0, -655318, -1610612727, 0, -655317, -1610612727, 0, -655316, -1610612727, 0, -655302, -1073741822, 0, -655301, -1073741814, 0, -524293, -1610612726, 0, -524292, -1610612734, 0, -524291, -1610612727, 0, -524290, -1610612727, 0, -524289, -1610612727, 0, -589824, -1610612727, 0, -589823, -1610612727, 0, -589822, -1610612727, 0, -589820, -1610612727, 0, -589819, -1610612727, 0, -589818, -1073741822, 0, -589817, -1610612734, 0, -589816, -1610612727, 0, -589815, -1610612727, 0, -589814, -1610612727, 0, -589813, -1610612727, 0, -589812, -1610612727, 0, -589811, -1610612727, 0, -589810, -1610612727, 0, -589809, -1610612727, 0, -589808, 7, 0, -589807, 2, 0, -589806, 3, 0, -589805, 3, 0, -589804, 1610612738, 0, -589803, 1610612738, 0, -589802, 1610612738, 0, -589801, 1610612738, 0, -589800, 1610612738, 0, -589799, 1610612738, 0, -589798, 1610612738, 0, -589797, 1610612738, 0, -589796, 1610612738, 0, -589795, 1610612738, 0, -589794, 1610612738, 0, -589793, 1610612738, 0, -589792, 1610612738, 0, -589791, 1610612738, 0, -589790, 1610612738, 0, -589789, 1610612743, 0, -589788, -1610612727, 0, -589787, -1610612727, 0, -589786, -1610612727, 0, -589785, -1610612727, 0, -589784, -1610612727, 0, -589783, -1610612727, 0, -589782, -1610612727, 0, -589781, -1610612727, 0, -589780, -1610612727, 0, -589766, -1073741822, 0, -589765, -1073741814, 0, -458757, -1610612726, 0, -458756, -1610612734, 0, -458755, -1610612727, 0, -458754, -1610612727, 0, -458753, -1610612727, 0, -524288, -1610612727, 0, -524287, -1610612727, 0, -524286, -1610612727, 0, -524284, -1610612727, 0, -524283, -1610612727, 0, -524282, -1073741822, 0, -524281, 3, 0, -524280, 2, 0, -524279, 2, 0, -524278, 2, 0, -524277, 2, 0, -524276, 2, 0, -524275, 2, 0, -524274, 2, 0, -524273, 2, 0, -524272, 3, 0, -524271, 3, 0, -524270, 1610612738, 0, -524269, 1610612743, 0, -524268, -1610612727, 0, -524267, -1610612727, 0, -524266, -1610612727, 0, -524265, -1610612727, 0, -524264, -1610612727, 0, -524263, -1610612727, 0, -524262, -1610612727, 0, -524261, -1610612727, 0, -524260, -1610612727, 0, -524259, -1610612727, 0, -524258, -1610612727, 0, -524257, -1610612727, 0, -524256, -1610612727, 0, -524255, -1610612727, 0, -524254, -1610612727, 0, -524253, -1610612727, 0, -524252, 7, 0, -524251, 2, 0, -524250, 2, 0, -524248, -1610612727, 0, -524247, -1610612727, 0, -524246, -1610612727, 0, -524245, -1610612727, 0, -524244, -1610612727, 0, -524230, -1073741822, 0, -524229, -1073741814, 0, -393221, -1610612726, 0, -393220, -1610612734, 0, -393219, -1610612727, 0, -393218, -1610612727, 0, -393217, -1610612727, 0, -458752, -1610612727, 0, -458751, -1610612727, 0, -458750, -1610612727, 0, -458748, -1610612727, 0, -458747, -1610612727, 0, -458746, -1073741817, 0, -458745, 1610612738, 0, -458744, 1610612738, 0, -458743, 1610612738, 0, -458742, 1610612738, 0, -458741, 1610612738, 0, -458740, 1610612738, 0, -458739, 1610612738, 0, -458738, 1610612738, 0, -458737, 1610612738, 0, -458736, 1610612738, 0, -458735, 1610612743, 0, -458731, -1610612727, 0, -458730, -1610612727, 0, -458729, -1610612727, 0, -458728, -1610612727, 0, -458727, -1610612727, 0, -458726, -1610612727, 0, -458725, -1610612727, 0, -458724, -1610612727, 0, -458723, -1610612727, 0, -458722, -1610612727, 0, -458721, -1610612727, 0, -458720, -1610612727, 0, -458719, -1610612727, 0, -458718, -1610612727, 0, -458717, -1610612727, 0, -458716, -1073741817, 0, -458715, 1610612738, 0, -458714, 1610612738, 0, -458713, 2, 0, -458712, 2, 0, -458711, -1610612727, 0, -458710, -1610612727, 0, -458709, -1610612727, 0, -458694, -1073741822, 0, -458693, -1073741814, 0, -327685, -1610612726, 0, -327684, -1610612734, 0, -327683, -1610612727, 0, -327682, -1610612727, 0, -327681, -1610612727, 0, -393216, -1610612727, 0, -393215, -1610612727, 0, -393214, -1610612727, 0, -393212, -1610612727, 0, -393211, -1610612727, 0, -393210, -1610612727, 0, -393209, -1610612727, 0, -393208, -1610612727, 0, -393207, -1610612727, 0, -393206, -1610612727, 0, -393205, -1610612727, 0, -393204, -1610612727, 0, -393203, -1610612727, 0, -393202, -1610612727, 0, -393201, -1610612727, 0, -393200, -1610612727, 0, -393199, -1610612727, 0, -393198, -1610612727, 0, -393197, -1610612727, 0, -393196, -1610612727, 0, -393195, -1610612727, 0, -393194, -1610612727, 0, -393193, -1610612727, 0, -393192, -1610612727, 0, -393191, -1610612727, 0, -393190, -1610612727, 0, -393189, -1610612727, 0, -393188, -1610612727, 0, -393187, -1610612727, 0, -393186, -1610612727, 0, -393185, -1610612727, 0, -393184, -1610612727, 0, -393183, -1610612727, 0, -393182, -1610612727, 0, -393181, -1610612727, 0, -393180, -1610612727, 0, -393179, -1610612727, 0, -393178, -1610612727, 0, -393177, -1610612727, 0, -393176, -1610612727, 0, -393175, -1610612727, 0, -393174, -1610612727, 0, -393173, -1610612727, 0, -393158, -1073741822, 0, -393157, -1073741814, 0, -262149, -1610612726, 0, -262148, -1610612734, 0, -262147, -1610612727, 0, -262146, -1610612727, 0, -262145, -1610612727, 0, -327680, -1610612727, 0, -327679, -1610612727, 0, -327678, -1610612727, 0, -327676, -1610612727, 0, -327664, -1610612727, 0, -327663, -1610612727, 0, -327662, -1610612727, 0, -327661, -1610612727, 0, -327660, -1610612727, 0, -327659, -1610612727, 0, -327658, -1610612727, 0, -327657, -1610612727, 0, -327656, -1610612727, 0, -327655, 7, 0, -327654, 2, 0, -327653, 2, 0, -327652, 2, 0, -327651, 2, 0, -327650, 2, 0, -327649, 2, 0, -327648, 2, 0, -327647, 2, 0, -327646, 2, 0, -327645, 2, 0, -327644, 2, 0, -327643, 2, 0, -327642, 2, 0, -327641, 2, 0, -327640, 2, 0, -327639, 2, 0, -327638, 2, 0, -327637, -1610612729, 0, -327636, -1610612727, 0, -327622, -1073741822, 0, -327621, -1073741814, 0, -196613, -1610612726, 0, -196612, -1610612734, 0, -196611, -1610612727, 0, -196610, -1610612727, 0, -196609, -1610612727, 0, -262144, -1610612727, 0, -262143, -1610612727, 0, -262142, -1610612727, 0, -262140, -1610612727, 0, -262139, -1610612727, 0, -262138, -1610612727, 0, -262137, -1610612727, 0, -262136, -1610612727, 0, -262135, -1610612727, 0, -262134, -1610612727, 0, -262133, -1610612727, 0, -262132, -1610612727, 0, -262131, -1610612727, 0, -262130, -1610612727, 0, -262129, -1610612727, 0, -262128, -1610612727, 0, -262127, -1610612727, 0, -262126, -1610612727, 0, -262125, -1610612727, 0, -262124, -1610612727, 0, -262123, -1610612727, 0, -262119, -1073741822, 0, -262118, 1610612739, 0, -262117, 1610612738, 0, -262116, 1610612738, 0, -262115, 1610612738, 0, -262114, 1610612738, 0, -262113, 1610612738, 0, -262112, 1610612738, 0, -262111, 1610612738, 0, -262110, 1610612738, 0, -262109, 1610612738, 0, -262108, 1610612738, 0, -262107, 1610612738, 0, -262106, 1610612738, 0, -262105, 1610612738, 0, -262104, 1610612738, 0, -262103, 1610612738, 0, -262102, 1610612738, 0, -262101, 1610612743, 0, -262100, -1610612727, 0, -262086, -1073741822, 0, -262085, -1073741814, 0, -131077, -1610612726, 0, -131076, -1610612734, 0, -131075, -1610612727, 0, -131074, -1610612727, 0, -131073, -1610612727, 0, -196608, -1610612727, 0, -196607, -1610612727, 0, -196606, -1610612727, 0, -196605, -1610612727, 0, -196604, -1610612727, 0, -196603, -1610612727, 0, -196602, -1610612727, 0, -196601, -1610612727, 0, -196600, -1610612727, 0, -196599, -1610612727, 0, -196598, -1610612727, 0, -196597, -1610612727, 0, -196596, -1610612727, 0, -196595, -1610612727, 0, -196594, -1610612727, 0, -196593, -1610612727, 0, -196592, -1610612727, 0, -196591, -1610612727, 0, -196590, -1610612727, 0, -196587, 7, 0, -196586, 2, 0, -196585, 2, 0, -196584, 2, 0, -196583, 3, 0, -196582, -1610612734, 0, -196581, -1610612727, 0, -196580, -1610612727, 0, -196579, -1610612727, 0, -196578, -1610612727, 0, -196577, -1610612727, 0, -196576, -1610612727, 0, -196575, -1610612727, 0, -196574, -1610612727, 0, -196573, -1610612727, 0, -196572, -1610612727, 0, -196571, -1610612727, 0, -196570, -1610612727, 0, -196569, -1610612727, 0, -196566, -1610612727, 0, -196565, -1610612727, 0, -196564, -1610612727, 0, -196550, -1073741822, 0, -196549, -1073741814, 0, -65541, -1610612726, 0, -65540, -1610612734, 0, -65539, -1610612727, 0, -65538, -1610612727, 0, -65537, -1610612727, 0, -131072, -1610612727, 0, -131071, -1610612727, 0, -131070, -1610612727, 0, -131069, -1610612727, 0, -131068, -1610612727, 0, -131067, -1610612727, 0, -131066, -1610612727, 0, -131065, -1610612727, 0, -131064, -1610612727, 0, -131063, -1610612727, 0, -131062, -1610612727, 0, -131061, -1610612727, 0, -131060, -1610612727, 0, -131059, -1610612727, 0, -131058, -1610612727, 0, -131057, -1610612727, 0, -131056, -1610612727, 0, -131055, -1610612727, 0, -131054, 7, 0, -131053, 2, 0, -131052, 2, 0, -131051, 3, 0, -131050, 3, 0, -131049, 3, 0, -131048, 3, 0, -131047, 3, 0, -131046, -1610612734, 0, -131045, -1610612727, 0, -131044, -1610612727, 0, -131043, -1610612727, 0, -131042, -1610612727, 0, -131041, -1610612727, 0, -131040, -1610612727, 0, -131039, -1610612727, 0, -131038, -1610612727, 0, -131037, -1610612727, 0, -131036, -1610612727, 0, -131035, -1610612727, 0, -131034, -1610612727, 0, -131033, -1610612727, 0, -131032, -1610612727, 0, -131031, -1610612727, 0, -131030, -1610612727, 0, -131029, -1610612727, 0, -131028, -1610612727, 0, -131014, -1073741822, 0, -131013, -1073741814, 0, -5, -1610612726, 0, -4, -1610612734, 0, -3, -1610612727, 0, -2, -1610612727, 0, -1, -1610612727, 0, -65536, -1610612727, 0, -65535, -1610612727, 0, -65534, -1610612727, 0, -65533, -1610612727, 0, -65532, -1610612727, 0, -65531, -1610612727, 0, -65530, -1610612727, 0, -65529, -1610612727, 0, -65528, -1610612727, 0, -65527, -1610612727, 0, -65526, -1610612727, 0, -65525, -1610612727, 0, -65524, -1610612727, 0, -65523, -1610612727, 0, -65522, -1610612727, 0, -65521, -1610612727, 0, -65520, 7, 0, -65519, 2, 0, -65518, 2, 0, -65517, 3, 0, -65516, 3, 0, -65515, 3, 0, -65514, 3, 0, -65513, 3, 0, -65512, 3, 0, -65511, 3, 0, -65510, -1610612734, 0, -65509, -1610612727, 0, -65508, -1610612727, 0, -65507, -1610612727, 0, -65506, -1610612727, 0, -65505, -1610612727, 0, -65504, -1610612727, 0, -65503, -1610612727, 0, -65502, -1610612727, 0, -65501, -1610612727, 0, -65500, -1610612727, 0, -65499, -1610612727, 0, -65498, -1610612727, 0, -65497, -1610612727, 0, -65496, -1610612727, 0, -65495, -1610612727, 0, -65494, -1610612727, 0, -65493, -1610612727, 0, -65478, -1073741822, 0, -65477, -1073741814, 0, 65531, -1610612726, 0, 65532, 1610612739, 0, 65533, 2, 0, 65534, 2, 0, 65535, 2, 0, 0, 2, 0, 1, 2, 0, 2, 2, 0, 3, 2, 0, 4, 2, 0, 5, 2, 0, 6, 2, 0, 7, 2, 0, 8, 2, 0, 9, 2, 0, 10, 2, 0, 11, 2, 0, 12, 2, 0, 13, 2, 0, 14, 2, 0, 15, 2, 0, 16, 2, 0, 17, 2, 0, 18, 2, 0, 19, 2, 0, 20, 2, 0, 21, 2, 0, 22, 2, 0, 23, 2, 0, 24, 2, 0, 25, 1610612739, 0, 26, 1610612739, 0, 27, 2, 0, 28, 2, 0, 29, 2, 0, 30, 2, 0, 31, 2, 0, 32, 2, 0, 33, 2, 0, 34, 2, 0, 35, 2, 0, 36, 2, 0, 37, 2, 0, 38, 2, 0, 39, 2, 0, 40, 2, 0, 41, 2, 0, 42, 2, 0, 43, 2, 0, 44, 2, 0, 45, 2, 0, 46, 2, 0, 47, 2, 0, 48, 2, 0, 49, 2, 0, 50, 2, 0, 51, 2, 0, 52, 2, 0, 53, 2, 0, 54, 2, 0, 55, 2, 0, 56, 2, 0, 57, 2, 0, 58, 3, 0, 59, -1073741814, 0, 131067, -1610612721, 0, 131068, 10, 0, 131069, 10, 0, 131070, 10, 0, 131071, 10, 0, 65536, 10, 0, 65537, 10, 0, 65538, 10, 0, 65539, 10, 0, 65540, 10, 0, 65541, 10, 0, 65542, 10, 0, 65543, 10, 0, 65544, 10, 0, 65545, 10, 0, 65546, 10, 0, 65547, 10, 0, 65548, 10, 0, 65549, 10, 0, 65550, 10, 0, 65551, 10, 0, 65552, 10, 0, 65553, 10, 0, 65554, 10, 0, 65555, 10, 0, 65556, 10, 0, 65557, 10, 0, 65558, 10, 0, 65559, 10, 0, 65560, 10, 0, 65561, 10, 0, 65562, 10, 0, 65563, 10, 0, 65564, 10, 0, 65565, 10, 0, 65566, 10, 0, 65567, 10, 0, 65568, 10, 0, 65569, 10, 0, 65570, 10, 0, 65571, 10, 0, 65572, 10, 0, 65573, 10, 0, 65574, 10, 0, 65575, 10, 0, 65576, 10, 0, 65577, 10, 0, 65578, 10, 0, 65579, 10, 0, 65580, 10, 0, 65581, 10, 0, 65582, 10, 0, 65583, 10, 0, 65584, 10, 0, 65585, 10, 0, 65586, 10, 0, 65587, 10, 0, 65588, 10, 0, 65589, 10, 0, 65590, 10, 0, 65591, 10, 0, 65592, 10, 0, 65593, 10, 0, 65594, 10, 0, 65595, 15, 0 ) + +[node name="DropThroughPlatform" parent="." instance=ExtResource( 14 )] +position = Vector2( 1128, -27 ) +tile_data = PoolIntArray( -2949142, 1, 0, -2949141, 0, 0, -2949140, 0, 0, -2949139, 0, 0, -2949138, 0, 0, -2949137, 2, 0, -393222, 1, 0, -393221, 0, 0, -393219, 2, 0, -458751, 1, 0, -458750, 0, 0, -458748, 2, 0 ) + +[node name="FrogFreeButton" parent="." instance=ExtResource( 10 )] +position = Vector2( 696, -144 ) + +[node name="FrogFreeButton2" parent="." instance=ExtResource( 10 )] +position = Vector2( 744, -624 ) + +[node name="Digit" parent="FrogFreeButton2" index="1"] +frame = 1 + +[node name="IndicatorPlayer" parent="FrogFreeButton2/Indicator" index="0"] +anims/RESET = SubResource( 12 ) +anims/onning = SubResource( 13 ) + +[connection signal="ready" from="." to="BoundFrog" method="_on_Level_ready"] +[connection signal="body_exited" from="Blobby/BlobbySkin" to="Blobby" method="_on_BlobbySkin_body_exited"] +[connection signal="button_pushed" from="FrogFreeButton" to="BoundFrog" method="_on_FrogFreeButton_pushed"] +[connection signal="button_pushed" from="FrogFreeButton2" to="BoundFrog2" method="_on_FrogFreeButton_pushed"] + +[editable path="SignalManager"] +[editable path="LevelState"] +[editable path="UserInterface"] +[editable path="UserInterface/HUD"] +[editable path="BlobbyCam"] +[editable path="Blobby"] +[editable path="Flyer"] +[editable path="Flyer2"] +[editable path="BoundFrog2"] +[editable path="BoundFrog2/WhatAreFrog"] +[editable path="BoundFrog2/RopeAnchor"] +[editable path="FrogFreeButton2"] diff --git a/src/Levels/Templates/LevelTemplate.gd b/src/Levels/Templates/LevelTemplate.gd index a2ddf8c..7970c74 100644 --- a/src/Levels/Templates/LevelTemplate.gd +++ b/src/Levels/Templates/LevelTemplate.gd @@ -2,6 +2,8 @@ extends Node2D class_name LevelTemplate onready var signalManager := $"%SignalManager" +onready var levelState := $"%LevelState" func _ready() -> void: signalManager.emit_signal("level_loaded") + diff --git a/src/NeutralObjects/SavePoint.gd b/src/NeutralObjects/SavePoint.gd new file mode 100644 index 0000000..296f8df --- /dev/null +++ b/src/NeutralObjects/SavePoint.gd @@ -0,0 +1,15 @@ +extends Node2D + +onready var levelState := get_tree().root.get_child(1).get_node("%LevelState") + +func _ready() -> void: + if(GlobalState.get_savepoint(levelState.levelName) == global_position + Vector2(0,18)): + $AnimationPlayer.play("rolloutflag") + +#TODO Animation plays over again on reset +#TODO What should be saved when reaching a savepoint besides the position in the level +func _on_SaveArea_area_entered(area: Area2D) -> void: + #TODO Spawnheight fixed + if(!GlobalState.get_savepoint(levelState.levelName) == global_position + Vector2(0,18)): + $AnimationPlayer.play("rolloutflag") + GlobalState.set_savepoint(levelState.levelName, global_position + Vector2(0,18)) diff --git a/src/NeutralObjects/SavePoint.tscn b/src/NeutralObjects/SavePoint.tscn index 76b9822..fa2565a 100644 --- a/src/NeutralObjects/SavePoint.tscn +++ b/src/NeutralObjects/SavePoint.tscn @@ -1,29 +1,170 @@ -[gd_scene load_steps=4 format=2] +[gd_scene load_steps=8 format=2] [ext_resource path="res://assets/neutral object/blobby1Flag.png" type="Texture" id=1] [ext_resource path="res://assets/neutral object/flagPoleAndBasePlant.png" type="Texture" id=2] +[ext_resource path="res://src/Environment/FlagMaterial.tres" type="Material" id=3] +[ext_resource path="res://src/NeutralObjects/SavePoint.gd" type="Script" id=4] + +[sub_resource type="Animation" id=2] +length = 0.001 +tracks/0/type = "value" +tracks/0/path = NodePath("Flag:material:shader_param/speed") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ 0.6 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("Flag:material:shader_param/frequency_y") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ 10.0 ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("Flag:material:shader_param/frequency_x") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ 3.0 ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("Flag:material:shader_param/amplitude") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ 1.0 ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("Flag:material:shader_param/inclination") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ 1.0 ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("Flag:texture_offset") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 27, 0 ) ] +} + +[sub_resource type="Animation" id=3] +resource_name = "rolloutflag" +tracks/0/type = "value" +tracks/0/path = NodePath("Flag:material:shader_param/speed") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 1 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ 0.0, 0.6 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("Flag:material:shader_param/amplitude") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 1 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ 0.0, 1.0 ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("Flag:material:shader_param/inclination") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0, 1 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ 0.0, 1.0 ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("Flag:texture_offset") +tracks/3/interp = 2 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"times": PoolRealArray( 0, 1 ), +"transitions": PoolRealArray( 1, 0.196146 ), +"update": 0, +"values": [ Vector2( 27, 0 ), Vector2( 0, 0 ) ] +} [sub_resource type="CapsuleShape2D" id=1] radius = 12.0 [node name="SavePoint" type="Node2D"] +script = ExtResource( 4 ) [node name="FlagPole" type="Sprite" parent="."] z_index = 1 texture = ExtResource( 2 ) -[node name="Flag" type="Sprite" parent="."] -visible = false -position = Vector2( -1, 4 ) +[node name="Flag" type="Polygon2D" parent="."] +show_behind_parent = true +light_mask = 0 +material = ExtResource( 3 ) +position = Vector2( -24, -24 ) +z_as_relative = false texture = ExtResource( 1 ) -region_enabled = true -region_rect = Rect2( 10, 20, 25, 15 ) -region_filter_clip = true +texture_offset = Vector2( 27, 0 ) +invert_border = 0.1 +polygon = PoolVector2Array( 10, 35, 36, 35, 36, 20, 10, 20, 12, 20, 14, 20, 16, 20, 18, 20, 20, 20, 22, 20, 24, 20, 26, 20, 28, 20, 30, 20, 32, 20, 34, 20, 34, 35, 32, 35, 30, 35, 28, 35, 26, 35, 24, 35, 22, 35, 20, 35, 18, 35, 16, 35, 14, 35, 12, 35 ) +uv = PoolVector2Array( 10, 35, 36, 35, 36, 20, 10, 20, 12, 20, 14, 20, 16, 20, 18, 20, 20, 20, 22, 20, 24, 20, 26, 20, 28, 20, 30, 20, 32, 20, 34, 20, 34, 35, 32, 35, 30, 35, 28, 35, 26, 35, 24, 35, 22, 35, 20, 35, 18, 35, 16, 35, 14, 35, 12, 35 ) +polygons = [ PoolIntArray( 3, 4, 41 ), PoolIntArray( 5, 34, 4 ), PoolIntArray( 0, 27, 4 ), PoolIntArray( 4, 26, 27 ), PoolIntArray( 5, 4, 26 ), PoolIntArray( 5, 26, 25 ), PoolIntArray( 6, 5, 25 ), PoolIntArray( 6, 25, 24 ), PoolIntArray( 6, 7, 24 ), PoolIntArray( 7, 24, 23 ), PoolIntArray( 7, 8, 23 ), PoolIntArray( 8, 23, 22 ), PoolIntArray( 8, 9, 22 ), PoolIntArray( 9, 22, 21 ), PoolIntArray( 9, 10, 21 ), PoolIntArray( 10, 11, 21 ), PoolIntArray( 20, 21, 11 ), PoolIntArray( 11, 20, 19 ), PoolIntArray( 11, 19, 12 ), PoolIntArray( 12, 19, 18 ), PoolIntArray( 12, 13, 18 ), PoolIntArray( 13, 14, 18 ), PoolIntArray( 17, 18, 14 ), PoolIntArray( 17, 16, 14 ), PoolIntArray( 15, 14, 16 ), PoolIntArray( 15, 1, 16 ), PoolIntArray( 2, 1, 15 ), PoolIntArray( 3, 0, 4 ) ] +internal_vertex_count = 24 -[node name="Area2D" type="Area2D" parent="."] +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +anims/RESET = SubResource( 2 ) +anims/rolloutflag = SubResource( 3 ) + +[node name="SaveArea" type="Area2D" parent="."] collision_layer = 0 monitorable = false -[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] +[node name="CollisionShape2D" type="CollisionShape2D" parent="SaveArea"] position = Vector2( -15, 6 ) shape = SubResource( 1 ) + +[connection signal="area_entered" from="SaveArea" to="." method="_on_SaveArea_area_entered"] diff --git a/src/ThirdParty/Demo/meshinstance.gd b/src/ThirdParty/Demo/meshinstance.gd index b00dd20..66a79a1 100644 --- a/src/ThirdParty/Demo/meshinstance.gd +++ b/src/ThirdParty/Demo/meshinstance.gd @@ -2,4 +2,5 @@ extends MeshInstance func _process(delta): - rotate_y(PI / 4.0 * delta) + if(get_parent().visible): + rotate_y(PI / 4.0 * delta) diff --git a/src/Utilities/LevelState.gd b/src/Utilities/LevelState.gd index a9a38bb..848504c 100644 --- a/src/Utilities/LevelState.gd +++ b/src/Utilities/LevelState.gd @@ -58,7 +58,7 @@ func _on_level_completed(): reset() func update_global_state() -> void: - var progress_dict : Dictionary = GlobalState.progress_dict + var progress_dict : Dictionary = GlobalState.get_progress() var levelProgress : Dictionary = {} levelProgress["currency"] = currency @@ -70,10 +70,10 @@ func update_global_state() -> void: if !progress_dict.has(levelName): progress_dict[levelName] = levelProgress else: - progress_dict[levelName]["currency"] = progress_dict[levelName]["currency"] + currency - progress_dict[levelName]["kills"] = progress_dict[levelName]["kills"] + kills - progress_dict[levelName]["deaths"] = progress_dict[levelName]["deaths"] + deaths - progress_dict[levelName]["frees"] = progress_dict[levelName]["frees"] + frees + progress_dict[levelName]["currency"] = GlobalState.get_property_value(levelName,"currency") + currency + progress_dict[levelName]["kills"] = GlobalState.get_property_value(levelName,"kills") + kills + progress_dict[levelName]["deaths"] = GlobalState.get_property_value(levelName,"deaths") + deaths + progress_dict[levelName]["frees"] = GlobalState.get_property_value(levelName,"frees") + frees GlobalState.set_wallet(GlobalState.wallet + currency)