Go to the documentation of this file.
3 #ifndef OSL_SENDOFFPOSITION_H
4 #define OSL_SENDOFFPOSITION_H
19 template <Player Attack>
28 template <Player Attack>
46 template <Player Attack>
50 if (onlyOneSupport<Attack>(state, candidate))
57 using effect_util::SendOffSquare;
const Piece pieceAt(Square sq) const
constexpr Player alt(Player player)
bool hasEffectAt(Square target) const
対象とするマスにあるプレイヤーの利きがあるかどうか.
static SendOff8 find(const NumEffectState &state, Square king_position, Square8 &out)
static void testSquare(const NumEffectState &state, Square candidate, int id, int &out)
bool isOnBoardByOwner() const
piece がプレイヤーPの持ち物でかつボード上にある駒の場合は true.
CArray< Offset8, 8 > reverse
static bool onlyOneSupport(const NumEffectState &state, Square target)
CArray< Offset8, 256 > reverse_all
CArray< Offset, 8 > normal
static SendOff8 invalidData()
int countEffect(Player player, Square target) const
利きの数を数える.
static void unpack(SendOff8, Square king, Square8 &out)
送り金のような玉で取ると利きがはずれる駒が発生するマスを調査