搜索历史
清空
暂无搜索历史
论坛热搜
1
【MC整合包发布】乌托邦探险之旅3.2
热
3
[1.6.4]上古老物 冒险者传说 by WhiteSword
新
5
[转载]洛心斗罗-福利|公会据点战|武魂||抽奖|最终版
2
[1.12.2]Jenny — 有趣的模拟女友模组|珍妮模组
热
4
幻虚斗罗V1.5[炫酷魂环][高级魂技][全模型贴图覆盖][超吸金]
6
[1.7.10] [HQM] [Mercury landing]水星迫降——在未知的世界中挣扎
登陆 注册 QQ登陆
快捷导航
查看: 15|回复: 0

[模组分享] Temporal API (Temporal API)-MOD模组

[复制链接]

5554

主题

25

回帖

7598

积分

龙❁妻

Rank: 8Rank: 8

经验
7598 EP
金粒
1979 粒
绿宝石
20 块
爱心
0 点
发表于 2025-8-10 19:33:51 | 显示全部楼层 |阅读模式
Temporal API (Temporal API)Github |相关wiki |源站链接支持: forgeTemporal API 是 Team Temporal 模组的库,其他项目也可能会使用它。Temporal API 是 Team Temporal 模组的官方库,其他项目和模组作者以及模组包创建者可以根据他们的项目需要随意使用。

主要目标

该模组的主要目标是让创建模组变得更加简单和灵活!

在使用我们的库时,您需要打开 build.gradle 文件并添加以下内容:

repositories {
    maven {
        url \"https://cursemaven.com\"
    }
}

dependencies {
    implementation fg.deobf(\"curse.maven:temporalapi-970291:<file-id>\")
   
    ...
}Copy已复制!

您需要将 \\替换为所需版本的mod文件链接末尾可以找到的文件id。

当前库的功能包括:

- factories (工厂)
- tag utils (标签工具)
- creative tab utils (创造模式标签工具)
- trading with villagers and wanderers customizer (与村民和流浪商人交易定制工具)
- world features utils (世界特性工具)
- item properties utils (物品属性工具)
- fov modifier (视野修改器)

Factories and Extensions

工厂用于创建 RegistryObject 对象,并使其创建变得更加容易。

使用 API 中的 ItemFactory 需要创建 ItemFactoryFacade 类,如下所示:

public class ModItemFactoryFacade extends ItemFactory {
    public ModItemFactoryFacade() {
        super(ModItems.ITEMS);
    }
}Copy已复制!

您还可以使用 API 中的扩展来扩展您的 Facade 工厂,或者创建自己的扩展。

以下是使用 SwordExtension 的两个示例(使用此扩展创建剑变得更加容易):

public class ModItemFactoryFacade extends ItemFactory implements SwordExtension {
    public ModItemFactoryFacade() {
        super(ModItems.ITEMS);
    }
}Copy已复制!

或者像这样:

public class ModItemFactoryFacade extends ItemFactory implements SwordExtension {
    public ModItemFactoryFacade() {
        super(ModItems.ITEMS);
    }

    public RegistryObject<SwordItem> createSword(String name, Object... args) {
        return SwordExtension.super.createSword(name, this, args);
    }

    public RegistryObject<? extends SwordItem> createSword(String name, Supplier<? extends SwordItem> tTypedSupplier) {
        return SwordExtension.super.createSword(name, this, tTypedSupplier);
    }
}Copy已复制!

下面是使用此 Facade 类创建对象的示例:

public class ModItems {
    public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(Registries.ITEM, \"MOD_ID\");
    public static final ModItemFactoryFacade ITEM_FACTORY = new ModItemFactoryFacade();

    // ... 这里是其他对象的创建示��,这里省略部分内容以保持简洁

    // 第一个创建 Facade 对象的示例
    public static final RegistryObject<SwordItem> MY_SWORD_1 = ITEM_FACTORY.createSword(\"my_sword_1\", ITEM_FACTORY, Tiers.STONE, 3, -2.4F);
    public static final RegistryObject<? extends SwordItem> MY_SWORD_2 = ITEM_FACTORY.createSword(\"my_sword_2\", ITEM_FACTORY, () -> new SwordItem(Tiers.STONE, 3, -2.4F, new Item.Properties()));

    // 第二个创建 Facade 对象的示例
    public static final RegistryObject<SwordItem> MY_SWORD_3 = ITEM_FACTORY.createSword(\"my_sword_3\", Tiers.STONE, 3, -2.4F);
    public static final RegistryObject<? extends SwordItem> MY_SWORD_4 = ITEM_FACTORY.createSword(\"my_sword_4\", () -> new SwordItem(Tiers.STONE, 3, -2.4F, new Item.Properties()));
}Copy已复制!

现在让我们看看 args... 数组。它是用于创建对象的参数数组(将来会改进以获得更好的可读性)。

当前可用的工厂和扩展有:

ItemFactory(ArrowExtension, BowExtension, ...)
BlockFactory(BushExtension, FlowerExtension, ...)
ParticleFactory
EffectFactory
PaintingFactory
PotionFactory
SoundEventFactory
CreativeTabFactory
EntityFactoryCopy已复制!

Tag Utils

标签工具专注于标签的创建和使用,例如,如果要创建物品标签,您需要使用 ItemTagFactory:

public class MyItemTags {
    public static final TagFactory<Item> TAG_FACTORY = new ItemTagFactory(\"MY_MOD_ID\");

    public static final TagKey<Item> MY_TAG = TAG_FACTORY.createTag(\"my_tag\");
}Copy已复制!

Creative Tab Utils


   
   
    [modrinth_id id=\"JDtt43My\"]
<!--markdown_parsed--
文章类型:收录layui.use([\'form\'], function(){
var form = layui.form;
});

游客,如果您要查看本帖隐藏内容请回复
Temporal API
楼主 2025-8-10 19:33:51 回复 收起回复
小僵尸论坛感谢有你~
回复 论坛版权

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 手机动态码快速登录

本版积分规则



介绍

我的世界(Minecraft)小僵尸论坛
收录了来自各地的我的世界(MC)爱好者们的各种资源

须知: 切勿滥用举报,任何与举报相关的信息必须属实!

"Minecraft"以及"我的世界"为Mojang Synergies AB的商标 本站与Mojang以及微软公司没有从属关系

官方

新浪微博 腾讯微博 微信公众号 投稿规则 版权声明 捐助我们

官方QQ①群: 291907844 (点击加群)
官方QQ②群: 421312192
官方QQ③群: 528726532

我的世界(Minecraft)小僵尸论坛

新会员

QQ|Archiver|手机版|小黑屋|Minecraft(我的世界)小僵尸论坛 |网站地图

GMT+8, 2025-9-25 10:37 , Processed in 0.314002 second(s), 53 queries .

快速回复 返回顶部 返回列表