Exemplo n.º 1
0
	// Use this for initialization
	void Awake() {
		enemyUnits = new List<Unit>();
		allyUnits = new List<Unit>();

        parent = gameObject;

		enemyUnitObjects = GameObject.Find("Enemy Units");
		allyUnitObjects = GameObject.Find("Ally Units");
		enemyUnitObjects.transform.parent = parent.transform;
		allyUnitObjects.transform.parent = parent.transform;

        pathManager = new GraphManager(parent);
        pathFinder = pathManager.getGraph();

        //TODO: Integrate PCG here
        //OR generate more spawns than needed and randomly select from generated spawn points.
        Vector2 topright = pathFinder.getTopRightBound();
        Vector2 botleft = pathFinder.getBottomLeftBound();
        Vector2 mid = topright - botleft;
        mid /= 3;
        KeyValuePair<List<Node>, List<Node>> spawnPoints = pathFinder.getSpawnPoints(topright - mid, botleft + mid, 5);

        for (int i = 0; i < spawnPoints.Key.Count; i++) {
            Node spawnEnemy = spawnPoints.Key[i];
            Node spawnAlly = spawnPoints.Value[i];

			addLongArmUnit(enemyUnits, enemyUnitObjects, "Enemy LongArm", spawnEnemy, true);
			addLongArmUnit(allyUnits, allyUnitObjects, "Ally LongArm", spawnAlly, false);
        }

        enemyUnits.Reverse();
        allyUnits.Reverse();

        turnManager = new TurnManager(pathFinder, allyUnits, enemyUnits);
	}