Помогите Не работает более чем одна команда

  • Автор темы Автор темы kerineba
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

kerineba

Ньюби
Баллы
1
Имя в Minecraft
Haydenkld
Добрый вечер,

Столкнулся с проблемой, при добавлении новой команды в plugin.yml метод класса обработчика начинает всегда возвращать false, при этом с одной командой всё работает. Плагин если что делаю чисто для опыта, он должен по команде присваивать чанк игроку или проверять владеет ли он им. Ни в консоле ни в Eclipse ошибок не выдавало, буду рад если кто то поможет.

Код:
main: src.Main
name: Leon
version: 0.1
author: Svin
description: Yraaa

commands:
   Smert:
      description: ypas
      permission: yra.smert
      usage: ploxsm
   Chek_chunk:
      description: ypas
      permission: yra.Chek_chunk
      usage: ploxc
   Set_chunk:
      description: ypas
      permission: yra.Set_chunk
      usage: ploxs
Код:
package src;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import java.util.HashMap;
import java.util.Map;
import org.bukkit.Bukkit;
import org.bukkit.Chunk;
public class Chek_commands implements CommandExecutor
{
    Map<Chunk, Player> chunks = new HashMap<Chunk, Player>();
    @Override
    public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
    {
        if (command.getName() == "smert")
        {
            sender.sendMessage("Yraaaa");
            return true;
        }
      
        if (command.getName() == "Set_chunk")
        {
            if (!chunks.containsKey(Bukkit.getPlayer(sender.getName()).getLocation().getChunk()))
            {
                chunks.put(Bukkit.getPlayer(sender.getName()).getLocation().getChunk(), Bukkit.getPlayer(sender.getName()));
                return true;
            }
            return false;
        }
      
        if (command.getName() == "Get_chunk")
        {
            if (!chunks.containsValue(Bukkit.getPlayer(sender.getName())))
            {
                sender.sendMessage("Твой чанк чел");
                return true;
            }
            return false;
        }
        return false;
      
    }
}
Код:
package src;
import org.bukkit.Bukkit;
import org.bukkit.plugin.java.JavaPlugin;
public class Main extends JavaPlugin
{
 
    @Override
    public void onEnable()
    {
        Chek_join eventz = new Chek_join();
        Bukkit.getServer().getPluginManager().registerEvents(eventz,this);
        Chek_commands chk = new Chek_commands();
        getCommand("smert").setExecutor(chk);
        getCommand("Chek_chunk").setExecutor(chk);
        getCommand("Set_chunk").setExecutor(chk);
    }
 
}
 
с какой командой проблемы? у тебя проверки на имя команды отличаются от команды которую ты зарегал в plugin.yml, просмотри внимательнее
 
upload_2022-3-11_0-53-17.png

используй .equals на строках.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх