Загрузка из .yml(конфига ) [Решено]

Статус
Закрыто для дальнейших ответов.

_MediaNik_

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
_MediaNik_
Я хочу чтобы при введении одной команды сохранялись в конфиг координаты на которых сейчас игрок, а потом при перезагрузке сервера загружалось из конфига в переменную pos, но загружается совсем другое, вот код:
Сам конфиг:
Код:
Locations:
  lobby:
    world: world
    x: 98
    y: 68
    z: 254
Класс переменной pos:
Код:
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);//Это вывод данных в консоль
    }
Телепортирование игрока на lobby
Код:
World world = Bukkit.getWorld(pos.worldName);
                    pl.teleport(new Location(world, pos.x, pos.y, pos.z));
В консоли выводит переменную pos как:
world: world254
x: 098
y: 068
z: 0​
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх