Goomba.gd 863 B

12345678910111213141516171819202122232425262728293031323334353637
  1. extends Enemy
  2. var can_move := true
  3. var angry := false
  4. var can_turn := false
  5. func _ready() -> void:
  6. $Sprite.play("Walk")
  7. func _physics_process(_delta: float) -> void:
  8. if can_turn:
  9. $Sprite.scale.x = direction
  10. func stomped_on(player: Player) -> void:
  11. AudioManager.play_sfx("enemy_stomp", global_position)
  12. can_move = false
  13. DiscoLevel.combo_amount += 1
  14. $BasicEnemyMovement.can_move = false
  15. player.enemy_bounce_off()
  16. $Sprite.play("Stomped")
  17. $Hitbox.queue_free()
  18. await get_tree().create_timer(0.5, false).timeout
  19. queue_free()
  20. func damage(object: Node2D) -> void:
  21. if angry:
  22. die_from_object(object)
  23. $ScoreNoteSpawner.spawn_note(200)
  24. return
  25. AudioManager.play_sfx("kick", global_position)
  26. velocity.y = -150
  27. direction = sign(global_position.x - object.global_position.x)
  28. angry = true
  29. $Sprite.play("Angry")
  30. $BasicEnemyMovement.move_speed *= 2