Implements modifier and stats system
Adds a modifier and stats system to manage combat-related attributes. Introduces StatsComponent for storing entity statistics and ModifierManager for applying dynamic modifiers. Recalculates stats based on modifier type and priority. Updates projectile and weapon components to utilize the new stats system.
This commit is contained in:
parent
f97521decc
commit
19cc8cb573
13 changed files with 178 additions and 65 deletions
|
|
@ -1,18 +1,6 @@
|
|||
@icon("res://assets/editor/64x64/fc728.png")
|
||||
extends WeaponComponent
|
||||
extends Node2D
|
||||
class_name MeleeWeaponComponent
|
||||
|
||||
var stats = {
|
||||
"piercing": 3,
|
||||
}
|
||||
var combined_stats = {}
|
||||
|
||||
func _init() -> void:
|
||||
Log.pr("MeleeWeaponComponent initialized")
|
||||
super._init()
|
||||
|
||||
# Combine the base stats with the stats from the parent class
|
||||
combined_stats = base_stats.duplicate()
|
||||
combined_stats.merge(stats)
|
||||
|
||||
Log.pr("Combined stats: ", combined_stats)
|
||||
Loading…
Add table
Add a link
Reference in a new issue