Move generator panel ui inside generator

This commit is contained in:
2026-03-20 00:50:49 +01:00
parent bcf228447d
commit 64e9fbbe6f
6 changed files with 61 additions and 52 deletions

View File

@@ -34,7 +34,8 @@ const HUGE_COST_EXPONENT: int = 1000000
## Extra multiplier applied to automatic production output.
@export var run_multiplier: float = 1.0
## Reference to generator UI
@onready var info_generator_container: GeneratorPanel = $GeneratorPanel
## True while the pointer is inside the generator Area2D.
var _mouse_entered: bool = false
@@ -85,14 +86,13 @@ var _generator_id: StringName = &""
## Prevents duplicate state registration in GameState.
var _is_registered: bool = false
## Resolves and registers this generator state before gameplay updates.
func _ready() -> void:
assert(currency != null, "Currency cannot be null")
assert(data != null, "Data cannot be null")
_generator_id = _resolve_generator_id()
_ensure_registered()
#_ensure_registered()
cycle_progress_seconds = 0.0
GameState.currency_changed.connect(_on_currency_changed)
@@ -559,10 +559,13 @@ func _default_available_state() -> bool:
## Area2D callback: pointer entered generator interaction region.
func _on_area_2d_mouse_entered() -> void:
_mouse_entered = true
info_generator_container.visible = true
## Area2D callback: pointer exited generator interaction region.
func _on_area_2d_mouse_exited() -> void:
_mouse_entered = false
info_generator_container.visible = false
func _on_generated_state_changed(generator_id: StringName, _state: Dictionary) -> void:
if generator_id == _generator_id:

View File

@@ -4,6 +4,7 @@
[ext_resource type="Resource" uid="uid://brqaojindcxa5" path="res://idles/currencies/magic.tres" id="2_5tmvy"]
[ext_resource type="Resource" uid="uid://co0mcc2kvcpo5" path="res://idles/generators/primary_generator.tres" id="3_wx13b"]
[ext_resource type="Texture2D" uid="uid://bgtt3wu43tajh" path="res://icon.svg" id="4_ruf1h"]
[ext_resource type="PackedScene" uid="uid://ckos7f22pnmyh" path="res://generator_container.tscn" id="5_bb14m"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_y5m1q"]
size = Vector2(128, 128)
@@ -21,5 +22,12 @@ texture = ExtResource("4_ruf1h")
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D" unique_id=1572620025]
shape = SubResource("RectangleShape2D_y5m1q")
[node name="GeneratorPanel" parent="." unique_id=1129190041 node_paths=PackedStringArray("_generator") instance=ExtResource("5_bb14m")]
offset_left = 64.0
offset_top = -64.0
offset_right = 505.0
offset_bottom = 201.5
_generator = NodePath("..")
[connection signal="mouse_entered" from="Area2D" to="." method="_on_area_2d_mouse_entered"]
[connection signal="mouse_exited" from="Area2D" to="." method="_on_area_2d_mouse_exited"]