Interface IHasTradeOffers
Handles defining a set of trade offers, which can be done at a store, or on a placed object. Also
provides a set of functions in the form of the default interace to process transactions.
Assembly: Eco.Gameplay.dll
Syntax
public interface IHasTradeOffers
Properties
AllOffers
Declaration
IEnumerable<TradeOffer> AllOffers { get; }
Property Value
| Type |
Description |
| System.Collections.Generic.IEnumerable<TradeOffer> |
|
Balance
Declaration
Property Value
| Type |
Description |
| System.Single |
|
Currency
Declaration
Currency Currency { get; }
Property Value
DepositInventories
Declaration
virtual IEnumerable<Inventory> DepositInventories { get; }
Property Value
| Type |
Description |
| System.Collections.Generic.IEnumerable<Inventory> |
|
EnabledForTrades
Declaration
bool EnabledForTrades { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
IsBarter
Declaration
Property Value
| Type |
Description |
| System.Boolean |
|
Owners
Declaration
Property Value
Parent
Declaration
WorldObject Parent { get; }
Property Value
SoldOutNotice
Declaration
virtual LocString SoldOutNotice { get; }
Property Value
SourceName
Declaration
LocString SourceName { get; }
Property Value
StockInventories
Declaration
virtual IEnumerable<Inventory> StockInventories { get; }
Property Value
| Type |
Description |
| System.Collections.Generic.IEnumerable<Inventory> |
|
Methods
AdjustTagOfferQuantities(Dictionary<TradeOffer, Int32>, Dictionary<TradeOffer, List<(Item, Int32)>>)
Caps tag offer quantities to match what was actually resolved, so currency validation uses correct amounts.
Declaration
static void AdjustTagOfferQuantities(Dictionary<TradeOffer, int> offers, Dictionary<TradeOffer, List<(Item, int)>> resolved)
Parameters
| Type |
Name |
Description |
| System.Collections.Generic.Dictionary<TradeOffer, System.Int32> |
offers |
|
| System.Collections.Generic.Dictionary<TradeOffer, System.Collections.Generic.List<System.ValueTuple<Item, System.Int32>>> |
resolved |
|
AnnounceTrade(PurchaseData, GameActionPack, Boolean)
Declaration
virtual void AnnounceTrade(PurchaseData data, GameActionPack pack, bool contentsSold)
Parameters
GetLinkedInventories(IAlias, Boolean, Boolean, Boolean)
Get all linked inventories that work for any user in the alias.
Declaration
virtual IEnumerable<Inventory> GetLinkedInventories(IAlias alias, bool source = false, bool target = false, bool includeStoreStorage = true)
Parameters
| Type |
Name |
Description |
| IAlias |
alias |
|
| System.Boolean |
source |
|
| System.Boolean |
target |
|
| System.Boolean |
includeStoreStorage |
Do we want to include the store own storage ?
|
Returns
| Type |
Description |
| System.Collections.Generic.IEnumerable<Inventory> |
|
Declaration
virtual GameActionPack PerformTradeInPack(PurchaseData data, GameActionPack pack = null)
Parameters
Returns
Declaration
virtual GameActionPack PerformTradeWithPurchaseData(PurchaseData data, GameActionPack pack = null)
Parameters
Returns
Validate(PurchaseData)
Declaration
virtual Result Validate(PurchaseData data)
Parameters
Returns
ValidateCurrency(PurchaseData)
Declaration
virtual Result ValidateCurrency(PurchaseData data)
Parameters
Returns
ValidateOffers(PurchaseData)
Declaration
virtual Result ValidateOffers(PurchaseData data)
Parameters
Returns
Extension Methods