Alternative way to place tovers and enemies

This commit is contained in:
2025-04-30 21:29:28 +02:00
parent fee9cb99cf
commit 9859ddfe87
6 changed files with 110 additions and 9 deletions

View File

@ -16,6 +16,18 @@ func _ready() -> void:
func _process(delta: float) -> void:
if follower:
position = get_viewport().get_mouse_position()
if name.contains("Mine"):
if get_node("Area2D").get_overlapping_bodies().size() > 1 or self.get_node("CharacterBody2D") not in get_parent().get_node("TrapArea").get_overlapping_bodies():
get_node("CharacterBody2D/AnimatedSprite2D").modulate = Color(255, 0, 0, 0.3)
else:
get_node("CharacterBody2D/AnimatedSprite2D").modulate = Color(1, 1, 1, 1)
if name.contains("StickTrap") or name.contains("Wall"):
if get_node("Area2D").get_overlapping_bodies().size() > 1 or self.get_node("CharacterBody2D") not in get_parent().get_node("TrapArea").get_overlapping_bodies():
get_node("CharacterBody2D/Sprite2D").modulate = Color(255, 0, 0, 0.3)
get_node("CharacterBody2D/Sprite2D2").modulate = Color(255, 0, 0, 0.3)
else:
get_node("CharacterBody2D/Sprite2D").modulate = Color(1, 1, 1, 1)
get_node("CharacterBody2D/Sprite2D2").modulate = Color(1, 1, 1, 1)
func get_if_moving_state():
return follower
@ -23,7 +35,8 @@ func get_if_moving_state():
func _input(event):
if event is InputEventMouseButton and event.button_index == MOUSE_BUTTON_LEFT and event.pressed:
if abs(position) <= get_viewport().get_mouse_position():
follower = false
if get_node("Area2D").get_overlapping_bodies().size() <= 1 and self.get_node("CharacterBody2D") in get_parent().get_node("TrapArea").get_overlapping_bodies():
follower = false
func Explode_Mine() -> void:
get_node("CharacterBody2D/AnimatedSprite2D").scale = Vector2(1,1)