Exemplo n.º 1
0
    //--------------------------------------------------------------


    //移動できる場所を事前に調べる関数-------------------------------------------------------------------------------------------------
    public List <Square> MovePossibleSquare(CardMain card, List <DIRECTION> direction, Square nowSquare, int distans = 1)
    {
        List <Square> squares = new List <Square>( );

        //移動できるマスだけ格納
        List <DIRECTION> directions = card.getDirections(card.gameObject.tag, direction);

        for (int i = 0; i < directions.Count; i++)
        {
            Square square = SquareInThatDirection(nowSquare, directions[i], distans);

            if (square == null)
            {
                continue;
            }
            if (square.On_Card != null)
            {
                if (square.On_Card.gameObject.tag == card.gameObject.tag)
                {
                    continue;                                                                           //マスにあるのが自分のカードだったらcontinue
                }
            }

            squares.Add(square);
        }

        return(squares);
    }
Exemplo n.º 2
0
    //----------------------------------------------------------------------------------------------------------------------------------


    //攻撃効果をするマスにカードがあるマスを事前に調べる関数-----------------------------------------------------------------------------------
    public List <Square> AttackEffectPossibleOnCardSquare(CardMain card, Square nowSquare)
    {
        List <Square> squares = new List <Square>( );

        //攻撃できるマスだけ格納
        List <Field.DIRECTION> directions = card.getDirections(card.gameObject.tag, card.Card_Data._effect_direction);

        for (int i = 0; i < directions.Count; i++)
        {
            Square square = SquareInThatDirection(nowSquare, directions[i], card.Card_Data._effect_distance);

            if (square == null)
            {
                continue;
            }
            if (square.On_Card == null)
            {
                continue;
            }
            squares.Add(square);
        }

        Debug.Log(squares);
        return(squares);
    }