Add prestige graph

This commit is contained in:
2026-05-06 23:37:52 +02:00
parent af62e379ee
commit 1ccb498947
32 changed files with 1537 additions and 279 deletions

View File

@@ -23,15 +23,16 @@ position = Vector2(1, 22)
shape = SubResource("RectangleShape2D_tgvch")
[node name="PrestigePanel" parent="." unique_id=245519778 instance=ExtResource("3_l7gct")]
visible = false
offset_left = 155.0
offset_top = -80.0
offset_right = 575.0
offset_bottom = 126.0
offset_left = 161.0
offset_top = -232.0
offset_right = 581.0
offset_bottom = -3.0
[node name="PanelContainer" type="PanelContainer" parent="." unique_id=549346899]
offset_right = 415.0
offset_bottom = 196.0
offset_left = 160.0
offset_top = 5.0
offset_right = 575.0
offset_bottom = 201.0
size_flags_horizontal = 3
size_flags_vertical = 3

View File

@@ -0,0 +1,10 @@
[gd_resource type="Resource" script_class="PrestigeBuffCatalogue" format=3]
[ext_resource type="Script" path="res://core/prestige/prestige_buff_node.gd" id="1_node"]
[ext_resource type="Script" path="res://core/prestige/prestige_buff_catalogue.gd" id="2_cat"]
[ext_resource type="Resource" path="res://docs/gyms/tiny_sword/prestige/prestige_buff_gold_boost.tres" id="3_gold"]
[ext_resource type="Resource" path="res://docs/gyms/tiny_sword/prestige/prestige_buff_farm_boost.tres" id="4_farm"]
[resource]
script = ExtResource("2_cat")
nodes = Array[ExtResource("1_node")]([ExtResource("3_gold"), ExtResource("4_farm")])

View File

@@ -0,0 +1,12 @@
[gd_resource type="Resource" script_class="PrestigeBuffNode" format=3 uid="uid://cvogxo0msis2w"]
[ext_resource type="Script" uid="uid://mjyig8xlgki0" path="res://core/prestige/prestige_buff_node.gd" id="1_script"]
[resource]
script = ExtResource("1_script")
id = &"farm_boost"
display_name = "Fertile Grounds"
description = "Permanently increases farm food production."
effect_value = 1.5
target_id = &"farm"
x_position = 1.0

View File

@@ -0,0 +1,11 @@
[gd_resource type="Resource" script_class="PrestigeBuffNode" format=3 uid="uid://vl3ot4t876pc"]
[ext_resource type="Script" uid="uid://mjyig8xlgki0" path="res://core/prestige/prestige_buff_node.gd" id="1_script"]
[resource]
script = ExtResource("1_script")
id = &"gold_boost"
display_name = "Golden Touch"
description = "Permanently increases gold mine production."
effect_value = 1.5
target_id = &"goldmine"

View File

@@ -0,0 +1,76 @@
[gd_scene format=3 uid="uid://dprbgokqitaav"]
[ext_resource type="Script" path="res://core/prestige/prestige_buff_graph_panel.gd" id="1_panel"]
[ext_resource type="Script" path="res://core/prestige/prestige_buff_connection_overlay.gd" id="2_overlay"]
[ext_resource type="PackedScene" path="res://core/prestige/prestige_buff_graph_tile.tscn" id="3_tile"]
[ext_resource type="Resource" path="res://docs/gyms/tiny_sword/prestige/prestige_buff_gold_boost.tres" id="4_gold"]
[ext_resource type="Resource" path="res://docs/gyms/tiny_sword/prestige/prestige_buff_farm_boost.tres" id="5_farm"]
[node name="PrestigeBuffGraphPanel" type="PanelContainer" unique_id=947835716]
visible = false
custom_minimum_size = Vector2(600, 400)
script = ExtResource("1_panel")
[node name="MarginContainer" type="MarginContainer" parent="." unique_id=829451203]
layout_mode = 2
theme_override_constants/margin_left = 16
theme_override_constants/margin_top = 12
theme_override_constants/margin_right = 16
theme_override_constants/margin_bottom = 12
[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer" unique_id=637192845]
layout_mode = 2
[node name="Header" type="HBoxContainer" parent="MarginContainer/VBoxContainer" unique_id=372819465]
layout_mode = 2
[node name="TitleLabel" type="Label" parent="MarginContainer/VBoxContainer/Header" unique_id=518293746]
layout_mode = 2
text = "Prestige Buffs"
theme_override_font_sizes/font_size = 20
[node name="CloseButton" type="Button" parent="MarginContainer/VBoxContainer/Header" unique_id=184756392]
layout_mode = 2
size_flags_horizontal = 10
text = "✕"
theme_override_font_sizes/font_size = 16
[node name="BalanceLabel" type="Label" parent="MarginContainer/VBoxContainer" unique_id=293847561]
layout_mode = 2
text = "Prestige Currency: 0"
theme_override_font_sizes/font_size = 14
[node name="TilesArea" type="Control" parent="MarginContainer/VBoxContainer" unique_id=847291034]
layout_mode = 2
size_flags_vertical = 3
mouse_filter = 1
[node name="ConnectionOverlay" type="Control" parent="MarginContainer/VBoxContainer/TilesArea" unique_id=563829104]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 1
grow_vertical = 1
mouse_filter = 2
script = ExtResource("2_overlay")
[node name="TiersContainer" type="VBoxContainer" parent="MarginContainer/VBoxContainer/TilesArea" unique_id=129384756]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 1
grow_vertical = 1
[node name="Tier0" type="HBoxContainer" parent="MarginContainer/VBoxContainer/TilesArea/TiersContainer" unique_id=384756192]
layout_mode = 2
theme_override_constants/separation = 8
[node name="GoldBoostTile" parent="MarginContainer/VBoxContainer/TilesArea/TiersContainer/Tier0" unique_id=756192834 instance=ExtResource("3_tile")]
layout_mode = 2
prestige_buff = ExtResource("4_gold")
[node name="FarmBoostTile" parent="MarginContainer/VBoxContainer/TilesArea/TiersContainer/Tier0" unique_id=619283475 instance=ExtResource("3_tile")]
layout_mode = 2
prestige_buff = ExtResource("5_farm")

View File

@@ -0,0 +1,11 @@
[gd_resource type="Resource" script_class="PrestigeBuffNode" format=3 uid="uid://bif136o485oqh"]
[ext_resource type="Script" uid="uid://mjyig8xlgki0" path="res://core/prestige/prestige_buff_node.gd" id="1_42hk5"]
[resource]
script = ExtResource("1_42hk5")
id = &"wood_boost"
display_name = "Wood Touch"
description = "Permanently increases forestry production."
effect_value = 1.5
target_id = &"forestry"

View File

@@ -8,6 +8,7 @@
[ext_resource type="Resource" uid="uid://cgt1mjir1v4br" path="res://docs/gyms/tiny_sword/goals/ts_goal_catalogue.tres" id="4_x77df"]
[ext_resource type="Resource" uid="uid://umi37hotcq8m" path="res://docs/gyms/tiny_sword/research/ts_research_catalogue.tres" id="5_v0pty"]
[ext_resource type="Script" uid="uid://srkiu4qe8s2m" path="res://core/prestige/prestige_manager.gd" id="5_x77df"]
[ext_resource type="Resource" path="res://docs/gyms/tiny_sword/prestige/prestige_buff_catalogue.tres" id="6_asc"]
[ext_resource type="Resource" uid="uid://dwmfvmusfskk6" path="res://docs/gyms/tiny_sword/prestige/primary_prestige.tres" id="6_xnhlc"]
[ext_resource type="PackedScene" path="res://docs/gyms/tiny_sword/currency_panel.tscn" id="9_cpnl"]
[ext_resource type="PackedScene" uid="uid://djedqovgngrx5" path="res://docs/gyms/tiny_sword/buildings/farm/farm.tscn" id="10_1lv5i"]
@@ -17,6 +18,7 @@
[ext_resource type="PackedScene" uid="uid://rejxvjwybkll" path="res://sandbox/tiny_swords/Terrain/Resources/Wood/Trees/tree_1.tscn" id="14_0cs5o"]
[ext_resource type="PackedScene" uid="uid://bp5ng4vu4ot4a" path="res://docs/gyms/tiny_sword/buildings/alchemy_tower/alchemy_tower.tscn" id="14_hum8s"]
[ext_resource type="Script" uid="uid://b6systw05frh0" path="res://core/edge_scroll_camera.gd" id="17_x77df"]
[ext_resource type="PackedScene" uid="uid://dprbgokqitaav" path="res://docs/gyms/tiny_sword/prestige/prestige_buff_graph_panel.tscn" id="18_pnl"]
[node name="TinySwords" type="Node" unique_id=498237642]
@@ -26,6 +28,7 @@ currency_catalogue = ExtResource("2_dwrof")
buff_catalogue = ExtResource("3_wl838")
goal_catalogue = ExtResource("4_x77df")
research_catalogue = ExtResource("5_v0pty")
prestige_buff_catalogue = ExtResource("6_asc")
save_file_path = "user://tiny_sword_save.json"
[node name="PrestigeManager" type="Node" parent="LevelGameState" unique_id=1019028144 node_paths=PackedStringArray("game_state")]
@@ -41,6 +44,10 @@ anchors_preset = 0
[node name="CurrencyPanel" parent="LevelGameState/CanvasLayer/UI" unique_id=2000000001 instance=ExtResource("9_cpnl")]
layout_mode = 1
offset_left = 0.0
offset_top = 429.0
offset_right = 250.0
offset_bottom = 769.0
[node name="GoalsDebugUI" parent="LevelGameState/CanvasLayer/UI" unique_id=1494700185 instance=ExtResource("10_qifrv")]
visible = false
@@ -50,6 +57,22 @@ offset_top = 5.0
offset_right = 1913.0
offset_bottom = 263.0
[node name="PrestigeBuffToggle" type="Button" parent="LevelGameState/CanvasLayer/UI" unique_id=293847102]
layout_mode = 1
offset_left = 1730.0
offset_top = 64.0
offset_right = 1857.0
offset_bottom = 100.0
toggle_mode = true
text = "Prestige Buffs"
[node name="PrestigeBuffGraphPanel" parent="LevelGameState/CanvasLayer/UI" unique_id=847291035 instance=ExtResource("18_pnl")]
layout_mode = 1
offset_left = 400.0
offset_top = 200.0
offset_right = 1000.0
offset_bottom = 700.0
[node name="World" type="Node2D" parent="LevelGameState" unique_id=2118297724]
[node name="ForestProps" type="Node2D" parent="LevelGameState/World" unique_id=649424542]
@@ -97,3 +120,5 @@ script = ExtResource("17_x77df")
clamp_enabled = true
clamp_min = Vector2(-1920, -1080)
clamp_max = Vector2(1920, 1080)
[connection signal="pressed" from="LevelGameState/CanvasLayer/UI/PrestigeBuffToggle" to="LevelGameState/CanvasLayer/UI/PrestigeBuffGraphPanel" method="_on_prestige_buff_toggle_pressed"]