Arena Colosseum Builder を担当するclassです。

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

クラス説明

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

責務と見どころ

重点クラスの詳細解説

Arena Colosseum Builder を担当するclassです。minigame.arena パッケージの中でも 399 行規模の中核クラスで、スケジューラが一か所に集まっています。中規模クラス群の中では変更影響が広く、章立てで読む価値が高いため重点解説へ追加しています。

最初に追う読む順番

  1. ArenaColosseumBuilder
    依存オブジェクトと初期状態を束ね、このクラスが担当するランタイムの前提を固めます。
  2. build
    入口を南側(-Z)に取り、看板を自動設置。
  3. placeEntranceSignCenter
    placeEntranceSignCenter の主要処理を担当します。
  4. disc
    disc の主要処理を担当します。
  5. ringWall
    ringWall の主要処理を担当します。
  6. ring1
    幅1のリング(y層に1段だけ)
  7. platform
    platform の主要処理を担当します。
  8. steppedStands
    steppedStands の主要処理を担当します。
  9. faceTowardCenter
    faceTowardCenter の主要処理を担当します。

内部サブシステムの地図

入口 API と対象解決

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

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

代表フロー詳解

初期化と起動の流れ

  1. ArenaColosseumBuilder
  2. build

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

変更時の注意点

フィールド

VisibilityTypeName役割
privateJavaPluginpluginプラグイン本体参照です。
publicintDEFAULT_RADIUSDEFAULT_RADIUS の状態を保持します。
publicNamespacedKeyKEY_ARENA_IDKEY_ARENA_ID の状態を保持します。
publicNamespacedKeyKEY_ARENA_CXKEY_ARENA_CX の状態を保持します。
publicNamespacedKeyKEY_ARENA_CYKEY_ARENA_CY の状態を保持します。
publicNamespacedKeyKEY_ARENA_CZKEY_ARENA_CZ の状態を保持します。
publicNamespacedKeyKEY_ARENA_RKEY_ARENA_R の状態を保持します。

コンストラクタ / 初期化

Signature説明主要呼び出し
public ArenaColosseumBuilder(JavaPlugin plugin)依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。主要呼び出しなし

メソッド索引

NameVisibilityKind説明
ArenaColosseumBuilderpublicコンストラクタ依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。
buildpublicメソッド入口を南側(-Z)に取り、看板を自動設置。
placeEntranceSignCenterprivateメソッドplaceEntranceSignCenter の主要処理を担当します。
discprivateメソッドdisc の主要処理を担当します。
ringWallprivateメソッドringWall の主要処理を担当します。
ring1privateメソッド幅1のリング(y層に1段だけ)
platformprivateメソッドplatform の主要処理を担当します。
steppedStandsprivateメソッドsteppedStands の主要処理を担当します。
faceTowardCenterprivateメソッドfaceTowardCenter の主要処理を担当します。
domeHemisphereprivateメソッドdomeHemisphere の主要処理を担当します。
entranceTunnelWithRampprivateメソッドentranceTunnelWithRamp の主要処理を担当します。
topSolidPlusOneprivateメソッドtopSolidPlusOne の主要処理を担当します。

メソッド詳細

ArenaColosseumBuilder

コンストラクタpublic
public ArenaColosseumBuilder(JavaPlugin plugin)

依存オブジェクトや初期状態を受け取り、このクラスの動作を開始できる状態へ組み立てます。

引数

throws

なし

主要な呼び出し順

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

build

メソッドpublic
public void build(CommandSender progressTo, Location center, int radius)

入口を南側(-Z)に取り、看板を自動設置。

引数

throws

なし

主要な呼び出し順

getWorldgetBlockXgetBlockYgetBlockZmaxdiscring1steppedStands

placeEntranceSignCenter

メソッドprivate
private void placeEntranceSignCenter( World w, int cx, int cy, int cz, int outerR, int stageR, String arenaId, BlockFace dir)

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

引数

throws

なし

主要な呼び出し順

getBlockAtsetTypegetStategetBlockDatasetRotationsetBlockDatasetWaxedsetLine

disc

メソッドprivatestatic
private static void disc(BuildScheduler s, World w, int cx,int y,int cz, int r, Material m)

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

引数

throws

なし

主要な呼び出し順

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

ringWall

メソッドprivatestatic
private static void ringWall(BuildScheduler s, World w, int cx,int y,int cz, int r, int h, Material m)

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

引数

throws

なし

主要な呼び出し順

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

ring1

メソッドprivatestatic
private static void ring1(BuildScheduler s, World w, int cx,int y,int cz, int r, Material m)

幅1のリング(y層に1段だけ)

引数

throws

なし

主要な呼び出し順

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

platform

メソッドprivatestatic
private static void platform(BuildScheduler s, World w, int cx,int y,int cz, int rx,int rz, Material m)

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

引数

throws

なし

主要な呼び出し順

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

steppedStands

メソッドprivatestatic
private static void steppedStands(BuildScheduler s, World w, int cx, int baseY, int cz, int innerR, int outerR, int riseEvery, Material stairMat, Material fillUnderMat)

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

引数

throws

なし

主要な呼び出し順

maxfaceTowardCentercreateBlockDatasetFacingsetHalfsetShapeaddData

faceTowardCenter

メソッドprivatestatic
private static BlockFace faceTowardCenter(int dx, int dz)

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

引数

throws

なし

主要な呼び出し順

abs

domeHemisphere

メソッドprivatestatic
private static void domeHemisphere(BuildScheduler s, World w, int cx, int y, int cz, int R, int thickness, Material shell)

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

引数

throws

なし

主要な呼び出し順

maxfloorsqrtring1

entranceTunnelWithRamp

メソッドprivatestatic
private static void entranceTunnelWithRamp( BuildScheduler s, World w, int x, int y, int z, BlockFace dir, int width, int height, int length, Material floor, Material stairForRamp, int centerX, int centerZ, int stageR, int outerR, int riseEvery)

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

引数

throws

なし

主要な呼び出し順

topSolidPlusOneroundhypotmaxcreateBlockDatasetHalfsetShapesetFacing

topSolidPlusOne

メソッドprivatestatic
private static int topSolidPlusOne(World w, int x, int yStart, int z, int maxDown)

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

引数

throws

なし

主要な呼び出し順

maxgetBlockAtgetType

代表的な処理フロー

  1. build フロー
    build → getWorld → getBlockX → getBlockY → getBlockZ → max
    入口を南側(-Z)に取り、看板を自動設置。
  2. entranceTunnelWithRamp フロー
    entranceTunnelWithRamp → topSolidPlusOne → round → hypot → max → createBlockData
    entranceTunnelWithRamp の主要処理を担当します。
  3. placeEntranceSignCenter フロー
    placeEntranceSignCenter → getBlockAt → setType → getState → getBlockData → setRotation
    placeEntranceSignCenter の主要処理を担当します。
  4. steppedStands フロー
    steppedStands → max → faceTowardCenter → createBlockData → setFacing → setHalf
    steppedStands の主要処理を担当します。
  5. domeHemisphere フロー
    domeHemisphere → max → floor → sqrt → ring1
    domeHemisphere の主要処理を担当します。

外部との接点

Web ルート

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

SQL / テーブル

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

関連クラス

補足