Codage du plugin Minecraft Spigot, ayant un problème avec le joueur.sendMessage


Je reçois l'erreur suivante sur Eclipse Java Mars lors du codage d'un simple plugin de test Minecraft 1.10: "Impossible de faire une référence statique à la méthode non statique sendMessage(String) à partir du type CommandSender."C'est dans une catégorie distincte juste pour les commandes, en dehors de la classe principale. Voici la classe entière:

package io.github.ultraMLGcode.TestPlugin;

import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

public class TestPluginCommandExecutor implements CommandExecutor {

   public TestPlugin plugin;

   public TestPluginCommandExecutor(TestPlugin instance) {
       plugin = instance;
   }


 public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
    if (cmd.getName().equalsIgnoreCase("basic") && sender instanceof Player) { //If the player typed /basic then do the following...

      if (sender instanceof Player) {
          Player player = (Player) sender;
          //do something
          Player.sendMessage("Hello, it is a nice day, isn't it?");
      } else {
          sender.sendMessage("You must be a player!");
      }

        //doSomething
        return true;
    }
      return false;
    }

}
Author: Kerooker, 2016-07-29

1 answers

Je ne connais pas l'api minecraft, mais je pense que cela peut aider:

Changer cette ligne:

Player.sendMessage("Hello, it is a nice day, isn't it?");

À cette ligne

player.sendMessage("Hello, it is a nice day, isn't it?");

Je pense que "sendMessage" est une méthode non statique.

J'espère que ça aide.

 1
Author: TwilightTitus, 2016-07-28 22:56:37