Основные понятия

У Sponge Economy API есть несколько базовых компонентов, с которыми разработчики должны ознакомиться:

  • EconomyService

  • Валюта

  • Аккаунты

  • Транзакции

EconomyService

EconomyService является основой Economy API. Он используется для взаимодействия через API экономики, хранит валюту и предоставляет методы для управления учетными записями.

Предупреждение

Sponge по умолчанию не предоставляет реализацию для EconomyService. Реализация Economy API лежит полностью на плагинах. Это означает, что Вам нужно полагаться на другой плагин, реализующий EconomyService, или Вам придётся его реализовывать самостоятельно.

Валюта

Объект Currency представляет собой форму Currency. Currency хранит отображаемое имя (множественное и единственное число), символ, количество дробных цифр и является ли валюта стандартной валютой для экономики. Плагин экономики может поддерживать несколько валют.

Аккаунты

Account-ы используются для хранения экономической информации о конкретном игроке или другом объекте (то есть банке, бизнесе, сущности). В Sponge Economy API есть два типа учётных записей:

Виртуальные аккаунты

Виртуальные учётные записи привязаны к идентификатору, который хранится в виде строки. Виртуальные счета могут быть привязаны практически ко всему, но обычно не используются для игроков, а скорее для банков. Чтобы получить идентификатор виртуальной учетной записи, используйте getIdentifier().

Уникальные аккаунты

Уникальные учётные записи привязаны к UUID, обычно к игроку. Чтобы получить UUID уникальной учётной записи, используйте getUUID().

Транзакции

Транзакции представляют собой изменение баланса счёта. В настоящее время существует три типа транзакций:

  • Депозит: появляется, когда на счёт добавляются средства

  • Вывод: появляется, когда со счёта уходят средства

  • Перевод: происходит при обмене средств с другой учётной записью

Во время перевода запускается EconomyTransactionEvent. Используя это событие, вы можете получить TransactionResult. В TransactionResult хранятся данные о произошедшей транзакции, включая:

  • Учётную запись

  • Валюту

  • Количество средств

  • Тип транзакции

  • Результат транзакции

Вы можете просмотреть все возможные транзакции на странице JavaDocs ResultType.