Monopoly — Portage moderne 0.1.0
Portage moderne C/C++23 du Monopoly de 1999
Loading...
Searching...
No Matches
TradeUI.hpp File Reference
#include "Actions.hpp"
#include "Display.hpp"
#include "RuleTypes.hpp"
#include "UIMessages.hpp"
#include <array>
#include <cstddef>
#include <cstdint>
#include <optional>
#include <vector>
Include dependency graph for TradeUI.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  monopoly::tradeui::Rect
 
struct  monopoly::tradeui::ContractListEntry
 
struct  monopoly::tradeui::PropertyMoveRequest
 
struct  monopoly::tradeui::State
 
struct  monopoly::tradeui::PropertyProjection
 
struct  monopoly::tradeui::InputUpdate
 
struct  monopoly::tradeui::RuleUpdate
 

Namespaces

namespace  monopoly
 
namespace  monopoly::tradeui
 

Typedefs

using monopoly::tradeui::PropertyMask = std::uint32_t
 

Enumerations

enum class  monopoly::tradeui::CashDialogFeedback : std::uint8_t { monopoly::tradeui::None , monopoly::tradeui::Clear , monopoly::tradeui::Okay , monopoly::tradeui::Cancel }
 

Functions

void monopoly::tradeui::reset (State &state) noexcept
 
bool monopoly::tradeui::beginLocalTrade (State &state, const rules::GameState &gameState, rules::PlayerNumber source) noexcept
 
std::optional< Rect > monopoly::tradeui::playerTokenRect (const State &state, const rules::GameState &gameState, rules::PlayerNumber player) noexcept
 
std::optional< rules::PlayerNumber > monopoly::tradeui::planPartnerSelection (State &state, const rules::GameState &gameState, display::Screen2D desiredView, const uimsg::Message &message) noexcept
 
bool monopoly::tradeui::selectPartner (State &state, const rules::GameState &gameState, rules::PlayerNumber player) noexcept
 
bool monopoly::tradeui::abortIfParticipantOffBoard (State &state, rules::GameState &gameState, display::Screen2D desiredView) noexcept
 
void monopoly::tradeui::refreshContractProjection (State &state, const rules::GameState &gameState) noexcept
 
PropertyProjection monopoly::tradeui::projectProperties (const State &state, const rules::GameState &gameState) noexcept
 
std::optional< int > monopoly::tradeui::propertyHit (const PropertyProjection &projection, int x, int y) noexcept
 
InputUpdate monopoly::tradeui::processInput (State &state, const rules::GameState &gameState, display::Screen2D desiredView, const uimsg::Message &message)
 
std::vector< actions::Message > monopoly::tradeui::planEditorSubmission (const State &state, rules::PlayerNumber editor, std::uint32_t localHumanMask)
 
bool monopoly::tradeui::addTradeItem (State &state, const rules::GameState &gameState, const actions::Message &message)
 
bool monopoly::tradeui::addUiImmunity (rules::GameState &gameState, rules::PlayerNumber from, rules::PlayerNumber to, rules::CountHitType hitType, std::int32_t hitCount, std::uint32_t properties, bool tradingItem) noexcept
 
RuleUpdate monopoly::tradeui::processRuleMessage (State &state, rules::GameState &gameState, const actions::Message &message, display::Screen2D currentView, std::uint32_t localHumanMask, bool restoreAutonomousPortfolio)
 

Variables

constexpr std::size_t monopoly::tradeui::MaxTradeMessages
 
constexpr int monopoly::tradeui::PlayerSelectX = 306
 
constexpr int monopoly::tradeui::PlayerSelectY = 234
 
constexpr int monopoly::tradeui::PlayerSelectWidth = 188
 
constexpr int monopoly::tradeui::PlayerSelectHeight = 209
 
constexpr std::uint16_t monopoly::tradeui::PlayerSelectPriority = 205
 
constexpr std::uint8_t monopoly::tradeui::OffBoardSquare = 41
 
constexpr Rect monopoly::tradeui::CashTradeAT1 {19, 395, 52, 425}
 
constexpr Rect monopoly::tradeui::CashTradeAT2 {9, 425, 61, 440}
 
constexpr Rect monopoly::tradeui::CashTradeBT1 {619, 395, 652, 425}
 
constexpr Rect monopoly::tradeui::CashTradeBT2 {609, 425, 661, 440}
 
constexpr Rect monopoly::tradeui::CashTradeAM1 {219, 358, 252, 388}
 
constexpr Rect monopoly::tradeui::CashTradeAM2 {209, 388, 261, 403}
 
constexpr Rect monopoly::tradeui::CashTradeBM1 {419, 358, 452, 388}
 
constexpr Rect monopoly::tradeui::CashTradeBM2 {409, 388, 461, 403}
 
constexpr Rect monopoly::tradeui::ProposeRect {202, 420, 303, 450}
 
constexpr Rect monopoly::tradeui::CancelRect {306, 420, 407, 450}
 
constexpr std::array< Rect, 4 > monopoly::tradeui::ChanceJailRects
 
constexpr std::array< Rect, 4 > monopoly::tradeui::CommunityJailRects
 
constexpr Rect monopoly::tradeui::FutureTradeAT {104, 398, 165, 413}
 
constexpr Rect monopoly::tradeui::FutureTradeBT {704, 398, 765, 413}
 
constexpr Rect monopoly::tradeui::FutureTradeAM {304, 361, 365, 376}
 
constexpr Rect monopoly::tradeui::FutureTradeBM {504, 361, 565, 376}
 
constexpr Rect monopoly::tradeui::ImmunityTradeAT {104, 422, 165, 437}
 
constexpr Rect monopoly::tradeui::ImmunityTradeBT {704, 422, 765, 437}
 
constexpr Rect monopoly::tradeui::ImmunityTradeAM {304, 385, 365, 400}
 
constexpr Rect monopoly::tradeui::ImmunityTradeBM {504, 385, 565, 400}
 
constexpr Rect monopoly::tradeui::FutureNewRect {607, 197, 701, 220}
 
constexpr Rect monopoly::tradeui::ImmunityNewRect {704, 197, 798, 220}
 
constexpr Rect monopoly::tradeui::ContractOkayRect {660, 187, 740, 209}
 
constexpr Rect monopoly::tradeui::ContractUpRect {767, 115, 785, 141}
 
constexpr Rect monopoly::tradeui::ContractDownRect {767, 155, 785, 181}
 
constexpr std::array< Rect, 5 > monopoly::tradeui::ContractListRects