diff --git a/project.godot b/project.godot index b4702b6..eb160cd 100644 --- a/project.godot +++ b/project.godot @@ -69,6 +69,7 @@ window=false grav=false layer=false viewport=true +physics=false [importer_defaults] diff --git a/src/Actors/Blobby/Blobby.tscn b/src/Actors/Blobby/Blobby.tscn index c0909e3..d724a78 100644 --- a/src/Actors/Blobby/Blobby.tscn +++ b/src/Actors/Blobby/Blobby.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=114 format=2] +[gd_scene load_steps=115 format=2] [ext_resource path="res://assets/blobby/blobby-effects-spritesheet.png" type="Texture" id=1] [ext_resource path="res://src/Actors/Blobby/BlobbyStateMachine.gd" type="Script" id=3] @@ -254,6 +254,8 @@ priority = 0 [sub_resource type="AnimationNodeStateMachineTransition" id=137] +[sub_resource type="AnimationNodeStateMachineTransition" id=189] + [sub_resource type="AnimationNodeStateMachine" id=47] states/duckTurn/node = SubResource( 126 ) states/duckTurn/position = Vector2( 1795.54, 241 ) @@ -266,7 +268,7 @@ states/idleTurn/position = Vector2( 1375.54, -193.991 ) states/idling/node = SubResource( 116 ) states/idling/position = Vector2( 1375.54, -54 ) states/jumpToFall/node = SubResource( 119 ) -states/jumpToFall/position = Vector2( 1795.54, 343.009 ) +states/jumpToFall/position = Vector2( 1795.54, 306.009 ) states/jumping/node = SubResource( 125 ) states/jumping/position = Vector2( 1375.54, 117.009 ) states/runToJump/node = SubResource( 146 ) @@ -281,9 +283,9 @@ states/wallslideToJump/node = SubResource( 136 ) states/wallslideToJump/position = Vector2( 1375.54, 343.009 ) states/wallsliding/node = SubResource( 96 ) states/wallsliding/position = Vector2( 1795.54, 493.009 ) -transitions = [ "falling", "wallsliding", SubResource( 138 ), "wallsliding", "idling", SubResource( 139 ), "wallsliding", "wallslideToJump", SubResource( 140 ), "wallslideToJump", "jumping", SubResource( 141 ), "idling", "jumping", SubResource( 147 ), "runToJump", "jumping", SubResource( 148 ), "ducking", "jumping", SubResource( 149 ), "jumping", "jumpToFall", SubResource( 150 ), "jumpToFall", "falling", SubResource( 151 ), "ducking", "duckTurn", SubResource( 152 ), "duckTurn", "ducking", SubResource( 153 ), "falling", "ducking", SubResource( 154 ), "ducking", "falling", SubResource( 155 ), "ducking", "walking", SubResource( 156 ), "walking", "ducking", SubResource( 157 ), "idling", "ducking", SubResource( 158 ), "ducking", "idling", SubResource( 159 ), "ducking", "running", SubResource( 160 ), "running", "ducking", SubResource( 161 ), "running", "falling", SubResource( 162 ), "falling", "running", SubResource( 163 ), "walking", "falling", SubResource( 164 ), "falling", "walking", SubResource( 165 ), "falling", "idling", SubResource( 166 ), "idling", "walking", SubResource( 167 ), "walking", "idling", SubResource( 168 ), "walking", "turnToRun", SubResource( 169 ), "turnToRun", "walking", SubResource( 170 ), "running", "turnToRun", SubResource( 171 ), "turnToRun", "running", SubResource( 172 ), "idling", "idleTurn", SubResource( 173 ), "walking", "idleTurn", SubResource( 174 ), "idleTurn", "walking", SubResource( 175 ), "idling", "turnToRun", SubResource( 176 ), "turnToRun", "idling", SubResource( 177 ), "running", "runToJump", SubResource( 178 ), "wallsliding", "falling", SubResource( 137 ) ] +transitions = [ "falling", "wallsliding", SubResource( 138 ), "wallsliding", "idling", SubResource( 139 ), "wallsliding", "wallslideToJump", SubResource( 140 ), "wallslideToJump", "jumping", SubResource( 141 ), "idling", "jumping", SubResource( 147 ), "runToJump", "jumping", SubResource( 148 ), "ducking", "jumping", SubResource( 149 ), "jumping", "jumpToFall", SubResource( 150 ), "jumpToFall", "falling", SubResource( 151 ), "ducking", "duckTurn", SubResource( 152 ), "duckTurn", "ducking", SubResource( 153 ), "falling", "ducking", SubResource( 154 ), "ducking", "falling", SubResource( 155 ), "ducking", "walking", SubResource( 156 ), "walking", "ducking", SubResource( 157 ), "idling", "ducking", SubResource( 158 ), "ducking", "idling", SubResource( 159 ), "ducking", "running", SubResource( 160 ), "running", "ducking", SubResource( 161 ), "running", "falling", SubResource( 162 ), "falling", "running", SubResource( 163 ), "walking", "falling", SubResource( 164 ), "falling", "walking", SubResource( 165 ), "falling", "idling", SubResource( 166 ), "idling", "walking", SubResource( 167 ), "walking", "idling", SubResource( 168 ), "walking", "turnToRun", SubResource( 169 ), "turnToRun", "walking", SubResource( 170 ), "running", "turnToRun", SubResource( 171 ), "turnToRun", "running", SubResource( 172 ), "idling", "idleTurn", SubResource( 173 ), "walking", "idleTurn", SubResource( 174 ), "idleTurn", "walking", SubResource( 175 ), "idling", "turnToRun", SubResource( 176 ), "turnToRun", "idling", SubResource( 177 ), "running", "runToJump", SubResource( 178 ), "wallsliding", "falling", SubResource( 137 ), "jumping", "wallsliding", SubResource( 189 ) ] start_node = "idling" -graph_offset = Vector2( 1098.54, -360.991 ) +graph_offset = Vector2( 995.54, 69.009 ) [sub_resource type="AnimationNodeStateMachinePlayback" id=48] diff --git a/src/Actors/BlobbyCam.gd b/src/Actors/BlobbyCam.gd index 6c0b4c3..29f4895 100644 --- a/src/Actors/BlobbyCam.gd +++ b/src/Actors/BlobbyCam.gd @@ -2,15 +2,29 @@ extends Camera2D var horizontal_facing = 0 var vertical_facing = 0 -var camera_horizontal_shift = 90 var camera_vertical_shift = 0 -var time: float = 0 +var move_time: float = 0 +var slow_time: float = 0 +var original_limit_left: int +var original_limit_right: int +var original_limit_bottom: int +var original_limit_top: int +var camera_is_panning: bool = false +var target_offset: Vector2 = Vector2(0,0) -onready var tween = $ShiftTween +export var camera_horizontal_shift = 80 +export var offset_reset_seconds := 1 +export var offset_adapt_seconds := 0.8 + +onready var tween = $OffsetTween +onready var shiftLeft = $CameraAnimationPlayer.get_animation("shiftingLeft") +onready var shiftRight = $CameraAnimationPlayer.get_animation("shiftingRight") +onready var shiftCenter = $CameraAnimationPlayer.get_animation("shiftingCenter") +onready var anim_player = $CameraAnimationPlayer onready var original_x_zoom = zoom.x onready var original_y_zoom = zoom.y onready var blobby = get_node("%Blobby") -onready var prev_camera_pos +onready var screen_rect = Vector2(ProjectSettings.get_setting("display/window/size/width") * zoom.x, ProjectSettings.get_setting("display/window/size/height") * zoom.y ) var image = Image.new() var texture = ImageTexture.new() @@ -19,17 +33,25 @@ var texture = ImageTexture.new() # Requires "TileMap" to be a sibling of blobby func _ready(): _set_boundaries() + print(screen_rect) self.position = blobby.global_position - prev_camera_pos = get_camera_screen_center() - offset.x = -camera_horizontal_shift if zoom.x == original_x_zoom else 0 image.create(128, 2, false, Image.FORMAT_RGBAH) _update_lighting_shader() + # TODO Trigger when needed get_node("LightAnimationPlayer").play("Pulsing") func _physics_process(delta: float) -> void: if(!GlobalState.is_dead): - time += delta - _adapt_to_movement() + #print(get_camera_screen_center().x - blobby.global_position.x) + var player_vel = blobby.velocity + if(abs(player_vel.x) >= blobby.max_velocity["walk"]): + move_time += delta + slow_time = 0 + else: + slow_time += delta + move_time = 0 + + _adapt_to_movement(player_vel) #TODO Do this via a event or let it be to track blobbies movement better else: self.position = blobby.global_position @@ -44,11 +66,14 @@ func _set_boundaries(): # New pngs -> completely new tiles and rebuild map var rect = tilemap.get_used_rect() var cell_size = tilemap.cell_size - limit_right = rect.end.x * cell_size.x - camera_horizontal_shift - limit_left = rect.position.x * cell_size.x + camera_horizontal_shift - # TODO: When vertical scrolling is fixed - limit_top = rect.position.y * cell_size.y #+ camera_vertical_shift - limit_bottom = rect.end.y * cell_size.y #- camera_vertical_shift + limit_right = rect.end.x * cell_size.x + limit_left = rect.position.x * cell_size.x + limit_top = rect.position.y * cell_size.y + limit_bottom = rect.end.y * cell_size.y + original_limit_left = limit_left + original_limit_right = limit_right + original_limit_top = limit_top + original_limit_bottom = limit_bottom var screen_size = get_viewport_rect() var h_pixels = limit_right - limit_left var v_pixels = limit_bottom - limit_top @@ -61,41 +86,52 @@ func _set_boundaries(): zoom.x = zoom.y # TODO Smoothing the camera limits in godot ruins this still? -func _adapt_to_movement(): - # TODO Adapt this to movement speed - var target_offset: Vector2 = Vector2(0,0) - var tween_v = false - var tween_h = false - # TODO Make smarter - if(time > 0.1): - time = 0.0 - var cam_offset = get_camera_screen_center() - prev_camera_pos - var new_h_facing = sign(cam_offset.x) - if new_h_facing != 0 && horizontal_facing != new_h_facing: - horizontal_facing = new_h_facing - target_offset.x = camera_horizontal_shift * horizontal_facing - tween_h = true - - # var new_v_facing = sign(cam_offset.y) - # if new_v_facing != 0 && vertical_facing != new_v_facing: - # vertical_facing = new_v_facing - # target_offset.x = offset.x if !new_h_facing else target_offset.x - # target_offset.y = camera_vertical_shift * vertical_facing - # tween_v = true - - prev_camera_pos = get_camera_screen_center() - if ((tween_h || tween_v )): - #TODO Motion may be too complex - tween.interpolate_property( - self, - "offset", - offset, - target_offset, - 1.2, - Tween.TRANS_SINE, - Tween.EASE_OUT - ) - tween.start() +func _adapt_to_movement(velocity: Vector2) -> void: + var offset_track + if(move_time >= offset_adapt_seconds && !anim_player.is_playing()): + target_offset.x = camera_horizontal_shift * sign(velocity.x) + if(sign(velocity.x) < 0): + offset_track = shiftLeft.find_track(".:offset") + shiftLeft.track_set_key_value(offset_track, 0, offset) + shiftLeft.track_set_key_value(offset_track, 1, target_offset) + limit_left = original_limit_left + camera_horizontal_shift + anim_player.play("shiftingLeft") + else: + offset_track = shiftRight.find_track(".:offset") + shiftRight.track_set_key_value(offset_track, 0, offset) + shiftRight.track_set_key_value(offset_track, 1, target_offset) + limit_right = original_limit_right - camera_horizontal_shift + anim_player.play("shiftingRight") + if(slow_time >= offset_reset_seconds): + var center = get_camera_screen_center() + var left_edge_pos = center.x - screen_rect.x/2 + camera_horizontal_shift + var right_edge_pos = center.x + screen_rect.x/2 - camera_horizontal_shift + print("left_edge") + print(left_edge_pos) + print("limit_left") + print(limit_left) + print("right_edge") + print(right_edge_pos) + print("limit_right") + print(limit_right) + if(left_edge_pos > limit_left && limit_right > right_edge_pos && !anim_player.is_playing()): + target_offset.x = 0 + offset_track = shiftCenter.find_track(".:offset") + shiftCenter.track_set_key_value(offset_track, 0, offset) + shiftCenter.track_set_key_value(offset_track, 1, target_offset) + var limit_left_track = shiftCenter.find_track(".:limit_left") + var limit_right_track = shiftCenter.find_track(".:limit_right") + var limit_top_track = shiftCenter.find_track(".:limit_top") + var limit_bottom_track = shiftCenter.find_track(".:limit_bottom") + shiftCenter.track_set_key_value(limit_left_track, 0, limit_left) + shiftCenter.track_set_key_value(limit_right_track, 0, limit_right) + shiftCenter.track_set_key_value(limit_top_track, 0, limit_top) + shiftCenter.track_set_key_value(limit_bottom_track, 0, limit_bottom) + shiftCenter.track_set_key_value(limit_left_track, 1, original_limit_left) + shiftCenter.track_set_key_value(limit_right_track, 1,original_limit_right) + shiftCenter.track_set_key_value(limit_top_track, 1, original_limit_top) + shiftCenter.track_set_key_value(limit_bottom_track, 1, original_limit_bottom) + anim_player.play("shiftingCenter") position = blobby.position func _death_cam(): diff --git a/src/Actors/BlobbyCam.tscn b/src/Actors/BlobbyCam.tscn index 1229a6c..16aceda 100644 --- a/src/Actors/BlobbyCam.tscn +++ b/src/Actors/BlobbyCam.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=47 format=2] +[gd_scene load_steps=50 format=2] [ext_resource path="res://src/Actors/BlobbyCam.gd" type="Script" id=1] [ext_resource path="res://assets/environment/background/Asteroids-Near.png" type="Texture" id=2] @@ -303,6 +303,102 @@ tracks/9/keys = { "values": [ false ] } +[sub_resource type="Animation" id=11] +resource_name = "shiftingCenter" +length = 0.6 +tracks/0/type = "value" +tracks/0/path = NodePath(".:offset") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.6 ), +"transitions": PoolRealArray( 1, 1.6 ), +"update": 0, +"values": [ Vector2( 0, 0 ), Vector2( 0, 0 ) ] +} +tracks/1/type = "value" +tracks/1/path = NodePath(".:limit_left") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 0.6 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ -10000000, -10000000 ] +} +tracks/2/type = "value" +tracks/2/path = NodePath(".:limit_top") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0, 0.6 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ -10000000, -10000000 ] +} +tracks/3/type = "value" +tracks/3/path = NodePath(".:limit_right") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"times": PoolRealArray( 0, 0.6 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ 10000000, 10000000 ] +} +tracks/4/type = "value" +tracks/4/path = NodePath(".:limit_bottom") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0, 0.6 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ 10000000, 10000000 ] +} + +[sub_resource type="Animation" id=12] +resource_name = "shiftingLeft" +length = 0.6 +tracks/0/type = "value" +tracks/0/path = NodePath(".:offset") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.6 ), +"transitions": PoolRealArray( 1, 1.6 ), +"update": 0, +"values": [ Vector2( 0, 0 ), Vector2( 0, 0 ) ] +} + +[sub_resource type="Animation" id=13] +resource_name = "shiftingRight" +length = 0.6 +tracks/0/type = "value" +tracks/0/path = NodePath(".:offset") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.6 ), +"transitions": PoolRealArray( 1, 1.6 ), +"update": 0, +"values": [ Vector2( 0, 0 ), Vector2( 0, 0 ) ] +} + [sub_resource type="Animation" id=9] resource_name = "Pulsing" length = 3.33 @@ -409,18 +505,20 @@ zoom = Vector2( 0.75, 0.75 ) process_mode = 0 drag_margin_h_enabled = true drag_margin_v_enabled = true -drag_margin_left = 0.1 +drag_margin_left = 0.05 drag_margin_top = 0.0 -drag_margin_right = 0.1 -drag_margin_bottom = 0.0 -editor_draw_screen = false +drag_margin_right = 0.05 +editor_draw_drag_margin = true script = ExtResource( 1 ) -[node name="ShiftTween" type="Tween" parent="."] +[node name="OffsetTween" type="Tween" parent="."] [node name="CameraAnimationPlayer" type="AnimationPlayer" parent="."] anims/RESET = SubResource( 5 ) anims/deathCam = SubResource( 6 ) +anims/shiftingCenter = SubResource( 11 ) +anims/shiftingLeft = SubResource( 12 ) +anims/shiftingRight = SubResource( 13 ) [node name="LightAnimationPlayer" type="AnimationPlayer" parent="."] root_node = NodePath("../ParallaxBackground/ParallaxLayer4") @@ -511,10 +609,10 @@ texture = ExtResource( 8 ) [node name="AnimatedSprite" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"] visible = false frames = SubResource( 7 ) -frame = 10 +frame = 6 playing = true [node name="AnimatedSprite2" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"] frames = SubResource( 8 ) -frame = 1 +frame = 11 playing = true diff --git a/src/Actors/Enemies/Beings/BoundFrog.gd b/src/Actors/Enemies/Beings/BoundFrog.gd index 4e46929..3682331 100644 --- a/src/Actors/Enemies/Beings/BoundFrog.gd +++ b/src/Actors/Enemies/Beings/BoundFrog.gd @@ -23,7 +23,7 @@ func _on_LevelTemplate_ready() -> void: # Executes on frog death # The old switchero -func _on_WhatAreFrog_child_exiting_tree(node:Node) -> void: +func _on_WhatAreFrog_child_exiting_tree(_node:Node) -> void: if(is_first_signal): var anchor = RopeAnchor.instance() anchor.mode = 0 diff --git a/src/Actors/Enemies/Beings/WhatAreFrog.tscn b/src/Actors/Enemies/Beings/WhatAreFrog.tscn index abb91b4..7d54ef8 100644 --- a/src/Actors/Enemies/Beings/WhatAreFrog.tscn +++ b/src/Actors/Enemies/Beings/WhatAreFrog.tscn @@ -54,7 +54,7 @@ cast_to = Vector2( 0, -13 ) collision_mask = 56 [node name="Orientation" type="RayCast2D" parent="."] -cast_to = Vector2( 1, 0 ) +cast_to = Vector2( -1, 0 ) collision_mask = 0 collide_with_bodies = false diff --git a/src/Contraptions/Rope/Rope.tscn b/src/Contraptions/Rope/Rope.tscn index c387e62..6176a2e 100644 --- a/src/Contraptions/Rope/Rope.tscn +++ b/src/Contraptions/Rope/Rope.tscn @@ -5,4 +5,3 @@ [node name="Rope" type="Node2D"] z_index = -1 script = ExtResource( 1 ) -rope_tightness = 0.5 diff --git a/src/Levels/01 Level.tscn b/src/Levels/01 Level.tscn index 0c04c20..0d61806 100644 --- a/src/Levels/01 Level.tscn +++ b/src/Levels/01 Level.tscn @@ -29,9 +29,6 @@ wait_time = 20.0 [node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"] frame = 1 -[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"] -frame = 11 - [node name="Blobby" parent="." instance=ExtResource( 2 )] unique_name_in_owner = true position = Vector2( -70, -1.90735e-06 ) diff --git a/src/Levels/The Line Level.tscn b/src/Levels/The Line Level.tscn index 41fba88..dac8bee 100644 --- a/src/Levels/The Line Level.tscn +++ b/src/Levels/The Line Level.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=15 format=2] +[gd_scene load_steps=13 format=2] [ext_resource path="res://src/Utilities/GameplaySignalManager.gd" type="Script" id=1] [ext_resource path="res://src/Environment/AlienShipTileSet.tres" type="TileSet" id=2] @@ -11,8 +11,6 @@ [ext_resource path="res://src/UserInterface/UserInterface.tscn" type="PackedScene" id=9] [ext_resource path="res://src/Contraptions/Portal/Portal.tscn" type="PackedScene" id=10] [ext_resource path="res://src/Actors/BlobbyCam.tscn" type="PackedScene" id=11] -[ext_resource path="res://src/Actors/Enemies/Beings/BoundFrog.tscn" type="PackedScene" id=12] -[ext_resource path="res://src/ObstacleObjects/Spikes.tscn" type="PackedScene" id=13] [sub_resource type="AnimationNodeStateMachinePlayback" id=4] @@ -34,10 +32,7 @@ cell_size = Vector2( 24, 24 ) collision_layer = 8 collision_mask = 8 format = 1 -tile_data = PoolIntArray( 131099, -1073741822, 0, 262139, -1610612734, 0, 196635, -1073741822, 0, 327675, -1610612734, 0, 262171, -1073741822, 0, 393211, -1610612734, 0, 327707, -1073741822, 0, 458747, -1610612734, 0, 393243, -1073741822, 0, 524283, -1610612734, 0, 458779, -1073741822, 0, 589819, -1610612734, 0, 524315, -1073741822, 0, 655355, -1610612734, 0, 589851, -1073741822, 0, 720891, -1610612734, 0, 655387, -1073741822, 0, 786427, -1610612734, 0, 720923, -1073741822, 0, 851963, -1610612734, 0, 786459, -1073741822, 0, 917499, -1610612734, 0, 851995, -1073741822, 0, 983036, 2, 0, 983037, 2, 0, 983038, 2, 0, 983039, 2, 0, 917504, 2, 0, 917505, 2, 0, 917506, 2, 0, 917507, 2, 0, 917508, 2, 0, 917509, 2, 0, 917510, 2, 0, 917511, 2, 0, 917512, 2, 0, 917513, 2, 0, 917514, 2, 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 ) - -[node name="Spikes" parent="." instance=ExtResource( 13 )] -position = Vector2( 252, 323 ) +tile_data = PoolIntArray( 65531, -1610612734, 0, 51, -1073741822, 0, 131067, -1610612734, 0, 65587, -1073741822, 0, 196603, -1610612734, 0, 131123, -1073741822, 0, 262139, -1610612734, 0, 196659, -1073741822, 0, 327675, -1610612734, 0, 262195, -1073741822, 0, 393211, -1610612734, 0, 327731, -1073741822, 0, 458747, -1610612734, 0, 393267, -1073741822, 0, 524283, -1610612734, 0, 458803, -1073741822, 0, 589819, -1610612734, 0, 524339, -1073741822, 0, 655355, -1610612734, 0, 589875, -1073741822, 0, 720891, -1610612734, 0, 655411, -1073741822, 0, 786427, -1610612734, 0, 720947, -1073741822, 0, 851963, -1610612734, 0, 786483, -1073741822, 0, 917499, -1610612734, 0, 852019, -1073741822, 0, 983036, 2, 0, 983037, 2, 0, 983038, 2, 0, 983039, 2, 0, 917504, 2, 0, 917505, 2, 0, 917506, 2, 0, 917507, 2, 0, 917508, 2, 0, 917509, 2, 0, 917510, 2, 0, 917511, 2, 0, 917512, 2, 0, 917513, 2, 0, 917514, 2, 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, 2, 0, 917538, 2, 0, 917539, 2, 0, 917540, 2, 0, 917541, 2, 0, 917542, 2, 0, 917543, 2, 0, 917544, 2, 0, 917545, 2, 0, 917546, 2, 0, 917547, 2, 0, 917548, 2, 0, 917549, 2, 0, 917550, 2, 0, 917551, 2, 0, 917552, 2, 0, 917553, 2, 0, 917554, 2, 0 ) [node name="BlobbyCam" parent="." instance=ExtResource( 11 )] @@ -49,9 +44,6 @@ scale = Vector2( 0.878906, 0.936025 ) [node name="AnimationTree" parent="Blobby/BlobbySprite" index="0"] parameters/playback = SubResource( 4 ) -[node name="BoundFrog" parent="." instance=ExtResource( 12 )] -position = Vector2( 200, 323 ) - [node name="Collectibles" type="Node2D" parent="."] visible = false @@ -114,7 +106,6 @@ next_scene = ExtResource( 6 ) [node name="GameplaySignalManager" type="Node2D" parent="."] script = ExtResource( 1 ) -[connection signal="ready" from="." to="BoundFrog" method="_on_LevelTemplate_ready"] [connection signal="timeout" from="UserInterface/HUD/HUDOverlay/GetBackTimer/Timer" to="GameplaySignalManager" method="_on_Timer_timeout"] [connection signal="getback_timer_up" from="GameplaySignalManager" to="Blobby" method="_on_GameplaySignalManager_getback_timer_up"] [connection signal="terminal_activated" from="GameplaySignalManager" to="UserInterface/HUD" method="_on_SignalManager_terminal_activated"] @@ -122,8 +113,6 @@ script = ExtResource( 1 ) [editable path="UserInterface"] [editable path="UserInterface/HUD"] [editable path="Blobby"] -[editable path="BoundFrog"] -[editable path="BoundFrog/RopeAnchor"] [editable path="TreeWhyButtons"] [editable path="TreeWhyButtons/WhyButton1"] [editable path="TreeWhyButtons/WhyButton2"]