예제 #1
0
    IEvaluateHex checkHex         = new IfAILooksForAllTargets(); // consulte la interfaz para acceder al comportamiento que necesitamos

    // busca todas las posiciones disponibles
    public void GetAvailablePositions(int stepsLimit, IInitialHexes getHexesToCheck, BattleHex startingHex)
    {
        GetAdjacentHexesExtended(stepsLimit, startingHex);// busca hexágonos adyacentes al hex inicial. Unidad voladora por ahora
        // ejecuta iteraciones para encontrar todas las posiciones disponibles. pasos = número de iteraciones
        for (step = 2; step <= stepsLimit; step++)
        {
            initialHexes = getHexesToCheck.GetNewInitialHexes();// recopila hexágonos listos para una nueva iteración
            foreach (BattleHex hex in initialHexes)
            {
                GetAdjacentHexesExtended(stepsLimit, hex);    // define los hexes vecinos para cada hex de la colección
            }
        }
    }
예제 #2
0
    IEvaluateHex checkHex         = new IfAILooksForAllTargets(); //refer to interface to access the behavior we need

    //looks for all positions available
    public void GetAvailablePositions(int stepsLimit, IInitialHexes getHexesToCheck, BattleHex startingHex)
    {
        GetAdjacentHexesExtended(stepsLimit, startingHex);//looks for hexes adjacent to starting hex. Flying unit for now
        //runs iterations to find all positions available. steps=number of iterations
        for (step = 2; step <= stepsLimit; step++)
        {
            initialHexes = getHexesToCheck.GetNewInitialHexes();//collects hexes ready for a new iteration
            foreach (BattleHex hex in initialHexes)
            {
                GetAdjacentHexesExtended(stepsLimit, hex);    // defines neighbouring hexes for each hex in the collection
            }
        }
    }
예제 #3
0
    List <BattleHex> initialHexes = new List <BattleHex>(); //collects neighbouring hexes for evaluated hex

    public void GetAvailablePositions(int stepsLimit,
                                      IAdjacentFinder AdjFinder, IInitialHexes getHexesToCheck)//looks for all positions available
    {
        BattleHex startingHex = BattleController.currentAtacker.GetComponentInParent <BattleHex>();

        AdjFinder.GetAdjacentHexesExtended(startingHex);//looks for hexes adjacent to starting hex. Flying unit for now
        //runs iterations to find all positions available. steps=number of iterations
        for (step = 2; step <= stepsLimit; step++)
        {
            initialHexes = getHexesToCheck.GetNewInitialHexes();//collects hexes ready for a new iteration
            foreach (BattleHex hex in initialHexes)
            {
                AdjFinder.GetAdjacentHexesExtended(hex); // defines neighbouring hexes for each hex in the collection
                hex.isIncluded = true;                   //defines evaluated hex as available position
            }
        }
    }
예제 #4
0
    List <BattleHex> initialHexes = new List <BattleHex>(); // recopila los hexes vecinos para el hex evaluado

    public void GetAvailablePositions(int stepsLimit,
                                      IAdjacentFinder AdjFinder, IInitialHexes getHexesToCheck)// busca todas las posiciones disponibles
    {
        BattleHex startingHex = BattleController.currentAtacker.GetComponentInParent <BattleHex>();

        AdjFinder.GetAdjacentHexesExtended(startingHex);// busca hexágonos adyacentes al hex inicial. Unidad voladora por ahora
        // ejecuta iteraciones para encontrar todas las posiciones disponibles. pasos = número de iteraciones
        for (step = 2; step <= stepsLimit; step++)
        {
            initialHexes = getHexesToCheck.GetNewInitialHexes();// recopila hexágonos listos para una nueva iteración
            foreach (BattleHex hex in initialHexes)
            {
                AdjFinder.GetAdjacentHexesExtended(hex); // define los hexes vecinos para cada hex de la colección
                hex.isIncluded = true;                   // define el hexadecimal evaluado como posición disponible
            }
        }
    }