Move generator panel ui inside generator
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
extends VBoxContainer
|
||||
class_name GeneratorPanel
|
||||
extends Container
|
||||
|
||||
const GENERATOR_BUFF_TILE_SCENE: PackedScene = preload("res://generator_buff_tile.tscn")
|
||||
|
||||
@@ -12,22 +13,25 @@ class BuffRow extends RefCounted:
|
||||
|
||||
@export var _generator: CurrencyGenerator
|
||||
|
||||
@onready var _buy_button: Button = $HBoxContainerGenerators/BuyOneButton
|
||||
@onready var _buy_max_button: Button = $HBoxContainerGenerators/BuyMaxButton
|
||||
@onready var _name_label: Label = $Label
|
||||
@onready var _owned_value: Label = $GeneratorStatsGrid/OwnedValue
|
||||
@onready var _next_cost_value: Label = $GeneratorStatsGrid/NextCostValue
|
||||
@onready var _production_value: Label = $GeneratorStatsGrid/ProductionValue
|
||||
@onready var _buffs_section: VBoxContainer = $BuffsSection
|
||||
@onready var _buffs_list: VBoxContainer = $BuffsSection/BuffsList
|
||||
@onready var _buy_button: Button = $VBoxContainer/HBoxContainerGenerators/BuyOneButton
|
||||
@onready var _buy_max_button: Button = $VBoxContainer/HBoxContainerGenerators/BuyMaxButton
|
||||
@onready var _name_label: Label = $VBoxContainer/Label
|
||||
@onready var _owned_value: Label = $VBoxContainer/GeneratorStatsGrid/OwnedValue
|
||||
@onready var _next_cost_value: Label = $VBoxContainer/GeneratorStatsGrid/NextCostValue
|
||||
@onready var _production_value: Label = $VBoxContainer/GeneratorStatsGrid/ProductionValue
|
||||
@onready var _buffs_section: VBoxContainer = $VBoxContainer/BuffsSection
|
||||
@onready var _buffs_list: VBoxContainer = $VBoxContainer/BuffsSection/BuffsList
|
||||
|
||||
var _buff_rows: Array[BuffRow] = []
|
||||
var _generator_id: StringName = &""
|
||||
|
||||
func _ready() -> void:
|
||||
if _generator == null:
|
||||
push_warning("GeneratorContainer '%s' has no generator assigned." % String(name))
|
||||
return
|
||||
|
||||
_generator_id = _generator.get_generator_id()
|
||||
|
||||
_generator.purchase_completed.connect(_on_generator_updated)
|
||||
_generator.production_tick.connect(_on_generator_updated)
|
||||
_generator.purchase_failed.connect(_on_generator_updated)
|
||||
@@ -62,18 +66,18 @@ func _on_generator_updated(_a = null, _b = null, _c = null, _d = null) -> void:
|
||||
_refresh_generator_ui()
|
||||
|
||||
func _on_generator_state_changed(generator_id: StringName, _state: Dictionary) -> void:
|
||||
if generator_id == _generator.get_generator_id():
|
||||
if generator_id == _generator_id:
|
||||
visible = true
|
||||
_refresh_generator_ui()
|
||||
|
||||
func _on_generator_buff_level_changed(generator_id: StringName, _buff_id: StringName, _new_level: int) -> void:
|
||||
if generator_id != _generator.get_generator_id():
|
||||
if generator_id != _generator_id:
|
||||
return
|
||||
|
||||
_refresh_generator_ui()
|
||||
|
||||
func _on_generator_buff_unlocked_changed(generator_id: StringName, _buff_id: StringName, _unlocked: bool) -> void:
|
||||
if generator_id != _generator.get_generator_id():
|
||||
if generator_id != _generator_id:
|
||||
return
|
||||
|
||||
_refresh_generator_ui()
|
||||
|
||||
Reference in New Issue
Block a user