Monopoly — Portage moderne 0.1.0
Portage moderne C/C++23 du Monopoly de 1999
Loading...
Searching...
No Matches
StatsBankPlayback.hpp
Go to the documentation of this file.
1#pragma once
2
3#include "StatsUI.hpp"
6
7#include <cstdint>
8#include <expected>
9#include <optional>
10#include <string>
11#include <vector>
12
13namespace monopoly::statsui
14{
15 inline constexpr std::uint16_t BankOverlayPriority = 55;
16 inline constexpr std::uint16_t BankIconPriority = 56;
17 inline constexpr std::uint16_t BankSignPriority = 60;
18 inline constexpr int BankContentX = 7;
19 inline constexpr int BankContentY = 226;
20 inline constexpr int BankDeedWidth = 36;
21 inline constexpr int BankDeedHeight = 42;
22 inline constexpr data::DataTag BankPlayerBarBaseTag = 0x0001;
23 inline constexpr data::DataTag BankHouseTag = 0x0321;
24 inline constexpr data::DataTag BankHotelTag = 0x0322;
25 inline constexpr data::DataTag BankDeedBaseTag = 0x05E6;
26 inline constexpr data::DataTag BankMortgageSignTag = 0x0E3D;
27 inline constexpr data::DataTag BankSoldSignTag = 0x0F17;
29 inline constexpr data::DataTag BankLiabilityErrorCardTag = 0x08F1;
30 inline constexpr float BankLiabilityCardScale = 0.3F;
31
32 [[nodiscard]] std::optional<Rect> bankDeedRect(int square) noexcept;
33 [[nodiscard]] data::DataId bankDeedSequence(int square) noexcept;
34
36 {
37 public:
38 [[nodiscard]] std::expected<void, std::string> sync(
41 const AccountState* accounts = nullptr);
42 void reset() noexcept { current_.clear(); }
43 [[nodiscard]] std::size_t objectCount() const noexcept { return current_.size(); }
44
45 struct Published
46 {
48 std::uint16_t priority{};
49 int x{};
50 int y{};
51 bool positioned{};
52 float scale{1.0F};
53 friend bool operator==(const Published&, const Published&) = default;
54 };
55
56 private:
57 std::vector<Published> current_;
58 };
59}
60
61
unsigned state
unsigned index
std::expected< void, std::string > sync(const State &state, const rules::GameState &gameState, display::Screen2D desiredView, engine::SequencePlayback &playback, const AccountState *accounts=nullptr)
std::size_t objectCount() const noexcept
std::uint32_t DataId
Definition DataBanks.hpp:10
constexpr DataId EmptyDataId
Definition DataBanks.hpp:13
std::uint16_t DataTag
Definition DataBanks.hpp:11
constexpr data::DataTag BankSoldSignTag
data::DataId bankDeedSequence(int square) noexcept
constexpr data::DataTag BankLiabilityDividendCardTag
constexpr data::DataTag BankHotelTag
std::optional< Rect > bankDeedRect(int square) noexcept
constexpr int BankContentX
constexpr int BankDeedWidth
constexpr int BankDeedHeight
constexpr data::DataTag BankDeedBaseTag
constexpr std::uint16_t BankOverlayPriority
constexpr data::DataTag BankHouseTag
constexpr int BankContentY
constexpr data::DataTag BankPlayerBarBaseTag
constexpr data::DataTag BankLiabilityErrorCardTag
constexpr data::DataTag BankMortgageSignTag
constexpr std::uint16_t BankIconPriority
constexpr float BankLiabilityCardScale
constexpr std::uint16_t BankSignPriority
friend bool operator==(const Published &, const Published &)=default