Ich hab gerade ein komisches Phänomen dass mir irgendwie den Kopf durch brennen lässt.
Und zwar wollt ich als kleiner Test für mich ein JoinMessage Plugin machen.
Doch jetzt habe ich ein Problem anscheinend wird die JoinMessage gersaved und kann sogar beim beitreten geladen werden und angezeigt , doch sie ist nicht zu finden:
Meine Main Klasse:
public class Main extends JavaPlugin{
private static Main plugin;
public void onEnable() {
plugin = this;
getCommand("setJoinMessage").setExecutor(new SetJoinMessage());
FileConfiguration config = Main.getPlugin(this.getClass()).getConfig();
config.getString("en.Join");
PluginManager PM = Bukkit.getPluginManager();
PM.registerEvents(new JoinListener(), this);
}
public static Main getPlugin() {
return plugin;
}
}
Meine Listener Klasse:
public class JoinListener implements Listener {
@EventHandler
public void handlePlayerJoin(PlayerJoinEvent event) {
FileConfiguration config = Main.getPlugin().getConfig();
String message = config.getString("en.Join");
message.replace("%Player%", event.getPlayer().getName());
event.setJoinMessage(message);
}
}
Und die Klasse für den Befehl um die Message in Game zu ändern:
package de.Yuno.JM.commands;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import de.Yuno.JM.Main;
public class SetJoinMessage implements CommandExecutor{
@Override
public boolean onCommand(CommandSender sender, Command command, String arg, String[] args) {
if(sender instanceof Player) {
Player player = (Player) sender;
if(player.hasPermission("JM.setJoinMessage")) {
if(args.length > 0) {
String message = IterateArray(args,0);
if(message.contains("%Player%")) {
FileConfiguration config = Main.getPlugin().getConfig();
config.set("en.Join", message);
player.sendMessage("§aThe new Join Message is changed and saved !");
} else {
player.sendMessage("§cThe Join Message needs to contain §e%Player% §c!");
}
} else {
player.sendMessage("§cUse §e/setJoinMessage [JoinMessage] §c!");
}
} else {
player.sendMessage("§cYou don´t have the Permission for this !");
}
public String IterateArray(String[] list,int value) {
String output = "";
while(value < list.length) {
output += list[value] + " ";
value++;
}
return output;
}
}
Ich verstehe nicht. Hab ich was falsch gemacht?