- CharacterClass mit Klassen (Krieger, Schurke, Magier) und unbewaffnetem Schaden - Equipment-System mit 7 Slots, Seltenheiten und Stats - Inventar-System mit 20 Slots und Gold - LootTable/LootEntry für Gegner-Drops - Character Panel (C) mit Stats und Equipment-Anzeige - Inventory Panel (I) mit Item-Grid und Tooltips - Klassenauswahl-Menü bei Spielstart - Waffenschaden in Equipment-Spalte, unbewaffnet klassenabhängig Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
32 lines
982 B
GDScript
32 lines
982 B
GDScript
# CharacterClass.gd
|
|
# Definiert Charakterklassen mit Grundstats und Main-Stat
|
|
extends Resource
|
|
class_name CharacterClass
|
|
|
|
enum MainStat { STRENGTH, AGILITY, INTELLIGENCE }
|
|
|
|
@export var class_name_de: String = "Krieger"
|
|
@export var main_stat: MainStat = MainStat.STRENGTH
|
|
|
|
# Grund-Stats auf Level 1
|
|
@export var base_strength: int = 10
|
|
@export var base_agility: int = 10
|
|
@export var base_intelligence: int = 10
|
|
@export var base_stamina: int = 10 # Beeinflusst HP
|
|
|
|
# Stat-Zuwachs pro Level
|
|
@export var strength_per_level: float = 2.0
|
|
@export var agility_per_level: float = 2.0
|
|
@export var intelligence_per_level: float = 2.0
|
|
@export var stamina_per_level: float = 2.0
|
|
|
|
# Unbewaffneter Schaden (klassenabhängig)
|
|
@export var unarmed_min_damage: int = 1
|
|
@export var unarmed_max_damage: int = 2
|
|
@export var unarmed_attack_speed: float = 2.0 # Langsamer als mit Waffe
|
|
|
|
# HP pro Stamina-Punkt
|
|
const HP_PER_STAMINA = 10
|
|
|
|
# Schaden-Skalierung mit Main-Stat
|
|
const DAMAGE_PER_MAIN_STAT = 0.5
|