起動・前提準備
初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
/rg shop コマンドで開く簡易ショップGUI。
com.example.rankingplugin.shopshop/ShopManager.javaclass/rg shop コマンドで開く簡易ショップGUI。 プラグイン通貨と Vault 通貨の両対応。
/rg shop コマンドで開く簡易ショップGUI。shop パッケージの 小〜中規模クラスで、運用中の主ループ・Web 導線・スケジューラを確認する起点です。全面展開版では、他の重点クラスと同じ章立てで読めるように補強しています。
ShopManagerinitShopItemsopenShopbuildLorehandleNetworkStoragePurchasehandleItemPurchaseonCommandonInventoryClick初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
外部から呼ばれる公開メソッドや、対象プレイヤー・対象データ・対象ワールドを引き当てる経路です。
イベント受理、定期監視、判定、進行更新など、実際に挙動を生む中心ロジックです。
Web から見えるエンドポイント、セッション解決、レスポンス整形を含みます。画面追加や API 変更時の起点になります。
Bukkit イベントや内部イベントを受けたあと、どの状態を更新するかをまとめています。
このクラスが前提状態を揃え、外部から利用可能な形まで立ち上がる流れです。新規依存の追加や起動失敗の調査はまずここから追います。
イベント受理、判定、状態更新、通知までの主経路です。体感不具合や想定外の分岐はこの流れのどこで止まるかを見ると切り分けやすいです。
結果を保持し、必要なら永続化し、最後に掃除まで行う出口です。画面更新だけ合って保存が壊れるケースや残骸が残るケースの確認に向きます。
| Signature | 説明 | 主要呼び出し |
|---|---|---|
public ShopManager(JavaPlugin plugin, CurrencyService currencyService, Economy vaultEco, NetworkStorageService storage) | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 | getCommand → setExecutor → getLogger → warning → getPluginManager → registerEvents |
| Name | Visibility | Kind | 説明 |
|---|---|---|---|
| fmt | private | メソッド | fmt の主要処理を担当します。 |
| fmt | private | メソッド | fmt の主要処理を担当します。 |
| ShopManager | public | コンストラクタ | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 |
| initShopItems | private | メソッド | 初期化と各種登録を行い、機能を有効化します。 |
| onCommand | public | メソッド | onCommand の主要処理を担当します。 |
| toVault | private | メソッド | toVault の主要処理を担当します。 |
| openShop | private | メソッド | openShop の主要処理を担当します。 |
| buildLore | private | メソッド | 表示用または出力用のデータを組み立てます。 |
| onInventoryClick | public | イベント処理 | イベント発生時の分岐と後続処理を担当します。 |
| handleNetworkStoragePurchase | private | メソッド | 入力やリクエストを受けて、検証・処理・応答までをまとめて担当します。 |
| handleItemPurchase | private | メソッド | 入力やリクエストを受けて、検証・処理・応答までをまとめて担当します。 |
private static String fmt(long v)fmt の主要処理を担当します。
long vなし
private static String fmt(double v)fmt の主要処理を担当します。
double vなし
public ShopManager(JavaPlugin plugin, CurrencyService currencyService, Economy vaultEco, NetworkStorageService storage)依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。
JavaPlugin pluginCurrencyService currencyServiceEconomy vaultEcoNetworkStorageService storageなし
private void initShopItems()初期化と各種登録を行い、機能を有効化します。
なし
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)onCommand の主要処理を担当します。
CommandSender senderCommand commandString labelString[] argsなし
private double toVault(long coinCost)toVault の主要処理を担当します。
long coinCostなし
private void openShop(Player p)openShop の主要処理を担当します。
Player pなし
private List<String> buildLore(ShopItem si, boolean vaultMode)表示用または出力用のデータを組み立てます。
ShopItem siboolean vaultModeなし
public void onInventoryClick(InventoryClickEvent e)イベント発生時の分岐と後続処理を担当します。
InventoryClickEvent eなし
private void handleNetworkStoragePurchase(Player p, boolean vaultMode)入力やリクエストを受けて、検証・処理・応答までをまとめて担当します。
Player pboolean vaultModeなし
private void handleItemPurchase(Player p, ShopItem si, boolean vaultMode)入力やリクエストを受けて、検証・処理・応答までをまとめて担当します。
Player pShopItem siboolean vaultModeなし
ShopManager → getCommand → setExecutor → getLogger → warning → getPluginManageronInventoryClick → equals → getView → getTitle → setCancelled → getWhoClickedhandleItemPurchase → tryTakeCurrency → getName → getBalance → sendMessage → getLoggerhandleNetworkStoragePurchase → getUniqueId → getUnlocked → sendMessage → getNextExpandCost → tryTakeCurrencyonCommand → equalsIgnoreCase → openShop