Home › Lua API › DealManager

Available out of the box. Usable from Lua in the unmodified game.

DealManager

11 methods. Symbol/current columns are function addresses (RVA) of the native wrapper.

Community reference for this object: DealManager (Sukrit Tan, external).

Signatures are recovered from the game code. ⚠ = partly understood (arguments may be missing or approximate). ? after a name = optional argument. Types: integer/number are Lua numbers, enum-typed arguments show the C++ type in brackets. Two signatures mean the method is registered separately for the UI and the gameplay state and each wrapper was decoded on its own. "same code as" in the Symbol column means the compiler merged identical functions: those methods share one wrapper and cannot be told apart by address.

Method Signature Where Reference Symbol Current
AreWorkingDealsEqual UI state: DealManager.AreWorkingDealsEqual() ⚠
gameplay state: DealManager.AreWorkingDealsEqual(eThisPlayer: Player[PlayerTypes], eOtherPlayer: Player[PlayerTypes]) → boolean
ui-cache, gameplay yes ↗ 0x693590 —
ClearWorkingDeal UI state: DealManager.ClearWorkingDeal() ⚠
gameplay state: DealManager.ClearWorkingDeal(arg1?: number, eThisPlayer: Player[PlayerTypes], arg3: Player) (or nothing)
ui-cache, gameplay yes ↗ 0x6935a0 —
CopyIncomingToOutgoingWorkingDeal UI state: DealManager.CopyIncomingToOutgoingWorkingDeal() ⚠
gameplay state: DealManager.CopyIncomingToOutgoingWorkingDeal(eThisPlayer: Player[PlayerTypes], eOtherPlayer: Player[PlayerTypes]) (or nothing)
ui-cache, gameplay yes ↗ 0x6935b0 —
EditWorkingDeal DealManager.EditWorkingDeal() ⚠ ui-cache yes ↗ 0x6935c0
same code as GetWorkingDeal
—
EnactWorkingDeal DealManager.EnactWorkingDeal(eThisPlayer: Player[PlayerTypes], eOtherPlayer: Player[PlayerTypes]) → number (Diplomacy::Deal::ValidationResult)
args: eThisPlayer — Id of a player (as in Players[id]).; eOtherPlayer — Id of a player (as in Players[id]).
gameplay yes ↗ 0x6d1210 0x6d18b0
GetPlayerDeals UI state: DealManager.GetPlayerDeals() ⚠
gameplay state: DealManager.GetPlayerDeals(ePlayer: Player[PlayerTypes], arg2: Player)
ui-cache, gameplay yes ↗ 0x6935d0 —
GetPossibleDealItems UI state: DealManager.GetPossibleDealItems() ⚠
gameplay state: DealManager.GetPossibleDealItems(eThisPlayer: Player[PlayerTypes], eOtherPlayer: Player[PlayerTypes], eType: string/number[Types])
ui-cache, gameplay yes ↗ 0x6935e0 —
GetWorkingDeal UI state: DealManager.GetWorkingDeal() ⚠
gameplay state: DealManager.GetWorkingDeal(arg1?: number, eThisPlayer: Player[PlayerTypes], arg3: Player) → Deal (or nothing)
ui-cache, gameplay yes ↗ 0x6935c0
same code as EditWorkingDeal
—
HasPendingDeal UI state: DealManager.HasPendingDeal() ⚠
gameplay state: DealManager.HasPendingDeal(eFromPlayer?: number, eToPlayer?: number) → boolean
ui-cache, gameplay yes ↗ 0x6935f0 —
SendWorkingDeal UI state: DealManager.SendWorkingDeal() ⚠
gameplay state: DealManager.SendWorkingDeal(arg1?: number, eThisPlayer: Player[PlayerTypes], eOtherPlayer: Player[PlayerTypes]) → number (Diplomacy::Deal::ValidationResult)
ui-cache, gameplay yes ↗ 0x693600 —
ViewPendingDeal DealManager.ViewPendingDeal(eThisPlayer?: number, eOtherPlayer?: number) → boolean
args: eThisPlayer — Id of a player (the scripts name the argument playerID / owner). (inferred); eOtherPlayer — Id of a player (the scripts name the argument playerID / owner). (inferred)
ui-cache yes ↗ 0x693610 0x693bf0