Java Bukkit Plugin + config.yml

L4z4ru5zZz

Mitglied
Jaaaaah also ich lern mich grad in Java ein und möchte Plugins für Bukkit (Minecraft Server mod) erstellen. Ein paar einfache hab ich schon hinbekommen aber grad scheitere ich an folgendem Problem:

Java:
  public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
	    Player player = (Player)sender;
	    if (commandLabel.equalsIgnoreCase("NeosPing"))
	      player.sendMessage(ChatColor.GREEN + "[NeosInformations] NeosPong?!");
		return false;
Wenn man nun /NeosPing in den Chat eingibt bekommt man [NeosInformations]NeosPong?! ausgegeben. Jetzt die Frage: Ich möchte gerne das das NeosPong?! von den Benutzern über eine config Datei bearbeitet werden kann... Weiss einer wie ich das regeln könnte?
 
du musst eine Datei dafür laden (wenn sie nicht zu groß ist), dann am besten als String in einer Klassenvariable abspeichern und dann einsetzen. schau mal hier
 
Zuletzt bearbeitet:
Java:
package me.NeosCraft.NeosInformations;

import java.util.logging.Logger;

import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;

public class NeosInformations extends JavaPlugin
{
  public void onDisable()
  {
	  System.out.println("NeosInventoryCleaner] Version 1.0 by NeosCraft is now disabled!");
  }

  public void onEnable()
  {
    loadConfig();
    System.out.println("[NeosInventoryCleaner] Version 1.0 by NeosCraft is now enabled!");
  }
  
  public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
	    Player player = (Player)sender;
	    if (commandLabel.equalsIgnoreCase("NeosPing"))
	      player.sendMessage(ChatColor.GREEN + "[NeosInformations] NeosPong?!");
		return false;
	    
	
  
  
  }
  
  
}
So sieht zurzeit der Quelltext aus und anstatt von
Java:
  player.sendMessage(ChatColor.GREEN + "[NeosInformations] NeosPong?!");
als ausgabe wollte ich es so machen das man als serveradmin in einer config.yml den text also nur den text nicht die farbe und co ändern kann 🙂 bin dankbar für jede hilfe! 🙂
 
So sieht zurzeit der Quelltext aus und anstatt von
Java:
  player.sendMessage(ChatColor.GREEN + "[NeosInformations] NeosPong?!");
als ausgabe wollte ich es so machen das man als serveradmin in einer config.yml den text also nur den text nicht die farbe und co ändern kann 🙂 bin dankbar für jede hilfe! 🙂

Den String in eine Variable auslagern, die Variable mit dem Wert aus der config.yml befüllen und in der sendMessage Methode die Variable nutzen.

Java:
player.sendMessage(ChatColor.GREEN + "[NeosInformations] " + dieVariable);

Wie du mit der config.yml über die Bukkit API interagierst wird hier an einem Beispiel gezeigt. Weitere Informationen findest du in der javadoc von Bukkit.

Das Selbe hättest du übrigens auch herausgefunden, wenn du nach "bukkit mod read config.yml" gegoogled hättest.

mfg
 
Den String in eine Variable auslagern, die Variable mit dem Wert aus der config.yml befüllen und in der sendMessage Methode die Variable nutzen.

Java:
player.sendMessage(ChatColor.GREEN + "[NeosInformations] " + dieVariable);

Wie du mit der config.yml über die Bukkit API interagierst wird hier an einem Beispiel gezeigt. Weitere Informationen findest du in der javadoc von Bukkit.

Das Selbe hättest du übrigens auch herausgefunden, wenn du nach "bukkit mod read config.yml" gegoogled hättest.

mfg

Vielen dank hat mir sehr geholfen!
 

Zurück
Oben