19 February 2016

注意事項

この記事はもう更新されていません。 Bukkit1.9にて使えなくなったプラグインなどに関する情報は、こちらの記事に書きました。

Bukkit 1.9がリリースされました。 1.8からの変更点をまとめていきます。 間違っている箇所など有りましたらツイッターで教えてください。

Minecraft1.9の変更点

削除されたAPI

以下のAPIはBukkit1.9で削除されます。 その為、そのAPIを使っていたプラグインはBukkit1.9以降のサーバーでは動作しなくなります。

Painting*Event

2012年10月に、Hanging*Eventに置き換えられ、非推奨になっていました。

  • PaintingBreakByEntityEvent
  • PaintingBreakEvent
  • PaintingEvent
  • PaintingPlaceEvent

ContainerBlock

2012年3月に、InventoryHolderに置き換えられ、非推奨になっていました。

非推奨になったAPI

以下のAPIはBukkit1.9で非推奨になります。 そのAPIを使っていたプラグインはBukkit1.9のサーバーでも動作しますが、不安定になる可能性があります。 また、将来的に削除される可能性がある為、開発者は代わりになるAPIへの以降をするべきです。

Boat

Minecraft1.9でボートの仕様が変わったため、今までのAPIは非推奨になります。

ItemInHand

Minecraft1.9でOffHandが追加されたため、ItemInHandは非推奨になります。 Bukkit1.9では、ItemInHandItemInMainHandと同じ動作になりますが、 将来的に削除される可能性がある為、ItemInMainHandItemInOffHandに移行するべきです。

変更されたAPI

UTF-8

今までは、環境で設定されたCharsetを使っていたコンフィグファイルなどが、必ずUTF-8を使うように変更されるようです。 確認出来ていませんが、今までShift_JIS環境で動かしていたサーバーで、 コンフィグファイルにマルチバイト文字が含まれている場合にUTF-8に変更しないと文字化け等が発生する可能性があります。 また、今までjarファイル内のコンフィグファイルにマルチバイト文字を含んでいた場合に、 環境で設定されたCharsetに変換してpluginsフォルダに保存するようにしていたプラグインなどにも影響する可能性があります。

Tree

バグ(SPIGOT-1389)の修正のようです。

追加されたAPI

MainHand OffHand

Minecraft1.9でOffHandが追加されたため、追加されます。

BossBar

Minecraft1.9でボスバーの仕様が変更されたため、追加されます。 以下の様にボスバーを作成することが出来るようです。

Bukkit.createBossBar("Title", BarColor.PINK, BarStyle.SEGMENTED_12, BarFlag.PLAY_BOSS_MUSIC)

Glowing

Minecraft1.9でGlowingというEntityの状態が追加されたため、追加されます。

DamageCause.FLY_INTO_WALL

Merchant

Particle

Attribute

CauldronLevelChangeEvent

PlayerFishEvent.State.BITE

FurnaceRecipe experience

Inventory#getLocation()

PotionEffect#getColor()

PrepareAnvilEvent

その他

古いプラグインとの互換性に関して

1.6又はそれ以前と1.7で変更されたメソッドのremappingが削除されました。 これらのメソッド(getOnlinePlayers()など)を使っていた1.6以前のプラグインに影響があります。 そして、そのプラグインはアップデートする必要がありますが、 サポートがされていないが、ソースコードが無い場合などは、 以下のコマンドをBuildToolsのディレクトリで実行することで対応させることが出来ます。 (MyPlugin.jarをそのプラグインのパスに、 MyPlugin-fixed.jarを対応されたバージョンの保存先パスにしてください。)

java -jar BuildData/bin/SpecialSource-2.jar map -m CraftBukkit/deprecation-mappings.csrg -i MyPlugin.jar -o MyPlugin-fixed.jar

一時的に削除されたAPI

BookEditEventが、デコンパイラーの問題により一時的に削除されているようです。