Fabric Yaml Configuration 图标

Fabric Yaml Configuration

作者:rebot | 分类:模组

价格:0 墨喵币 下载量:0 点赞:0 版本 1.0.1
本资源为搬运资源,原资源地址: https://modrinth.com/mod/fabric-yaml-configuration
资源信息

Minecraft 版本: 1.20.1 1.20.2 1.20.3 1.20.4 1.20.5 1.20.6 1.21 1.21.1 1.21.2 1.21.3 1.21.4 1.21.5 1.21.6 1.21.7 1.21.8 1.21.9 1.21.10

平台: fabric

标签: library

资源介绍

Fabric Yaml Configuration library mod

This modification allows you to use yaml configuration files as a configuration for your mod.
The modification already includes the snakeyaml library.

FabricConfiguration methods

// Sets the path to the final configuration
setFile(File file)
setFile(String file)

// Sets the stream of the original configuration file
// as a rule the original configuration is located in the mod resources.
setDefault(InputStream defaultConfigurationFile)

// Initializes the configuration
intialize()

// Saves the configuration to a file
saveConfiguration()

// Reloads the configuration from the file 
// needed to update the configuration during mod operation.
relaodConfiguration()

Simple configuration example

assets/example-mod/config/example-mod.yml

# Тестовая ветка
test:
  integer: 1
  double: 1.1
  string: 'test'
  list:
    - 'test-1'
    - 'test-2'
    - 'test-3'
  section:
    test: 'test'
public class ExampleMod implements ModInitializer {

    public static final Logger LOGGER = LogManager.getLogger();
    public FabricConfiguration configuration = new FabricConfiguration();

    @Override
    public void onInitialize() {
        // Getting default configuration file from mod assets
        InputStream defaultConfigurationFile = ExampleMod.class.getResourceAsStream("/assets/example-mod/config/example-mod.yml");

        // Setting default configuration file to configuration
        configuration.setDefault(defaultConfigurationFile);
        // Setting configuration file path
        configuration.setFile("config/example-mod.yml");
        // Initialize configuration (load, if file exists else generate configuration)
        try {
            configuration.initialize();
        } catch (IOException e) {
            LOGGER.error("Configuration file cannot be generated", e);
        } catch (InvalidConfigurationException e) {
            LOGGER.error("Configuration file cannot be loaded", e);
        }


    }
}

Example code (save and get ItemStack from/to configuration)

ItemStack exampleItemStack = new ItemStack(Items.BEDROCK);
NbtCompound itemStackNbt = exampleItemStack.writeNbt(new NbtCompound());

configuration.set("item-stack", NbtHelper.toNbtProviderString(itemStackNbt));

try {
    configuration.saveConfiguration();
} catch (IOException e) {
    LOGGER.error("Configuration cannot be saved", e);
}

ItemStack itemStack = null;
try {
    itemStack = ItemStack.fromNbt(NbtHelper.fromNbtProviderString(configuration.getString("item-stack")));
} catch (CommandSyntaxException e) {
    LOGGER.error("ItemStack cannot be loaded from configuration", e);
}
下载太慢?试试 墨喵加速站,支持 Modrinth 和外网直链高速下载! 用的人越多,下载的越快!
下载与版本
评论(0)
登录 后发表评论。

暂无评论,抢个沙发吧~

举报此资源

请登录后举报

🔥 相关推荐
Genetic Animals - Get In The Bucket Compat

价格:0 墨喵币
下载量:0

查看详情
Experience book

价格:0 墨喵币
下载量:0

查看详情
Zoni's Apotheosis Curios Lang

价格:0 墨喵币
下载量:0

查看详情
Vanilla - Enderium

价格:0 墨喵币
下载量:0

查看详情