balance, fix: more in jump accel, froggy behavior fixes
This commit is contained in:
parent
f6bc1e7895
commit
6a5bd5f830
Binary file not shown.
|
Before Width: | Height: | Size: 915 B After Width: | Height: | Size: 915 B |
35
assets/effects/blobby-effects-spritesheet.png.import
Normal file
35
assets/effects/blobby-effects-spritesheet.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/blobby-effects-spritesheet.png-046e6327578f906889b338fa7d954dd5.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/effects/blobby-effects-spritesheet.png"
|
||||||
|
dest_files=[ "res://.import/blobby-effects-spritesheet.png-046e6327578f906889b338fa7d954dd5.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=false
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=false
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=false
|
||||||
|
svg/scale=1.0
|
||||||
BIN
assets/effects/run-dusting1.png
Normal file
BIN
assets/effects/run-dusting1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 206 B |
@ -2,15 +2,15 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="StreamTexture"
|
type="StreamTexture"
|
||||||
path="res://.import/blobby-effects-spritesheet.png-96fbd93f447d801bf91090bfbf2e0c14.stex"
|
path="res://.import/run-dusting1.png-01275136d032d124ce874b8793ba4a98.stex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://assets/blobby/blobby-effects-spritesheet.png"
|
source_file="res://assets/effects/run-dusting1.png"
|
||||||
dest_files=[ "res://.import/blobby-effects-spritesheet.png-96fbd93f447d801bf91090bfbf2e0c14.stex" ]
|
dest_files=[ "res://.import/run-dusting1.png-01275136d032d124ce874b8793ba4a98.stex" ]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
BIN
assets/effects/run-dusting2.png
Normal file
BIN
assets/effects/run-dusting2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 182 B |
35
assets/effects/run-dusting2.png.import
Normal file
35
assets/effects/run-dusting2.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/run-dusting2.png-5d3138e9a1cad23467a8410ccc9759f5.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/effects/run-dusting2.png"
|
||||||
|
dest_files=[ "res://.import/run-dusting2.png-5d3138e9a1cad23467a8410ccc9759f5.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=false
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=false
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=false
|
||||||
|
svg/scale=1.0
|
||||||
BIN
assets/effects/run-dusting3.png
Normal file
BIN
assets/effects/run-dusting3.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 199 B |
35
assets/effects/run-dusting3.png.import
Normal file
35
assets/effects/run-dusting3.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/run-dusting3.png-7bf0422976389cd92d1a9830a793b0ce.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/effects/run-dusting3.png"
|
||||||
|
dest_files=[ "res://.import/run-dusting3.png-7bf0422976389cd92d1a9830a793b0ce.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=false
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=false
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=false
|
||||||
|
svg/scale=1.0
|
||||||
BIN
assets/effects/run-dusting4.png
Normal file
BIN
assets/effects/run-dusting4.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 213 B |
35
assets/effects/run-dusting4.png.import
Normal file
35
assets/effects/run-dusting4.png.import
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="StreamTexture"
|
||||||
|
path="res://.import/run-dusting4.png-7a5287681d52628233a05d53c88a89b8.stex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/effects/run-dusting4.png"
|
||||||
|
dest_files=[ "res://.import/run-dusting4.png-7a5287681d52628233a05d53c88a89b8.stex" ]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_mode=0
|
||||||
|
compress/bptc_ldr=0
|
||||||
|
compress/normal_map=0
|
||||||
|
flags/repeat=0
|
||||||
|
flags/filter=false
|
||||||
|
flags/mipmaps=false
|
||||||
|
flags/anisotropic=false
|
||||||
|
flags/srgb=2
|
||||||
|
process/fix_alpha_border=false
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/HDR_as_SRGB=false
|
||||||
|
process/invert_color=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
stream=false
|
||||||
|
size_limit=0
|
||||||
|
detect_3d=false
|
||||||
|
svg/scale=1.0
|
||||||
18
assets/effects/running smoke.tres
Normal file
18
assets/effects/running smoke.tres
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
[gd_resource type="AnimatedTexture" load_steps=5 format=2]
|
||||||
|
|
||||||
|
[ext_resource path="res://assets/effects/run-dusting2.png" type="Texture" id=1]
|
||||||
|
[ext_resource path="res://assets/effects/run-dusting3.png" type="Texture" id=2]
|
||||||
|
[ext_resource path="res://assets/effects/run-dusting1.png" type="Texture" id=3]
|
||||||
|
[ext_resource path="res://assets/effects/run-dusting4.png" type="Texture" id=4]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
frames = 4
|
||||||
|
fps = 3.0
|
||||||
|
frame_0/texture = ExtResource( 3 )
|
||||||
|
frame_0/delay_sec = 0.1
|
||||||
|
frame_1/texture = ExtResource( 1 )
|
||||||
|
frame_1/delay_sec = 0.1
|
||||||
|
frame_2/texture = ExtResource( 2 )
|
||||||
|
frame_2/delay_sec = 0.1
|
||||||
|
frame_3/texture = ExtResource( 4 )
|
||||||
|
frame_3/delay_sec = 0.1
|
||||||
@ -16,7 +16,7 @@ var wallslide_threshold := 1000
|
|||||||
var base_floor_friction := 0.5
|
var base_floor_friction := 0.5
|
||||||
var floor_friction := base_floor_friction
|
var floor_friction := base_floor_friction
|
||||||
var max_velocity := {
|
var max_velocity := {
|
||||||
"walk": 120, "run": 160, "fall": 420, "walljump": 200, "idle": 12000, "duck": 160
|
"walk": 120, "run": 160, "jump": Vector2(120, 420), "fall": Vector2(120, 420), "walljump": 200, "idle": 12000, "duck": 160
|
||||||
}
|
}
|
||||||
var velocity_jump_boost_ratio := 10
|
var velocity_jump_boost_ratio := 10
|
||||||
# This is added to the acceleration force initially
|
# This is added to the acceleration force initially
|
||||||
@ -27,8 +27,8 @@ var init_acceleration_force := {
|
|||||||
# newtonmeters is the unit
|
# newtonmeters is the unit
|
||||||
var acceleration_force := {
|
var acceleration_force := {
|
||||||
"walk": Vector2(1800, 1300),
|
"walk": Vector2(1800, 1300),
|
||||||
"fall": Vector2(2000, 0),
|
"fall": Vector2(1800, 0),
|
||||||
"jump": Vector2(2000, 0),
|
"jump": Vector2(1800, 0),
|
||||||
"idle": Vector2(1800, 1233),
|
"idle": Vector2(1800, 1233),
|
||||||
"duck": Vector2(500, 1300),
|
"duck": Vector2(500, 1300),
|
||||||
"run": Vector2(2500, 1400),
|
"run": Vector2(2500, 1400),
|
||||||
|
|||||||
@ -287,8 +287,8 @@ func calculate_jump_velocity(
|
|||||||
linear_velocity.y += _gravity * delta
|
linear_velocity.y += _gravity * delta
|
||||||
|
|
||||||
# TODO This is poop too
|
# TODO This is poop too
|
||||||
if -45 < velocity.x and direction.x < 0 || \
|
if -max_velocity["jump"].x < velocity.x and direction.x < 0 || \
|
||||||
45 > velocity.x and direction.x > 0:
|
max_velocity["jump"].x > velocity.x and direction.x > 0:
|
||||||
linear_velocity.x = PhysicsFunc.two_step_euler(
|
linear_velocity.x = PhysicsFunc.two_step_euler(
|
||||||
linear_velocity.x, acceleration_force[state].x * direction.x,
|
linear_velocity.x, acceleration_force[state].x * direction.x,
|
||||||
mass,
|
mass,
|
||||||
@ -306,14 +306,14 @@ func calculate_fall_velocity(
|
|||||||
linear_velocity: Vector2, delta: float, direction: Vector2
|
linear_velocity: Vector2, delta: float, direction: Vector2
|
||||||
) -> Vector2:
|
) -> Vector2:
|
||||||
var state = player_state_machine.state
|
var state = player_state_machine.state
|
||||||
if velocity.y < max_velocity["fall"]:
|
if velocity.y < max_velocity["fall"].y:
|
||||||
linear_velocity.y = PhysicsFunc.two_step_euler(
|
linear_velocity.y = PhysicsFunc.two_step_euler(
|
||||||
linear_velocity.y, _gravity * mass, mass, delta
|
linear_velocity.y, _gravity * mass, mass, delta
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
linear_velocity.y = max_velocity["fall"]
|
linear_velocity.y = max_velocity["fall"].y
|
||||||
if -45 < velocity.x and direction.x < 0 || \
|
if -max_velocity["fall"].x < velocity.x and direction.x < 0 || \
|
||||||
45 > velocity.x and direction.x > 0:
|
max_velocity["fall"].x > velocity.x and direction.x > 0:
|
||||||
# TODO This is poop
|
# TODO This is poop
|
||||||
linear_velocity.x = PhysicsFunc.two_step_euler(
|
linear_velocity.x = PhysicsFunc.two_step_euler(
|
||||||
linear_velocity.x, acceleration_force[state].x * direction.x,
|
linear_velocity.x, acceleration_force[state].x * direction.x,
|
||||||
|
|||||||
@ -1,11 +1,12 @@
|
|||||||
[gd_scene load_steps=122 format=2]
|
[gd_scene load_steps=124 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://assets/blobby/blobby-effects-spritesheet.png" type="Texture" id=1]
|
[ext_resource path="res://assets/effects/blobby-effects-spritesheet.png" type="Texture" id=1]
|
||||||
[ext_resource path="res://src/Actors/Blobby/DeathShader.tres" type="Material" id=2]
|
[ext_resource path="res://src/Actors/Blobby/DeathShader.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/BlobbyStateMachine.gd" type="Script" id=3]
|
||||||
[ext_resource path="res://src/Actors/Blobby/Blobby.gd" type="Script" id=4]
|
[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]
|
[ext_resource path="res://assets/meta/new_dynamicfont.tres" type="DynamicFont" id=5]
|
||||||
[ext_resource path="res://src/ThirdParty/Demo/IridescenceBall.tscn" type="PackedScene" id=6]
|
[ext_resource path="res://src/ThirdParty/Demo/IridescenceBall.tscn" type="PackedScene" id=6]
|
||||||
|
[ext_resource path="res://assets/effects/running smoke.tres" type="Texture" id=7]
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=2]
|
[sub_resource type="RectangleShape2D" id=2]
|
||||||
extents = Vector2( 14.9127, 5.98593 )
|
extents = Vector2( 14.9127, 5.98593 )
|
||||||
@ -303,7 +304,7 @@ states/wallsliding/node = SubResource( 96 )
|
|||||||
states/wallsliding/position = Vector2( 1795.54, 493.009 )
|
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 ), "jumping", "wallsliding", SubResource( 189 ), "jumping", "idling", SubResource( 193 ), "jumping", "walking", SubResource( 194 ), "runToJump", "wallsliding", SubResource( 195 ), "jumpToFall", "idling", SubResource( 196 ) ]
|
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 ), "jumping", "idling", SubResource( 193 ), "jumping", "walking", SubResource( 194 ), "runToJump", "wallsliding", SubResource( 195 ), "jumpToFall", "idling", SubResource( 196 ) ]
|
||||||
start_node = "idling"
|
start_node = "idling"
|
||||||
graph_offset = Vector2( 1027.54, -183.431 )
|
graph_offset = Vector2( 1082.54, -290.431 )
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeStateMachinePlayback" id=48]
|
[sub_resource type="AnimationNodeStateMachinePlayback" id=48]
|
||||||
|
|
||||||
@ -481,7 +482,7 @@ tracks/13/keys = {
|
|||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/14/type = "value"
|
tracks/14/type = "value"
|
||||||
tracks/14/path = NodePath("../BlobbyStateEffects:frame")
|
tracks/14/path = NodePath(".:material:shader_param/sensitivity")
|
||||||
tracks/14/interp = 1
|
tracks/14/interp = 1
|
||||||
tracks/14/loop_wrap = true
|
tracks/14/loop_wrap = true
|
||||||
tracks/14/imported = false
|
tracks/14/imported = false
|
||||||
@ -490,10 +491,10 @@ tracks/14/keys = {
|
|||||||
"times": PoolRealArray( 0 ),
|
"times": PoolRealArray( 0 ),
|
||||||
"transitions": PoolRealArray( 1 ),
|
"transitions": PoolRealArray( 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ 8 ]
|
"values": [ 0.0 ]
|
||||||
}
|
}
|
||||||
tracks/15/type = "value"
|
tracks/15/type = "value"
|
||||||
tracks/15/path = NodePath("../BlobbyStateEffects:position")
|
tracks/15/path = NodePath(".:material:shader_param/scale")
|
||||||
tracks/15/interp = 1
|
tracks/15/interp = 1
|
||||||
tracks/15/loop_wrap = true
|
tracks/15/loop_wrap = true
|
||||||
tracks/15/imported = false
|
tracks/15/imported = false
|
||||||
@ -502,66 +503,6 @@ tracks/15/keys = {
|
|||||||
"times": PoolRealArray( 0 ),
|
"times": PoolRealArray( 0 ),
|
||||||
"transitions": PoolRealArray( 1 ),
|
"transitions": PoolRealArray( 1 ),
|
||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 3.07106, -16.064 ) ]
|
|
||||||
}
|
|
||||||
tracks/16/type = "value"
|
|
||||||
tracks/16/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/16/interp = 1
|
|
||||||
tracks/16/loop_wrap = true
|
|
||||||
tracks/16/imported = false
|
|
||||||
tracks/16/enabled = true
|
|
||||||
tracks/16/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ true ]
|
|
||||||
}
|
|
||||||
tracks/17/type = "value"
|
|
||||||
tracks/17/path = NodePath("../BlobbyStateEffects:scale")
|
|
||||||
tracks/17/interp = 1
|
|
||||||
tracks/17/loop_wrap = true
|
|
||||||
tracks/17/imported = false
|
|
||||||
tracks/17/enabled = true
|
|
||||||
tracks/17/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
|
||||||
}
|
|
||||||
tracks/18/type = "value"
|
|
||||||
tracks/18/path = NodePath("../BlobbyStateEffects:offset")
|
|
||||||
tracks/18/interp = 1
|
|
||||||
tracks/18/loop_wrap = true
|
|
||||||
tracks/18/imported = false
|
|
||||||
tracks/18/enabled = true
|
|
||||||
tracks/18/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"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 ]
|
"values": [ 1.0 ]
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -811,18 +752,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=69]
|
[sub_resource type="Animation" id=69]
|
||||||
length = 0.1
|
length = 0.1
|
||||||
@ -959,18 +888,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=107]
|
[sub_resource type="Animation" id=107]
|
||||||
resource_name = "duckingLeft"
|
resource_name = "duckingLeft"
|
||||||
@ -1108,18 +1025,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=184]
|
[sub_resource type="Animation" id=184]
|
||||||
resource_name = "dying"
|
resource_name = "dying"
|
||||||
@ -1377,18 +1282,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=106]
|
[sub_resource type="Animation" id=106]
|
||||||
resource_name = "fallingLeft"
|
resource_name = "fallingLeft"
|
||||||
@ -1526,18 +1419,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=70]
|
[sub_resource type="Animation" id=70]
|
||||||
length = 0.133
|
length = 0.133
|
||||||
@ -1674,18 +1555,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=7]
|
[sub_resource type="Animation" id=7]
|
||||||
length = 7.6
|
length = 7.6
|
||||||
@ -1822,18 +1691,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=103]
|
[sub_resource type="Animation" id=103]
|
||||||
resource_name = "idlingLeft"
|
resource_name = "idlingLeft"
|
||||||
@ -1971,18 +1828,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=71]
|
[sub_resource type="Animation" id=71]
|
||||||
length = 0.13
|
length = 0.13
|
||||||
@ -2119,18 +1964,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=105]
|
[sub_resource type="Animation" id=105]
|
||||||
resource_name = "jumpToFallLeft"
|
resource_name = "jumpToFallLeft"
|
||||||
@ -2268,18 +2101,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=8]
|
[sub_resource type="Animation" id=8]
|
||||||
length = 0.1
|
length = 0.1
|
||||||
@ -2416,18 +2237,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=104]
|
[sub_resource type="Animation" id=104]
|
||||||
resource_name = "jumpingLeft"
|
resource_name = "jumpingLeft"
|
||||||
@ -2565,18 +2374,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=72]
|
[sub_resource type="Animation" id=72]
|
||||||
length = 0.23
|
length = 0.23
|
||||||
@ -2713,18 +2510,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=143]
|
[sub_resource type="Animation" id=143]
|
||||||
resource_name = "runToJumpLeft"
|
resource_name = "runToJumpLeft"
|
||||||
@ -2862,18 +2647,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=49]
|
[sub_resource type="Animation" id=49]
|
||||||
resource_name = "running"
|
resource_name = "running"
|
||||||
@ -3012,54 +2785,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:frame")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3 ),
|
|
||||||
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ 6, 9, 9, 9, 5, 6, 7 ]
|
|
||||||
}
|
|
||||||
tracks/12/type = "value"
|
|
||||||
tracks/12/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/12/interp = 1
|
|
||||||
tracks/12/loop_wrap = true
|
|
||||||
tracks/12/imported = false
|
|
||||||
tracks/12/enabled = true
|
|
||||||
tracks/12/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ true ]
|
|
||||||
}
|
|
||||||
tracks/13/type = "value"
|
|
||||||
tracks/13/path = NodePath("../BlobbyStateEffects:scale")
|
|
||||||
tracks/13/interp = 1
|
|
||||||
tracks/13/loop_wrap = true
|
|
||||||
tracks/13/imported = false
|
|
||||||
tracks/13/enabled = true
|
|
||||||
tracks/13/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
|
||||||
}
|
|
||||||
tracks/14/type = "value"
|
|
||||||
tracks/14/path = NodePath("../BlobbyStateEffects:offset")
|
|
||||||
tracks/14/interp = 1
|
|
||||||
tracks/14/loop_wrap = true
|
|
||||||
tracks/14/imported = false
|
|
||||||
tracks/14/enabled = true
|
|
||||||
tracks/14/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( -1, -1 ) ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=102]
|
[sub_resource type="Animation" id=102]
|
||||||
resource_name = "runningLeft"
|
resource_name = "runningLeft"
|
||||||
@ -3198,54 +2923,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:frame")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3 ),
|
|
||||||
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ 6, 9, 9, 9, 5, 6, 7 ]
|
|
||||||
}
|
|
||||||
tracks/12/type = "value"
|
|
||||||
tracks/12/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/12/interp = 1
|
|
||||||
tracks/12/loop_wrap = true
|
|
||||||
tracks/12/imported = false
|
|
||||||
tracks/12/enabled = true
|
|
||||||
tracks/12/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ true ]
|
|
||||||
}
|
|
||||||
tracks/13/type = "value"
|
|
||||||
tracks/13/path = NodePath("../BlobbyStateEffects:scale")
|
|
||||||
tracks/13/interp = 1
|
|
||||||
tracks/13/loop_wrap = true
|
|
||||||
tracks/13/imported = false
|
|
||||||
tracks/13/enabled = true
|
|
||||||
tracks/13/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
|
||||||
}
|
|
||||||
tracks/14/type = "value"
|
|
||||||
tracks/14/path = NodePath("../BlobbyStateEffects:offset")
|
|
||||||
tracks/14/interp = 1
|
|
||||||
tracks/14/loop_wrap = true
|
|
||||||
tracks/14/imported = false
|
|
||||||
tracks/14/enabled = true
|
|
||||||
tracks/14/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 0,
|
|
||||||
"values": [ Vector2( 5, -1 ) ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=58]
|
[sub_resource type="Animation" id=58]
|
||||||
length = 0.133
|
length = 0.133
|
||||||
@ -3382,18 +3059,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=100]
|
[sub_resource type="Animation" id=100]
|
||||||
resource_name = "turnToRunLeft"
|
resource_name = "turnToRunLeft"
|
||||||
@ -3531,18 +3196,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=9]
|
[sub_resource type="Animation" id=9]
|
||||||
length = 0.5
|
length = 0.5
|
||||||
@ -3679,18 +3332,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=99]
|
[sub_resource type="Animation" id=99]
|
||||||
resource_name = "walkingLeft"
|
resource_name = "walkingLeft"
|
||||||
@ -3828,18 +3469,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=73]
|
[sub_resource type="Animation" id=73]
|
||||||
length = 0.15
|
length = 0.15
|
||||||
@ -3976,18 +3605,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=101]
|
[sub_resource type="Animation" id=101]
|
||||||
resource_name = "wallslideToJumpRight"
|
resource_name = "wallslideToJumpRight"
|
||||||
@ -4125,18 +3742,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=74]
|
[sub_resource type="Animation" id=74]
|
||||||
length = 0.1
|
length = 0.1
|
||||||
@ -4273,18 +3878,6 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( 1, 1 ) ]
|
"values": [ Vector2( 1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
|
||||||
tracks/11/interp = 1
|
|
||||||
tracks/11/loop_wrap = true
|
|
||||||
tracks/11/imported = false
|
|
||||||
tracks/11/enabled = true
|
|
||||||
tracks/11/keys = {
|
|
||||||
"times": PoolRealArray( 0 ),
|
|
||||||
"transitions": PoolRealArray( 1 ),
|
|
||||||
"update": 1,
|
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=97]
|
[sub_resource type="Animation" id=97]
|
||||||
resource_name = "wallslidingRight"
|
resource_name = "wallslidingRight"
|
||||||
@ -4422,18 +4015,16 @@ tracks/10/keys = {
|
|||||||
"update": 0,
|
"update": 0,
|
||||||
"values": [ Vector2( -1, 1 ) ]
|
"values": [ Vector2( -1, 1 ) ]
|
||||||
}
|
}
|
||||||
tracks/11/type = "value"
|
|
||||||
tracks/11/path = NodePath("../BlobbyStateEffects:visible")
|
[sub_resource type="ParticlesMaterial" id=197]
|
||||||
tracks/11/interp = 1
|
flag_disable_z = true
|
||||||
tracks/11/loop_wrap = true
|
direction = Vector3( -10, -1, 0 )
|
||||||
tracks/11/imported = false
|
spread = 1.0
|
||||||
tracks/11/enabled = true
|
initial_velocity = 40.0
|
||||||
tracks/11/keys = {
|
orbit_velocity = 0.0
|
||||||
"times": PoolRealArray( 0 ),
|
orbit_velocity_random = 0.0
|
||||||
"transitions": PoolRealArray( 1 ),
|
linear_accel = -20.0
|
||||||
"update": 1,
|
damping = 20.0
|
||||||
"values": [ false ]
|
|
||||||
}
|
|
||||||
|
|
||||||
[sub_resource type="Animation" id=181]
|
[sub_resource type="Animation" id=181]
|
||||||
length = 0.001
|
length = 0.001
|
||||||
@ -4659,7 +4250,20 @@ anims/wallslideToJumpRight = SubResource( 101 )
|
|||||||
anims/wallsliding = SubResource( 74 )
|
anims/wallsliding = SubResource( 74 )
|
||||||
anims/wallslidingRight = SubResource( 97 )
|
anims/wallslidingRight = SubResource( 97 )
|
||||||
|
|
||||||
|
[node name="RunningParticles" type="Particles2D" parent="."]
|
||||||
|
position = Vector2( 0, -17 )
|
||||||
|
z_index = 1
|
||||||
|
z_as_relative = false
|
||||||
|
emitting = false
|
||||||
|
amount = 1
|
||||||
|
lifetime = 0.3
|
||||||
|
local_coords = false
|
||||||
|
draw_order = 1
|
||||||
|
process_material = SubResource( 197 )
|
||||||
|
texture = ExtResource( 7 )
|
||||||
|
|
||||||
[node name="BlobbyActionEffects" type="Sprite" parent="."]
|
[node name="BlobbyActionEffects" type="Sprite" parent="."]
|
||||||
|
visible = false
|
||||||
position = Vector2( 3.07106, -16.064 )
|
position = Vector2( 3.07106, -16.064 )
|
||||||
scale = Vector2( -1, 1 )
|
scale = Vector2( -1, 1 )
|
||||||
texture = ExtResource( 1 )
|
texture = ExtResource( 1 )
|
||||||
@ -4672,14 +4276,6 @@ anims/RESET = SubResource( 181 )
|
|||||||
anims/airstrafing = SubResource( 182 )
|
anims/airstrafing = SubResource( 182 )
|
||||||
anims/airstrafingLeft = SubResource( 183 )
|
anims/airstrafingLeft = SubResource( 183 )
|
||||||
|
|
||||||
[node name="BlobbyStateEffects" type="Sprite" parent="."]
|
|
||||||
position = Vector2( 3.07106, -16.064 )
|
|
||||||
scale = Vector2( -1, 1 )
|
|
||||||
texture = ExtResource( 1 )
|
|
||||||
offset = Vector2( 4, 0 )
|
|
||||||
hframes = 10
|
|
||||||
frame = 8
|
|
||||||
|
|
||||||
[node name="Blobby3DEffects" type="Sprite" parent="."]
|
[node name="Blobby3DEffects" type="Sprite" parent="."]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
position = Vector2( 0, -9 )
|
position = Vector2( 0, -9 )
|
||||||
|
|||||||
@ -7,6 +7,7 @@ export var init_boost_type = ""
|
|||||||
onready var anim_player = parent.get_node("BlobbySprite/BlobbymationPlayer")
|
onready var anim_player = parent.get_node("BlobbySprite/BlobbymationPlayer")
|
||||||
onready var anim_state_playback = parent.get_node("BlobbySprite/AnimationTree").get("parameters/playback")
|
onready var anim_state_playback = parent.get_node("BlobbySprite/AnimationTree").get("parameters/playback")
|
||||||
onready var anim_tree = parent.get_node("BlobbySprite/AnimationTree")
|
onready var anim_tree = parent.get_node("BlobbySprite/AnimationTree")
|
||||||
|
onready var running_particles = parent.get_node("RunningParticles")
|
||||||
onready var sprite = parent.get_node("BlobbySprite")
|
onready var sprite = parent.get_node("BlobbySprite")
|
||||||
onready var slope_raycast = get_node("%SlopeRaycast")
|
onready var slope_raycast = get_node("%SlopeRaycast")
|
||||||
|
|
||||||
@ -201,6 +202,11 @@ func _enter_state(new_state, old_state):
|
|||||||
else:
|
else:
|
||||||
init_boost = false
|
init_boost = false
|
||||||
init_boost_type = ""
|
init_boost_type = ""
|
||||||
|
|
||||||
|
if(new_state == "run"):
|
||||||
|
running_particles.emitting = true
|
||||||
|
running_particles.scale.x = facing
|
||||||
|
|
||||||
|
|
||||||
if !["run", "walk", "idle", "duck"].has(old_state) && parent.is_on_floor():
|
if !["run", "walk", "idle", "duck"].has(old_state) && parent.is_on_floor():
|
||||||
emit_signal("got_grounded")
|
emit_signal("got_grounded")
|
||||||
@ -233,6 +239,8 @@ func _enter_state(new_state, old_state):
|
|||||||
|
|
||||||
|
|
||||||
func _exit_state(_old_state, _new_state):
|
func _exit_state(_old_state, _new_state):
|
||||||
|
if(_old_state == "run"):
|
||||||
|
running_particles.emitting = false
|
||||||
pass
|
pass
|
||||||
|
|
||||||
func _set_blendspaces_direction(value):
|
func _set_blendspaces_direction(value):
|
||||||
|
|||||||
@ -65,7 +65,7 @@ func _process(delta: float) -> void:
|
|||||||
screen_top = screen_center - Vector2(0, screen_rect.y/2)
|
screen_top = screen_center - Vector2(0, screen_rect.y/2)
|
||||||
screen_left = screen_center - Vector2(screen_rect.x/2, 0)
|
screen_left = screen_center - Vector2(screen_rect.x/2, 0)
|
||||||
screen_right = screen_center + Vector2(screen_rect.x/2, 0)
|
screen_right = screen_center + Vector2(screen_rect.x/2, 0)
|
||||||
_adjust_horizontal_offset(delta)
|
_adjust_offset(delta)
|
||||||
|
|
||||||
if(anim_player.is_playing()):
|
if(anim_player.is_playing()):
|
||||||
position = blobby.position
|
position = blobby.position
|
||||||
@ -108,8 +108,8 @@ func _set_boundaries():
|
|||||||
# TODO +2 is fixed for camera issue in adjust horizontal
|
# TODO +2 is fixed for camera issue in adjust horizontal
|
||||||
limit_right = rect.end.x * cell_size.x - 8
|
limit_right = rect.end.x * cell_size.x - 8
|
||||||
limit_left = rect.position.x * cell_size.x + 8
|
limit_left = rect.position.x * cell_size.x + 8
|
||||||
limit_top = rect.position.y * cell_size.y
|
limit_top = rect.position.y * cell_size.y + 8
|
||||||
limit_bottom = rect.end.y * cell_size.y
|
limit_bottom = rect.end.y * cell_size.y - 8
|
||||||
original_limit_left = limit_left
|
original_limit_left = limit_left
|
||||||
original_limit_right = limit_right
|
original_limit_right = limit_right
|
||||||
original_limit_top = limit_top
|
original_limit_top = limit_top
|
||||||
@ -177,15 +177,23 @@ func _adapt_to_input(velocity: Vector2) -> void:
|
|||||||
|
|
||||||
# TODO This is a regulatory problem, it doesn't adapt fast enough
|
# TODO This is a regulatory problem, it doesn't adapt fast enough
|
||||||
# TODO Maybe just make background black and dont bother
|
# TODO Maybe just make background black and dont bother
|
||||||
func _adjust_horizontal_offset(delta: float) -> void:
|
func _adjust_offset(delta: float) -> void:
|
||||||
if (limit_left - position.x - screen_left.x > 0.001):
|
var new_offset = offset
|
||||||
|
if (limit_left - position.x - screen_left.x > 0.1):
|
||||||
if (anim_player.is_playing()):
|
if (anim_player.is_playing()):
|
||||||
anim_player.stop(false)
|
anim_player.stop(false)
|
||||||
offset.x += (limit_left - position.x - screen_left.x)/2
|
new_offset.x += (limit_left - position.x - screen_left.x)/2
|
||||||
if (limit_right - position.x - screen_right.x < 0.001):
|
if (limit_right - position.x - screen_right.x < 0.1):
|
||||||
if (anim_player.is_playing()):
|
if (anim_player.is_playing()):
|
||||||
anim_player.stop(false)
|
anim_player.stop(false)
|
||||||
offset.x += (limit_right - position.x - screen_right.x)/2
|
new_offset.x += (limit_right - position.x - screen_right.x)/2
|
||||||
|
if (limit_top - position.y - screen_top.y > 0.001):
|
||||||
|
new_offset.y += (limit_top - position.y - screen_top.y)/2
|
||||||
|
if (limit_bottom - position.y - screen_bottom.y < 0.001):
|
||||||
|
new_offset.y += (limit_bottom - position.y - screen_bottom.y)/2
|
||||||
|
if(abs(offset.x) >= abs(new_offset.x) + 1):
|
||||||
|
offset = new_offset
|
||||||
|
|
||||||
|
|
||||||
func reset_limits() -> void:
|
func reset_limits() -> void:
|
||||||
limit_left = original_limit_left
|
limit_left = original_limit_left
|
||||||
|
|||||||
@ -56,5 +56,6 @@ func disconnect_rope() -> void:
|
|||||||
func _on_FrogFreeButton_pushed() -> void:
|
func _on_FrogFreeButton_pushed() -> void:
|
||||||
$WhatAreFrog.levelState.frees += 1
|
$WhatAreFrog.levelState.frees += 1
|
||||||
$WhatAreFrog.is_bound = false
|
$WhatAreFrog.is_bound = false
|
||||||
|
$WhatAreFrog.remove_from_group("harmful")
|
||||||
disconnect_rope()
|
disconnect_rope()
|
||||||
is_first_signal = false
|
is_first_signal = false
|
||||||
|
|||||||
@ -7,7 +7,7 @@
|
|||||||
extents = Vector2( 2.72463, 1.43961 )
|
extents = Vector2( 2.72463, 1.43961 )
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=2]
|
[sub_resource type="RectangleShape2D" id=2]
|
||||||
extents = Vector2( 15, 3.0301 )
|
extents = Vector2( 15, 4.51505 )
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=3]
|
[sub_resource type="RectangleShape2D" id=3]
|
||||||
extents = Vector2( 15.534, 10.0962 )
|
extents = Vector2( 15.534, 10.0962 )
|
||||||
@ -35,14 +35,13 @@ scale = Vector2( 5.68128, 5.29182 )
|
|||||||
shape = SubResource( 1 )
|
shape = SubResource( 1 )
|
||||||
|
|
||||||
[node name="StompDetector" type="Area2D" parent="." groups=["weakpoint"]]
|
[node name="StompDetector" type="Area2D" parent="." groups=["weakpoint"]]
|
||||||
visible = false
|
|
||||||
modulate = Color( 0, 0.0392157, 1, 1 )
|
modulate = Color( 0, 0.0392157, 1, 1 )
|
||||||
position = Vector2( 0, -6.44095 )
|
position = Vector2( 0, -6.44095 )
|
||||||
collision_layer = 2
|
collision_layer = 2
|
||||||
input_pickable = false
|
input_pickable = false
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StompDetector"]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="StompDetector"]
|
||||||
position = Vector2( 0, -2.52895 )
|
position = Vector2( 0, -1.044 )
|
||||||
shape = SubResource( 2 )
|
shape = SubResource( 2 )
|
||||||
|
|
||||||
[node name="LedgeDetectorRays" type="Node2D" parent="."]
|
[node name="LedgeDetectorRays" type="Node2D" parent="."]
|
||||||
|
|||||||
@ -222,7 +222,6 @@ valign = 1
|
|||||||
|
|
||||||
[node name="FlyerSprite" type="Sprite" parent="."]
|
[node name="FlyerSprite" type="Sprite" parent="."]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
scale = Vector2( -1, 1 )
|
|
||||||
texture = ExtResource( 4 )
|
texture = ExtResource( 4 )
|
||||||
hframes = 2
|
hframes = 2
|
||||||
|
|
||||||
@ -236,13 +235,13 @@ anims/searchingLeft = SubResource( 34 )
|
|||||||
[node name="AnimationTree" type="AnimationTree" parent="FlyerSprite"]
|
[node name="AnimationTree" type="AnimationTree" parent="FlyerSprite"]
|
||||||
tree_root = SubResource( 50 )
|
tree_root = SubResource( 50 )
|
||||||
anim_player = NodePath("../AnimationPlayer")
|
anim_player = NodePath("../AnimationPlayer")
|
||||||
active = true
|
|
||||||
root_motion_track = NodePath(".")
|
root_motion_track = NodePath(".")
|
||||||
parameters/playback = SubResource( 51 )
|
parameters/playback = SubResource( 51 )
|
||||||
parameters/hunting/blend_position = -1.04288
|
parameters/hunting/blend_position = -1.04288
|
||||||
parameters/searching/blend_position = 1.2903
|
parameters/searching/blend_position = 1.2903
|
||||||
|
|
||||||
[node name="VisibilityEnabler2D" type="VisibilityEnabler2D" parent="."]
|
[node name="VisibilityEnabler2D" type="VisibilityEnabler2D" parent="."]
|
||||||
|
visible = false
|
||||||
position = Vector2( 954, 0 )
|
position = Vector2( 954, 0 )
|
||||||
scale = Vector2( 10.84, 0.899 )
|
scale = Vector2( 10.84, 0.899 )
|
||||||
rect = Rect2( -89, -10, 2, 20 )
|
rect = Rect2( -89, -10, 2, 20 )
|
||||||
@ -250,12 +249,14 @@ process_parent = true
|
|||||||
physics_process_parent = true
|
physics_process_parent = true
|
||||||
|
|
||||||
[node name="FeelerRayCast" type="RayCast2D" parent="."]
|
[node name="FeelerRayCast" type="RayCast2D" parent="."]
|
||||||
|
visible = false
|
||||||
enabled = true
|
enabled = true
|
||||||
cast_to = Vector2( 0, -1 )
|
cast_to = Vector2( 0, -1 )
|
||||||
collision_mask = 56
|
collision_mask = 56
|
||||||
collide_with_areas = true
|
collide_with_areas = true
|
||||||
|
|
||||||
[node name="EnemyBody" type="CollisionShape2D" parent="." groups=["harmful"]]
|
[node name="EnemyBody" type="CollisionShape2D" parent="." groups=["harmful"]]
|
||||||
|
visible = false
|
||||||
shape = SubResource( 1 )
|
shape = SubResource( 1 )
|
||||||
|
|
||||||
[node name="NavigationAgent2D" type="NavigationAgent2D" parent="."]
|
[node name="NavigationAgent2D" type="NavigationAgent2D" parent="."]
|
||||||
@ -263,6 +264,7 @@ path_desired_distance = 8.0
|
|||||||
target_desired_distance = 8.0
|
target_desired_distance = 8.0
|
||||||
|
|
||||||
[node name="cshape" type="Node2D" parent="."]
|
[node name="cshape" type="Node2D" parent="."]
|
||||||
|
visible = false
|
||||||
position = Vector2( 0, -3.8147e-06 )
|
position = Vector2( 0, -3.8147e-06 )
|
||||||
scale = Vector2( 0.1, 0.1 )
|
scale = Vector2( 0.1, 0.1 )
|
||||||
|
|
||||||
@ -272,6 +274,7 @@ bias = 0.108
|
|||||||
softness = 0.1
|
softness = 0.1
|
||||||
|
|
||||||
[node name="StompDetector" type="Area2D" parent="." groups=["weakpoint"]]
|
[node name="StompDetector" type="Area2D" parent="." groups=["weakpoint"]]
|
||||||
|
visible = false
|
||||||
modulate = Color( 0, 0.0392157, 1, 1 )
|
modulate = Color( 0, 0.0392157, 1, 1 )
|
||||||
position = Vector2( 0, -1.90735e-06 )
|
position = Vector2( 0, -1.90735e-06 )
|
||||||
scale = Vector2( 0.7, 0.7 )
|
scale = Vector2( 0.7, 0.7 )
|
||||||
@ -284,6 +287,7 @@ shape = SubResource( 2 )
|
|||||||
|
|
||||||
[node name="EnemySkin" type="Area2D" parent="."]
|
[node name="EnemySkin" type="Area2D" parent="."]
|
||||||
process_priority = -1
|
process_priority = -1
|
||||||
|
visible = false
|
||||||
scale = Vector2( 0.7, 0.7 )
|
scale = Vector2( 0.7, 0.7 )
|
||||||
collision_layer = 2
|
collision_layer = 2
|
||||||
collision_mask = 126
|
collision_mask = 126
|
||||||
|
|||||||
@ -49,7 +49,7 @@ var detect_timer := 0.0
|
|||||||
|
|
||||||
var reversing_possible_searching := true
|
var reversing_possible_searching := true
|
||||||
|
|
||||||
# TODO Make parameters tunable!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1111!!
|
|
||||||
func _ready():
|
func _ready():
|
||||||
default_jump_distance = default_jump_distance * tilemap.cell_size.x
|
default_jump_distance = default_jump_distance * tilemap.cell_size.x
|
||||||
jump_timer = Timer.new()
|
jump_timer = Timer.new()
|
||||||
@ -60,6 +60,7 @@ func _ready():
|
|||||||
target_lost_timer.connect("timeout", self, "loose_target")
|
target_lost_timer.connect("timeout", self, "loose_target")
|
||||||
add_child(jump_timer)
|
add_child(jump_timer)
|
||||||
add_child(target_lost_timer)
|
add_child(target_lost_timer)
|
||||||
|
if(is_bound): add_to_group("harmful")
|
||||||
|
|
||||||
|
|
||||||
func bind_to_anchor(anchor_node: Node2D, radius: float ) -> void:
|
func bind_to_anchor(anchor_node: Node2D, radius: float ) -> void:
|
||||||
@ -69,20 +70,22 @@ func bind_to_anchor(anchor_node: Node2D, radius: float ) -> void:
|
|||||||
|
|
||||||
|
|
||||||
func _on_StompDetector_body_entered(body: Node) -> void:
|
func _on_StompDetector_body_entered(body: Node) -> void:
|
||||||
if !body.is_in_group("player"):
|
if !body.is_in_group("player") || is_hurt:
|
||||||
return
|
return
|
||||||
var incoming_vel_vector: Vector2 = body.velocity.normalized()
|
var incoming_vel_vector: Vector2 = body.velocity.normalized()
|
||||||
# TODO This is not the right angle somehow
|
# TODO This is not the right angle somehow
|
||||||
print(rad2deg(abs(incoming_vel_vector.angle_to(Vector2.DOWN.rotated(rotation)))))
|
# print(rad2deg(abs(incoming_vel_vector.angle_to(Vector2.DOWN.rotated(rotation)))))
|
||||||
if abs(incoming_vel_vector.angle_to(Vector2.DOWN.rotated(rotation))) > deg2rad(60):
|
# if abs(incoming_vel_vector.angle_to(Vector2.DOWN.rotated(rotation))) > deg2rad(60):
|
||||||
print("too shallow entry")
|
# print("too shallow entry")
|
||||||
return
|
# return
|
||||||
signalManager.emit_signal("got_stomped")
|
signalManager.emit_signal("got_stomped")
|
||||||
remove_from_group("harmful")
|
remove_from_group("harmful")
|
||||||
|
# TODO Weakpoint group is not needed per se
|
||||||
$StompDetector.remove_from_group("weakpoint")
|
$StompDetector.remove_from_group("weakpoint")
|
||||||
get_node("EnemyBody").disabled = true
|
get_node("EnemyBody").disabled = true
|
||||||
die()
|
is_hurt = true
|
||||||
|
$FrogSprite.material = invincible_shader
|
||||||
|
$HurtTimer.start()
|
||||||
|
|
||||||
|
|
||||||
func execute_movement(delta: float) -> void:
|
func execute_movement(delta: float) -> void:
|
||||||
@ -500,5 +503,5 @@ func get_facing_direction() -> float:
|
|||||||
|
|
||||||
func _on_HurtTimer_timeout() -> void:
|
func _on_HurtTimer_timeout() -> void:
|
||||||
is_hurt = false
|
is_hurt = false
|
||||||
add_to_group("harmful")
|
if(is_bound): add_to_group("harmful")
|
||||||
$FrogSprite.material = null
|
$FrogSprite.material = null
|
||||||
|
|||||||
@ -426,12 +426,12 @@ graph_offset = Vector2( -340, -193 )
|
|||||||
extents = Vector2( 12, 9 )
|
extents = Vector2( 12, 9 )
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=2]
|
[sub_resource type="RectangleShape2D" id=2]
|
||||||
extents = Vector2( 18.5714, 2.85714 )
|
extents = Vector2( 15.7143, 2.14286 )
|
||||||
|
|
||||||
[sub_resource type="RectangleShape2D" id=3]
|
[sub_resource type="RectangleShape2D" id=3]
|
||||||
extents = Vector2( 18.2143, 13.5955 )
|
extents = Vector2( 18.2143, 13.5955 )
|
||||||
|
|
||||||
[node name="WhatAreFrog" type="KinematicBody2D" groups=["harmful"]]
|
[node name="WhatAreFrog" type="KinematicBody2D"]
|
||||||
collision_layer = 2
|
collision_layer = 2
|
||||||
collision_mask = 57
|
collision_mask = 57
|
||||||
collision/safe_margin = 0.001
|
collision/safe_margin = 0.001
|
||||||
@ -553,7 +553,8 @@ input_pickable = false
|
|||||||
monitorable = false
|
monitorable = false
|
||||||
|
|
||||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StompDetector"]
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="StompDetector"]
|
||||||
position = Vector2( 0, -1.42857 )
|
position = Vector2( -5.68434e-14, -2.14286 )
|
||||||
|
scale = Vector2( 0.999999, 0.999999 )
|
||||||
shape = SubResource( 2 )
|
shape = SubResource( 2 )
|
||||||
|
|
||||||
[node name="EnemySkin" type="Area2D" parent="."]
|
[node name="EnemySkin" type="Area2D" parent="."]
|
||||||
|
|||||||
@ -36,10 +36,10 @@ unique_name_in_owner = true
|
|||||||
drag_margin_bottom = 0.3
|
drag_margin_bottom = 0.3
|
||||||
|
|
||||||
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
||||||
frame = 8
|
frame = 12
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 8
|
frame = 7
|
||||||
|
|
||||||
[node name="Blobby" parent="." instance=ExtResource( 8 )]
|
[node name="Blobby" parent="." instance=ExtResource( 8 )]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
|
|||||||
@ -44,10 +44,10 @@ unique_name_in_owner = true
|
|||||||
drag_margin_bottom = 0.3
|
drag_margin_bottom = 0.3
|
||||||
|
|
||||||
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
|
||||||
frame = 4
|
frame = 2
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 4
|
frame = 2
|
||||||
|
|
||||||
[node name="Blobby" parent="." instance=ExtResource( 9 )]
|
[node name="Blobby" parent="." instance=ExtResource( 9 )]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
|
|||||||
@ -86,9 +86,8 @@ tile_data = PoolIntArray( 65535, 1610612751, 0, 0, 1610612746, 0, 1, 1610612746,
|
|||||||
|
|
||||||
[node name="Flyer" parent="." instance=ExtResource( 45 )]
|
[node name="Flyer" parent="." instance=ExtResource( 45 )]
|
||||||
position = Vector2( 552, 288 )
|
position = Vector2( 552, 288 )
|
||||||
blindspot_angle = 20
|
acceleration = 80
|
||||||
acceleration = 90
|
max_speed = 100
|
||||||
max_speed = 120
|
|
||||||
weight = 0.2
|
weight = 0.2
|
||||||
|
|
||||||
[node name="AnimationTree" parent="Flyer/FlyerSprite" index="1"]
|
[node name="AnimationTree" parent="Flyer/FlyerSprite" index="1"]
|
||||||
|
|||||||
88
src/Levels/Level 5.tscn
Normal file
88
src/Levels/Level 5.tscn
Normal file
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user