public static void Initialize() { _boardTiles = new BoardTile(); SetUpTheTiles(); Figures = new FigureGraph(); AllFigures = new List <Figure>(); _activeAllyFigures = new List <Figure>(); _activeEnemyFigures = new List <Figure>(); Pathfinding.PathFinder pathFindingAlgorithm = new Pathfinding.PathFinder(new Dijkstra(8, 8, 8)); pathFindingAlgorithm.SetGraph(Figures); MatchManager.Instance.OnStateChage += matchState => { switch (matchState) { case Enums.MatchState.Preparation: RecoverFromBattle(); List <Figure> sacrifices = new List <Figure>(); foreach (Figure figure in AllFigures) { sacrifices.AddRange(CheckForUpgrades(figure, false)); } foreach (Figure figure in sacrifices) { AllFigures.Remove(figure); } foreach (Figure figure in _activeEnemyFigures) { figure.Destroy(); } break; case Enums.MatchState.Disposal: SellExcessFigures(); break; case Enums.MatchState.Stretching: PrepareForBattle(); break; case Enums.MatchState.Battle: if (_activeAllyFigures.Count == 0) { TakeDamage(); } break; } }; _pieceCounter = new PieceCounter(); }
public void SetGraph(FigureGraph graph) { _graph = graph; }