Spigot V1.8.3のeventの一覧作ってみた
[マインクラフト]
[2015/08/30 19:07]
Bukkitプラグイン作成の要になるイベントの一覧。以前に作った記事が古くなったので、久しぶりに調べなおしてみた。
今回使うのはSpigotのV1.8.3版(git-Spigot-870264a-0a645a2)。
今回は調査方針として、実際にイベントが発生することをすべて確認した。
クラス名などからその役割が推測できようとも、実際のゲーム内でイベントの発生を確認できなかったものについては、一律で詳細不明とした。
もしそれらのイベントを発生させる方法をご存知の方がいれば、記事のコメント欄で教えていただけると嬉しい。
凡例
前回の記事から追加されたイベントはNew!をつけた。
イベント名が灰色で表示されているイベントは、イベントハンドラ(@EventHandler)を設定できない。
正確に言うと、設定はできるが実行するとIllegalPluginAccessExceptionが出てしまう。
イベント名がツリー状に表示されているイベントは、親クラスと子クラスの関係になっている。
子クラスのイベントが発生すると、子クラス自体のイベントハンドラのほかに、親クラスのイベントハンドラでもそれをキャッチできる。
たとえばPlayerUnleashEntityEventはEntityUnleashEventの子クラスなので、EntityUnleashEventイベントにイベントハンドラを設定すると、PlayerUnleashEntityEventもキャッチできる。
なお、親クラスと子クラスが異なるカテゴリ(パッケージ)に属する場合、イベント名の背景を黄色にしたうえで、実際のカテゴリではなく親クラスのカテゴリに分類した。
BlockPistonEvent | | 凡例:灰色のイベントはイベントハンドラを設定できない |
EntityUnleashEvent | リードを外す時 | 凡例:親クラスのイベントハンドラは、子クラスのイベントもキャッチできる |
PlayerUnleashEntityEvent | つないでいたリードを外す時 | 凡例:実際は親クラスと異なる分類だが、便宜上親クラスの直下に表示している |
ブロック関連のイベント (org.bukkit.event.block)
イベントクラス | 簡単な説明 | API | ワンポイント |
BlockBurnEvent | ブロックが燃え尽きて焼失する時 | API | 着火はBlockIgniteEvent、焼失はBlockBurnEvent |
BlockCanBuildEvent | ブロックを設置する時 | API | BlockPlaceEventに先立って発生する |
BlockDamageEvent | ブロックが殴られる時 | API | 殴りはじめに一度だけ発生する |
BlockDispenseEvent | アイテムが発射される時 | API | ディスペンサー・ドロッパーのどちらでも発生 |
BlockExpEvent | ブロックから経験値を得た時 | API | |
BlockBreakEvent | ブロックが壊れる時 | API | |
FurnaceExtractEvent | かまどからアイテムを取り出す時 | API | ※正しくはインベントリ関連イベント |
BlockExplodeEvent | ブロックが爆発する時 | API | New! ネザーやエンド世界でベッドで寝ようとした場合に発生する |
BlockFadeEvent | ブロックが溶ける時 | API | ブロックや炎が燃え尽きる時にも発生する |
BlockFromToEvent | 水流・溶岩流に変化があった時 | API | 静水が流水に・流水が静水に変化したときや、水流の向きが変わったときに発生。溶岩流でも同様。イベントをキャンセルすると液体が流れずに留まる |
BlockGrowEvent | 植物が育つ時 | API | サボテン・小麦・かぼちゃなど。木の苗・きのこの成長はStructureGrowEvent。1回成長するごとにイベントが1回発生。 |
BlockFormEvent | 気象効果でブロックが生成される時 | API | 水が凍る、雪が積もるなど |
BlockSpreadEvent | 炎が燃え広がる時 | API | BlockIgniteEventと同時発生。草ブロックが伝播して土ブロックに草が生えるときにも発生する。 |
EntityBlockFormEvent | 雪だるまが雪を作る時 | API | |
BlockIgniteEvent | ブロックを着火する時 | API | 地面に骨粉を撒いて草が生えたときも発生。着火時は、着火(BlockIgniteEvent)のほかに周辺変更(BlockPhysicsEvent)・炎ブロックの設置(BlockPlaceEvent)のイベントも発生する |
BlockPhysicsEvent | 隣接するブロックが変化した時 | API | ブロックが設置・撤去・落下など状態が変更された場合にそのブロックの上下左右に隣接する6ブロックで発生する。イベントをキャンセルすると砂や砂利が落下しなくなる(砂や砂利以外のブロックでもイベントは発生する) |
BlockPistonEvent | | API | |
BlockPistonExtendEvent | ピストンが伸びた時 | API | |
BlockPistonRetractEvent | ピストンが縮んだ時 | API | |
BlockPlaceEvent | ブロックを設置する時 | API | |
BlockMultiPlaceEvent | ブロックを複数同時に設置する時 | API | New!ドア・ベッド・ひまわりなど、一度の設置操作で複数のブロックが設置される要素を設置したとき発生する。エンドポータル生成時も発生するが、ネザーポータル生成時は発生しない |
BlockRedstoneEvent | レッドストーンの状態が変化する時 | API | |
LeavesDecayEvent | 葉が枯れる時 | API | 木に接続していない葉ブロックが時間経過で消滅する場合のみ発生。手で壊すとBlockBreakEvent |
NotePlayEvent | 音符ブロックが動作する時 | API | |
SignChangeEvent | 看板にテキストを書く時 | API | 看板を設置すると最初にテキスト未設定の看板が設置されてBlockPlaceEventが発生し、次にテキスト入力画面にテキストを入力して決定すると、看板にテキストが設定されSignChangeEventが発生する |
エンチャント関連のイベント (org.bukkit.event.enchantment)
イベントクラス | 簡単な説明 | API | ワンポイント |
EnchantItemEvent | アイテムをエンチャントする時 | API | アイテムをエンチャントした際に発生する |
PrepareItemEnchantEvent | アイテムをエンチャントテーブルに載せる時 | API | ア イテムをエンチャントテーブルに載せると、エンチャント画面に3つのエンチャント候補が表示されるが、この候補ひとつずつについて PrepareItemEnchantEventが1回発生する。このためアイテムを1回載せるごとにPrepareItemEnchantEventが3回発生する。レベル不足で候補が3つ未満しか表示されなくても3回発生する。なぜかエンチャント後にも2回発生する。 |
エンティティ関連のイベント (org.bukkit.event.entity)
イベントクラス | 簡単な説明 | API | ワンポイント |
CreeperPowerEvent | クリーパーが雷撃を受ける時 | API | 既に雷撃を受けたクリーパーが再度雷撃を受けた場合も発生。また、1度の雷撃でイベントが1~8回程度複数発生する(おそらく、雷が0.5秒程度存在しつづける間クリーパーが毎フレームごとに雷撃判定を受けるため)。豚の雷撃はPigZapEvent |
EntityChangeBlockEvent | プレイヤー以外がブロックを変更する時 | API | |
EntityBreakDoorEvent | ゾンビがドアを壊す時 | API | |
EntityCombustEvent | エンティティに着火する時 | API | 着火後のダメージ処理はEntityDamageEvent |
EntityCombustByBlockEvent | 不明 | API | |
EntityCombustByEntityEvent | エンティティがエンティティにより着火される時 | API | ブレイズの火の玉に当たって燃える時など。ちなみにその場合、イベントのgetCombuster()メソッドで得られる着火理由はBLAZEではなくSMALL_FIREBALLなので注意 |
EntityCreatePortalEvent | ネザーポータルを作成する時 | API | エンドポータル生成では発生しない、代わりにBlockMultiPlaceEventが発生する |
EntityDamageEvent | エンティティがダメージを受ける時 | API | |
EntityDamageByBlockEvent | ブロックからダメージを受ける時 | API | サボテンや溶岩に触れた場合、奈落に落ちた場合、ネザーやエンド世界でベッドで寝ようとした場合など。なお、奈落やベッドの場合はダメージを与えたブロックを取得するとnullが返るので注意 |
EntityDamageByEntityEvent | エンティティからダメージを受ける時 | API | |
EntityDeathEvent | 死亡する時 | API | |
PlayerDeathEvent | プレイヤーが死ぬ時 | API | |
EntityExplodeEvent | 爆発でブロックが破壊される時 | API | ExplosionPrimeEventより後に発生する。爆発で破壊されるブロックの一覧を含む。イベントをキャンセルするとブロックは破壊されない(エンティティは爆発ダメージを受ける)。 |
EntityInteractEvent | エンティティ同士が押し合うとき | API | エンティティとエンティティがぶつかって移動させられる場合に発生 |
EntityRegainHealthEvent | 体力が回復する時 | API | 自然回復やポーションによる回復でも発生 |
EntityShootBowEvent | 矢を撃つ時 | API | |
EntitySpawnEvent | エンティティが発生した場合 | API | New!CreatureSpawnEventやItemSpawnEventは前からあったが、それぞれ独立したイベントだった。それらをまとめる親クラスとしてEntitySpawnEventが追加されている。 |
CreatureSpawnEvent | 生き物が生まれる時 | API | |
ItemSpawnEvent | アイテムがドロップする時 | API | |
SpawnerSpawnEvent | スポーンブロックから生き物が生まれる時 | API | New! |
EntityTameEvent | 飼いならす時 | API | |
EntityTargetEvent | EntityTargetLivingEntityEventを参照 | API | |
EntityTargetLivingEntityEvent | 攻撃目標を決めた時 | API | キャンセルすると攻撃されない |
EntityTeleportEvent | テレポートする時 | API | |
EntityPortalEvent | エンティティがポータルに出入りしたとき | API | ネザーゲートやエンドポータルにアイテムを投げ込んだりモンスターを押し込んだりした時 |
EntityPortalExitEvent | ポータルから出る時 | API | |
EntityUnleashEvent | リードを外す時 | API | |
PlayerUnleashEntityEvent | つないでいたリードを外す時 | API | ※正しくはプレイヤー関連イベント |
EntityPortalEnterEvent | ポータルに入る時 | API | プレイヤーがポータルに立っている間、1秒に20回延々と発生する |
ExplosionPrimeEvent | 爆発する時 | API | EntityExplodeEventより前に発生する。イベントをキャンセルすると爆発自体が起こらなくなる。 |
FoodLevelChangeEvent | 空腹度が増減する時 | API | |
HorseJumpEvent | 馬がジャンプする時 | API | |
ItemDespawnEvent | 地面に落ちたアイテムが消える時 | API | |
PigZapEvent | 豚が雷撃を受ける時 | API | クリーパーの雷撃はCreeperPowerEvent。CreeperPowerEventと異なり、イベントは正確に1度しか発生しない(おそらく、雷撃を受けた豚はゾンビピッグマンに変化するため) |
ProjectileHitEvent | 投げられた物に当たる時 | API | 矢など |
ExpBottleEvent | 経験値ボトルが破裂する時 | API | |
PotionSplashEvent | スプラッシュポーションが割れる時 | API | |
ProjectileLaunchEvent | 投射物を投射するとき | API | 矢を射る時やスプラッシュポーションを投げて割る場合。Qキーを押して投げた場合はItemSpawnEvent |
SheepDyeWoolEvent | 羊を染色する時 | API | |
SheepRegrowWoolEvent | 羊に毛が生えた時 | API | 既に毛の生えている羊が草を食べたときも発生 |
SlimeSplitEvent | スライムが倒されて小さなスライムが生まれる時 | API | |
PlayerLeashEntityEvent | エンティティをリードでつなぐ時 | API | 動物をリードで柵に結ぶ場合、動物にリードをつけた時と、そのリードを柵に結んだ時で2回本イベントが発生する |
壁掛けアイテム関連のイベント (org.bukkit.event.hanging)
ここでいう壁掛けアイテムとは、hangingインターフェースを実装したクラス、つまり絵画・額縁、そして柵に巻いたリードが含まれる。
イベントクラス | 簡単な説明 | API | ワンポイント |
HangingBreakEvent | 壁掛けが壊される時 | API | 壁掛けの後ろのブロックが壊れて壁掛けがアイテム化した場合など。 |
HangingBreakByEntityEvent | 壁掛けがエンティティによって壊される時 | API | 殴って壊したりクリーパーの爆発で壊れる場合などに発生。TNTの爆発で壊れた場合は発生しない |
HangingPlaceEvent | 壁掛けが掛けられる時 | API | |
インベントリ関連のイベント (org.bukkit.event.inventory)
イベントクラス | 簡単な説明 | API | ワンポイント |
BrewEvent | 醸造する時 | API | 醸造完了時にイベント発生。醸造台に瓶を何本セットしていても、3本ばらばらのポーションをセットしていてもイベントは1回だけ |
FurnaceBurnEvent | かまどに火が点く時 | API | |
FurnaceSmeltEvent | かまどでアイテムが精錬される時 | API | アイテムが一個精錬される度に発生 |
InventoryEvent | 不明 | API | |
InventoryCloseEvent | インベントリを閉じる時 | API | |
InventoryInteractEvent | | API | |
InventoryClickEvent | インベントリをクリックする時 | API | |
CraftItemEvent | アイテムを作成する時 | API | |
InventoryCreativeEvent | クリエイティブモードのインベントリからアイテムを取り出す時 | API | |
InventoryDragEvent | 製作時にドラッグでアイテムを配置した時 | API | 最初はともかく、2回目のドラッグでは2回、3回目のドラッグでは3回など、なぜかイベントが複数回発生するので注意 |
InventoryOpenEvent | インベントリを開く時 | API | |
PrepareItemCraftEvent | アイテム作成の準備が整った時 | API | 作業台などに材料を並べ、作業台ウィンドウの右に完成アイテムが表示されるたびに発生。 |
InventoryMoveItemEvent | ホッパーからアイテムが移動する時 | API | アイテムが1個移動する度に発生 |
InventoryPickupItemEvent | アイテムがホッパーに吸い込まれる時 | API | |
プレイヤー関連のイベント (org.bukkit.event.player)
イベントクラス | 簡単な説明 | API | ワンポイント |
AsyncPlayerPreLoginEvent | ログインしようとする時 | API | PlayerJoinEventの直前に発生する。disallowメソッドでログインをキャンセルできる |
AsyncPlayerChatEvent | チャットする時 | API | |
PlayerAchievementAwardedEvent | 実績を解除した時 | API | New! |
PlayerAnimationEvent | アニメーションする時 | API | 主にクリック操作でよく出る |
PlayerBedEnterEvent | ベッドに寝る時 | API | |
PlayerBedLeaveEvent | ベッドから起きる時 | API | |
PlayerBucketEvent | | API | |
PlayerBucketEmptyEvent | バケツの中身を地面に垂らした時 | API | 水や溶岩を撒いた時に発生。牛乳を飲んで消費した場合は発生しない |
PlayerBucketFillEvent | 空のバケツに液体を満たした時 | API | 水か溶岩を掬った時や牛乳を搾った場合に発生 |
PlayerChangedWorldEvent | 別の世界へ移動する時 | API | 通常世界・ネザー・エンド世界の行き来で発生 |
PlayerChannelEvent | | API | |
PlayerRegisterChannelEvent | 不明 | API | |
PlayerUnregisterChannelEvent | 不明 | API | |
PlayerChatEvent | 不明 | API | 非推奨(Deprecated) |
PlayerChatTabCompleteEvent | チャット入力時にオートコンプリートが失敗した時 | API | チャット入力中にTABキーを押すことでオートコンプリート(?)機能が実行される。たとえば「/a」と入力してTABキーを押すと、/aで始まるコマンドが一覧される。該当するコマンドがあればイベントは発生しない。コマンドがない場合イベントが発生する |
PlayerCommandPreprocessEvent | ゲーム内からサーバーコマンドを実行する時 | API | サーバーコンソールからコマンドを実行した場合はServerCommandEvent |
PlayerDropItemEvent | アイテムを投げる時 | API | ここで言う投げるとは(デフォルトで)Qキーを押してアイテムを投げるという意味。鶏卵・スプラッシュポーション・経験値ボトルなどを使うのは「投げる」ではなく「使う」であり意味が違うので注意。 |
PlayerEditBookEvent | 本と羽ペンを編集する時 | API | 編集完了時に発生 |
PlayerEggThrowEvent | 卵を投げる時 | API | |
PlayerExpChangeEvent | 経験値を得た時 | API | レベルが変化するとPlayerLevelChangeEventも発生。経験値の減少時には発生しない |
PlayerFishEvent | 釣りを開始・終了する時 | API | 釣りを開始するとき・終了するときの両方で発生 |
PlayerGameModeChangeEvent | ゲームモードが変化する時 | API | /gamemode 0や1コマンドを使ってゲームモードが変わった時 |
PlayerInteractEntityEvent | エンティティを右クリックする時 | API | |
PlayerArmorStandManipulateEvent | 装備を手に持って防具立てを右クリックした時 | API | New! |
PlayerInteractAtEntityEvent | 生物を右クリックした時 | API | New! |
PlayerInteractEvent | クリックする時や感圧板・トリップワイヤーに触れた時 | API | @EventHandler(ignoreCancelled = true)で宣言すると空気を殴ったイベントが通知されなくなるので、単に@EventHandlerで宣言するのがお勧め |
PlayerInventoryEvent | 不明 | API | 非推奨(Deprecated) |
PlayerItemBreakEvent | 道具の耐久度がゼロになって壊れる時 | API | PlayerItemDamageEventに続いて発生する |
PlayerItemConsumeEvent | 飲食物を食べた時 | API | ポーションを飲んだ場合も発生 |
PlayerItemDamageEvent | アイテムの耐久度が減少した時 | API | New! |
PlayerItemHeldEvent | ホットバーを切り替えた時 | API | たとえばホットバー1からホットバー2に持ち替えたような場合に発生する。 |
PlayerJoinEvent | プレイヤーがログインする時 | API | ロ グイン時にはAsyncPlayerPreLoginEvent→PlayerLoginEvent→PlayerJoinEventの3つのメッセージ が発生する。BANされたプレイヤーがログインを試みた場合、AsyncPlayerPreLoginEventとPlayerLoginEventは発生するがPlayerJoinEventは発生しない |
PlayerKickEvent | プレイヤーをキックする時 | API | |
PlayerLevelChangeEvent | レベルが変化する時 | API | レベルの変化を伴わない経験値の変化はPlayerExpChangeEvent |
PlayerLoginEvent | プレイヤーがログインする時 | API | PlayerJoinEventの前に発生する |
PlayerMoveEvent | 移動する時 | API | 歩行時のほか、立ち止まって首を動かしただけでも発生する |
PlayerTeleportEvent | テレポートする時 | API | ベッドに寝る・起きる時やトロッコの乗降時にも発生する |
PlayerPortalEvent | ポータルで移動する時 | API | ポータルに触れただけでは発生しない |
PlayerPickupItemEvent | アイテムを拾う時 | API | |
PlayerQuitEvent | プレイヤーがログアウトする時 | API | |
PlayerRespawnEvent | リスポーンする時 | API | |
PlayerShearEntityEvent | 羊の毛を刈る時 | API | |
PlayerStatisticIncrementEvent | 統計情報が増加した時 | API | New!統計情報とは、ゲームのポーズメニューの「統計」ボタンを押して見ることができる情報のこと。このうち、ジャンプした回数や採取した回数など、「回数」で表現されるものが増加したときイベントが発生する。歩行した距離など「回数」ではないものは増加してもイベントは発生しない。 |
PlayerToggleFlightEvent | 飛行状態が切り替わる時 | API | Flightとはクリエイティブの飛行モードのこと。飛行開始時・飛行終了時の両方でPlayerToggleFlightEventが発生 |
PlayerToggleSneakEvent | スニーク状態が切り替わる時 | API | スニーク開始時・スニーク終了時の切り替え時に発生 |
PlayerToggleSprintEvent | 走り状態が切り替わる時 | API | 歩くと走るの切り替え時に発生 |
PlayerVelocityEvent | ダメージを伴って移動速度が変化する時 | API | 爆発で吹き飛ばされる場合や、落下ダメージを受ける着地時 |
PlayerPreLoginEvent | 不明 | API | 非推奨(Deprecated) |
サーバー関連のイベント (org.bukkit.event.server)
イベントクラス | 簡単な説明 | API | ワンポイント |
MapInitializeEvent | 地図を新しく作る時 | API | 白紙の地図を手に持って右クリックしたり、地図と紙を作業台に乗せて縮小地図を作った時に発生。要するに、新しい地図IDを払い出した時に発生する |
PluginEvent | | API | |
PluginDisableEvent | プラグインを無効化する時 | API | |
PluginEnableEvent | プラグインを有効化する時 | API | |
ServerCommandEvent | コンソールからコマンドを実行した時 | API | ゲーム内からコマンドを実行した場合はPlayerCommandPreprocessEvent |
RemoteServerCommandEvent | RCONでコマンドを実行した場合 | API | RCONによる操作については別記事参照 |
ServerListPingEvent | クライアントのサーバー選択画面に表示された時 | API | サーバー選択画面で更新ボタンを押したときも発生 |
ServiceEvent | | API | |
ServiceRegisterEvent | ServicesManagerクラスのregister()メソッドを実行した時 | API | (SpigotV1.11で確認) |
ServiceUnregisterEvent | ServicesManagerクラスのunregister()メソッドを実行した時 | API | (SpigotV1.11で確認) |
乗り物関連のイベント (org.bukkit.event.vehicle)
トロッコ類とボートでは以下に挙げたイベントがすべて発生するが、馬と豚では●印をつけたイベントしか発生しない。
イベントクラス | 簡単な説明 | API | ワンポイント |
VehicleCollisionEvent | | API | |
VehicleBlockCollisionEvent | 乗り物とブロックが衝突する時● | API | サドルをつけていない豚や手なずけていない馬でも発生 |
VehicleEntityCollisionEvent | 乗り物とエンティティが衝突する時 | API | |
VehicleCreateEvent | 乗り物が生まれた時 | API | 線路上にトロッコを配置するなどで発生 |
VehicleDamageEvent | 乗り物がダメージを受けた時 | API | トロッコを殴ったり、トロッコがサボテンに衝突した場合など |
VehicleDestroyEvent | 乗り物が消滅する時 | API | 線路上のトロッコを殴ると、まずVehicleDamageEventが発生し、次にVehicleDestroyEventが発生する |
VehicleEnterEvent | 乗り物に乗る時● | API | |
VehicleExitEvent | 乗り物から降りる時● | API | |
VehicleMoveEvent | 乗り物が移動する時 | API | トロッコを障害物のないレール上に置いて走らせると、画面上でどう見ても停止しているのに(小数点レベルの速度で動いているのか)延々と1秒に20回イベントが発生し続ける。壁に衝突するなどで完全に停止するとイベントも止む。トロッコに乗って移動する場合PlayerMoveEventも同時に発生する。乗馬・乗豚での移動はPlayerMoveEventしか発生しない |
VehicleUpdateEvent | 乗り物の状態を更新する時 | API | トロッコが1台あるだけで(速度やレールの傾きに関係なく)1秒間に20回イベントが発生する。 |
天候関連のイベント (org.bukkit.event.weather)
イベントクラス | 簡単な説明 | API | ワンポイント |
LightningStrikeEvent | 落雷が起こる時 | API | |
ThunderChangeEvent | 落雷の有無が切り替わる時 | API | 晴天の状態で/weatherコマンドで晴天に変更しても(つまり落雷なし→落雷なしの変更でも)本イベントが発生するので、実質的にWeatherChangeEventと同じ。 |
WeatherChangeEvent | 天候が再設定される時 | API | 自然に天候が変わる場合のほか、ベッドで寝て朝になった時、/weatherコマンドを実行したときなどに発生 |
ワールド関連のイベント (org.bukkit.event.world)
イベントクラス | 簡単な説明 | API | ワンポイント |
ChunkEvent | | API | |
ChunkLoadEvent | チャンクを読み込む時 | API | |
ChunkPopulateEvent | 新しいチャンクが作られた時 | API | ChunkLoadEventより後に発生する |
ChunkUnloadEvent | チャンクをアンロードする時 | API | |
PortalCreateEvent | ポータルを作成する時 | API | ネザーポータルのみ発生、エンドポータルではイベント起こらず |
SpawnChangeEvent | スポーンポイントが変わった時 | API | WorldクラスのsetSpawnLocationメソッドが実行されたときに発生 |
StructureGrowEvent | 木の苗・きのこが成長する時 | API | サボテン・小麦・かぼちゃなどの成長はBlockGrowEvent |
WorldInitEvent | サーバ起動後初めてワールドを読み込む直前の時 | API | プレイヤーがそのワールドに入ろうとすると発生。サーバ起動後2度目以降では発生しない |
WorldLoadEvent | ワールドを読み込んだ時 | API | プレイヤーがそのワールドに入る際、チャンクの読み込み完了後に発生。 |
WorldSaveEvent | Worldクラスのsave()メソッドを実行した時 | API | サーバ停止時などには発生せず、あくまでプラグインからsave()されたときだけ発生 |
WorldUnloadEvent | ワールドをアンロードした時 | API | (SpigotV1.11で確認)ServerクラスのunloadWorldメソッドが実行されたときに発生。ただし同createWorldメソッドで生成したワールドに限る |
プレイヤー関連のイベントのPlayerChannelEventについては、以前の記事で情報をいただいてクライアントMODを作ってイベントを出させようとはしたのだが、
ちょっと一朝一夕どころか2週間経ってもまったく分からないので、編集方針からひとまず不明とさせていただいた。
たぶん、クライアントMODとサーバープラグインが直接通信するためのチャンネル絡みっぽいとは思うんだけど…うん。全くわからん。
今回この記事を作るにあたって、発生したイベントを画面に表示するプラグインを作ったので、
一つ前の記事で公開した。