from typing import List
from modules.base.module import BotModule
from modules.FieldsUpgradeModule import FieldsUpgradeModule
from modules.HeroModule import HeroModule
from modules.ResourceBalancerModule import ResourceBalancerModule
from modules.IfElseModule import IfElseModule
from modules.condition_modules.minResourcesModule import MinResourcesModules
from modules.ResourceBalancing.RelativeBalancer import RelativeBalancer
from modules.ModuleChain import ModuleChain
sleep_length: int = 10 * 60
build_clay = ModuleChain([IfElseModule("CanBuildClayField", MinResourcesModules([2900, 1450, 2900, 1810]),
FieldsUpgradeModule(upgrade_only_lowest=True, whitelist={'בור טיט'}),
ResourceBalancerModule())],
cyclic=False)
build_wood = ModuleChain([IfElseModule("CanBuildWoodField", MinResourcesModules([1450, 3625, 1810, 2175]),
FieldsUpgradeModule(upgrade_only_lowest=True, whitelist={'חוטב עצים'}),
ResourceBalancerModule())],
cyclic=False)
running_modules: List[BotModule] = [
ModuleChain([HeroModule().schedule_time(sleep_length * 3)], cyclic=True),
ModuleChain([build_clay, build_wood], cyclic=True)
]
from modules.base.module import BotModule
from modules.FieldsUpgradeModule import FieldsUpgradeModule
from modules.HeroModule import HeroModule
from modules.ResourceBalancerModule import ResourceBalancerModule
from modules.IfElseModule import IfElseModule
from modules.condition_modules.minResourcesModule import MinResourcesModules
from modules.ResourceBalancing.RelativeBalancer import RelativeBalancer
from modules.ModuleChain import ModuleChain
sleep_length: int = 10 * 60
build_clay = ModuleChain([IfElseModule("CanBuildClayField", MinResourcesModules([2900, 1450, 2900, 1810]),
FieldsUpgradeModule(upgrade_only_lowest=True, whitelist={'בור טיט'}),
ResourceBalancerModule())],
cyclic=False)
build_wood = ModuleChain([IfElseModule("CanBuildWoodField", MinResourcesModules([1450, 3625, 1810, 2175]),
FieldsUpgradeModule(upgrade_only_lowest=True, whitelist={'חוטב עצים'}),
ResourceBalancerModule())],
cyclic=False)
running_modules: List[BotModule] = [
ModuleChain([HeroModule().schedule_time(sleep_length * 3)], cyclic=True),
ModuleChain([build_clay, build_wood], cyclic=True)
]