Stats.tscn 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429
  1. [gd_scene load_steps=11 format=3 uid="uid://dhdq88so6g3yh"]
  2. [ext_resource type="Theme" uid="uid://dhb6h35g1bk0x" path="res://data/themes/DefaultTheme.tres" id="1_dhni5"]
  3. [ext_resource type="Script" path="res://sources/gui/StatPanel.gd" id="2_v116i"]
  4. [ext_resource type="Texture2D" uid="uid://lbbhr5w3jhrf" path="res://data/graphics/gui/stat/gender-female.png" id="3_4bqlt"]
  5. [ext_resource type="PackedScene" uid="uid://coppbcrkvraoh" path="res://presets/gui/ProgressBar.tscn" id="3_kjg3f"]
  6. [ext_resource type="Texture2D" uid="uid://3jqhykq3lnpt" path="res://data/graphics/gui/stat/spirit-hook.png" id="4_de8qp"]
  7. [ext_resource type="Texture2D" uid="uid://dc0oen67nnoqp" path="res://data/graphics/gui/pixeldark.png" id="4_fxktc"]
  8. [ext_resource type="Texture2D" uid="uid://bgmnxng3agmdr" path="res://data/graphics/gui/pixelbrown.png" id="6_2hq2a"]
  9. [ext_resource type="Texture2D" uid="uid://nbo82cnov3wx" path="res://data/graphics/gui/pixelred.png" id="8_egmig"]
  10. [ext_resource type="Texture2D" uid="uid://b1bm6d86bv1eq" path="res://data/graphics/gui/pixelblue.png" id="9_q6igb"]
  11. [ext_resource type="Texture2D" uid="uid://b7vc8pr8rl30g" path="res://data/graphics/gui/pixelgreen.png" id="10_h4ygu"]
  12. [node name="Stat" type="PanelContainer"]
  13. show_behind_parent = true
  14. custom_minimum_size = Vector2(180, 100)
  15. offset_right = 400.0
  16. offset_bottom = 419.0
  17. size_flags_horizontal = 0
  18. size_flags_vertical = 0
  19. theme = ExtResource("1_dhni5")
  20. script = ExtResource("2_v116i")
  21. [node name="Scroll" type="ScrollContainer" parent="."]
  22. layout_mode = 2
  23. [node name="Margin" type="MarginContainer" parent="Scroll"]
  24. custom_minimum_size = Vector2(0, 1)
  25. layout_mode = 2
  26. size_flags_horizontal = 3
  27. size_flags_vertical = 3
  28. theme_override_constants/margin_left = 5
  29. theme_override_constants/margin_top = 7
  30. theme_override_constants/margin_right = 5
  31. theme_override_constants/margin_bottom = 7
  32. [node name="Layout" type="HBoxContainer" parent="Scroll/Margin"]
  33. layout_mode = 2
  34. [node name="Stats" type="VBoxContainer" parent="Scroll/Margin/Layout"]
  35. layout_mode = 2
  36. size_flags_horizontal = 3
  37. [node name="Information" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats"]
  38. layout_mode = 2
  39. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/Information"]
  40. layout_mode = 2
  41. size_flags_horizontal = 0
  42. text = "Test"
  43. [node name="Gender" type="TextureRect" parent="Scroll/Margin/Layout/Stats/Information"]
  44. layout_mode = 2
  45. size_flags_horizontal = 0
  46. texture = ExtResource("3_4bqlt")
  47. [node name="Control" type="Control" parent="Scroll/Margin/Layout/Stats/Information"]
  48. layout_mode = 2
  49. size_flags_horizontal = 3
  50. [node name="Level" type="Label" parent="Scroll/Margin/Layout/Stats/Information"]
  51. layout_mode = 2
  52. text = "Lvl. 2"
  53. horizontal_alignment = 1
  54. [node name="Control2" type="Control" parent="Scroll/Margin/Layout/Stats/Information"]
  55. layout_mode = 2
  56. size_flags_horizontal = 3
  57. [node name="SpiritSymbol" type="TextureRect" parent="Scroll/Margin/Layout/Stats/Information"]
  58. layout_mode = 2
  59. size_flags_horizontal = 8
  60. texture = ExtResource("4_de8qp")
  61. [node name="Spirit" type="Label" parent="Scroll/Margin/Layout/Stats/Information"]
  62. layout_mode = 2
  63. size_flags_horizontal = 8
  64. horizontal_alignment = 2
  65. [node name="HSeparator2" type="HSeparator" parent="Scroll/Margin/Layout/Stats"]
  66. layout_mode = 2
  67. theme_override_constants/separation = 10
  68. [node name="StatBox" type="VBoxContainer" parent="Scroll/Margin/Layout/Stats"]
  69. layout_mode = 2
  70. size_flags_horizontal = 3
  71. [node name="StrengthBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/StatBox"]
  72. layout_mode = 2
  73. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/StrengthBox"]
  74. layout_mode = 2
  75. size_flags_horizontal = 3
  76. text = "Strength"
  77. [node name="Current" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/StrengthBox"]
  78. layout_mode = 2
  79. size_flags_horizontal = 3
  80. horizontal_alignment = 1
  81. vertical_alignment = 1
  82. [node name="Button" type="Button" parent="Scroll/Margin/Layout/Stats/StatBox/StrengthBox"]
  83. custom_minimum_size = Vector2(28, 28)
  84. layout_mode = 2
  85. size_flags_horizontal = 10
  86. text = "+"
  87. [node name="VitalityBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/StatBox"]
  88. layout_mode = 2
  89. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/VitalityBox"]
  90. layout_mode = 2
  91. size_flags_horizontal = 3
  92. text = "Vitality"
  93. [node name="Current" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/VitalityBox"]
  94. layout_mode = 2
  95. size_flags_horizontal = 3
  96. horizontal_alignment = 1
  97. vertical_alignment = 1
  98. [node name="Button" type="Button" parent="Scroll/Margin/Layout/Stats/StatBox/VitalityBox"]
  99. custom_minimum_size = Vector2(28, 28)
  100. layout_mode = 2
  101. size_flags_horizontal = 10
  102. text = "+"
  103. [node name="AgilityBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/StatBox"]
  104. layout_mode = 2
  105. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/AgilityBox"]
  106. layout_mode = 2
  107. size_flags_horizontal = 3
  108. text = "Agility"
  109. [node name="Current" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/AgilityBox"]
  110. layout_mode = 2
  111. size_flags_horizontal = 3
  112. horizontal_alignment = 1
  113. vertical_alignment = 1
  114. [node name="Button" type="Button" parent="Scroll/Margin/Layout/Stats/StatBox/AgilityBox"]
  115. custom_minimum_size = Vector2(28, 28)
  116. layout_mode = 2
  117. size_flags_horizontal = 10
  118. text = "+"
  119. [node name="EnduranceBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/StatBox"]
  120. layout_mode = 2
  121. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/EnduranceBox"]
  122. layout_mode = 2
  123. size_flags_horizontal = 3
  124. text = "Endurance"
  125. [node name="Current" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/EnduranceBox"]
  126. layout_mode = 2
  127. size_flags_horizontal = 3
  128. horizontal_alignment = 1
  129. vertical_alignment = 1
  130. [node name="Button" type="Button" parent="Scroll/Margin/Layout/Stats/StatBox/EnduranceBox"]
  131. custom_minimum_size = Vector2(28, 28)
  132. layout_mode = 2
  133. size_flags_horizontal = 10
  134. text = "+"
  135. [node name="ConcentrationBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/StatBox"]
  136. layout_mode = 2
  137. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/ConcentrationBox"]
  138. layout_mode = 2
  139. size_flags_horizontal = 3
  140. text = "Concentration"
  141. [node name="Current" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/ConcentrationBox"]
  142. layout_mode = 2
  143. size_flags_horizontal = 3
  144. horizontal_alignment = 1
  145. vertical_alignment = 1
  146. [node name="Button" type="Button" parent="Scroll/Margin/Layout/Stats/StatBox/ConcentrationBox"]
  147. custom_minimum_size = Vector2(28, 28)
  148. layout_mode = 2
  149. size_flags_horizontal = 10
  150. text = "+"
  151. [node name="Control" type="Control" parent="Scroll/Margin/Layout/Stats/StatBox"]
  152. custom_minimum_size = Vector2(0, 3)
  153. layout_mode = 2
  154. [node name="AvailablePointsBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/StatBox"]
  155. layout_mode = 2
  156. [node name="Label" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/AvailablePointsBox"]
  157. layout_mode = 2
  158. size_flags_horizontal = 3
  159. text = "Available points"
  160. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/StatBox/AvailablePointsBox"]
  161. layout_mode = 2
  162. size_flags_horizontal = 3
  163. horizontal_alignment = 1
  164. vertical_alignment = 1
  165. [node name="Empty" type="Control" parent="Scroll/Margin/Layout/Stats/StatBox/AvailablePointsBox"]
  166. layout_mode = 2
  167. size_flags_horizontal = 3
  168. [node name="HSeparator" type="HSeparator" parent="Scroll/Margin/Layout/Stats"]
  169. layout_mode = 2
  170. theme_override_constants/separation = 20
  171. [node name="PreciseStats" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats"]
  172. layout_mode = 2
  173. [node name="ActiveStatsBox" type="VBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats"]
  174. layout_mode = 2
  175. size_flags_horizontal = 3
  176. [node name="ExperienceBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox"]
  177. layout_mode = 2
  178. [node name="Label" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/ExperienceBox"]
  179. layout_mode = 2
  180. size_flags_horizontal = 3
  181. text = "Experience"
  182. [node name="ProgressBar" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/ExperienceBox" instance=ExtResource("3_kjg3f")]
  183. layout_mode = 2
  184. textureProgress = ExtResource("6_2hq2a")
  185. textureBackground = ExtResource("4_fxktc")
  186. labelColor = Color(0.843137, 0.717647, 0.482353, 1)
  187. labelOffset = Vector2(0, -3)
  188. [node name="HealthBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox"]
  189. layout_mode = 2
  190. [node name="Label" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/HealthBox"]
  191. layout_mode = 2
  192. size_flags_horizontal = 3
  193. text = "Health"
  194. [node name="ProgressBar" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/HealthBox" instance=ExtResource("3_kjg3f")]
  195. layout_mode = 2
  196. textureProgress = ExtResource("8_egmig")
  197. textureBackground = ExtResource("4_fxktc")
  198. labelColor = Color(0.843137, 0.717647, 0.482353, 1)
  199. labelOffset = Vector2(0, -3)
  200. [node name="ManaBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox"]
  201. layout_mode = 2
  202. [node name="Label" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/ManaBox"]
  203. layout_mode = 2
  204. size_flags_horizontal = 3
  205. text = "Mana"
  206. [node name="ProgressBar" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/ManaBox" instance=ExtResource("3_kjg3f")]
  207. layout_mode = 2
  208. textureProgress = ExtResource("9_q6igb")
  209. textureBackground = ExtResource("4_fxktc")
  210. labelColor = Color(0.843137, 0.717647, 0.482353, 1)
  211. labelOffset = Vector2(0, -3)
  212. [node name="StaminaBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox"]
  213. layout_mode = 2
  214. [node name="Label" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/StaminaBox"]
  215. layout_mode = 2
  216. size_flags_horizontal = 3
  217. text = "Stamina"
  218. [node name="ProgressBar" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/StaminaBox" instance=ExtResource("3_kjg3f")]
  219. layout_mode = 2
  220. textureProgress = ExtResource("10_h4ygu")
  221. textureBackground = ExtResource("4_fxktc")
  222. labelColor = Color(0.843137, 0.717647, 0.482353, 1)
  223. labelOffset = Vector2(0, -3)
  224. [node name="WeightBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox"]
  225. layout_mode = 2
  226. [node name="Label" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/WeightBox"]
  227. layout_mode = 2
  228. size_flags_horizontal = 3
  229. text = "Weight"
  230. [node name="ProgressBar" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/WeightBox" instance=ExtResource("3_kjg3f")]
  231. layout_mode = 2
  232. textureProgress = ExtResource("6_2hq2a")
  233. textureBackground = ExtResource("4_fxktc")
  234. labelColor = Color(0.843137, 0.717647, 0.482353, 1)
  235. labelOffset = Vector2(0, -3)
  236. [node name="GPBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox"]
  237. layout_mode = 2
  238. [node name="Label" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/GPBox"]
  239. layout_mode = 2
  240. size_flags_horizontal = 3
  241. text = "Money"
  242. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/ActiveStatsBox/GPBox"]
  243. layout_mode = 2
  244. size_flags_horizontal = 3
  245. size_flags_vertical = 1
  246. text = "0"
  247. horizontal_alignment = 2
  248. [node name="VSeparator" type="VSeparator" parent="Scroll/Margin/Layout/Stats/PreciseStats"]
  249. layout_mode = 2
  250. theme_override_constants/separation = 30
  251. [node name="AdvancedStatsBox" type="VBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats"]
  252. layout_mode = 2
  253. size_flags_horizontal = 3
  254. [node name="AtkBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox"]
  255. layout_mode = 2
  256. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/AtkBox"]
  257. layout_mode = 2
  258. size_flags_horizontal = 3
  259. text = "Attack"
  260. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/AtkBox"]
  261. layout_mode = 2
  262. size_flags_horizontal = 3
  263. horizontal_alignment = 2
  264. [node name="DefBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox"]
  265. layout_mode = 2
  266. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/DefBox"]
  267. layout_mode = 2
  268. size_flags_horizontal = 3
  269. text = "Defense"
  270. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/DefBox"]
  271. layout_mode = 2
  272. size_flags_horizontal = 3
  273. horizontal_alignment = 2
  274. [node name="AtkRangeBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox"]
  275. layout_mode = 2
  276. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/AtkRangeBox"]
  277. layout_mode = 2
  278. size_flags_horizontal = 3
  279. text = "Attack Range"
  280. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/AtkRangeBox"]
  281. layout_mode = 2
  282. size_flags_horizontal = 3
  283. horizontal_alignment = 2
  284. [node name="CastDelayBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox"]
  285. layout_mode = 2
  286. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/CastDelayBox"]
  287. layout_mode = 2
  288. size_flags_horizontal = 3
  289. text = "Cast Delay"
  290. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/CastDelayBox"]
  291. layout_mode = 2
  292. size_flags_horizontal = 3
  293. horizontal_alignment = 2
  294. [node name="CooldownDelayBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox"]
  295. layout_mode = 2
  296. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/CooldownDelayBox"]
  297. layout_mode = 2
  298. size_flags_horizontal = 3
  299. text = "Cooldown Delay"
  300. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/CooldownDelayBox"]
  301. layout_mode = 2
  302. size_flags_horizontal = 3
  303. horizontal_alignment = 2
  304. [node name="CritRateBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox"]
  305. layout_mode = 2
  306. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/CritRateBox"]
  307. layout_mode = 2
  308. size_flags_horizontal = 3
  309. text = "Crit Rate"
  310. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/CritRateBox"]
  311. layout_mode = 2
  312. size_flags_horizontal = 3
  313. horizontal_alignment = 2
  314. [node name="DodgeRateBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox"]
  315. layout_mode = 2
  316. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/DodgeRateBox"]
  317. layout_mode = 2
  318. size_flags_horizontal = 3
  319. text = "Dodge Rate"
  320. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/DodgeRateBox"]
  321. layout_mode = 2
  322. size_flags_horizontal = 3
  323. horizontal_alignment = 2
  324. [node name="WalkBox" type="HBoxContainer" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox"]
  325. layout_mode = 2
  326. [node name="Name" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/WalkBox"]
  327. layout_mode = 2
  328. size_flags_horizontal = 3
  329. text = "Walk Speed"
  330. [node name="Value" type="Label" parent="Scroll/Margin/Layout/Stats/PreciseStats/AdvancedStatsBox/WalkBox"]
  331. layout_mode = 2
  332. size_flags_horizontal = 3
  333. horizontal_alignment = 2
  334. [connection signal="visibility_changed" from="." to="." method="_on_visibility_changed"]
  335. [connection signal="pressed" from="Scroll/Margin/Layout/Stats/StatBox/StrengthBox/Button" to="." method="IncreaseStrength"]
  336. [connection signal="pressed" from="Scroll/Margin/Layout/Stats/StatBox/VitalityBox/Button" to="." method="IncreaseVitality"]
  337. [connection signal="pressed" from="Scroll/Margin/Layout/Stats/StatBox/AgilityBox/Button" to="." method="IncreaseAgility"]
  338. [connection signal="pressed" from="Scroll/Margin/Layout/Stats/StatBox/EnduranceBox/Button" to="." method="IncreaseEndurance"]
  339. [connection signal="pressed" from="Scroll/Margin/Layout/Stats/StatBox/ConcentrationBox/Button" to="." method="IncreaseConcentration"]