#include <effect5x3.h>
Public メソッド | |
Effect5x3WithBonus (const NumEffectState &state) | |
const Progress16 | progress16bonus (Player p) const |
void | update (const NumEffectState &new_state, Move last_move) |
Effect5x3WithBonus | expect (const NumEffectState &state, Move move) const |
int | countEffectPieces (const NumEffectState &state, Player attack) const |
const PieceMask | effect5x3Mask (Player p) const |
Static Public メソッド | |
template<Player Attack> | |
static int | makeProgressAreaBonus (const NumEffectState &state, Square king) |
template<Player Attack, bool AlwaysPromotable, bool AlwaysNotPromotable> | |
static int | makeProgressAreaBonus (const NumEffectState &state, Square king, Square center) |
Private メソッド | |
void | updateProgressBonuses (const NumEffectState &state, bool black=true, bool white=true) |
void | updateStand (Player pl, Move m) |
Static Private メソッド | |
static int | attackEffect3 (const NumEffectState &state, Player attack, Square target) |
template<Player Defense> | |
static PieceMask | makeEffectMask (const NumEffectState &state) |
Private 変数 | |
CArray< int, 2 > | progress_bonuses |
CArray< PieceMask, 2 > | effect_mask |
effect5x3.h の 88 行で定義されています。
osl::progress::Effect5x3WithBonus::Effect5x3WithBonus | ( | const NumEffectState & | state | ) | [explicit] |
effect5x3.cc の 113 行で定義されています。
参照先 osl::BLACK, effect_mask, osl::SimpleState::kingSquare(), progress_bonuses, updateProgressBonuses(), と osl::WHITE.
int osl::progress::Effect5x3WithBonus::attackEffect3 | ( | const NumEffectState & | state, | |
Player | attack, | |||
Square | target | |||
) | [inline, static, private] |
effect5x3.cc の 148 行で定義されています。
参照先 osl::alt(), osl::NumEffectState::countEffect(), osl::Piece::isOnBoardByOwner(), と osl::SimpleState::pieceAt().
int osl::progress::Effect5x3WithBonus::countEffectPieces | ( | const NumEffectState & | state, | |
Player | attack | |||
) | const |
effect5x3.cc の 364 行で定義されています。
参照先 osl::alt(), effect5x3Mask(), と osl::NumEffectState::piecesOnBoard().
osl::progress::Effect5x3WithBonus osl::progress::Effect5x3WithBonus::expect | ( | const NumEffectState & | state, | |
Move | move | |||
) | const |
osl::PieceMask osl::progress::Effect5x3WithBonus::makeEffectMask | ( | const NumEffectState & | state | ) | [static, private] |
int osl::progress::Effect5x3WithBonus::makeProgressAreaBonus | ( | const NumEffectState & | state, | |
Square | king | |||
) | [static] |
effect5x3.cc の 292 行で定義されています。
参照先 osl::Centering5x3::adjustCenter(), と osl::Square::squareForBlack().
int osl::progress::Effect5x3WithBonus::makeProgressAreaBonus | ( | const NumEffectState & | state, | |
Square | king, | |||
Square | center | |||
) | [static] |
const Progress16 osl::progress::Effect5x3WithBonus::progress16bonus | ( | Player | p | ) | const [inline] |
void osl::progress::Effect5x3WithBonus::update | ( | const NumEffectState & | new_state, | |
Move | last_move | |||
) |
osl::progress::Effect5x3を再定義しています。
effect5x3.cc の 307 行で定義されています。
参照先 osl::BLACK, osl::container::Board_Mask_Table5x3_Center, osl::NumEffectState::changedEffects(), effect_mask, osl::Move::from(), osl::SimpleState::kingSquare(), progress_bonuses, osl::Move::to(), updateProgressBonuses(), と osl::WHITE.
void osl::progress::Effect5x3WithBonus::updateProgressBonuses | ( | const NumEffectState & | state, | |
bool | black = true , |
|||
bool | white = true | |||
) | [private] |
effect5x3.cc の 345 行で定義されています。
参照先 osl::BLACK, countEffectPieces(), osl::eval::min(), progress_bonuses, と osl::WHITE.
参照元 Effect5x3WithBonus(), と update().
CArray<PieceMask, 2> osl::progress::Effect5x3WithBonus::effect_mask [private] |
effect5x3.h の 116 行で定義されています。
参照元 effect5x3Mask(), Effect5x3WithBonus(), と update().
CArray<int,2> osl::progress::Effect5x3WithBonus::progress_bonuses [private] |
effect5x3.h の 115 行で定義されています。
参照元 Effect5x3WithBonus(), progress16bonus(), update(), と updateProgressBonuses().