fix: move get_damage logic from player to the enemy;
This commit is contained in:
@@ -31,7 +31,14 @@ func animate_slime():
|
||||
$AnimatedSprite2D.play("move_up")
|
||||
|
||||
func take_damage():
|
||||
pass
|
||||
HP -= 1
|
||||
var flash_red_color: Color = Color(20, 0, 0)
|
||||
modulate = flash_red_color
|
||||
await get_tree().create_timer(0.2).timeout
|
||||
var original_color: Color = Color(1, 1, 1)
|
||||
modulate = original_color
|
||||
if (HP <= 0):
|
||||
queue_free()
|
||||
|
||||
func _on_player_detect_area_body_entered(body):
|
||||
if body is Player:
|
||||
|
||||
@@ -98,14 +98,7 @@ func _on_sword_area_2d_body_entered(body: Node2D) -> void:
|
||||
var knockback_direction: Vector2 = distance_to_enemy.normalized()
|
||||
var knockback_strength = 150
|
||||
body.velocity += knockback_direction * knockback_strength
|
||||
body.HP -= 1
|
||||
var flash_red_color: Color = Color(20, 0, 0)
|
||||
body.modulate = flash_red_color
|
||||
await get_tree().create_timer(0.2).timeout
|
||||
var original_color: Color = Color(1, 1, 1)
|
||||
body.modulate = original_color
|
||||
if (body.HP <= 0):
|
||||
body.queue_free()
|
||||
body.take_damage()
|
||||
|
||||
func attack():
|
||||
$Sword/SwordSFX.play()
|
||||
|
||||
Reference in New Issue
Block a user