基本概念
作为 Sponge 插件开发者,你应该要熟悉以下几个基本概念:
经济服务(EconomyService)
货币(Currency)
账户(Account)
数据操作记录
经济服务
EconomyService 是经济 API 的基础。它用于通过经济 API 进行交互、存储货币、并提供管理帐户的方法。
警告
Sponge 没有提供 EconomyService
的默认实现。也就是说这完全依靠第三方插件来实现经济 API 。这意味着如果你想要使用经济 API ,你需要依赖另一个实现了经济 API 的插件,否则你需要自己实现它。
货币(Currency)
Currency 对象表示一种货币。 Currency
存储了一个显示名称(单数或复数),一个货币符号(如¥或$等),小数点的位数,以及它是否是默认的交易货币。如果经济插件支持,那么我们可以使用多种货币。
账户(Account)
Account 用于存储一个特定玩家或其他对象(如银行、企业、实体)等的经济数据。在 Sponge 的经济 API 系统中有两种账户类型:
虚拟帐户
虚拟账户被绑定到一个被存为字符串的标识。虚拟账户可以绑定到几乎任何东西,但通常用于银行或非玩家的情况。要获取虚拟账户的标识,调用 identifier()
。
唯一账户
唯一账户都被绑定到一个通常是玩家的 UUID。使用 uniqueId()
来获取唯一账户的 UUID。
数据操作记录
交易记录代表一个帐户的收支。有三种类型的交易记录:
收入:代表帐户中货币数量的增加
支出:代表帐户中货币数量的减少
转让:代表帐户中的货币与另一个帐户的货币之间的流动
当交易发生时,经济系统将触发 EconomyTransactionEvent 事件。这一事件提供了 TransactionResult ,而 TransactionResult
储存了交易的相关数据,包括:
涉及账户
涉及币种
涉及金额
交易类型
交易结果
你可以查看 JavaDoc 页面( ResultType )以了解所有可能的交易结果。