diff --git a/src/Actors/Blobby/Blobby.gd b/src/Actors/Blobby/Blobby.gd index ba9fced..086ec16 100644 --- a/src/Actors/Blobby/Blobby.gd +++ b/src/Actors/Blobby/Blobby.gd @@ -420,6 +420,7 @@ func die() -> void: levelState.deaths += 1 $BlobbySprite/AnimationTree.active = false $BlobbySprite/BlobbymationPlayer.play("dying3") + $BlobbySprite/BlobbymationPlayer.play("expandingDisolve") # TODO Checkpoint system func respawn() -> void: diff --git a/src/Actors/Blobby/Blobby.tscn b/src/Actors/Blobby/Blobby.tscn index daa8250..9577d26 100644 --- a/src/Actors/Blobby/Blobby.tscn +++ b/src/Actors/Blobby/Blobby.tscn @@ -1,7 +1,6 @@ -[gd_scene load_steps=117 format=2] +[gd_scene load_steps=119 format=2] [ext_resource path="res://assets/blobby/blobby-effects-spritesheet.png" type="Texture" id=1] -[ext_resource path="res://src/Environment/LightingShaderMaterial.tres" type="Material" id=2] [ext_resource path="res://src/Actors/Blobby/BlobbyStateMachine.gd" type="Script" id=3] [ext_resource path="res://src/Actors/Blobby/Blobby.gd" type="Script" id=4] [ext_resource path="res://assets/meta/new_dynamicfont.tres" type="DynamicFont" id=5] @@ -10,6 +9,39 @@ [sub_resource type="RectangleShape2D" id=2] extents = Vector2( 14.9127, 5.98593 ) +[sub_resource type="Shader" id=190] +code = "shader_type canvas_item; + +float random(vec2 uv) { + return fract(sin(dot(uv, vec2(12.9898, 78.233))) * 438.5453); +} + +uniform float sensitivity : hint_range(0.0, 1.0) = 0.; +uniform float scale = 1.; + +void fragment() { + // Get size of texture in pixels + float size_x = float(textureSize(TEXTURE, 0).x); + float size_y = float(textureSize(TEXTURE, 0).y); + // + vec4 pixelColor = texture(TEXTURE, UV); + // Create a new \"UV\" which remaps every UV value to a snapped pixel value + vec2 UVr = vec2(floor(UV.x*size_x)/size_x, floor(UV.y*size_y)/size_y); + // Determine whether pixel should be visible or not + float visible = step(sensitivity, random(UVr)); + // Draw the pixel, or not depending on if it is visible or not + COLOR = vec4(pixelColor.r, pixelColor.g, pixelColor.b, min(visible, pixelColor.a)); +} + +void vertex () { + VERTEX = VERTEX * scale; +}" + +[sub_resource type="ShaderMaterial" id=191] +shader = SubResource( 190 ) +shader_param/sensitivity = 0.0 +shader_param/scale = 1.0 + [sub_resource type="StreamTexture" id=62] load_path = "res://.import/blobby-spritesheet.png-205c8efc79bec685345a637ed2dcfc9b.stex" @@ -524,6 +556,30 @@ tracks/18/keys = { "update": 0, "values": [ Vector2( 4, 0 ) ] } +tracks/19/type = "value" +tracks/19/path = NodePath(".:material:shader_param/sensitivity") +tracks/19/interp = 1 +tracks/19/loop_wrap = true +tracks/19/imported = false +tracks/19/enabled = true +tracks/19/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ 0.0 ] +} +tracks/20/type = "value" +tracks/20/path = NodePath(".:material:shader_param/scale") +tracks/20/interp = 1 +tracks/20/loop_wrap = true +tracks/20/imported = false +tracks/20/enabled = true +tracks/20/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ 1.0 ] +} [sub_resource type="Animation" id=67] length = 0.1 @@ -1162,6 +1218,46 @@ tracks/1/keys = { "values": [ Vector2( 0, 0 ) ] } +[sub_resource type="Animation" id=192] +resource_name = "expandingDisolve" +length = 2.0 +tracks/0/type = "value" +tracks/0/path = NodePath(".:material:shader_param/sensitivity") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 1.6 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ 0.0, 1.0 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath(".:material:shader_param/scale") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 2 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 0, +"values": [ 1.0, 2.0 ] +} +tracks/2/type = "value" +tracks/2/path = NodePath(".:frame") +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": 1, +"values": [ 32 ] +} + [sub_resource type="Animation" id=6] length = 0.1 loop = true @@ -4477,7 +4573,6 @@ tracks/2/keys = { } [node name="Blobby" type="KinematicBody2D" groups=["player"]] -material = ExtResource( 2 ) collision_mask = 248 collision/safe_margin = 0.001 script = ExtResource( 4 ) @@ -4517,6 +4612,7 @@ transparent_bg = true visible = false [node name="BlobbySprite" type="Sprite" parent="."] +material = SubResource( 191 ) position = Vector2( 0, -16 ) scale = Vector2( -1, 1 ) texture = SubResource( 62 ) @@ -4556,6 +4652,7 @@ anims/duckingLeft = SubResource( 107 ) anims/dying = SubResource( 184 ) anims/dying2 = SubResource( 187 ) anims/dying3 = SubResource( 188 ) +anims/expandingDisolve = SubResource( 192 ) anims/falling = SubResource( 6 ) anims/fallingLeft = SubResource( 106 ) anims/idleTurn = SubResource( 70 ) diff --git a/src/Actors/Blobby/BlobbyStateMachine.gd b/src/Actors/Blobby/BlobbyStateMachine.gd index ec470a3..5530238 100644 --- a/src/Actors/Blobby/BlobbyStateMachine.gd +++ b/src/Actors/Blobby/BlobbyStateMachine.gd @@ -20,6 +20,7 @@ var state_time := 0.0 # Adds the intial states func _ready(): signalManager.connect("getback_timer_up", parent, "die") + anim_player.play("RESET") add_state("idle") add_state("duck") add_state("run") diff --git a/src/Actors/BlobbyCam.gd b/src/Actors/BlobbyCam.gd index 6512646..e019c68 100644 --- a/src/Actors/BlobbyCam.gd +++ b/src/Actors/BlobbyCam.gd @@ -35,6 +35,7 @@ var prev_pos: Vector2 # Gets the camera limits from the tilemap of the level # Requires "TileMap" to be a sibling of blobby func _ready(): + _set_boundaries() print(screen_rect) self.position = blobby.global_position @@ -177,7 +178,7 @@ func reset_limits() -> void: limit_top = original_limit_top func _death_cam(): - $CameraAnimationPlayer.play("deathCam") + $CameraAnimationPlayer.play("deathCamJustZoom") func _update_lighting_shader(): # Props to gameendaevour diff --git a/src/Actors/BlobbyCam.tscn b/src/Actors/BlobbyCam.tscn index 9a1d5e4..0c50eba 100644 --- a/src/Actors/BlobbyCam.tscn +++ b/src/Actors/BlobbyCam.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=50 format=2] +[gd_scene load_steps=52 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,260 @@ tracks/9/keys = { "values": [ false ] } +[sub_resource type="Animation" id=15] +resource_name = "deathCamJustZoom" +length = 2.3 +step = 0.01 +tracks/0/type = "value" +tracks/0/path = NodePath(".:zoom") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 1.16 ), +"transitions": PoolRealArray( 1, 3.24901 ), +"update": 0, +"values": [ Vector2( 0.75, 0.75 ), Vector2( 0.2, 0.2 ) ] +} +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 = false +tracks/1/keys = { +"times": PoolRealArray( 1 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ -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 = false +tracks/2/keys = { +"times": PoolRealArray( 1 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ -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 = false +tracks/3/keys = { +"times": PoolRealArray( 1 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 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 = false +tracks/4/keys = { +"times": PoolRealArray( 1 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 10000000 ] +} +tracks/5/type = "value" +tracks/5/path = NodePath(".:rotation_degrees") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = false +tracks/5/keys = { +"times": PoolRealArray( 1, 1.61 ), +"transitions": PoolRealArray( 1, 0.120742 ), +"update": 0, +"values": [ 0.0, 360.0 ] +} +tracks/6/type = "method" +tracks/6/path = NodePath("../Blobby") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 1.16 ), +"transitions": PoolRealArray( 1 ), +"values": [ { +"args": [ ], +"method": "respawn" +} ] +} +tracks/7/type = "value" +tracks/7/path = NodePath(".:offset") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, -6 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath(".:drag_margin_h_enabled") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ false ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:drag_margin_v_enabled") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ false ] +} + +[sub_resource type="Animation" id=14] +resource_name = "deathCamLateRotation" +length = 2.3 +step = 0.01 +tracks/0/type = "value" +tracks/0/path = NodePath(".:zoom") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 1.6 ), +"transitions": PoolRealArray( 1, 3.24901 ), +"update": 0, +"values": [ Vector2( 0.75, 0.75 ), Vector2( 0.001, 0.001 ) ] +} +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( 1 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ -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( 1 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ -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( 1 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 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( 1 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 10000000 ] +} +tracks/5/type = "value" +tracks/5/path = NodePath(".:rotation_degrees") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 1, 1.61 ), +"transitions": PoolRealArray( 1, 0.120742 ), +"update": 0, +"values": [ 0.0, 360.0 ] +} +tracks/6/type = "method" +tracks/6/path = NodePath("../Blobby") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 2.3 ), +"transitions": PoolRealArray( 1 ), +"values": [ { +"args": [ ], +"method": "respawn" +} ] +} +tracks/7/type = "value" +tracks/7/path = NodePath(".:offset") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, -6 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath(".:drag_margin_h_enabled") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ false ] +} +tracks/9/type = "value" +tracks/9/path = NodePath(".:drag_margin_v_enabled") +tracks/9/interp = 1 +tracks/9/loop_wrap = true +tracks/9/imported = false +tracks/9/enabled = true +tracks/9/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ false ] +} + [sub_resource type="Animation" id=11] resource_name = "shiftingCenter" length = 0.6 @@ -577,14 +831,18 @@ zoom = Vector2( 0.75, 0.75 ) limit_smoothed = true drag_margin_h_enabled = true drag_margin_v_enabled = true +drag_margin_left = 0.05 drag_margin_top = 0.0 -drag_margin_bottom = 0.0 +drag_margin_right = 0.05 +drag_margin_bottom = 0.25 editor_draw_drag_margin = true script = ExtResource( 1 ) [node name="CameraAnimationPlayer" type="AnimationPlayer" parent="."] anims/RESET = SubResource( 5 ) anims/deathCam = SubResource( 6 ) +anims/deathCamJustZoom = SubResource( 15 ) +anims/deathCamLateRotation = SubResource( 14 ) anims/shiftingCenter = SubResource( 11 ) anims/shiftingLeft = SubResource( 12 ) anims/shiftingRight = SubResource( 13 ) @@ -606,11 +864,11 @@ z_index = -1 texture = ExtResource( 4 ) [node name="ParallaxLayer2" type="ParallaxLayer" parent="ParallaxBackground"] -visible = false z_index = -1 motion_scale = Vector2( 0, 0 ) [node name="Sprite" type="Sprite" parent="ParallaxBackground/ParallaxLayer2"] +visible = false z_index = -1 texture = ExtResource( 3 ) @@ -619,6 +877,7 @@ z_index = -1 motion_scale = Vector2( 0.001, 0.001 ) [node name="Sprite" type="Sprite" parent="ParallaxBackground/ParallaxLayer3"] +visible = false z_index = -1 texture = ExtResource( 2 ) @@ -679,10 +938,10 @@ texture = ExtResource( 8 ) [node name="AnimatedSprite" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"] visible = false frames = SubResource( 7 ) -frame = 10 +frame = 5 playing = true [node name="AnimatedSprite2" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"] frames = SubResource( 8 ) -frame = 1 +frame = 10 playing = true diff --git a/src/Actors/Enemies/Beings/WhatAreFrog.gd b/src/Actors/Enemies/Beings/WhatAreFrog.gd index 60b3911..704f44d 100644 --- a/src/Actors/Enemies/Beings/WhatAreFrog.gd +++ b/src/Actors/Enemies/Beings/WhatAreFrog.gd @@ -72,7 +72,6 @@ func _on_StompDetector_body_entered(body: Node) -> void: if body.is_in_group("player"): remove_from_group("harmful") $StompDetector.remove_from_group("weakpoint") - $FrogSprite/AnimationTree.active = false is_hurt = true diff --git a/src/Actors/Enemies/Beings/WhatAreFrog.tscn b/src/Actors/Enemies/Beings/WhatAreFrog.tscn index a845f1d..5f7acce 100644 --- a/src/Actors/Enemies/Beings/WhatAreFrog.tscn +++ b/src/Actors/Enemies/Beings/WhatAreFrog.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=37 format=2] +[gd_scene load_steps=46 format=2] [ext_resource path="res://assets/enemy/froshler.png" type="Texture" id=1] [ext_resource path="res://src/Actors/Enemies/Beings/WhatAreFrog.gd" type="Script" id=2] @@ -252,6 +252,66 @@ tracks/1/keys = { "values": [ Vector2( -1, 1 ) ] } +[sub_resource type="Animation" id=50] +resource_name = "sleeping" +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": [ 3 ] +} +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": 0, +"values": [ Vector2( 1, 1 ) ] +} + +[sub_resource type="Animation" id=51] +resource_name = "sleepingLeft" +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": [ 3 ] +} +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": 0, +"values": [ Vector2( -1, 1 ) ] +} + [sub_resource type="AnimationNodeAnimation" id=42] animation = "idleHappyLeft" @@ -308,6 +368,18 @@ blend_point_0/pos = -1.0 blend_point_1/node = SubResource( 49 ) blend_point_1/pos = 1.0 +[sub_resource type="AnimationNodeAnimation" id=52] +animation = "sleepingLeft" + +[sub_resource type="AnimationNodeAnimation" id=53] +animation = "sleeping" + +[sub_resource type="AnimationNodeBlendSpace1D" id=54] +blend_point_0/node = SubResource( 52 ) +blend_point_0/pos = -1.0 +blend_point_1/node = SubResource( 53 ) +blend_point_1/pos = 1.0 + [sub_resource type="AnimationNodeStateMachineTransition" id=27] [sub_resource type="AnimationNodeStateMachineTransition" id=28] @@ -324,6 +396,14 @@ auto_advance = true [sub_resource type="AnimationNodeStateMachineTransition" id=32] +[sub_resource type="AnimationNodeStateMachineTransition" id=55] + +[sub_resource type="AnimationNodeStateMachineTransition" id=56] + +[sub_resource type="AnimationNodeStateMachineTransition" id=57] + +[sub_resource type="AnimationNodeStateMachineTransition" id=58] + [sub_resource type="AnimationNodeStateMachine" id=10] states/idleHappy/node = SubResource( 9 ) states/idleHappy/position = Vector2( -54, 98 ) @@ -333,7 +413,9 @@ states/liftOff/node = SubResource( 23 ) states/liftOff/position = Vector2( 184, -12 ) states/midJumping/node = SubResource( 26 ) states/midJumping/position = Vector2( 184, -141 ) -transitions = [ "idleHappy", "liftOff", SubResource( 27 ), "liftOff", "midJumping", SubResource( 28 ), "idleMean", "liftOff", SubResource( 29 ), "midJumping", "liftOff", SubResource( 30 ), "liftOff", "idleMean", SubResource( 31 ), "liftOff", "idleHappy", SubResource( 32 ) ] +states/sleeping/node = SubResource( 54 ) +states/sleeping/position = Vector2( 176.896, 205.619 ) +transitions = [ "idleHappy", "liftOff", SubResource( 27 ), "liftOff", "midJumping", SubResource( 28 ), "idleMean", "liftOff", SubResource( 29 ), "midJumping", "liftOff", SubResource( 30 ), "liftOff", "idleMean", SubResource( 31 ), "liftOff", "idleHappy", SubResource( 32 ), "idleHappy", "sleeping", SubResource( 55 ), "idleMean", "sleeping", SubResource( 56 ), "sleeping", "idleHappy", SubResource( 57 ), "sleeping", "idleMean", SubResource( 58 ) ] start_node = "idleHappy" graph_offset = Vector2( -340, -193 ) @@ -389,6 +471,8 @@ anims/liftOff = SubResource( 14 ) anims/liftOffLeft = SubResource( 15 ) anims/midJumping = SubResource( 16 ) anims/midJumpingLeft = SubResource( 17 ) +anims/sleeping = SubResource( 50 ) +anims/sleepingLeft = SubResource( 51 ) [node name="AnimationTree" type="AnimationTree" parent="FrogSprite"] tree_root = SubResource( 10 ) @@ -400,6 +484,7 @@ parameters/idleHappy/blend_position = -1.00141 parameters/idleMean/blend_position = 1.0 parameters/liftOff/blend_position = 1.0 parameters/midJumping/blend_position = 1.0 +parameters/sleeping/blend_position = 0.998762 [node name="VisibilityEnabler2D" type="VisibilityEnabler2D" parent="."] position = Vector2( 954, 0 ) diff --git a/src/Actors/Enemies/Beings/WhatAreFrogStateMachine.gd b/src/Actors/Enemies/Beings/WhatAreFrogStateMachine.gd index e7d3abb..234921f 100644 --- a/src/Actors/Enemies/Beings/WhatAreFrogStateMachine.gd +++ b/src/Actors/Enemies/Beings/WhatAreFrogStateMachine.gd @@ -51,7 +51,9 @@ func _exit_state(_previous_state, _new_state): func _animation_logic(): _set_blendspaces_direction() if parent.is_on_floor(): - if (parent.is_bound): + if(parent.is_hurt): + anim_state_playback.travel("sleeping") + elif (parent.is_bound): anim_state_playback.travel("idleMean") else: anim_state_playback.travel("idleHappy") diff --git a/src/Levels/01 Level.tscn b/src/Levels/01 Level.tscn index 0c58a9b..362082e 100644 --- a/src/Levels/01 Level.tscn +++ b/src/Levels/01 Level.tscn @@ -30,10 +30,6 @@ unique_name_in_owner = true [node name="UserInterface" parent="." instance=ExtResource( 7 )] -[node name="HUDOverlay" parent="UserInterface/HUD" index="0"] -margin_right = 640.0 -margin_bottom = 360.0 - [node name="GetBackTimer" parent="UserInterface/HUD/HUDOverlay" index="3"] anchor_left = 0.0 anchor_right = 0.0 @@ -49,10 +45,10 @@ wait_time = 20.0 drag_margin_bottom = 0.3 [node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"] -frame = 13 +frame = 5 [node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"] -frame = 10 +frame = 2 [node name="Blobby" parent="." instance=ExtResource( 2 )] unique_name_in_owner = true diff --git a/src/Levels/02 Level.tscn b/src/Levels/02 Level.tscn index 031c87a..8388a6e 100644 --- a/src/Levels/02 Level.tscn +++ b/src/Levels/02 Level.tscn @@ -88,6 +88,12 @@ wait_time = 20.0 [node name="BlobbyCam" parent="." instance=ExtResource( 12 )] +[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"] +frame = 8 + +[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"] +frame = 13 + [node name="Blobby" parent="." instance=ExtResource( 2 )] unique_name_in_owner = true position = Vector2( 36, -24 ) diff --git a/src/Levels/03 Level.tscn b/src/Levels/03 Level.tscn index a3277e9..14b5d92 100644 --- a/src/Levels/03 Level.tscn +++ b/src/Levels/03 Level.tscn @@ -141,7 +141,7 @@ shape = SubResource( 3 ) position = Vector2( 0, 1.5 ) z_index = -1 frames = SubResource( 5 ) -frame = 10 +frame = 24 playing = true [node name="Terminal" parent="." instance=ExtResource( 47 )] diff --git a/src/NeutralObjects/Coin.tscn b/src/NeutralObjects/Coin.tscn index fbdb167..472784e 100644 --- a/src/NeutralObjects/Coin.tscn +++ b/src/NeutralObjects/Coin.tscn @@ -388,7 +388,7 @@ animations = [ { [node name="Coin" type="Area2D"] position = Vector2( 0, -3.86918 ) -scale = Vector2( 0.24, 0.24 ) +scale = Vector2( 0.18, 0.18 ) collision_layer = 4 monitorable = false script = ExtResource( 2 ) @@ -407,7 +407,7 @@ position = Vector2( 0, -2.52127 ) scale = Vector2( 0.149428, 0.151196 ) frames = SubResource( 4 ) animation = "rotate" -frame = 301 +frame = 42 playing = true [connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/src/UserInterface/Screens/HUD.tscn b/src/UserInterface/Screens/HUD.tscn index c4fc1d7..161379f 100644 --- a/src/UserInterface/Screens/HUD.tscn +++ b/src/UserInterface/Screens/HUD.tscn @@ -45,8 +45,8 @@ script = ExtResource( 5 ) [node name="HUDOverlay" type="ColorRect" parent="."] unique_name_in_owner = true -margin_right = 480.0 -margin_bottom = 270.0 +margin_right = 640.0 +margin_bottom = 360.0 color = Color( 0, 0, 0, 0 ) [node name="Currency" type="Label" parent="HUDOverlay"]