基本概念
Sponge 經濟 API 有一些開發人員應該要熟悉的基本組件:
經濟服務(EconomyService)
貨幣(Currency)
帳戶(Accounts)
数据操作记录
經濟服務(EconomyService)
EconomyService 是經濟 API 的基礎。它用於通過經濟 API 交互、儲存經濟貨幣與提供管理帳戶的方法。
警告
Sponge 沒有提供 EconomyService
的預設實作。這完全取決於實作經濟 API 的插件,這意味著,若你想要使用經濟 API,你需要依賴另一個實作該服務的插件,否則你需要自己實作它。
貨幣(Currency)
Currency 物件表是一種貨幣。Currency
儲存了一個顯示名稱(單數與複數)、一個符號、小數點的位數,以及它是否為預設的貨幣。如果經濟插件支援,可以使用多種貨幣。
帳戶(Accounts)
Account用於儲存關於特定玩家或其他物件(如銀行、企業、實體)的經濟資訊。在 Sponge 經濟 API 中有兩種帳戶類型:
虛擬帳戶
虛擬帳戶綁定到一個識別碼,該識別碼以字串儲存。虛擬帳戶可以綁定到幾乎任何東西,但通常用於諸如銀行或飛玩家的事物。要取得虛擬帳戶的 ID,請使用 getIdentifier()
。
唯一帳戶
唯一帳戶綁定到 UUID,通常是玩家。要取得唯一帳戶的 UUID,請使用 getUUID()
。
数据操作记录
交易表是一個帳戶的改變。目前有三種交易類型:
存款:帳戶被添加資金時發生
取款:帳戶被移除資金時發生
轉移:帳戶與另一個帳戶交換資金時發生
當交易發生時,EconomyTransactionEvent 將被觸發。使用該事件,你可以取得 TransactionResult,而 TransactionResult
儲存了關於發生的交易的資料,包含:
涉及帳戶
涉及貨幣
涉及金額
交易類型
交易結果
你可以查看 ResultType 的 JavaDocs 頁面以了解所有可能的交易結果。