38 std::array<ScoreStripPlayerPlan, rules::MaxPlayers>
players{};
52 const ScoreStripInputs&
inputs);
91 for (
auto&
state : text_)
state.displayedCash = -1;
97 return text_[
static_cast<std::size_t
>(player)];
103 return players_[
static_cast<std::size_t
>(player)];
107 std::array<ScoreStripPlayerRuntime, rules::MaxPlayers> players_{};
108 std::array<ScoreTextState, rules::MaxPlayers> text_ = []
110 std::array<ScoreTextState, rules::MaxPlayers> states{};
111 for (
auto&
state : states)
state.displayedCash = -1;
decision::EconomicActionPlan plan
std::expected< void, std::string > sync(const ScoreStripPlan &plan, engine::SequencePlayback &playback)
const ScoreStripPlayerRuntime & playerState(rules::PlayerNumber player) const noexcept
const ScoreTextState & textState(rules::PlayerNumber player) const noexcept
constexpr DataId EmptyDataId
constexpr std::uint16_t ScoreBoxPriority
constexpr data::DataTag ScoreJailBarsTag
constexpr data::DataTag ScoreLargeColourBaseTag
constexpr std::uint8_t ScorePlayerColourCount
constexpr std::uint16_t ScoreGeneralPriority
constexpr data::DataTag ScoreTokenBaseTag
constexpr data::DataTag ScoreSmallColourBaseTag
std::expected< ScoreStripPlan, std::string > planScoreStrip(const rules::GameState &state, const ScoreStripInputs &inputs)
std::uint8_t PlayerNumber
std::array< ScoreStripPlayerPlan, rules::MaxPlayers > players
std::int64_t displayedCash
ScoreCashChange lastCashChange
std::uint32_t lastCashUpdateTick