1
Fork 0
mirror of https://github.com/Steffo99/hella-farm.git synced 2025-02-16 17:13:58 +00:00
hella-farm/entities/imp.gd

40 lines
893 B
GDScript3
Raw Normal View History

extends BetterCharacterBody2D
class_name Imp
2024-04-15 02:45:18 +02:00
2024-04-26 03:57:07 +02:00
@onready var sprite: SpriteLeftRight = %"Sprite"
@onready var eater: Eater = %"Eater"
2024-04-24 04:16:09 +02:00
@onready var animator: AnimationPlayer = %"Animator"
func _ready():
# Setup index and layers
_on_fallen()
2024-04-19 03:39:07 +02:00
func _on_move(movement: Vector2):
better_move_and_collide(movement)
2024-04-19 01:46:25 +02:00
sprite.handle_move(movement)
2024-04-19 03:39:07 +02:00
func _on_eater_eaten(edible: Edible) -> void:
edible.get_parent().queue_free()
2024-04-20 05:00:23 +02:00
2024-04-22 01:05:21 +02:00
func _on_dragged(_cursor: Cursor) -> void:
2024-04-20 05:00:23 +02:00
collision_layer = 16
collision_mask = 18
z_index = Enums.ZIndex.EntityAir
2024-04-20 05:00:23 +02:00
eater.collision_mask = 16
2024-04-24 04:16:09 +02:00
animator.play(&"drag_start")
2024-04-20 05:00:23 +02:00
2024-04-22 01:05:21 +02:00
func _on_fallen() -> void:
2024-04-20 05:00:23 +02:00
collision_layer = 8
collision_mask = 14
z_index = Enums.ZIndex.EntityGround
2024-04-20 05:00:23 +02:00
eater.collision_mask = 8
2024-04-24 04:16:09 +02:00
animator.play(&"RESET")
2024-04-29 03:20:27 +02:00
func _on_trapped() -> void:
z_index = Enums.ZIndex.EntitySacrifice
func _on_freed() -> void:
z_index = Enums.ZIndex.EntityGround