基本概念

Sponge 經濟 API 有一些開發人員應該要熟悉的基本組件:

  • 經濟服務(EconomyService)

  • 貨幣(Currency)

  • 帳戶(Accounts)

  • 数据操作记录

經濟服務(EconomyService)

EconomyService 是經濟 API 的基礎。它用於通過經濟 API 交互、儲存經濟貨幣與提供管理帳戶的方法。

警告

Sponge 沒有提供 EconomyService 的預設實作。這完全取決於實作經濟 API 的插件,這意味著,若你想要使用經濟 API,你需要依賴另一個實作該服務的插件,否則你需要自己實作它。

貨幣(Currency)

Currency 物件表是一種貨幣。Currency 儲存了一個顯示名稱(單數與複數)、一個符號、小數點的位數,以及它是否為預設的貨幣。如果經濟插件支援,可以使用多種貨幣。

帳戶(Accounts)

Account用於儲存關於特定玩家或其他物件(如銀行、企業、實體)的經濟資訊。在 Sponge 經濟 API 中有兩種帳戶類型:

虛擬帳戶

虚拟账户被绑定到一个被存为字符串的标识。虚拟账户可以绑定到几乎任何东西,但通常用于银行或非玩家的情况。要获取虚拟账户的标识,调用 identifier()

唯一帳戶

唯一账户都被绑定到一个通常是玩家的 UUID。使用 uniqueId() 来获取唯一账户的 UUID。

数据操作记录

交易表是一個帳戶的改變。目前有三種交易類型:

  • 存款:帳戶被添加資金時發生

  • 取款:帳戶被移除資金時發生

  • 轉移:帳戶與另一個帳戶交換資金時發生

當交易發生時,EconomyTransactionEvent 將被觸發。使用該事件,你可以取得 TransactionResult,而 TransactionResult 儲存了關於發生的交易的資料,包含:

  • 涉及帳戶

  • 涉及貨幣

  • 涉及金額

  • 交易類型

  • 交易結果

你可以查看 ResultType 的 JavaDocs 頁面以了解所有可能的交易結果。