summaryrefslogtreecommitdiff
path: root/Stages/Wintermaul/money_manager.gd
diff options
context:
space:
mode:
authorDaniel Weipert <git@mail.dweipert.de>2025-06-27 16:51:18 +0200
committerDaniel Weipert <git@mail.dweipert.de>2025-06-27 16:51:18 +0200
commit76d1ec723b6f6f68a512f27607749f3ff885f385 (patch)
tree36cee159d2e7bc7dc6df76de3e8fe20e3658ae8d /Stages/Wintermaul/money_manager.gd
parent0b1fd02d3cb080effe29e00f14773994d87e2e27 (diff)
managers + various changesHEADmain
Diffstat (limited to 'Stages/Wintermaul/money_manager.gd')
-rw-r--r--Stages/Wintermaul/money_manager.gd50
1 files changed, 50 insertions, 0 deletions
diff --git a/Stages/Wintermaul/money_manager.gd b/Stages/Wintermaul/money_manager.gd
new file mode 100644
index 0000000..3029a67
--- /dev/null
+++ b/Stages/Wintermaul/money_manager.gd
@@ -0,0 +1,50 @@
+class_name MoneyManager
+extends Node
+
+
+func get_tower_price() -> int:
+ return 5
+
+
+func get_component_price(
+ component_type: TowerComponent.ComponentType,
+ number_of_towers: int
+) -> int:
+ if component_type == TowerComponent.ComponentType.Range:
+ return 100 * number_of_towers
+
+ elif component_type == TowerComponent.ComponentType.Attack:
+ return 100 * number_of_towers
+
+ elif component_type == TowerComponent.ComponentType.Frost:
+ return 100 * number_of_towers
+
+ elif component_type == TowerComponent.ComponentType.Burn:
+ return 100 * number_of_towers
+
+ elif component_type == TowerComponent.ComponentType.Poison:
+ return 100 * number_of_towers
+
+ return 0
+
+
+func get_component_level_up_price(
+ component: TowerComponent,
+ number_of_towers: int
+) -> int:
+ if component.type == TowerComponent.ComponentType.Range:
+ return int(pow(5, component.level)) * number_of_towers
+
+ elif component.type == TowerComponent.ComponentType.Attack:
+ return 10 * component.level * number_of_towers
+
+ elif component.type == TowerComponent.ComponentType.Frost:
+ return 10 * component.level * number_of_towers
+
+ elif component.type == TowerComponent.ComponentType.Burn:
+ return 10 * component.level * number_of_towers
+
+ elif component.type == TowerComponent.ComponentType.Poison:
+ return 10 * component.level * number_of_towers
+
+ return 0