summaryrefslogtreecommitdiff
path: root/Scripts/Weapons/Melee.gd
blob: 33f2807e85c9b3b3a39539a44267a77f67aca537 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
extends Node2D

@export var animator : AnimationPlayer
@export var atk : int
@export var area : Area2D
@export var knock : Vector2 = Vector2(700, -300)
@export_flags_2d_physics var mask
@export var disable_aft_atk : bool = false

func _ready() -> void:
	area.collision_mask = mask

#func _process(_delta: float) -> void:
#	if area.monitoring:
#		modulate = Color.GREEN
#	else:
#		modulate = Color.WHITE

func action() -> void:
	if animator.is_playing():
		return

	area.monitoring = true

	if scale.x < 0:
		animator.play("swing_flip")
	else:
		animator.play("swing")

func _on_area_2d_body_entered(body:Node2D) -> void:
	if body is Entity:
		body.damage(atk)
		if disable_aft_atk: area.set_deferred("monitoring", false)
		if scale.x < 0: body.knockback = Vector2(-knock.x, knock.y)
		else: body.knockback = knock