manager.py 930B

123456789101112131415161718192021222324252627282930313233343536
  1. # coding: utf-8
  2. from synergine2.config import Config
  3. from synergine2.log import get_logger
  4. from opencombat.strategy.team.stash import TeamStash
  5. from opencombat.strategy.troops import TroopClassBuilder
  6. from opencombat.strategy.unit.stash import UnitStash
  7. class TroopManager(object):
  8. def __init__(
  9. self,
  10. config: Config,
  11. units_file_path: str,
  12. teams_file_path: str,
  13. ) -> None:
  14. self._config = config
  15. self._logger = get_logger('TroopManager', config)
  16. builder = TroopClassBuilder(config)
  17. self._unit_stash = builder.get_unit_stash(
  18. units_file_path,
  19. )
  20. self._team_stash = builder.get_team_stash(
  21. units_file_path,
  22. teams_file_path,
  23. )
  24. @property
  25. def team_stash(self) -> TeamStash:
  26. return self._team_stash
  27. @property
  28. def unit_stash(self) -> UnitStash:
  29. return self._unit_stash