Memory Match を担当するclassです。

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

クラス説明

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

責務と見どころ

重点クラスの詳細解説

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

最初に追う読む順番

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

内部サブシステムの地図

起動・前提準備

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

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

入口 API と対象解決

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

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

運用中の主ループ

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

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

終了処理と掃除

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

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

イベント受理と主処理

Bukkit イベントや内部イベントを受けたあと、どの状態を更新するかをまとめています。

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

代表フロー詳解

初期化と起動の流れ

  1. reloadArenas
  2. join

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

通常運用の中心フロー

  1. handleArenaSetupCmd
  2. onClick

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

反映・保存・終了の流れ

  1. leave
  2. finishedAll

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

変更時の注意点

フィールド

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メソッド入力やリクエストを受けて、検証・処理・応答までをまとめて担当します。
joinpublicメソッドjoin の主要処理を担当します。
leavepublicメソッドleave の主要処理を担当します。
leavepublicメソッドleave の主要処理を担当します。
onClickpublicイベント処理イベント発生時の分岐と後続処理を担当します。
finishedAllprivateメソッドfinishedAll の主要処理を担当します。
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 "Memory Match"; } 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 "Memory Match"; } 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

join

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

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

引数

throws

なし

主要な呼び出し順

sendMessagebuildteleporttoLocationgetServersend

leave

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

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

引数

throws

なし

主要な呼び出し順

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

leave

メソッドpublic
public void leave(Player p){} private void build(Arena a)

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

引数

throws

なし

主要な呼び出し順

getBlockYfillgetWorldgetBlockXgetBlockZshufflesizegetBlockAt

onClick

イベント処理public
public void onClick(PlayerInteractEvent e)

イベント発生時の分岐と後続処理を担当します。

引数

throws

なし

主要な呼び出し順

getClickedBlockgetLocationvaluesequalsgetWorldgetBlockYgetBlockXgetBlockZ

finishedAll

メソッドprivate
private boolean finishedAll(Arena a, Session ses)

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

引数

throws

なし

主要な呼び出し順

getWorldgetBlockAtgetBlockXgetBlockYgetBlockZgetType

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. onClick フロー
    onClick → getClickedBlock → getLocation → values → equals → getWorld
    イベント発生時の分岐と後続処理を担当します。
  2. handleArenaSetupCmd フロー
    handleArenaSetupCmd → file → exists → loadConfiguration → split → toLowerCase
    入力やリクエストを受けて、検証・処理・応答までをまとめて担当します。
  3. leave フロー
    leave → getBlockY → fill → getWorld → getBlockX → getBlockZ
    leave の主要処理を担当します。
  4. reloadArenas フロー
    reloadArenas → clear → getDataFolder → exists → mkdirs → listFiles
    reloadArenas の主要処理を担当します。
  5. finishedAll フロー
    finishedAll → getWorld → getBlockAt → getBlockX → getBlockY → getBlockZ
    finishedAll の主要処理を担当します。
  6. join フロー
    join → sendMessage → build → teleport → toLocation → getServer
    join の主要処理を担当します。

外部との接点

Web ルート

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

SQL / テーブル

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

関連クラス

補足