Go to the documentation of this file.
99 return count(state, move.
to(), state.
turn()) ==
self
115 return diagonal*2+vertical;
207 std::swap(rook1, rook2);
bool match(const NumEffectState &state, Move move, const RatingEnv &) const
OpponentType opponent_type
static int index(const NumEffectState &state, Player player, Square from)
const BoardTable Board_Table
constexpr Player alt(Player player)
bool match(const NumEffectState &state, Move move, const RatingEnv &) const
Chase(Ptype s, Ptype t, bool d, OpponentType o)
const Move lastMove(size_t last=1) const
const std::string & name() const
bool effectiveInCheck() const
bool hasEffectIf(PtypeO ptypeo, Square attacker, Square target) const
attackerにptypeoの駒がいると仮定した場合にtargetに利きがあるかどうか を stateをupdateしないで確かめる.
bool hasEffectAt(Square target) const
対象とするマスにあるプレイヤーの利きがあるかどうか.
const Piece pieceOf(int num) const
const Piece findAttackAt(Player attack, Square target) const
return a piece s.t.
bool effectiveInCheck() const
const Piece pieceOnBoard(Square sq) const
bool isPieceStand() const
virtual bool effectiveInCheck() const
bool effectiveInCheck() const
virtual bool effectiveInCheck() const
Ptype capturePtype() const
static int count(const NumEffectState &state, Square position, Player player)
PtypeO ptypeO() const
移動後のPtype, i.e., 成る手だった場合成った後
bool isMember(Square position) const
static bool openLong(const NumEffectState &state, Move move)
bool match(const NumEffectState &, Move move, const RatingEnv &env) const
bool match(const NumEffectState &state, Move move, const RatingEnv &) const
bool isNormal() const
INVALID でも PASS でもない.
const Square from() const
virtual bool match(const NumEffectState &state, Move, const RatingEnv &) const =0
bool hasPieceOnStand(Player player, Ptype ptype) const
int x() const
将棋としてのX座標を返す.
Feature(const std::string &name)
const Square nextSquare(Player P, Square pos, Direction dr) const
next position from pos for player P.
static bool basicMatch(const NumEffectState &state, Move move, Square front)
int y() const
将棋としてのY座標を返す.
constexpr int sign(Player player)
const Square square() const
static int index(const NumEffectState &state, Move move)
bool match(const NumEffectState &, Move move, const RatingEnv &env) const
bool match(const NumEffectState &, Move move, const RatingEnv &env) const
static const CArray< const char *, 4 > check_property
bool match(const NumEffectState &state, Move move, const RatingEnv &env) const
bool hasEffectByPtype(Player attack, Square target) const
target に ptype の利きがあるか? 成不成を区別しない
bool effectiveInCheck() const
bool hasLastMove(size_t last=1) const
bool match(const NumEffectState &, Move move, const RatingEnv &env) const
bool match(const NumEffectState &state, Move move, const RatingEnv &env) const
bool isPawnMaskSet(Player player, int x) const
bool match(const NumEffectState &state, Move move, const RatingEnv &) const