Формат конфигурации

SpongeAPI предлагает поддержку для сериализации текста непосредственно в конфигурационный файл Configurate с помощью класса TypeToken. Text объекты сохраняются с использованием той же структуры узлов, что и JSON Text-ы.

Совет

Информацию о том, как использовать Configurate для создания файлов конфигурации вашего плагина, можно найти в статье Настройка плагинов.

Например, текст «Hello World!», отформатированный красным цветом и подчёркиванием, будет иметь следующее представление в HOCON:

{
    underlined=true
    color=red
    text="Hello, world!"
}

Чтобы сохранить объект Text, просто задайте значение нужного узла, используя следующий код:

import com.google.common.reflect.TypeToken;
import ninja.leaping.configurate.ConfigurationNode;
import org.spongepowered.api.text.Text;
import org.spongepowered.api.text.format.TextColors;
import org.spongepowered.api.text.format.TextStyles;

ConfigurationNode node = loader.load();
Text text = Text.of(TextColors.RED, TextStyles.UNDERLINE, "Hello World!");
node.getNode("mytext").setValue(TypeToken.of(Text.class), text);
loader.save(node);

Затем вы можете загрузить объект Text, используя следующий код:

Text text = node.getNode("mytext").getValue(TypeToken.of(Text.class));

Примечание

Эта стратегия не ограничивается HoconConfigurationLoader; любого ConfigurationLoader будет достаточно.