進捗を達成したプレイヤーにLv1分の経験値を与えるプラグイン。
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerAdvancementDoneEvent;
public class AdvancementListener implements Listener {
@EventHandler
public void onPlayerAdvancementDone(PlayerAdvancementDoneEvent event) {
// プレイヤーにLv1分の経験値を与える
event.getPlayer().giveExpLevels(1);
}
}
このリスナーをプラグインのメインクラスで登録する必要があります。
import org.bukkit.plugin.java.JavaPlugin;
public class MyPlugin extends JavaPlugin {
@Override
public void onEnable() {
// リスナーを登録する
getServer().getPluginManager().registerEvents(new AdvancementListener(), this);
}
}
※注意※
リスナーを登録する時に
registerEventsをregisterEventにしてしまうと引数不足でエラーが出ます。
最後のsを忘れないようにしましょう。
registerEventsは、共通の報酬を渡す時に
registerEventは、個別の報酬を渡す時に使用します。