feat: Major Camera Fix & look up and down
This commit is contained in:
parent
34e1427334
commit
aeacd9d059
BIN
blobby1.ico
BIN
blobby1.ico
Binary file not shown.
|
Before Width: | Height: | Size: 98 KiB After Width: | Height: | Size: 4.2 KiB |
BIN
blobby1.png
Normal file
BIN
blobby1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 272 B |
@ -2,15 +2,15 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="StreamTexture"
|
type="StreamTexture"
|
||||||
path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
path="res://.import/blobby1.png-02080f0b57c8ccaa15e26b1a3859acb0.stex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://icon.png"
|
source_file="res://blobby1.png"
|
||||||
dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
|
dest_files=[ "res://.import/blobby1.png-02080f0b57c8ccaa15e26b1a3859acb0.stex" ]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@ -20,16 +20,16 @@ compress/hdr_mode=0
|
|||||||
compress/bptc_ldr=0
|
compress/bptc_ldr=0
|
||||||
compress/normal_map=0
|
compress/normal_map=0
|
||||||
flags/repeat=0
|
flags/repeat=0
|
||||||
flags/filter=true
|
flags/filter=false
|
||||||
flags/mipmaps=false
|
flags/mipmaps=false
|
||||||
flags/anisotropic=false
|
flags/anisotropic=false
|
||||||
flags/srgb=2
|
flags/srgb=2
|
||||||
process/fix_alpha_border=true
|
process/fix_alpha_border=false
|
||||||
process/premult_alpha=false
|
process/premult_alpha=false
|
||||||
process/HDR_as_SRGB=false
|
process/HDR_as_SRGB=false
|
||||||
process/invert_color=false
|
process/invert_color=false
|
||||||
process/normal_map_invert_y=false
|
process/normal_map_invert_y=false
|
||||||
stream=false
|
stream=false
|
||||||
size_limit=0
|
size_limit=0
|
||||||
detect_3d=true
|
detect_3d=false
|
||||||
svg/scale=1.0
|
svg/scale=1.0
|
||||||
@ -171,6 +171,14 @@ interact={
|
|||||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":16777221,"unicode":0,"echo":false,"script":null)
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":16777221,"unicode":0,"echo":false,"script":null)
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
up={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":87,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":0,"physical_scancode":16777232,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":-1.0,"script":null)
|
||||||
|
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":12,"pressure":0.0,"pressed":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
[layer_names]
|
[layer_names]
|
||||||
|
|
||||||
@ -187,7 +195,7 @@ interact={
|
|||||||
[physics]
|
[physics]
|
||||||
|
|
||||||
common/physics_fps=120
|
common/physics_fps=120
|
||||||
2d/thread_model=2
|
2d/thread_model=0
|
||||||
2d/cell_size=100
|
2d/cell_size=100
|
||||||
common/enable_object_picking=false
|
common/enable_object_picking=false
|
||||||
|
|
||||||
|
|||||||
@ -4764,6 +4764,5 @@ one_shot = true
|
|||||||
[connection signal="body_entered" from="BlobbySkin" to="." method="_on_BlobbySkin_body_entered"]
|
[connection signal="body_entered" from="BlobbySkin" to="." method="_on_BlobbySkin_body_entered"]
|
||||||
[connection signal="got_grounded" from="BlobbyStateMachine" to="." method="_on_Blobby_got_grounded"]
|
[connection signal="got_grounded" from="BlobbyStateMachine" to="." method="_on_Blobby_got_grounded"]
|
||||||
[connection signal="timeout" from="BlobbyStateMachine/JumpBufferTimer" to="BlobbyStateMachine" method="_on_JumpBufferTimer_timeout"]
|
[connection signal="timeout" from="BlobbyStateMachine/JumpBufferTimer" to="BlobbyStateMachine" method="_on_JumpBufferTimer_timeout"]
|
||||||
[connection signal="timeout" from="BlobbyStateMachine/CoyoteTimer" to="BlobbyStateMachine" method="_on_CoyoteTimer_timeout"]
|
|
||||||
[connection signal="timeout" from="InvincibilityTimer" to="." method="_on_InvincibilityTimer_timeout"]
|
[connection signal="timeout" from="InvincibilityTimer" to="." method="_on_InvincibilityTimer_timeout"]
|
||||||
[connection signal="timeout" from="PitfallTimer" to="." method="_on_PitfallTimer_timeout"]
|
[connection signal="timeout" from="PitfallTimer" to="." method="_on_PitfallTimer_timeout"]
|
||||||
|
|||||||
@ -22,22 +22,28 @@ onready var signalManager := $"%SignalManager"
|
|||||||
onready var shiftLeft = $CameraAnimationPlayer.get_animation("shiftingLeft")
|
onready var shiftLeft = $CameraAnimationPlayer.get_animation("shiftingLeft")
|
||||||
onready var shiftRight = $CameraAnimationPlayer.get_animation("shiftingRight")
|
onready var shiftRight = $CameraAnimationPlayer.get_animation("shiftingRight")
|
||||||
onready var shiftCenter = $CameraAnimationPlayer.get_animation("shiftingCenter")
|
onready var shiftCenter = $CameraAnimationPlayer.get_animation("shiftingCenter")
|
||||||
onready var anim_player = $CameraAnimationPlayer
|
onready var anim_player := $CameraAnimationPlayer
|
||||||
onready var original_x_zoom = zoom.x
|
onready var horizontal_tween := $HorizontalShiftTween
|
||||||
onready var original_y_zoom = zoom.y
|
onready var original_x_zoom := zoom.x
|
||||||
onready var blobby = get_node("%Blobby")
|
onready var original_y_zoom := zoom.y
|
||||||
onready var screen_rect = Vector2(ProjectSettings.get_setting("display/window/size/width") * zoom.x, ProjectSettings.get_setting("display/window/size/height") * zoom.y )
|
onready var blobby := get_node("%Blobby")
|
||||||
|
|
||||||
var image = Image.new()
|
var image = Image.new()
|
||||||
var texture = ImageTexture.new()
|
var texture = ImageTexture.new()
|
||||||
var prev_pos: Vector2
|
var prev_pos: Vector2
|
||||||
|
var camera_state := "centered"
|
||||||
|
|
||||||
|
var screen_rect = Vector2(ProjectSettings.get_setting("display/window/size/width") * zoom.x, ProjectSettings.get_setting("display/window/size/height") * zoom.y )
|
||||||
|
var screen_center = Vector2()
|
||||||
|
var screen_bottom = Vector2()
|
||||||
|
var screen_top = Vector2()
|
||||||
|
var screen_left = Vector2()
|
||||||
|
var screen_right = Vector2()
|
||||||
|
|
||||||
# Gets the camera limits from the tilemap of the level
|
# Gets the camera limits from the tilemap of the level
|
||||||
# Requires "TileMap" to be a sibling of blobby
|
# Requires "TileMap" to be a sibling of blobby
|
||||||
func _ready():
|
func _ready():
|
||||||
|
|
||||||
_set_boundaries()
|
_set_boundaries()
|
||||||
print(screen_rect)
|
|
||||||
self.position = blobby.global_position
|
self.position = blobby.global_position
|
||||||
image.create(128, 2, false, Image.FORMAT_RGBAH)
|
image.create(128, 2, false, Image.FORMAT_RGBAH)
|
||||||
# TODO Test Performance
|
# TODO Test Performance
|
||||||
@ -49,7 +55,18 @@ func _ready():
|
|||||||
func _on_SignalManager_terminal_activated():
|
func _on_SignalManager_terminal_activated():
|
||||||
get_node("LightAnimationPlayer").play("Pulsing")
|
get_node("LightAnimationPlayer").play("Pulsing")
|
||||||
|
|
||||||
func _physics_process(delta: float) -> void:
|
func _draw():
|
||||||
|
draw_line(Vector2((limit_left - position.x), screen_center.y), screen_left, Color(255, 0, 0), 1)
|
||||||
|
|
||||||
|
func _process(delta: float) -> void:
|
||||||
|
update()
|
||||||
|
screen_center = (get_camera_screen_center() - position)
|
||||||
|
screen_bottom = 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_right = screen_center + Vector2(screen_rect.x/2, 0)
|
||||||
|
_adjust_horizontal_offset(delta)
|
||||||
|
|
||||||
if(anim_player.is_playing()):
|
if(anim_player.is_playing()):
|
||||||
position = blobby.position
|
position = blobby.position
|
||||||
prev_pos = position
|
prev_pos = position
|
||||||
@ -74,6 +91,8 @@ func _physics_process(delta: float) -> void:
|
|||||||
right_move_time = max(0, right_move_time - delta)
|
right_move_time = max(0, right_move_time - delta)
|
||||||
|
|
||||||
_adapt_to_movement(player_vel)
|
_adapt_to_movement(player_vel)
|
||||||
|
if camera_state == "centered":
|
||||||
|
_adapt_to_input(player_vel)
|
||||||
position = blobby.position
|
position = blobby.position
|
||||||
prev_pos = position
|
prev_pos = position
|
||||||
_update_lighting_shader()
|
_update_lighting_shader()
|
||||||
@ -114,36 +133,25 @@ func _adapt_to_movement(velocity: Vector2) -> void:
|
|||||||
if(left_move_time >= offset_adapt_seconds && !anim_player.is_playing()):
|
if(left_move_time >= offset_adapt_seconds && !anim_player.is_playing()):
|
||||||
left_move_time = 0
|
left_move_time = 0
|
||||||
target_offset.x = -camera_horizontal_shift
|
target_offset.x = -camera_horizontal_shift
|
||||||
if(offset == target_offset ||
|
if(offset == target_offset):
|
||||||
left_edge_pos + target_offset.x - 24 < limit_left ||
|
|
||||||
right_edge_pos + target_offset.x + 24 > limit_right ):
|
|
||||||
return
|
return
|
||||||
offset_track = shiftLeft.find_track(".:offset")
|
offset_track = shiftLeft.find_track(".:offset")
|
||||||
shiftLeft.track_set_key_value(offset_track, 0, offset)
|
shiftLeft.track_set_key_value(offset_track, 0, offset)
|
||||||
shiftLeft.track_set_key_value(offset_track, 1, target_offset)
|
shiftLeft.track_set_key_value(offset_track, 1, target_offset)
|
||||||
# limit_left = original_limit_left + camera_horizontal_shift
|
camera_state = "shiftedLeft"
|
||||||
var limit_left_track = shiftLeft.find_track(".:limit_left")
|
|
||||||
var new_limit_left = original_limit_left + camera_horizontal_shift
|
|
||||||
shiftLeft.track_set_key_value(limit_left_track, 0, limit_left)
|
|
||||||
shiftLeft.track_set_key_value(limit_left_track, 1, new_limit_left)
|
|
||||||
anim_player.play("shiftingLeft")
|
anim_player.play("shiftingLeft")
|
||||||
elif(right_move_time >= offset_adapt_seconds && !anim_player.is_playing()):
|
elif(right_move_time >= offset_adapt_seconds && !anim_player.is_playing()):
|
||||||
right_move_time = 0
|
right_move_time = 0
|
||||||
target_offset.x = camera_horizontal_shift
|
target_offset.x = camera_horizontal_shift
|
||||||
if(offset == target_offset ||
|
if(offset == target_offset):
|
||||||
left_edge_pos + target_offset.x - 24 < limit_left ||
|
|
||||||
right_edge_pos + target_offset.x + 24 > limit_right ):
|
|
||||||
return
|
return
|
||||||
offset_track = shiftRight.find_track(".:offset")
|
offset_track = shiftRight.find_track(".:offset")
|
||||||
shiftRight.track_set_key_value(offset_track, 0, offset)
|
shiftRight.track_set_key_value(offset_track, 0, offset)
|
||||||
shiftRight.track_set_key_value(offset_track, 1, target_offset)
|
shiftRight.track_set_key_value(offset_track, 1, target_offset)
|
||||||
# limit_right = original_limit_right - camera_horizontal_shift
|
camera_state = "shiftedRight"
|
||||||
var limit_right_track = shiftRight.find_track(".:limit_right")
|
|
||||||
var new_limit_right = original_limit_right - camera_horizontal_shift
|
|
||||||
shiftRight.track_set_key_value(limit_right_track, 0, limit_right)
|
|
||||||
shiftRight.track_set_key_value(limit_right_track, 1, new_limit_right)
|
|
||||||
anim_player.play("shiftingRight")
|
anim_player.play("shiftingRight")
|
||||||
elif(slow_time >= offset_reset_seconds):
|
elif(slow_time >= offset_reset_seconds &&
|
||||||
|
!(Input.is_action_pressed("up") || Input.is_action_pressed("duck"))):
|
||||||
slow_time = 0
|
slow_time = 0
|
||||||
target_offset.x = 0
|
target_offset.x = 0
|
||||||
if(offset == target_offset):
|
if(offset == target_offset):
|
||||||
@ -152,21 +160,32 @@ func _adapt_to_movement(velocity: Vector2) -> void:
|
|||||||
offset_track = shiftCenter.find_track(".:offset")
|
offset_track = shiftCenter.find_track(".:offset")
|
||||||
shiftCenter.track_set_key_value(offset_track, 0, offset)
|
shiftCenter.track_set_key_value(offset_track, 0, offset)
|
||||||
shiftCenter.track_set_key_value(offset_track, 1, target_offset)
|
shiftCenter.track_set_key_value(offset_track, 1, target_offset)
|
||||||
var limit_left_track = shiftCenter.find_track(".:limit_left")
|
camera_state = "centered"
|
||||||
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")
|
anim_player.play("shiftingCenter")
|
||||||
return
|
return
|
||||||
|
|
||||||
|
func _adapt_to_input(velocity: Vector2) -> void:
|
||||||
|
# TODO Den bug dass man damit durch die map gucken kann wenn man sich weiter bewegt
|
||||||
|
# lasse ich erstmal drin
|
||||||
|
if Input.is_action_pressed("duck"):
|
||||||
|
if(original_limit_bottom - position.y - 2 > screen_bottom.y && offset.y < 48):
|
||||||
|
offset.y += 1
|
||||||
|
elif Input.is_action_pressed("up"):
|
||||||
|
if(original_limit_top - position.y + 2 < screen_top.y && offset.y > -48):
|
||||||
|
offset.y -= 1
|
||||||
|
|
||||||
|
func _adjust_horizontal_offset(delta: float) -> void:
|
||||||
|
if (limit_left - position.x - screen_left.x > 0.00001):
|
||||||
|
print(limit_left - position.x - screen_left.x)
|
||||||
|
if (anim_player.is_playing()):
|
||||||
|
anim_player.stop(false)
|
||||||
|
offset.x += (limit_left - position.x - screen_left.x)/3
|
||||||
|
if (limit_right - position.x - screen_right.x < 0.00001):
|
||||||
|
print(limit_right - position.x - screen_right.x)
|
||||||
|
if (anim_player.is_playing()):
|
||||||
|
anim_player.stop(false)
|
||||||
|
offset.x += (limit_right - position.x - screen_right.x)/3
|
||||||
|
|
||||||
func reset_limits() -> void:
|
func reset_limits() -> void:
|
||||||
limit_left = original_limit_left
|
limit_left = original_limit_left
|
||||||
limit_right = original_limit_right
|
limit_right = original_limit_right
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
[gd_scene load_steps=52 format=2]
|
[gd_scene load_steps=53 format=2]
|
||||||
|
|
||||||
[ext_resource path="res://src/Actors/BlobbyCam.gd" type="Script" id=1]
|
[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]
|
[ext_resource path="res://assets/environment/background/Asteroids-Near.png" type="Texture" id=2]
|
||||||
@ -577,7 +577,7 @@ tracks/1/path = NodePath(".:limit_left")
|
|||||||
tracks/1/interp = 1
|
tracks/1/interp = 1
|
||||||
tracks/1/loop_wrap = true
|
tracks/1/loop_wrap = true
|
||||||
tracks/1/imported = false
|
tracks/1/imported = false
|
||||||
tracks/1/enabled = true
|
tracks/1/enabled = false
|
||||||
tracks/1/keys = {
|
tracks/1/keys = {
|
||||||
"times": PoolRealArray( 0, 0.6 ),
|
"times": PoolRealArray( 0, 0.6 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
@ -589,7 +589,7 @@ tracks/2/path = NodePath(".:limit_top")
|
|||||||
tracks/2/interp = 1
|
tracks/2/interp = 1
|
||||||
tracks/2/loop_wrap = true
|
tracks/2/loop_wrap = true
|
||||||
tracks/2/imported = false
|
tracks/2/imported = false
|
||||||
tracks/2/enabled = true
|
tracks/2/enabled = false
|
||||||
tracks/2/keys = {
|
tracks/2/keys = {
|
||||||
"times": PoolRealArray( 0, 0.6 ),
|
"times": PoolRealArray( 0, 0.6 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
@ -601,7 +601,7 @@ tracks/3/path = NodePath(".:limit_right")
|
|||||||
tracks/3/interp = 1
|
tracks/3/interp = 1
|
||||||
tracks/3/loop_wrap = true
|
tracks/3/loop_wrap = true
|
||||||
tracks/3/imported = false
|
tracks/3/imported = false
|
||||||
tracks/3/enabled = true
|
tracks/3/enabled = false
|
||||||
tracks/3/keys = {
|
tracks/3/keys = {
|
||||||
"times": PoolRealArray( 0, 0.6 ),
|
"times": PoolRealArray( 0, 0.6 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
@ -613,7 +613,7 @@ tracks/4/path = NodePath(".:limit_bottom")
|
|||||||
tracks/4/interp = 1
|
tracks/4/interp = 1
|
||||||
tracks/4/loop_wrap = true
|
tracks/4/loop_wrap = true
|
||||||
tracks/4/imported = false
|
tracks/4/imported = false
|
||||||
tracks/4/enabled = true
|
tracks/4/enabled = false
|
||||||
tracks/4/keys = {
|
tracks/4/keys = {
|
||||||
"times": PoolRealArray( 0, 0.6 ),
|
"times": PoolRealArray( 0, 0.6 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
@ -665,7 +665,7 @@ tracks/1/path = NodePath(".:limit_left")
|
|||||||
tracks/1/interp = 1
|
tracks/1/interp = 1
|
||||||
tracks/1/loop_wrap = true
|
tracks/1/loop_wrap = true
|
||||||
tracks/1/imported = false
|
tracks/1/imported = false
|
||||||
tracks/1/enabled = true
|
tracks/1/enabled = false
|
||||||
tracks/1/keys = {
|
tracks/1/keys = {
|
||||||
"times": PoolRealArray( 0, 0.6 ),
|
"times": PoolRealArray( 0, 0.6 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
@ -705,7 +705,47 @@ tracks/1/path = NodePath(".:limit_right")
|
|||||||
tracks/1/interp = 1
|
tracks/1/interp = 1
|
||||||
tracks/1/loop_wrap = true
|
tracks/1/loop_wrap = true
|
||||||
tracks/1/imported = false
|
tracks/1/imported = false
|
||||||
tracks/1/enabled = true
|
tracks/1/enabled = false
|
||||||
|
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(".:drag_margin_right")
|
||||||
|
tracks/2/interp = 1
|
||||||
|
tracks/2/loop_wrap = true
|
||||||
|
tracks/2/imported = false
|
||||||
|
tracks/2/enabled = false
|
||||||
|
tracks/2/keys = {
|
||||||
|
"times": PoolRealArray( 0, 0.6 ),
|
||||||
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ 0.2, 0.05 ]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id=16]
|
||||||
|
resource_name = "shiftingUp"
|
||||||
|
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 ),
|
||||||
|
"update": 0,
|
||||||
|
"values": [ Vector2( 0, 0 ), Vector2( 0, 0 ) ]
|
||||||
|
}
|
||||||
|
tracks/1/type = "value"
|
||||||
|
tracks/1/path = NodePath(".:limit_right")
|
||||||
|
tracks/1/interp = 1
|
||||||
|
tracks/1/loop_wrap = true
|
||||||
|
tracks/1/imported = false
|
||||||
|
tracks/1/enabled = false
|
||||||
tracks/1/keys = {
|
tracks/1/keys = {
|
||||||
"times": PoolRealArray( 0, 0.6 ),
|
"times": PoolRealArray( 0, 0.6 ),
|
||||||
"transitions": PoolRealArray( 1, 1 ),
|
"transitions": PoolRealArray( 1, 1 ),
|
||||||
@ -830,9 +870,7 @@ current = true
|
|||||||
zoom = Vector2( 0.75, 0.75 )
|
zoom = Vector2( 0.75, 0.75 )
|
||||||
drag_margin_h_enabled = true
|
drag_margin_h_enabled = true
|
||||||
drag_margin_v_enabled = true
|
drag_margin_v_enabled = true
|
||||||
drag_margin_left = 0.1
|
|
||||||
drag_margin_top = 0.0
|
drag_margin_top = 0.0
|
||||||
drag_margin_right = 0.1
|
|
||||||
drag_margin_bottom = 0.25
|
drag_margin_bottom = 0.25
|
||||||
editor_draw_drag_margin = true
|
editor_draw_drag_margin = true
|
||||||
script = ExtResource( 1 )
|
script = ExtResource( 1 )
|
||||||
@ -845,6 +883,7 @@ anims/deathCamLateRotation = SubResource( 14 )
|
|||||||
anims/shiftingCenter = SubResource( 11 )
|
anims/shiftingCenter = SubResource( 11 )
|
||||||
anims/shiftingLeft = SubResource( 12 )
|
anims/shiftingLeft = SubResource( 12 )
|
||||||
anims/shiftingRight = SubResource( 13 )
|
anims/shiftingRight = SubResource( 13 )
|
||||||
|
anims/shiftingUp = SubResource( 16 )
|
||||||
|
|
||||||
[node name="LightAnimationPlayer" type="AnimationPlayer" parent="."]
|
[node name="LightAnimationPlayer" type="AnimationPlayer" parent="."]
|
||||||
root_node = NodePath("../ParallaxBackground/ParallaxLayer4")
|
root_node = NodePath("../ParallaxBackground/ParallaxLayer4")
|
||||||
@ -939,10 +978,10 @@ texture = ExtResource( 8 )
|
|||||||
[node name="AnimatedSprite" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"]
|
[node name="AnimatedSprite" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"]
|
||||||
visible = false
|
visible = false
|
||||||
frames = SubResource( 7 )
|
frames = SubResource( 7 )
|
||||||
frame = 7
|
frame = 13
|
||||||
playing = true
|
playing = true
|
||||||
|
|
||||||
[node name="AnimatedSprite2" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"]
|
[node name="AnimatedSprite2" type="AnimatedSprite" parent="ParallaxBackground/ParallaxLayer5"]
|
||||||
frames = SubResource( 8 )
|
frames = SubResource( 8 )
|
||||||
frame = 12
|
frame = 4
|
||||||
playing = true
|
playing = true
|
||||||
|
|||||||
@ -199,7 +199,8 @@ script = ExtResource( 1 )
|
|||||||
vision_distance = 8.0
|
vision_distance = 8.0
|
||||||
loose_target_seconds = 5.0
|
loose_target_seconds = 5.0
|
||||||
patrolling = true
|
patrolling = true
|
||||||
acceleration = 80
|
acceleration = 70
|
||||||
|
max_speed = 80
|
||||||
weight = 0.3
|
weight = 0.3
|
||||||
|
|
||||||
[node name="Statemachine" type="Node2D" parent="."]
|
[node name="Statemachine" type="Node2D" parent="."]
|
||||||
|
|||||||
@ -72,8 +72,9 @@ func _on_StompDetector_body_entered(body: Node) -> void:
|
|||||||
if !body.is_in_group("player"):
|
if !body.is_in_group("player"):
|
||||||
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
|
||||||
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(50):
|
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")
|
||||||
|
|||||||
@ -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 = 10
|
frame = 8
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 10
|
frame = 8
|
||||||
|
|
||||||
[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,14 +44,14 @@ 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 = 11
|
frame = 3
|
||||||
|
|
||||||
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
|
||||||
frame = 11
|
frame = 3
|
||||||
|
|
||||||
[node name="Blobby" parent="." instance=ExtResource( 9 )]
|
[node name="Blobby" parent="." instance=ExtResource( 9 )]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
position = Vector2( 2385, -81 )
|
position = Vector2( 0, -3 )
|
||||||
|
|
||||||
[node name="AnimationTree" parent="Blobby/BlobbySprite" index="0"]
|
[node name="AnimationTree" parent="Blobby/BlobbySprite" index="0"]
|
||||||
parameters/playback = SubResource( 4 )
|
parameters/playback = SubResource( 4 )
|
||||||
|
|||||||
@ -60,7 +60,7 @@ size_flags_horizontal = 3
|
|||||||
[node name="PlayButton" parent="MenuContainer/Buttons" instance=ExtResource( 3 )]
|
[node name="PlayButton" parent="MenuContainer/Buttons" instance=ExtResource( 3 )]
|
||||||
margin_right = 296.0
|
margin_right = 296.0
|
||||||
margin_bottom = 48.0
|
margin_bottom = 48.0
|
||||||
next_scene_path = "res://src/Levels/01 Level.tscn"
|
next_scene_path = "res://src/Levels/Level 1.tscn"
|
||||||
|
|
||||||
[node name="QuitButton" parent="MenuContainer/Buttons" instance=ExtResource( 1 )]
|
[node name="QuitButton" parent="MenuContainer/Buttons" instance=ExtResource( 1 )]
|
||||||
anchor_left = 0.0
|
anchor_left = 0.0
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user