Перед прочтением данного гайда обязательно (!) прочитайте первую часть ТЫК
Эвент(с англ. событие) - какое либо действие, в котором участвует
моб и/или игрок, в Spigot-api этих эвентов огромное множество, от
событий вроде удара, до броска снежка. Их (не полный) список
Вы сможете найти по ссылке в конце статьи.
Сначала чуть-чуть подредактируем главный класс:
// сюда пишем вашу папку
package ru.Stebbilust.test;
import org.bukkit.Bukkit;
import org.bukkit.Sound;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.plugin.java.JavaPlugin;
public class Main extends JavaPlugin implements Listener { // Теперь мы следим за событиями
public void onEnable() {
Bukkit.getServer().getPluginManager().registerEvents(this, this); // регестрируем эвенты в этом классе
getLogger().info("Hello!!!");
}
public void onDisable() {
getLogger().info("Bye!!!");
}
@EventHandler
// Пишем перед каждым эвентом
public void onPlayerJoin(PlayerJoinEvent e) { // Когда заходит игрок то происходит...
Player p = e.getPlayer(); // Передаем переменной p игрока, который зашел
p.sendMessage(ChatColor.BLUE+"Привет"); // Пишем игроку сообщение "Привет" синим цветом
p.playSound(p.getLocation(), Sound.BLOCK_ANVIL_FALL, 1, 1); // Проигрываем игроку звук
}
}
Теперь после захода на сервер игрок услышит звук падения наковальни
и получит в чате сообщение "Привет". Теперь перейдем к разбору кода,
а точнее этой части:
@EventHandler
// Пишем перед каждым эвентом
public void onPlayerJoin(PlayerJoinEvent e) { // Когда заходит игрок то происходит...
Player p = e.getPlayer(); // Передаем переменной p игрока, который зашел
p.sendMessage(ChatColor.BLUE+"Привет"); // Пишем игроку сообщение "Привет" синим цветом
p.playSound(p.getLocation(), Sound.BLOCK_ANVIL_FALL, 1, 1); // Проигрываем игроку звук
}
onPlayerJoin - название функции
PlayerJoinEvent e - эвент захода игрока на сервер
e.getPlayer() - получаем игрока, который участвовал
в нашем эвенте
ChatColor.BLUE - цвет сообщения
"Привет" - сообщение
p.getLocation() - получаем расположение игрока
Sound.BLOCK_ANVIL_FALL - звук упавшей наковальни
Теперь экспортируем плагин(читаем об этом в предыдущем гайде),
и теперь мы при заходе на сервер видим:
Список эвентов на русском: ТЫК
Список эвентов на английском: ТЫК
Предыдущий гайд: ТЫК
Постарайтесь изменить сообщение игроку, а так же
его цвет. И попробуйте поменять звук при входе,
например на звук фейерверка или шум крипера.
На этом все! Оценивайте и пишите ваши вопросы в комментарии!!!