Decouple everything from globals
This commit is contained in:
@@ -37,11 +37,12 @@ func _ready() -> void:
|
||||
_generator.purchase_failed.connect(_on_generator_updated)
|
||||
_generator.buff_purchased.connect(_on_generator_updated)
|
||||
_generator.buff_purchase_failed.connect(_on_generator_updated)
|
||||
GameState.currency_changed.connect(_on_currency_changed)
|
||||
|
||||
GameState.generator_state_changed.connect(_on_generator_state_changed)
|
||||
GameState.generator_buff_level_changed.connect(_on_generator_buff_level_changed)
|
||||
GameState.generator_buff_unlocked_changed.connect(_on_generator_buff_unlocked_changed)
|
||||
|
||||
if _generator.game_state:
|
||||
_generator.game_state.currency_changed.connect(_on_currency_changed)
|
||||
_generator.game_state.generator_state_changed.connect(_on_generator_state_changed)
|
||||
_generator.game_state.generator_buff_level_changed.connect(_on_generator_buff_level_changed)
|
||||
_generator.game_state.generator_buff_unlocked_changed.connect(_on_generator_buff_unlocked_changed)
|
||||
|
||||
_name_label.text = _generator.data.name if _generator.data != null else "Generator"
|
||||
_build_buff_rows()
|
||||
@@ -123,9 +124,9 @@ func _refresh_buff_rows(can_interact: bool) -> void:
|
||||
if not buff_unlocked:
|
||||
var locked_hint: String = "Locked"
|
||||
var unlock_goal_currency: Resource = buff.get_unlock_goal_currency()
|
||||
if buff.has_unlock_goal() and unlock_goal_currency != null:
|
||||
var goal_currency_id: StringName = GameState.get_currency_id(unlock_goal_currency)
|
||||
var currency_name: String = GameState.get_currency_name(goal_currency_id)
|
||||
if buff.has_unlock_goal() and unlock_goal_currency != null and _generator.game_state:
|
||||
var goal_currency_id: StringName = _generator.game_state.get_currency_id(unlock_goal_currency)
|
||||
var currency_name: String = _generator.game_state.get_currency_name(goal_currency_id)
|
||||
var required_text: String = buff.get_unlock_goal_amount().to_string_suffix(2)
|
||||
locked_hint = "Unlock at %s %s" % [required_text, currency_name]
|
||||
|
||||
@@ -141,7 +142,7 @@ func _refresh_buff_rows(can_interact: bool) -> void:
|
||||
|
||||
var cost: BigNumber = _generator.get_buff_cost(buff.id)
|
||||
var cost_currency_id: StringName = _generator.get_buff_cost_currency_id(buff.id)
|
||||
var currency_label: String = GameState.get_currency_name(cost_currency_id)
|
||||
var currency_label: String = _generator.game_state.get_currency_name(cost_currency_id) if _generator.game_state else "Unknown"
|
||||
var cost_text: String = "%s %s" % [cost.to_string_suffix(2), currency_label]
|
||||
var can_buy: bool = can_interact and _generator.can_buy_buff(buff.id)
|
||||
row.tile.set_runtime(level, effect_text, cost_text, can_buy, false)
|
||||
@@ -161,7 +162,7 @@ func _refresh_generator_ui() -> void:
|
||||
_owned_value.text = str(_generator.owned)
|
||||
if can_interact:
|
||||
var purchase_currency_id: StringName = _generator.get_purchase_currency_id()
|
||||
var purchase_currency_name: String = GameState.get_currency_name(purchase_currency_id)
|
||||
var purchase_currency_name: String = _generator.game_state.get_currency_name(purchase_currency_id) if _generator.game_state else "Unknown"
|
||||
if purchase_currency_name.is_empty():
|
||||
purchase_currency_name = "Unconfigured"
|
||||
_next_cost_value.text = "%s %s" % [_generator.get_next_cost().to_string_suffix(2), purchase_currency_name]
|
||||
|
||||
Reference in New Issue
Block a user