28 std::array<TradeTurnState, rules::MaxPlayers>
turnState{};
41 TradeIngressState&
state)
noexcept;
48 TradeIngressState&
state)
noexcept;
51 std::uint8_t numberOfPlayers,
54 TradeIngressState&
state)
noexcept;
61 const TradeIngressState&
state,
95 const TradeAcceptanceConfig&
config,
96 const TradeIngressState&
state)
noexcept;
107 TradeIngressState&
state)
noexcept;
std::array< Profile, rules::MaxPlayers > ProfileSet
void resetTradeIngress(TradeIngressState &state) noexcept
std::array< double, rules::MaxPlayers > tradeResponseAttitudeChanges(const rules::GameState &gameState, rules::PlayerNumber proposer, rules::PlayerNumber respondingPlayer, bool accepted, const TradeIngressState &state, const profile::ProfileSet &profiles, const profile::ConfigContext &context) noexcept
std::array< FutureImmunityRecord, rules::MaxCountHitSets > FutureImmunityList
bool sendProactiveTrade(const rules::GameState &gameState, rules::PlayerNumber player, const TradeProposalList &proposal, const profile::Profile &strategy, TradeIngressState &state) noexcept
void advanceTradeTurn(std::uint8_t numberOfPlayers, profile::ProfileSet &profiles, const std::array< bool, rules::MaxPlayers > &localAIPlayers, TradeIngressState &state) noexcept
CounterTradeRunResult counterProposeCurrentTrade(const rules::GameState &gameState, rules::PlayerNumber player, bool tradeAccept, double counterRoll, int pendingActions, bool auctionOn, const decision::CounterProposalPreflightConfig &preflightConfig, const decision::CounterProposalBalanceConfig &balanceConfig, TradeIngressState &state) noexcept
std::array< TradeProposalRecord, rules::MaxPlayers > TradeProposalList
TradeAcceptanceResult evaluateCurrentTradeAcceptance(const rules::GameState &gameState, rules::PlayerNumber player, const TradeAcceptanceConfig &config, const TradeIngressState &state) noexcept
bool processTradeRuleMessage(const rules::GameState &gameState, const actions::Message &message, TradeIngressState &state) noexcept
std::uint8_t PlayerNumber
constexpr PlayerNumber MaxPlayers
constexpr PlayerNumber NobodyPlayer
decision::TradeEvaluationConfig evaluation
double minEvaluationThreshold
double minEvaluationIfFedUp
int numberTimesAllowPropertyTrade
TradeAcceptanceStatus status
TradeProposalList currentTrade
FutureImmunityList immunities
rules::PlayerNumber lastEditor
bool tradeOfferedForAcceptance
CounterTradeRuntimeState counterRuntime
rules::PlayerNumber playerJustRejectedCountered
std::uint32_t deferredAcceptancePlayers
rules::PlayerNumber proposedPlayer
std::uint32_t pendingTradeAcceptPlayers
std::array< TradeTurnState, rules::MaxPlayers > turnState
std::array< decision::CounterProposalSession, rules::MaxPlayers > counterSessions
bool tradeJustRejectedCountered
std::int64_t turnsAfterForgettingLast
std::array< std::int64_t, 20 > timeLastTrade