//-------------------------------------------------------------- //移動できる場所を事前に調べる関数------------------------------------------------------------------------------------------------- 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); }
//---------------------------------------------------------------------------------------------------------------------------------- //攻撃効果をするマスにカードがあるマスを事前に調べる関数----------------------------------------------------------------------------------- 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); }