add archetype slot/mode fields to perks

main
Artur David 2026-06-23 08:36:20 +02:00
parent 44d83f30f1
commit 6d1fcfce07
2 changed files with 9 additions and 0 deletions

View File

@ -6,4 +6,6 @@ class_name Perk
@export var stats: String = "" @export var stats: String = ""
@export var spell: String = SpellLibrary.NONE @export var spell: String = SpellLibrary.NONE
@export var icon: Texture2D = null @export var icon: Texture2D = null
@export var archetype_slot: String = ""
@export var requires_mode: String = ""
var effect: Callable var effect: Callable

View File

@ -6,6 +6,7 @@ var fireball = preload("res://scenes/fireball.tscn")
var throwing_knife = preload("res://scenes/throwing_knive.tscn") var throwing_knife = preload("res://scenes/throwing_knive.tscn")
var cauldron var cauldron
var available_perks: Array[Perk] = [] var available_perks: Array[Perk] = []
var spell_modes: Dictionary = {}
var fireball_aoe_enabled = false var fireball_aoe_enabled = false
var laser_retarget_enabled = false var laser_retarget_enabled = false
var throwing_knife_enabled = false var throwing_knife_enabled = false
@ -39,6 +40,12 @@ func _stat_new(label: String, val: String) -> String:
func _stat_toggle(label: String) -> String: func _stat_toggle(label: String) -> String:
return "[color=#aaaaaa]" + label + "[/color]\n[color=#888888]OFF[/color] → [color=#77dd77]ON[/color]" return "[color=#aaaaaa]" + label + "[/color]\n[color=#888888]OFF[/color] → [color=#77dd77]ON[/color]"
func get_mode(slot: String) -> String:
return spell_modes.get(slot, "base")
func set_mode(slot: String, mode: String) -> void:
spell_modes[slot] = mode
func _ready() -> void: func _ready() -> void:
cauldron = witch.get_node("CauldronBar") cauldron = witch.get_node("CauldronBar")