This commit is contained in:
Marek Lenczewski
2026-04-02 16:02:24 +02:00
parent e76c66eda6
commit 47f4fe3d90
106 changed files with 434 additions and 204 deletions

37
player/role.gd Normal file
View File

@@ -0,0 +1,37 @@
extends Node
enum Role { TANK, DAMAGE, HEALER }
var current_role: int = Role.DAMAGE
@export var tank_set: AbilitySet
@export var damage_set: AbilitySet
@export var healer_set: AbilitySet
@onready var player: CharacterBody3D = get_parent()
func _unhandled_input(event: InputEvent) -> void:
if event.is_action_pressed("class_tank"):
set_role(Role.TANK)
elif event.is_action_pressed("class_damage"):
set_role(Role.DAMAGE)
elif event.is_action_pressed("class_healer"):
set_role(Role.HEALER)
func set_role(new_role: int) -> void:
current_role = new_role
EventBus.role_changed.emit(player, current_role)
func get_role_icon() -> String:
match current_role:
Role.TANK: return "T"
Role.DAMAGE: return "D"
Role.HEALER: return "H"
return ""
func get_ability_set() -> AbilitySet:
match current_role:
Role.TANK: return tank_set
Role.DAMAGE: return damage_set
Role.HEALER: return healer_set
return damage_set