Mole Whack を担当するclassです。

5Fields
0Constructors
17Methods
178Lines
Package
com.example.rankingplugin.minigame.games
Source
minigame/games/MoleWhack.java
Kind
class
Roles
イベント駆動非同期 / スケジューラ
このクラスにも章立て解説を追加しています。 自動抽出の一覧だけでなく、下の『重点クラスの詳細解説』で読む順番・内部サブシステム・変更時の注意点まで追えます。 全クラス章立てガイドを見る

クラス説明

クラス直前の Javadoc は見つかりませんでした。ソースとメソッド構成から責務を補完しています。

責務と見どころ

重点クラスの詳細解説

Mole Whack を担当するclassです。minigame.games パッケージの 小〜中規模クラスで、運用中の主ループ・スケジューラを確認する起点です。全面展開版では、他の重点クラスと同じ章立てで読めるように補強しています。

最初に追う読む順番

  1. join
    実体や対象状態を作る段階で、後続フローがどのデータを前提に動くかを掴めます。
  2. build
    表示用または出力用のデータを組み立てます。
  3. handleArenaSetupCmd
    運用中の中心ループです。イベント受理から状態更新までの主経路を追えます。
  4. finish
    後片付けと停止の出口です。残骸や再ログイン後の不整合はここを確認します。
  5. leave
    後片付けと停止の出口です。残骸や再ログイン後の不整合はここを確認します。
  6. id
    id の主要処理を担当します。
  7. arenaIds
    arenaIds の主要処理を担当します。
  8. reloadArenas
    reloadArenas の主要処理を担当します。

内部サブシステムの地図

起動・前提準備

初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。

主なメソッド
主なフィールド

入口 API と対象解決

外部から呼ばれる公開メソッドや、対象プレイヤー・対象データ・対象ワールドを引き当てる経路です。

主なメソッド
主なフィールド

運用中の主ループ

イベント受理、定期監視、判定、進行更新など、実際に挙動を生む中心ロジックです。

主なメソッド
主なフィールド

終了処理と掃除

停止時やフロー終端で残る実体・タスク・キャッシュを戻す出口です。

主なメソッド
主なフィールド

非同期処理と定期実行

メインスレッド境界とバックグラウンド処理が交差します。重い処理やタイミング起因の不具合を追うときの要所です。

主なメソッド
主なフィールド

代表フロー詳解

初期化と起動の流れ

  1. reloadArenas
  2. join
  3. build

このクラスが前提状態を揃え、外部から利用可能な形まで立ち上がる流れです。新規依存の追加や起動失敗の調査はまずここから追います。

通常運用の中心フロー

  1. handleArenaSetupCmd

イベント受理、判定、状態更新、通知までの主経路です。体感不具合や想定外の分岐はこの流れのどこで止まるかを見ると切り分けやすいです。

反映・保存・終了の流れ

  1. leave
  2. finish

結果を保持し、必要なら永続化し、最後に掃除まで行う出口です。画面更新だけ合って保存が壊れるケースや残骸が残るケースの確認に向きます。

変更時の注意点

フィールド

VisibilityTypeName役割
privatePluginpluginプラグイン本体参照です。
privateMinigameEngineengineengine の状態を保持します。
privateStringidid の状態を保持します。
privateMap<String, Arena>arenasarenas の状態を保持します。
privateMap<String, Session>sessionssessions の状態を保持します。

コンストラクタ / 初期化

Signature説明主要呼び出し
明示コンストラクタは抽出されませんでした。

メソッド索引

NameVisibilityKind説明
idpublicメソッドid の主要処理を担当します。
idpublicメソッドid の主要処理を担当します。
idpublicメソッドid の主要処理を担当します。
idpublicメソッドid の主要処理を担当します。
arenaIdspublicメソッドarenaIds の主要処理を担当します。
arenaIdspublicメソッドarenaIds の主要処理を担当します。
reloadArenaspublicメソッドreloadArenas の主要処理を担当します。
readPointprivateメソッドreadPoint の主要処理を担当します。
writePointprivateメソッドwritePoint の主要処理を担当します。
handleArenaSetupCmdpublicメソッド入力やリクエストを受けて、検証・処理・応答までをまとめて担当します。
nowTicksprivateメソッドnowTicks の主要処理を担当します。
joinpublicメソッドjoin の主要処理を担当します。
leavepublicメソッドleave の主要処理を担当します。
leavepublicイベント処理leave の主要処理を担当します。
buildprivateメソッド表示用または出力用のデータを組み立てます。
finishprivateメソッドfinish の主要処理を担当します。
fillprivateメソッドfill の主要処理を担当します。

メソッド詳細

id

メソッドpublic
public String id()

id の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

目立つ内部呼び出しは抽出されませんでした。

id

メソッドpublic
public String id(){ return id; } public String displayName()

id の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

目立つ内部呼び出しは抽出されませんでした。

id

メソッドpublic
public String id(){ return id; } public String displayName(){ return "Mole Whack"; } public java.util.List<String> top(String a, String s, int l)

id の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

emptyList

id

メソッドpublic
public String id(){ return id; } public String displayName(){ return "Mole Whack"; } public java.util.List<String> top(String a, String s, int l){ return java.util.Collections.emptyList(); } public void onRegistered(Plugin pl)

id の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

getServergetPluginCommandgetExecutorreloadArenas

arenaIds

メソッドpublic
public List<String> arenaIds()

arenaIds の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

keySet

arenaIds

メソッドpublic
public List<String> arenaIds(){ return new ArrayList<>(arenas.keySet()); } private File file(String arena)

arenaIds の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

getDataFolder

reloadArenas

メソッドpublic
public void reloadArenas()

reloadArenas の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

cleargetDataFolderexistsmkdirslistFilesendsWithloadConfigurationgetName

readPoint

メソッドprivatestatic
private static ArenaPoint readPoint(YamlConfiguration y, String p)

readPoint の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

containsgetStringgetDouble

writePoint

メソッドprivatestatic
private static void writePoint(YamlConfiguration y, String p, ArenaPoint ap)

writePoint の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

worldxyzyawpitch

handleArenaSetupCmd

メソッドpublic
public boolean handleArenaSetupCmd(Plugin plugin, org.bukkit.command.CommandSender s, String arena, String sub)

入力やリクエストを受けて、検証・処理・応答までをまとめて担当します。

引数

throws

なし

主要な呼び出し順

fileexistsloadConfigurationsplittoLowerCasewritePointfromgetLocation

nowTicks

メソッドprivatestatic
private static long nowTicks()

nowTicks の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

currentTimeMillis

join

メソッドpublic
public void join(Player p, String arenaId)

join の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

sendMessagebuildnowTicksrunfinishcancelgetBlocksetType

leave

メソッドpublic
public void leave(Player p)

leave の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

目立つ内部呼び出しは抽出されませんでした。

leave

イベント処理public
public void leave(Player p){ /* noop */ } public void onClick(PlayerInteractEvent e)

leave の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

getClickedBlockgetLocationvaluesequalsgetWorldgetBlockYgetBlockXgetBlockZ

build

メソッドprivate
private void build(Arena a)

表示用または出力用のデータを組み立てます。

引数

throws

なし

主要な呼び出し順

getBlockYfillgetWorldgetBlockXgetBlockZgetBlockAtsetType

finish

メソッドprivate
private void finish(Arena a, Session ses)

finish の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

valuesstreammapToIntmaxorElsebroadcastMessagecurrentSeasonentrySet

fill

メソッドprivatestatic
private static void fill(World w,int x1,int y1,int z1,int x2,int y2,int z2,Material m)

fill の主要処理を担当します。

引数

throws

なし

主要な呼び出し順

minmaxgetBlockAtsetType

代表的な処理フロー

  1. leave フロー
    leave → getClickedBlock → getLocation → values → equals → getWorld
    leave の主要処理を担当します。
  2. handleArenaSetupCmd フロー
    handleArenaSetupCmd → file → exists → loadConfiguration → split → toLowerCase
    入力やリクエストを受けて、検証・処理・応答までをまとめて担当します。
  3. build フロー
    build → getBlockY → fill → getWorld → getBlockX → getBlockZ
    表示用または出力用のデータを組み立てます。
  4. finish フロー
    finish → values → stream → mapToInt → max → orElse
    finish の主要処理を担当します。
  5. join フロー
    join → sendMessage → build → nowTicks → run → finish
    join の主要処理を担当します。
  6. reloadArenas フロー
    reloadArenas → clear → getDataFolder → exists → mkdirs → listFiles
    reloadArenas の主要処理を担当します。

外部との接点

Web ルート

このクラス内に目立つ Web ルート定義は見つかりませんでした。

SQL / テーブル

テーブル名の抽出はありませんでした。

関連クラス

補足