diff options
author | Daniel Weipert <git@mail.dweipert.de> | 2025-06-27 16:51:18 +0200 |
---|---|---|
committer | Daniel Weipert <git@mail.dweipert.de> | 2025-06-27 16:51:18 +0200 |
commit | 76d1ec723b6f6f68a512f27607749f3ff885f385 (patch) | |
tree | 36cee159d2e7bc7dc6df76de3e8fe20e3658ae8d /Stages/Wintermaul/money_manager.gd | |
parent | 0b1fd02d3cb080effe29e00f14773994d87e2e27 (diff) |
Diffstat (limited to 'Stages/Wintermaul/money_manager.gd')
-rw-r--r-- | Stages/Wintermaul/money_manager.gd | 50 |
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 |