Hi e*pvpers!
Und zwar habe ich bei meinem Plugin das Problem, dass sich die config.yml immer automatisch leert!
Hier der Code von dem Plugin:
Und der Code von der config.yml:
Und falls ihr ihn noch braucht, der Code von der plugin.yml:
Schon mal im voraus Danke für die Antworten!
Mfg,
Stjubit
Und zwar habe ich bei meinem Plugin das Problem, dass sich die config.yml immer automatisch leert!
Hier der Code von dem Plugin:
Code:
package tk.bukkit.gorok;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
public class Gorok extends JavaPlugin {
public void onEnable()
{
loadConfig();
}
public void onDisable()
{
saveConfig();
}
@Override
public boolean onCommand(CommandSender sender, Command cmd,
String label, String[] args) {
Player p=null;
//Umwandlung Sender --> Player
if(sender instanceof Player)
{
p = (Player) sender;
}
FileConfiguration cfg=this.getConfig();
if(cmd.getName().equalsIgnoreCase("lobby"))
{
if(p!=null&&p.hasPermission("gorok.lobby"))
{
float x=cfg.getInt("lobby.x");
float y=cfg.getInt("lobby.y");
float z=cfg.getInt("lobby.z");
World welt = p.getWorld();
Location ziel = new Location(welt, x,y,z);
p.teleport(ziel);
return true;
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("leave"))
{
if(p!=null&&p.hasPermission("gorok.leave"))
{
float x=cfg.getInt("leave.x");
float y=cfg.getInt("leave.y");
float z=cfg.getInt("leave.z");
World welt = p.getWorld();
Location ziel = new Location(welt, x,y,z);
p.teleport(ziel);
return true;
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("hub"))
{
if(p!=null&&p.hasPermission("gorok.hub"))
{
float x=cfg.getInt("hub.x");
float y=cfg.getInt("hub.y");
float z=cfg.getInt("hub.z");
World welt = p.getWorld();
Location ziel = new Location(welt, x,y,z);
p.teleport(ziel);
return true;
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("setlobby"))
{
if(p!=null&&p.hasPermission("gorok.setlobby"))
{
if(args.length==3)
{
float x = Float.parseFloat(args[0]);
float y = Float.parseFloat(args[1]);
float z = Float.parseFloat(args[2]);
p.sendMessage("x="+x+", y="+y+", z="+z);
getConfig().set("lobby.x", x);
getConfig().set("lobby.y", y);
getConfig().set("lobby.z", z);
saveConfig();
p.sendMessage("Lobby-Point gesetzt!");
saveConfig();
return true;
}
else
{
p.sendMessage("/setlobby <x> <y> <z>");
return true;
}
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("sethub"))
{
if(p!=null&&p.hasPermission("gorok.sethub"))
{
if(args.length==3)
{
float x = Float.parseFloat(args[0]);
float y = Float.parseFloat(args[1]);
float z = Float.parseFloat(args[2]);
p.sendMessage("x="+x+", y="+y+", z="+z);
getConfig().set("hub.x", x);
getConfig().set("hub.y", y);
getConfig().set("hub.z", z);
saveConfig();
p.sendMessage("Hub-Point gesetzt!");
this.saveConfig();
return true;
}
else
{
p.sendMessage("/sethub <x> <y> <z>");
return true;
}
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("setleave"))
{
if(p!=null&&p.hasPermission("gorok.setleave"))
{
if(args.length==3)
{
float x = Float.parseFloat(args[0]);
float y = Float.parseFloat(args[1]);
float z = Float.parseFloat(args[2]);
p.sendMessage("x="+x+", y="+y+", z="+z);
getConfig().set("leave.x", x);
getConfig().set("leave.y", y);
getConfig().set("leave.z", z);
saveConfig();
p.sendMessage("Leave-Point gesetzt!");
this.saveConfig();
return true;
}
else
{
p.sendMessage("/setleave <x> <y> <z>");
return true;
}
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("setpaintball"))
{
if(p!=null&&p.hasPermission("gorok.setpaintball"))
{
if(args.length==3)
{
float x = Float.parseFloat(args[0]);
float y = Float.parseFloat(args[1]);
float z = Float.parseFloat(args[2]);
p.sendMessage("x="+x+", y="+y+", z="+z);
getConfig().set("paintball.x", x);
getConfig().set("paintball.y", y);
getConfig().set("paintball.z", z);
saveConfig();
p.sendMessage("Paintball-Point gesetzt!");
this.saveConfig();
return true;
}
else
{
p.sendMessage("/setpaintball <x> <y> <z>");
return true;
}
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("setsplegg"))
{
if(p!=null&&p.hasPermission("gorok.setsplegg"))
{
if(args.length==3)
{
float x = Float.parseFloat(args[0]);
float y = Float.parseFloat(args[1]);
float z = Float.parseFloat(args[2]);
p.sendMessage("x="+x+", y="+y+", z="+z);
getConfig().set("splegg.x", x);
getConfig().set("splegg.y", y);
getConfig().set("splegg.z", z);
saveConfig();
p.sendMessage("Splegg-Point gesetzt!");
this.saveConfig();
return true;
}
else
{
p.sendMessage("/setsplegg <x> <y> <z>");
return true;
}
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("setspeedbattle"))
{
if(p!=null&&p.hasPermission("gorok.setspeedbattle"))
{
if(args.length==3)
{
float x = Float.parseFloat(args[0]);
float y = Float.parseFloat(args[1]);
float z = Float.parseFloat(args[2]);
p.sendMessage("x="+x+", y="+y+", z="+z);
getConfig().set("speedbattle.x", x);
getConfig().set("speedbattle.y", y);
getConfig().set("speedbattle.z", z);
saveConfig();
p.sendMessage("Speedbattle-Point gesetzt!");
this.saveConfig();
return true;
}
else
{
p.sendMessage("/setsplegg <x> <y> <z>");
return true;
}
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("paintball"))
{
if(p!=null&&p.hasPermission("gorok.paintball"))
{
float x=cfg.getInt("paintball.x");
float y=cfg.getInt("paintball.y");
float z=cfg.getInt("paintball.z");
World welt = p.getWorld();
Location ziel = new Location(welt, x,y,z);
p.teleport(ziel);
return true;
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("splegg"))
{
if(p!=null&&p.hasPermission("gorok.splegg"))
{
float x=cfg.getInt("splegg.x");
float y=cfg.getInt("splegg.y");
float z=cfg.getInt("splegg.z");
World welt = p.getWorld();
Location ziel = new Location(welt, x,y,z);
p.teleport(ziel);
return true;
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
if(cmd.getName().equalsIgnoreCase("speedbattle"))
{
if(p!=null&&p.hasPermission("gorok.speedbattle"))
{
float x=cfg.getInt("speedbattle.x");
float y=cfg.getInt("speedbattle.y");
float z=cfg.getInt("speedbattle.z");
World welt = p.getWorld();
Location ziel = new Location(welt, x,y,z);
p.teleport(ziel);
return true;
}
else
{
sender.sendMessage("Du hast keine Rechte oder der Befehl ist nur In-Game verfügbar");
return true;
}
}
return false;
}
public void loadConfig()
{
this.getConfig().options().copyDefaults();
this.saveConfig();
}
}
Code:
lobby: x: 0 y: 0 z: 0 leave: x: 0 y: 0 z: 0 hub: x: 0 y: 0 z: 0 paintball: x: 0 y: 0 z: 0 splegg: x: 0 y: 0 z: 0 speedbattle: x: 0 y: 0 z: 0
Code:
name: Gorok
main: tk.bukkit.gorok.Gorok
version: 1.0
author: Stjubit
commands:
lobby:
usage: /lobby
description: Teleportiert dich zur Lobby
permission: gorok.lobby
leave:
usage: /leave
description: Verlaesst das Spiel und teleportiert dich zum Spawn
permission: gorok.leave
hub:
usage: /hub
description: Teleportiert dich zum Hub
permission: gorok.hub
paintball:
usage: /paintball
description: Teleportiert dich zum Paintball
permission: gorok.paintball
splegg:
usage: /splegg
description: Teleportiert dich zum Splegg
permission: gorok.splegg
speedbattle:
usage: /speedbattle
description: Teleportiert dich zum Speedbattle
permission: gorok.speedbattle
setlobby:
usage: /setlobby <x> <y> <z>
description: Setzt den Punkt fuer /lobby
permission: gorok.setlobby
sethub:
usage: /sethub <x> <y> <z>
description: Setzt den Punkt fuer /hub
permission: gorok.sethub
setleave:
usage: /setleave <x> <y> <z>
description: Setzt den Punkt fuer /leave
permission: gorok.setleave
setpaintball:
usage: /setpaintball <x> <y> <z>
description: Setzt den Punkt fuer /paintball
permission: gorok.setpaintball
setsplegg:
usage: /setsplegg <x> <y> <z>
description: Setzt den Punkt fuer /splegg
permission: gorok.setsplegg
setspeedbattle:
usage: /setspeedbattle <x> <y> <z>
description: Setzt den Punkt fuer /speedbattle
permission: gorok.setspeedbattle
permissions:
gorok.*:
description: Alle Commands zu Gorok
children:
gorok.lobby: true
gorok.leave: true
gorok.hub: true
gorok.paintball: true
gorok.speedbattle: true
gorok.splegg: true
gorok.setlobby: true
gorok.setleave: true
gorok.sethub: true
gorok.setpaintball: true
gorok.setspeedbattle: true
gorok.setsplegg: true
gorok.standard:
description: Normale Commands wie /lobby
children:
gorok.lobby: true
gorok.leave: true
gorok.hub: true
gorok.paintball: true
gorok.speedbattle: true
gorok.splegg: true
gorok.setlobby: false
gorok.setleave: false
gorok.sethub: false
gorok.setpaintball: false
gorok.setspeedbattle: false
gorok.setsplegg: false
Mfg,
Stjubit