PtypeO ptypeO() const
移動後のPtype, i.e., 成る手だった場合成った後
bool isNormal() const
INVALID でも PASS でもない.
Ptype oldPtype() const
移動前のPtype, i.e., 成る手だった場合成る前
const Square from() const
bool hasEffectAt(Square target) const
対象とするマスにあるプレイヤーの利きがあるかどうか.
const Piece findCheapAttack(Player P, Square square) const
bool hasEffectIf(PtypeO ptypeo, Square attacker, Square target) const
attackerにptypeoの駒がいると仮定した場合にtargetに利きがあるかどうか を stateをupdateしないで確かめる.
bool inCheck(Player P) const
Pの玉が王手状態
const Move lastMove(size_t last=1) const
const std::string & name() const
移動元へのきき。attack defense は言葉の意味と逆で自分がattack
FromEffect(int attack, int defense)
bool match(const NumEffectState &state, Move move, const RatingEnv &env) const
bool match(const NumEffectState &state, Move move, const RatingEnv &) const
bool effectiveInCheck() const
PtypeAttacked(Ptype s, Ptype a)
bool match(const NumEffectState &state, Move move, const RatingEnv &) const
bool match(const NumEffectState &state, Move move, const RatingEnv &) const
const PtypeTable Ptype_Table
constexpr Player alt(Player player)
bool match(const NumEffectState &state, Square position, const RatingEnv &env) const
static std::pair< int, int > count(const NumEffectState &state, Square position, const RatingEnv &env)