搜索历史
清空
暂无搜索历史
论坛热搜
1
Jenny — 有趣的模拟女友模组|珍妮模组
热
3
上古老物 冒险者传说 by WhiteSword
新
5
洛心斗罗-福利|公会据点战|武魂||抽奖|最终版
2
乌托邦探险之旅3.2
热
4
幻虚斗罗V1.5
6
水星迫降——在未知的世界中挣扎
登陆 注册 QQ登陆
快捷导航
查看: 41|回复: 0

[模组分享] Packed Inventory (打包库存)-MOD模组

[复制链接]

5564

主题

27

回帖

7646

积分

龙❁妻

Rank: 8Rank: 8

经验
7646 EP
金粒
2015 粒
绿宝石
20 块
爱心
0 点
发表于 2025-8-10 18:47:54 | 显示全部楼层 |阅读模式
Packed Inventory (打包库存)Github |相关wiki |源站链接支持: fabricMinecraft 中旨在通过直接从您的库存管理末影箱、末影箱和更多的内容,尝试缓解不断增长的库存问题的模组。



功能

-  不必放置即可管理末影箱的库存
-  不必放置即可管理您的末影箱的库存
-  快速将物品移入或移出末影箱、末影箱和其他提供库存的物品
-  直接从您的库存访问制作台、石工台和其他工作站
-  末影箱的类似基岩版的工具提示
-  末影箱的类似基岩版的工具提示
-  用于基岩版的类似工具提示
-  通过 `Ctrl + MMB` 在创造模式下获得的包含 NBT 的物品,如箱子、木桶、熔炉和漏斗等的类似基岩版的工具提示
-  帮助其他 Modder 实现其块和物品的这些功能的广泛且简单的 API

捆绑式功能

  如前所述,提供库存的物品(例如,末影箱、末影箱和通过 \"Packed Inventory API\" 注册的任何物品)自动获得类似于捆绑的功能,使您可以快速将物品放入或取出它们。

要存储物品在提供库存的物品内,您可以:

-  拾起提供库存的物品并按 `k` 键存储物品
-  拾起提供库存的物品并按 `k` 键存储的提供库存的物品
-  拾起要存储的物品并按 `k` 键存储在提供库存的物品内

要从提供库存的物品中检索物品:

-  拾起提供库存的物品并按 `k` 键提取到空槽
-  拾起提供库存的物品并按 `l` 或 `ctrl + k` 键提取到的物品
-  按 `l` 或 `ctrl + k` 键从提供库存的物品中提取物品

将提供库存的物品中的所有物品倾倒到世界中:

-  拾起提供库存的物品,将其移动到库存框框之外,按 `k` 键

工具提示

  这里有一些工具提示示例:

-  容器工具提示
-  彩色容器工具提示
-  紧凑型容器工具提示
-  填充地图工具提示

https://raw.githubusercontent.com/Kir-Antipov/packed-inventory/HEAD/media/preview.png]

更多截图可以在[此处](链接)找到。

按键绑定

  可以像原始按键一样配置按键绑定:

-  转到 \"选项\"。
-  选择 \"控制\"。
-  然后选择 \"按键绑定\"。
-  滚动到 \"Packed Inventory\" 部分。
-  配置可用的按键绑定。

名称描述默认值
与物品交互与活动物栏槽中的物品交互。或者,如果打开了库存屏幕,则与鼠标悬停的物品互动。根据上下文,此操作可能是:打开与所选物品关联的屏幕,将一个物品存储在选定的提供库存的物品内,从选定的提供库存的物品中提取物品,或将选定的提供库存的物品内存储的所有物品倾倒到世界中。`k`
切换互动模式(按住)使 \"与物品交互\" 按键绑定的行为类似于 \"从物品中提取\"`左控制键`
从物品中提取从选定的提供库存的物品中提取物品`l`
反转工具提示可见性(按住)按下时反转工具提示可见性`左 Shift`
反转工具提示紧凑模式(按住)按下时反转工具提示紧凑模式`c`

请注意,这些按键绑定与其他按键绑定冲突是完全可以接受的,因为它们仅在打开您的库存屏幕时应用,而其他按键绑定通常在那里不起作用。

配置

  如果您安装了 [Cloth Config](链接),您可以自定义模组的行为。配置文件通常位于 `./config/packed-inventory.json`,默认如下:

{
  \"defaultTooltipConfig\": {
    \"showWhenEmpty\": false,
    \"rows\": -1,
    \"columns\": -1,
    \"usePredefinedColor\": false,
    \"enable\": true,
    \"compact\": false
  },
  \"tooltips\": {
    \"minecraft:shulker_box\": {
      \"showWhenEmpty\": false,
      \"rows\": -1,
      \"columns\": -1,
      \"usePredefinedColor\": false,
      \"enable\": true,
      \"compact\": false
    },
    \"minecraft:ender_chest\": {
      \"syncInterval\": 5000,
      \"showWhenEmpty\": false,
      \"rows\": -1,
      \"columns\": -1,
      \"usePredefinedColor\": false,
      \"enable\": true,
      \"compact\": false
    },
    \"minecraft:filled_map\": {
      \"size\": 128,
      \"enable\": false,
      \"compact\": false
    }
  },
  \"defaultValidationConfig\": {
    \"suppressValidationInCreative\": true,
    \"requiresPlayerOnGround\": true,
    \"enable\": true
  },
  \"validation\": {
    \"minecraft:shulker_box\": {
      \"suppressValidationInCreative\": true,
      \"requiresPlayerOnGround\": true,
      \"enable\": true
    },
    \"minecraft:ender_chest\": {
      \"requiresSilkTouch\": true,
      \"suppressValidationInCreative\": true,
      \"requiresPlayerOnGround\": true,
      \"enable\": true
    }
  }
}Copy已复制!

名称描述默认值边界
tooltip.enable指示默认情况下是否应启用此工具提示`client``true`
tooltip.compact指示默认情况下是否应为此工具提示启用压缩模式`client``false`
tooltip.showWhenEmpty指示当其内容为空时是否应显示此工具提示`client``false`

开发

依赖项安装

要使用 API,将 `Packed Inventory` 添加为构建脚本中的依赖项:

  `build.gradle`:

repositories {
    maven {
      name = \"Modrinth\"
      url = \"https://api.modrinth.com/maven\"
      content {
        includeGroup \"maven.modrinth\"
      }
    }
  }

  dependencies {
    modImplementation \"maven.modrinth:packed-inventory:${project.packed_inventory_version}\"
  }Copy已复制!

  `gradle.properties`:

packed_inventory_version=/<em> version (e.g., 0.3.0+1.20.3) </em>/Copy已复制!

入口点

该 API 介绍了两个新的入口点,您可以在其中的 mod 元数据中指定:

名称描述接口方面
packed-inventory将在任何环境中首先运行`PackedInventoryInitializer``*`
packed-inventory-client仅在客户端运行并且会第二次运行`PackedInventoryClientInitializer``客户端`

  用户可以将这些 entrypoints 指定为他们的 mod 元数据中的类。

库存视图

  见库存视图!这是使我们能够编辑由其各自的物品提供的库存,而无需与它们的方块形式交互的核心概念。

  让我们为末影箱物品注册一个简单的库存视图(_提供库存视图的组件_):

java

public class MyMod implements PackedInventoryInitializer {

    @Override

    public void registerInventoryViewers(InventoryViewerRegistry registry, PackedInventoryApiConfig config) {

        registry.register(

            (inventory, slot, player) -> player.getEnderChestInventory(),

            // isInCreative  isOnGround && hasSilkTouch

            InventoryValidators.IS_IN_CREATIVE.or(

                InventoryValidators.IS_ON_GROUND.and(InventoryValidators.HAS_PICKAXE_WITH_SILK_TOUCH)

            ),

            Items.ENDER_CHEST

        );

    }

}

更多内容

游客,如果您要查看本帖隐藏内容请回复
Packed Inventory
楼主 2025-8-10 18:47:54 回复 收起回复
小僵尸论坛感谢有你~
回复 论坛版权

使用道具 举报

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

本版积分规则



介绍

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

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

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

官方

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

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

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

新会员

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

GMT+8, 2026-1-16 03:20 , Processed in 0.211585 second(s), 124 queries .

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