#include <effect5x3.h>
Public Member Functions | |
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 |
template<osl::Player Defense> | |
osl::container::PieceMask | makeEffectMask (const NumEffectState &state) |
template<osl::Player Attack, bool AlwaysPromotable, bool AlwaysNotPromotable> | |
int | makeProgressAreaBonus (const NumEffectState &state, Square king, Square center) |
template<osl::Player Attack> | |
int | makeProgressAreaBonus (const NumEffectState &state, Square king) |
![]() | |
Effect5x3 (const NumEffectState &state) | |
void | changeTurn () |
int | progress (Player p) const |
const Progress16 | progress16 () const |
const Progress16 | progress16 (Player p) const |
Effect5x3 | expect (const NumEffectState &state, Move move) const |
void | update (const NumEffectState &new_state, Move last_move) |
Static Public Member Functions | |
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) |
![]() | |
static void | updateStand (int &old_stand, Move last_move) |
static int | makeProgressAll (Player defense, const NumEffectState &state, Square king) |
static int | makeProgressArea (Player attack, const NumEffectState &state, Square king) |
static int | makeProgressStand (Player attack, const NumEffectState &state) |
static int | makeProgress (Player defense, const NumEffectState &state) |
王の位置を指定したprogressの計算. More... | |
static int | makeProgress (const NumEffectState &state) |
static const Progress16 | progress16 (int progress) |
0-15 の値を返す More... | |
static const Progress16 | progress16each (int progress) |
0-15 の値を返す. More... | |
Private Member Functions | |
void | updateProgressBonuses (const NumEffectState &state, bool black=true, bool white=true) |
void | updateStand (Player pl, Move m) |
Static Private Member Functions | |
static int | attackEffect3 (const NumEffectState &state, Player attack, Square target) |
template<Player Defense> | |
static PieceMask | makeEffectMask (const NumEffectState &state) |
Private Attributes | |
CArray< int, 2 > | progress_bonuses |
CArray< PieceMask, 2 > | effect_mask |
Additional Inherited Members | |
![]() | |
CArray< int, 2 > | progresses |
CArray< int, 2 > | stand_progresses |
CArray< int, 2 > | area_progresses |
Definition at line 88 of file effect5x3.h.
|
explicit |
Definition at line 115 of file effect5x3.cc.
References osl::BLACK, effect_mask, progress_bonuses, updateProgressBonuses(), and osl::WHITE.
|
inlinestaticprivate |
Definition at line 150 of file effect5x3.cc.
References osl::alt().
int osl::progress::Effect5x3WithBonus::countEffectPieces | ( | const NumEffectState & | state, |
Player | attack | ||
) | const |
Definition at line 366 of file effect5x3.cc.
References osl::alt().
|
inline |
Definition at line 107 of file effect5x3.h.
References effect_mask.
osl::progress::Effect5x3WithBonus osl::progress::Effect5x3WithBonus::expect | ( | const NumEffectState & | state, |
Move | move | ||
) | const |
Definition at line 334 of file effect5x3.cc.
References osl::alt(), osl::Move::capturePtype(), old, osl::Move::player(), osl::playerToIndex(), osl::progress::Effect5x3::progresses, osl::PTYPE_EMPTY, osl::progress::Effect5x3::stand_progresses, and updateStand().
Referenced by osl::eval::ProgressEvalGeneral< OpeningEval >::expect().
|
staticprivate |
osl::container::PieceMask osl::progress::Effect5x3WithBonus::makeEffectMask | ( | const NumEffectState & | state) |
Definition at line 126 of file effect5x3.cc.
References osl::Centering5x3::adjustCenter(), center, and target.
|
static |
|
static |
int osl::progress::Effect5x3WithBonus::makeProgressAreaBonus | ( | const NumEffectState & | state, |
Square | king, | ||
Square | center | ||
) |
Definition at line 201 of file effect5x3.cc.
References osl::Square::canPromote(), osl::progress::Effect5x3_Table, osl::progress::Effect5x3Table::getAttackEffect(), target, osl::Square::x(), and osl::Square::y().
int osl::progress::Effect5x3WithBonus::makeProgressAreaBonus | ( | const NumEffectState & | state, |
Square | king | ||
) |
Definition at line 294 of file effect5x3.cc.
References osl::Centering5x3::adjustCenter(), center, and osl::Square::squareForBlack().
|
inline |
Definition at line 97 of file effect5x3.h.
References osl::progress::Effect5x3::progress16each(), progress_bonuses, and osl::progress::Effect5x3::stand_progresses.
Referenced by osl::eval::ProgressEvalGeneral< progress_eval_opening_t >::attackDefenseBonus(), osl::eval::ProgressEvalGeneral< progress_eval_opening_t >::progress16bonus(), and osl::eval::ProgressEvalGeneral< progress_eval_opening_t >::value().
void osl::progress::Effect5x3WithBonus::update | ( | const NumEffectState & | new_state, |
Move | last_move | ||
) |
Definition at line 309 of file effect5x3.cc.
References osl::BLACK, osl::container::Board_Mask_Table5x3_Center, osl::Move::from(), osl::container::BoardMaskTable5x3Center::mask(), osl::Move::to(), osl::progress::Effect5x3::update(), and osl::WHITE.
|
private |
Definition at line 347 of file effect5x3.cc.
References osl::BLACK, osl::eval::min(), and osl::WHITE.
Referenced by Effect5x3WithBonus().
Definition at line 113 of file effect5x3.h.
References osl::progress::Effect5x3::stand_progresses, and osl::progress::Effect5x3::updateStand().
Referenced by expect().
|
private |
Definition at line 116 of file effect5x3.h.
Referenced by effect5x3Mask(), and Effect5x3WithBonus().
|
private |
Definition at line 115 of file effect5x3.h.
Referenced by Effect5x3WithBonus(), and progress16bonus().