systems rework: buffs, prestige graph, research, modular architecture
Decouples core systems from centralized globals in favor of catalogue-based architecture and data-driven content. Key changes: - Prestige: node-based buff tech tree, graph panel, progress bar - Research: multi-worker system, per-generator research, xp generation - Ascension: meta-currency layer via multi-currency prestige resets - Buffs: refactored as generator-independent via catalogues - UI: currency panel, edge-scrolling camera + zoom, current-goal panel - Alchemy Tower: crafting building with recipe/cost system - Testing: 7 test suites (ascension, prestige, research, goals) - Content: migrated from hardcoded idles/ to gym format (tiny_sword)
This commit was merged in pull request #1.
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
extends HBoxContainer
|
||||
|
||||
@export var currency: Resource
|
||||
@export var currency: Currency
|
||||
@export var game_state: LevelGameState
|
||||
|
||||
@onready var _label_start = $LabelStart
|
||||
@onready var _label_end = $LabelEnd
|
||||
@@ -22,15 +23,16 @@ func set_limits(start: BigNumber, end: BigNumber) -> void:
|
||||
_progress_bar.max_value = _end.get_ratio(_start)
|
||||
|
||||
func _ready() -> void:
|
||||
if currency == null:
|
||||
currency = CurrencyDatabase.get_currency_resource(GameState.GOLD_CURRENCY_ID)
|
||||
if currency == null:
|
||||
push_warning("BigNumberProgressBar '%s' has no currency configured." % String(name))
|
||||
return
|
||||
_currency_id = GameState.get_currency_id(currency)
|
||||
if game_state == null:
|
||||
push_warning("BigNumberProgressBar '%s' has no game_state configured." % String(name))
|
||||
return
|
||||
_currency_id = game_state.get_currency_id(currency)
|
||||
|
||||
GameState.currency_changed.connect(_on_currency_changed)
|
||||
_current = GameState.get_currency_amount_by_id(_currency_id)
|
||||
game_state.currency_changed.connect(_on_currency_changed)
|
||||
_current = game_state.get_currency_amount_by_id(_currency_id)
|
||||
|
||||
set_limits(_current, _current.add(BigNumber.new(1, 1)))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user