16 [[
nodiscard]] std::array<data::DataId, CashDialogSequenceCount>
27 std::size_t
index)
noexcept
34 std::uint8_t side)
noexcept
41 std::uint8_t side)
noexcept
55 state.cashDialogSide >= 2)
57 return std::unexpected(
"Trade cash-dialog side is out of range");
79 ?
state.cashDialogSide
83 ?
state.cashDialogFeedback
90 return std::unexpected(
"Trade cash-dialog feedback is out of range");
94 std::array<std::shared_ptr<const sequence::SequenceProgram>,
103 return std::unexpected(
loaded.error().detail);
114 return std::unexpected(
loaded.error().detail);
118 std::vector<sequence::SequenceCommand> commands;
123 ids[index], cashDialogPriority(index), false});
169 return std::unexpected(
170 "sequence command queue cannot fit Trade cash-dialog transition");
173 for (
auto& command : commands)
175 const auto queued = std::visit(
183 return std::unexpected(
184 "validated Trade cash-dialog command rejected");
194 state.cashDialogVisible =
false;
195 state.cashDialogClosing =
false;
200 feedbackStartTick_ = 0;
215 feedbackStartTick_ = 0;
static constexpr std::size_t Capacity
static std::expected< std::shared_ptr< const SequenceProgram >, RuntimeError > load(const data::DataSource &source, data::DataId id, std::size_t offset=0, DescriptionLimits limits={})
std::expected< void, std::string > sync(State &state, display::Screen2D desiredView, std::uint64_t nowTick, engine::SequencePlayback &playback)
constexpr DataId EmptyDataId
MoveSequenceCommand makeMoveXY(data::DataId dataId, std::uint16_t priority, std::int32_t x, std::int32_t y) noexcept
constexpr std::array< std::int32_t, 2 > TradeCashButtonX
constexpr std::array< std::int32_t, 2 > TradeCashDialogX
constexpr std::array< std::int32_t, 2 > TradeCashDialogY
constexpr data::DataId tradeCashPressedSequence(CashDialogFeedback feedback) noexcept
constexpr std::uint16_t TradeCashDialogPriority
constexpr std::array< std::int32_t, 2 > TradeCashButtonY
constexpr data::DataId tradeCashIdleSequence(std::size_t index) noexcept
constexpr std::uint16_t TradeCashButtonPriority
constexpr std::uint16_t TradeCashPressedPriority
constexpr data::DataId tradeCashDialogSequence() noexcept