1 урок от кросовка по bukkit api
krosov_ok1. Открываем IntelliJ IDEA и создаём новый проект.
Видим начальный класс:
package ru.krosovok.krosovokplayerjoin;
import org.bukkit.plugin.java.JavaPlugin;
public final class KrosovokPlayerJoin extends JavaPlugin {
@Override
public void onEnable() {
// Plugin startup logic
}
@Override
public void onDisable() {
// Plugin shutdown logic
}
}
Задача:
Плагин должен:
- Приветствовать игрока при входе на сервер сообщением "Добро пожаловать, [имя]!".
- Выдавать 52 алмаза при входе.
2. Что делаем:
- Создаём обработчик события PlayerJoinEvent для перехвата входа игрока.
- Пишем логику:
- Сообщение в чат: player.sendMessage("Добро пожаловать на сервер, " + player.getName() + "!");
- Создаём предмет: ItemStack diamonds = new ItemStack(Material.DIAMOND, 52);
- Добавляем в инвентарь: player.getInventory().addItem(diamonds);
- Уведомляем: player.sendMessage("Вы получили 52 алмаза!");
3. Итоговый код:
package ru.krosovok.krosovokplayerjoin;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.event.Listener;
import org.bukkit.event.EventHandler;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.entity.Player;
import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;
public final class KrosovokPlayerJoin extends JavaPlugin implements Listener {
@Override
public void onEnable() {
getServer().getPluginManager().registerEvents(this, this);
getLogger().info("Плагин приветствия игроков включен!");
}
@Override
public void onDisable() {
getLogger().info("Плагин приветствия игроков выключен!");
}
@EventHandler
public void onPlayerJoin(PlayerJoinEvent event) {
Player player = event.getPlayer();
player.sendMessage("Добро пожаловать на сервер, " + player.getName() + "!");
ItemStack diamonds = new ItemStack(Material.DIAMOND, 52);
player.getInventory().addItem(diamonds);
player.sendMessage("Вы получили 52 алмаза в подарок!");
}
}