起動・前提準備
初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
主なメソッド
サーバー内プレイヤー数に応じて 攻撃力・防御力にバフを付与し、 ジョイン/クイット時に通知します。
com.example.rankingplugin.buffbuff/PlayerCountBuffManager.javaclassサーバー内プレイヤー数に応じて 攻撃力・防御力にバフを付与し、 ジョイン/クイット時に通知します。
サーバー内プレイヤー数に応じて 攻撃力・防御力にバフを付与し、 ジョイン/クイット時に通知します。buff パッケージの 小規模クラスで、運用中の主ループ・スケジューラを確認する起点です。全面展開版では、他の重点クラスと同じ章立てで読めるように補強しています。
PlayerCountBuffManageronPlayerJoinonPlayerQuitapplyBuffsToAllupdateAttributebroadcastBuffs初期テーブル、依存状態、定期処理の点灯など、このクラスが動き始める前提をまとめています。
イベント受理、定期監視、判定、進行更新など、実際に挙動を生む中心ロジックです。
メモリ状態と保存状態を揃え、結果を次の呼び出しや画面表示へ繋ぐ部分です。
Bukkit イベントや内部イベントを受けたあと、どの状態を更新するかをまとめています。
このクラスが前提状態を揃え、外部から利用可能な形まで立ち上がる流れです。新規依存の追加や起動失敗の調査はまずここから追います。
イベント受理、判定、状態更新、通知までの主経路です。体感不具合や想定外の分岐はこの流れのどこで止まるかを見ると切り分けやすいです。
結果を保持し、必要なら永続化し、最後に掃除まで行う出口です。画面更新だけ合って保存が壊れるケースや残骸が残るケースの確認に向きます。
| Signature | 説明 | 主要呼び出し |
|---|---|---|
public PlayerCountBuffManager(JavaPlugin plugin) | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 | getServer → getPluginManager → registerEvents → applyBuffsToAll |
| Name | Visibility | Kind | 説明 |
|---|---|---|---|
| PlayerCountBuffManager | public | コンストラクタ | 依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。 |
| onPlayerJoin | public | イベント処理 | イベント発生時の分岐と後続処理を担当します。 |
| onPlayerQuit | public | イベント処理 | イベント発生時の分岐と後続処理を担当します。 |
| applyBuffsToAll | private | メソッド | 全プレイヤーに現在のバフを適用 |
| updateAttribute | private | メソッド | 個別の属性を更新(旧modifierをkeyで除去して新規追加) |
| broadcastBuffs | private | メソッド | チャットで現在のバフ状況を通知 |
public PlayerCountBuffManager(JavaPlugin plugin)依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。
JavaPlugin pluginなし
public void onPlayerJoin(PlayerJoinEvent event)イベント発生時の分岐と後続処理を担当します。
PlayerJoinEvent eventなし
public void onPlayerQuit(PlayerQuitEvent event)イベント発生時の分岐と後続処理を担当します。
PlayerQuitEvent eventなし
private void applyBuffsToAll()全プレイヤーに現在のバフを適用
なし
private void updateAttribute(Player player, Attribute attr, String modifierKey, double amount, UUID legacyUuid)個別の属性を更新(旧modifierをkeyで除去して新規追加)
Player playerAttribute attrString modifierKeydouble amountUUID legacyUuidなし
private void broadcastBuffs()チャットで現在のバフ状況を通知
なし
PlayerCountBuffManager → getServer → getPluginManager → registerEvents → applyBuffsToAllonPlayerQuit → getScheduler → runTask → applyBuffsToAll → broadcastBuffsonPlayerJoin → applyBuffsToAll → broadcastBuffsupdateAttribute → getAttribute → replaceapplyBuffsToAll → getOnlinePlayers → size → max → updateAttributebroadcastBuffs → getOnlinePlayers → size → max → broadcastMessage