Table of Contents

Struct TradeStateBroadcast

Namespace
FishMMO.Shared
Assembly
FishMMO.Shared.dll

The whole table, as seen from the receiving side.

public struct TradeStateBroadcast : IBroadcast
Implements
IBroadcast
Inherited Members

Remarks

The full state every time rather than deltas. A table holds at most a handful of items, so the saving would be small, and a client that has missed nothing still repaints from scratch — which is also what makes it trivially correct after a tree rebuild.

Receiver-shaped: the same change produces two different messages, one per party, each saying "own" and "partner" from that party's point of view. Neither client has to know which side of the session it is.

Fields

OwnAccepted

Whether this client's character has accepted the frozen table.

public bool OwnAccepted

Field Value

bool

OwnConfirmed

Whether this client's character has declared its offer final.

public bool OwnConfirmed

Field Value

bool

OwnCurrency

Currency this client's character is offering.

public long OwnCurrency

Field Value

long

OwnOffer

What this client's character is offering.

public TradeOfferEntry[] OwnOffer

Field Value

TradeOfferEntry[]

PartnerAccepted

Whether the other party has accepted the frozen table.

public bool PartnerAccepted

Field Value

bool

PartnerConfirmed

Whether the other party has declared its offer final.

public bool PartnerConfirmed

Field Value

bool

PartnerCurrency

Currency the other party is offering.

public long PartnerCurrency

Field Value

long

PartnerOffer

What the other party is offering.

public TradeOfferEntry[] PartnerOffer

Field Value

TradeOfferEntry[]

Version

Increments on every change to either offer. Quoted back by TradeConfirmBroadcast and TradeAcceptBroadcast.

public uint Version

Field Value

uint