- Баллы
- 76
- Имя в Minecraft
- _MediaNik_
Я хочу чтобы при введении одной команды сохранялись в конфиг координаты на которых сейчас игрок, а потом при перезагрузке сервера загружалось из конфига в переменную pos, но загружается совсем другое, вот код:
Сам конфиг:
Класс переменной pos:
Загрузка переменной в конфиг:
Загрузка переменной из конфига:
Телепортирование игрока на lobby
В консоли выводит переменную pos как:
Сам конфиг:
Код:
Locations:
lobby:
world: world
x: 98
y: 68
z: 254
Код:
public class Pos {
public String worldName;
public double x, y, z;
public Pos(String name, double x, double y, double z) {
worldName = name;
this.x = x;
this.y = y;
this.z = z;
}
}
Код:
public void locToConfig(String world, Location loc){
pos = new Pos(world, loc.getX(), loc.getY(), loc.getZ());
config.set("Locations.lobby.world", pos.worldName);
config.set("Locations.lobby.x", pos.x);
config.set("Locations.lobby.y", pos.y);
config.set("Locations.lobby.z", pos.z);
saveConfig();
}
Код:
public void onEnable(){
Bukkit.getServer().getPluginManager().registerEvents(this, this);//Это не для вас
this.saveDefaultConfig();
pos = new Pos(config.getString("locations.lobby.world", "world"),
config.getDouble("Locations.lobby.z"),
config.getDouble("Locations.lobby.x"),
config.getDouble("Locations.lobby.y"));
getLogger().info("Plugin was loaded");//
getLogger().info(pos.worldName + pos.x + pos.y + pos.z);//Это вывод данных в консоль
}
Код:
World world = Bukkit.getWorld(pos.worldName);
pl.teleport(new Location(world, pos.x, pos.y, pos.z));
world: world254
x: 098
y: 068
z: 0
x: 098
y: 068
z: 0