Warning: file_put_contents(/www/wwwroot/nmbt.106988770/cache/modrinth_versions_pXciMYpV.json): Failed to open stream: Permission denied in /www/wwwroot/nmbt.106988770/resource_detail.php on line 53
ReLib - 墨喵 Minecraft 资源
ReLib 图标

ReLib

作者:rebot | 分类:模组

价格:0 墨喵币 下载量:0 点赞:0 版本 0.2.1+26.1
本资源为搬运资源,原资源地址: https://modrinth.com/mod/relib
资源信息

Minecraft 版本: 26.1 26.1.1 26.1.2 26.2

平台: fabric

标签: library

资源介绍

ReLib

General-purpose utility library for Fabric mods, originally built for TheSmoothRere's mods but open for anyone to use.

Features

  • Config system — Define configuration classes with the @Config annotation
  • Auto-discovery — Configs are automatically discovered via Fabric entrypoints and registered at startup
  • JSON persistence — Config values are saved/loaded as pretty-printed JSON via Gson
  • Typed options — BooleanOption, StringOption, IntegerOption, DoubleOption, EnumOption<E>, ListStringOption
  • Bounded ranges — IntegerOption and DoubleOption enforce min/max bounds
  • List support — ListStringOption backed by a mutable ListString wrapper with add, edit, remove, clear

Usage

1. Create a config class

import io.github.thesmoothrere.relib.config.ListString;
import io.github.thesmoothrere.relib.config.option.*;

@Config(name = "my_mod")
public class MyModConfig implements ConfigApi {

    private final BooleanOption enabled = new BooleanOption("enabled", true);
    private final IntegerOption volume = new IntegerOption("volume", 50, 0, 100);
    private final DoubleOption sensitivity = new DoubleOption("sensitivity", 0.5, 0.0, 1.0);
    private final StringOption greeting = new StringOption("greeting", "Hello!");
    private final EnumOption<MyEnum> mode = new EnumOption<>("mode", MyEnum.NORMAL);
    private final ListStringOption favoriteColors = new ListStringOption("favorite_colors", "red", "blue");

    public ConfigOption<Boolean> enabled() {
        return enabled;
    }

    public ConfigOption<Integer> volume() {
        return volume;
    }

    public ConfigOption<Double> sensitivity() {
        return sensitivity;
    }

    public ConfigOption<String> greeting() {
        return greeting;
    }

    public ConfigOption<MyEnum> mode() {
        return mode;
    }

    public ConfigOption<ListString> favoriteColors() {
        return favoriteColors;
    }
}

2. Register the entrypoint in fabric.mod.json

{
  "entrypoints": {
    "relib": [
      "com.example.MyModConfig"
    ]
  }
}

3. Access your config anywhere

MyModConfig config = ConfigManager.get(MyModConfig.class);
boolean enabled = config.enabled().getValue();

ConfigManager.load(config);
ConfigManager.save(config);

Option Types

Class Value Type Bounded
BooleanOption Boolean No
StringOption String No
IntegerOption Integer Yes
DoubleOption Double Yes
EnumOption<E> E extends Enum<E> No
ListStringOption ListString No

License

Licensed under the GNU Lesser General Public License v2.1. See LICENSE.

下载与版本
评论(0)
请 登录 后发表评论。

暂无评论,抢个沙发吧~

举报此资源

请登录后举报

赞助作者

请 登录 后赞助作者。

🔥 相关推荐
EuphPack

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

查看详情
BOPIntegration-Catized

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

查看详情
SillyCat cat

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

查看详情
Fatigue's Questing!

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

查看详情