Помогите Блок функций в конфиге для объекта.

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

Bomber123

Активный участник
Пользователь
Баллы
76
Как добавлять объекты и их функции через конфиг.
Например есть 2 объекта ItemStack и как через конфиг их добавить их в плагин и изменить их ItemMeta. И самое главное: оптимизация и управление.
Как реализовать?
Система конфига:
Код:
item1
  Name: Example1
  lore:
  - null
item2
  Name: Example2
  lore:
  -  0
 
Последнее редактирование:
Сформулируй вопрос, объясни, что ты понимаешь под объектом и функцией, а то после того твоего "туториала" по топорику с we, где ты назвал это конструктором, я не знаю чего от тебя ждать
 
Сформулируй вопрос, объясни, что ты понимаешь под объектом и функцией, а то после того твоего "туториала" по топорику с we, где ты назвал это конструктором, я не знаю чего от тебя ждать
Вооот, я тоже не понял, что он хочет.
 
Мне не надо просто когда игрок заходит на сервер ему выдавались предметы из конфига, а надо реально создавать объект ItemStack через конфиг и чтобы можно было этим управлять.
 
Я слышал про такую вещь как ConfigurationSerializable попробовал, странная штука.
Зачем-то в конфиге отображает путь к классу сериализирующему сей чудеса бакита.
 
Я слышал про такую вещь как ConfigurationSerializable попробовал, странная штука.
Зачем-то в конфиге отображает путь к классу сериализирующему сей чудеса бакита.
И что тебе собственно не понятно?
 
Я не понимаю как это чудо прицепить к моему плагину.
Учитывая то, что в ютубе есть только один тутор по этой фитче больше его нигде нету
 
Я не понимаю как это чудо прицепить к моему плагину.
Учитывая то, что в ютубе есть только один тутор по этой фитче больше его нигде нету
И ты это фичей еще называешь. Material.valueOf(config.getString(....)), config.getInt(...amount...), config.getStringList("....lore..") что тебе из этого не понятно?
 
Я слышал про такую вещь как ConfigurationSerializable попробовал, странная штука.
Зачем-то в конфиге отображает путь к классу сериализирующему сей чудеса бакита.
Ставишь анотацию на класс @SerializableAs(value = "Название"). Пруфит. Будет твое простое название. Пример тут https://github.com/alexandrage/Example/blob/master/src/Example/MapSer.java
А так собстно регистрируется сериализатор yml https://github.com/alexandrage/Example/blob/master/src/Example/Main.java#L28-L30
 
P.s конечно рекомендую юзать gson. Он умеет восстанавливать простые классы и даже связку классов без регистрации сериализаторов. И при этом даже не нудны сетеры и особый конструктор.
 
И ты это фичей еще называешь. Material.valueOf(config.getString(....)), config.getInt(...amount...), config.getStringList("....lore..") что тебе из этого не понятно?
Мне не нужно получать количество и описание, мне надо через конфиг создать ItemStack и там же редактировать его ItemMet'у. Через ConfigurationSerializable не очень понятно как управлять всем этим. Попробую посмотреть тутор и вникнуть как это работает на простом примере.
 
Потестил ConfigurationSerializable, не подходит плагин создаёт странные конструкции
PHP:
datas:
- ==: ''
  level: 89
  playername: myNickName
Я думаю что можно ещё через String масивы создавать блоки и уже оперировать ими с какого нибудь класса
 
P.s конечно рекомендую юзать gson. Он умеет восстанавливать простые классы и даже связку классов без регистрации сериализаторов. И при этом даже не нудны сетеры и особый конструктор.
Можешь забацать какой нить более менее понятный пример с gson?
 
Потестил ConfigurationSerializable, не подходит плагин создаёт странные конструкции
PHP:
datas:
- ==: ''
  level: 89
  playername: myNickName
Я думаю что можно ещё через String масивы создавать блоки и уже оперировать ими с какого нибудь класса
Ничего странного тут нет. Обычный указатель на класс сериализатор.
 
Можешь забацать какой нить более менее понятный пример с gson?
Ну вот пример из Объекта в json.

Код:
        Gson gson = new GsonBuilder().setPrettyPrinting().create();
        Stack st = new Stack("STONE");
        st.setCustomname("Камень");
        st.setLore(Arrays.asList(new String[] { "Цена 100" }));
        gson.toJson(st);
На выходе.

Код:
{
  "material": "STONE",
  "customname": "Камень",
  "lore": [
    "Цена 100"
  ]
}
Собстно обратно.
Stack st = gson.fromJson(string, Stack.class);
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх