fix: angle enemy bounce

This commit is contained in:
Jakob Feldmann 2023-08-01 21:13:34 +02:00
parent 29489a6565
commit 328abd6b54
6 changed files with 31 additions and 33 deletions

View File

@ -2,25 +2,25 @@ extends Actor
class_name Enemy
func _on_StompDetector_body_entered(body: Node) -> void:
if !body.is_in_group("player"):
return
var incoming_vel_vector: Vector2 = body.velocity.normalized()
print(rad2deg(abs(incoming_vel_vector.angle_to(Vector2.DOWN.rotated(rotation)))))
if abs(incoming_vel_vector.angle_to(Vector2.DOWN.rotated(rotation))) > deg2rad(40):
print("too shallow entry")
return
signalManager.emit_signal("got_stomped")
remove_from_group("harmful")
$StompDetector.remove_from_group("weakpoint")
get_node("EnemyBody").disabled = true
die()
if !body.is_in_group("player"):
return
var incoming_vel_vector: Vector2 = body.velocity.normalized()
print(rad2deg(abs(incoming_vel_vector.angle_to(Vector2.DOWN.rotated(rotation)))))
if abs(incoming_vel_vector.angle_to(Vector2.DOWN.rotated(rotation))) > deg2rad(90):
print("too shallow entry")
return
signalManager.emit_signal("got_stomped")
remove_from_group("harmful")
$StompDetector.remove_from_group("weakpoint")
get_node("EnemyBody").disabled = true
die()
func die() -> void:
queue_free()
# TODO make batterr
levelState.kills += 1
queue_free()
# TODO make batterr
levelState.kills += 1
func _on_EnemySkin_area_entered(area:Area2D) -> void:
if area.is_in_group("harmful"):
get_node("EnemyBody").disabled = true
die()
if area.is_in_group("harmful"):
get_node("EnemyBody").disabled = true
die()

View File

@ -63,10 +63,7 @@ drag_margin_top = 0.1
drag_margin_bottom = 0.1
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
frame = 9
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
frame = 8
frame = 5
[node name="Blobby" parent="." instance=ExtResource( 8 )]
unique_name_in_owner = true

View File

@ -80,10 +80,10 @@ wait_time = 20.0
unique_name_in_owner = true
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
frame = 9
frame = 2
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
frame = 8
frame = 1
[node name="Blobby" parent="." instance=ExtResource( 10 )]
unique_name_in_owner = true

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=28 format=2]
[gd_scene load_steps=29 format=2]
[ext_resource path="res://src/Environment/GreenHouseTiles.tres" type="TileSet" id=1]
[ext_resource path="res://src/Environment/DropThroughPlatforms.tres" type="TileSet" id=2]
@ -19,6 +19,7 @@
[ext_resource path="res://assets/contraption/floating_platform_test.png" type="Texture" id=17]
[ext_resource path="res://src/Contraptions/Triggers/GateButton.tscn" type="PackedScene" id=18]
[ext_resource path="res://src/Platforms/FlyingLaserCutter.tscn" type="PackedScene" id=19]
[ext_resource path="res://src/Actors/Enemies/Beings/DartingEnemy.tscn" type="PackedScene" id=20]
[sub_resource type="AnimationNodeStateMachinePlayback" id=4]
@ -164,10 +165,10 @@ unique_name_in_owner = true
drag_margin_bottom = 0.3
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
frame = 2
frame = 1
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
frame = 1
frame = 0
[node name="Blobby" parent="." instance=ExtResource( 8 )]
unique_name_in_owner = true
@ -208,6 +209,9 @@ position = Vector2( 0, 24 )
scale = Vector2( 0.5, 0.5 )
next_scene = "res://src/Levels/5 Tutorial Level.tscn"
[node name="DartingEnemy" parent="ElevatorButton/Portal" instance=ExtResource( 20 )]
position = Vector2( -192, -301 )
[node name="Obstacles" type="Node2D" parent="."]
position = Vector2( -412, -173 )

View File

@ -285,11 +285,8 @@ wait_time = 20.0
unique_name_in_owner = true
drag_margin_bottom = 0.3
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
frame = 10
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
frame = 9
frame = 12
[node name="Blobby" parent="." instance=ExtResource( 9 )]
unique_name_in_owner = true

View File

@ -259,10 +259,10 @@ visible = false
drag_margin_bottom = 0.3
[node name="AnimatedSprite" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="4"]
frame = 7
frame = 8
[node name="AnimatedSprite2" parent="BlobbyCam/ParallaxBackground/ParallaxLayer5" index="5"]
frame = 6
frame = 7
[node name="Blobby" parent="." instance=ExtResource( 9 )]
unique_name_in_owner = true