33 lines
1.1 KiB
GDScript
33 lines
1.1 KiB
GDScript
extends Node2D
|
|
|
|
const LIST_OF_ENTITIES = ["ArcherTower", "WizardTower", "MortarTower", "Mine", "StickTrap", "Wall"]
|
|
func _ready() -> void:
|
|
set_process_input(true)
|
|
|
|
func _process(delta: float) -> void:
|
|
position = get_viewport().get_mouse_position()
|
|
|
|
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():
|
|
var list_of_entities = get_node("Area2D").get_overlapping_bodies()
|
|
for i in list_of_entities:
|
|
for j in LIST_OF_ENTITIES:
|
|
if i.get_parent().name.contains(j):
|
|
match j:
|
|
"ArcherTower":
|
|
get_parent().get_node("SidePanel").Update_Coins(60)
|
|
"WizardTower":
|
|
get_parent().get_node("SidePanel").Update_Coins(30)
|
|
"MortarTower":
|
|
get_parent().get_node("SidePanel").Update_Coins(80)
|
|
"Mine":
|
|
get_parent().get_node("SidePanel").Update_Coins(10)
|
|
"StickTrap":
|
|
get_parent().get_node("SidePanel").Update_Coins(5)
|
|
"Wall":
|
|
get_parent().get_node("SidePanel").Update_Coins(0)
|
|
i.get_parent().queue_free()
|
|
queue_free()
|
|
|