- Баллы
- 31
- Имя в Minecraft
- Mattgyve1990
Здравствуйте, изучаю создание и плагинов только неделю, решил сделать команду на перезагрузку конфига плагина, но создал только ошибку. страдаю над ней уже более 2 часов.. помогите..
Код main класса:
config.yml:
plugin.yml:
name: RespawnDeath
version: '${project.version}'
main: org.example.respawndeath.respawndeath.RespawnDeath
api-version: '1.20'
authors: [Mattgyve1990]
description: instant respawn + innovation
commands:
rdr:
usage: /<command>
description: reload config plugin
Фулл ошибка:
Код main класса:
Код:
package org.example.respawndeath.respawndeath;
import org.bukkit.ChatColor;
import org.bukkit.Color;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.LightningStrike;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.Bukkit;
import org.bukkit.Sound;
import org.bukkit.event.Listener;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.scheduler.BukkitRunnable;
import org.bukkit.configuration.file.FileConfiguration;
import org.jetbrains.annotations.NotNull;
import java.util.Objects;
public final class RespawnDeath extends JavaPlugin implements Listener, CommandExecutor {
private Sound Sound;
private String Title;
private String Subtitle;
private int Stay;
private int Out;
private int In;
private boolean Enable;
private boolean EnableLightning;
@Override
public void onEnable() {
getLogger().info(ChatColor.GREEN + "Enable");
Bukkit.getPluginManager().registerEvents(this, this);
saveDefaultConfig();
reloadConfig();
FileConfiguration config = getConfig();
Enable = config.getBoolean("Enable");
EnableLightning = config.getBoolean("EnableLightning");
Title = config.getString("Title");
Subtitle = config.getString("Subtitle");
Stay = config.getInt("Stay");
In = config.getInt("In");
Out = config.getInt("Out");
Sound = Sound.valueOf(config.getString("Sound"));
Objects.requireNonNull(getCommand("rdreload")).setExecutor(this);
}
@Override
public void onDisable() {
getLogger().info(ChatColor.RED + "Disable");
}
@EventHandler
public void PlayerDeath(PlayerDeathEvent event) {
Player player = event.getEntity();
if (Enable) {
sendTitle(player, Title, Subtitle, Stay, In, Out);
}
Sound(player);
if (EnableLightning) {
LightningStrike lightning = player.getWorld().strikeLightning(player.getLocation());
}
new BukkitRunnable() {
@Override
public void run() {
player.spigot().respawn();
}
}.runTaskLater(this, 1L);
}
private void sendTitle(Player player, String title, String subtitle, int Stay, int In, int Out) {
player.sendTitle(title, subtitle, In, Stay, Out);
}
private void Sound(Player player) {
player.playSound(player.getLocation(), Sound, 1f, 1f);
}
@Override
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, String[] args) {
if (command.getName().equalsIgnoreCase("rdreload")) {
if (args.length == 0) {
reloadConfig();
sender.sendMessage(ChatColor.GREEN + "Конфигурация плагина успешно перезагружена!");
return true;
}
}
return false;
}
}
config.yml:
Код:
# Включение тайтлов
Enable: true
EnableLightning: true
# Надписи ; Используйте "§<число/буква>"текст" "§4Смэрт"
# Цветовые Коды:
# §1 - темно-синий ; §2 - темно-зеленый
# §3 - темно-голубой ; §4 - темно-красный
# §5 - темно-фиолетовый ; §6 - золотой
# §7 - серый ; §8 - темно-серый
# §9 - синий ; §0 - черный
# §b - голубой ; §c - красный
# §d - фиолетовый ; §f - белый
# §e - желтый ; §a - зеленый
# §r - сброс ; §l - жирый
# §o - курсив ; §n - подчеркивание
# §m - зачеркнутый ; §k - вечно меняющиеся буквы(шифр)
Title: "§4Смэрт"
Subtitle: "§aЖивчик"
# Эффектс
# Stay - продолжительность надписи
# In - появление надписи
# Out - пропажа надписи
Stay: 10
In: 10
Out: 10
# Звук:
# звуки можно взять с: https://gist.github.com/Andre601/1ab3b4fabd0010ae241156333491c379
Sound: BLOCK_ANVIL_BREAK
plugin.yml:
name: RespawnDeath
version: '${project.version}'
main: org.example.respawndeath.respawndeath.RespawnDeath
api-version: '1.20'
authors: [Mattgyve1990]
description: instant respawn + innovation
commands:
rdr:
usage: /<command>
description: reload config plugin
Фулл ошибка:
Последнее редактирование:
