PetiteInventory - TaCZ 弹匣兼容补丁

PetiteInventory - TaCZ 弹匣兼容补丁

为PetiteInventory添加基于NBT的TaCZ兼容性,使弹匣系列和枪械变体能够使用各自独立的库存大小。

PetiteInventory – TaCZ 弹药兼容补丁

原始模组: MerrySnow 的 Petite Inventory

这是基于 PetiteInventory 1.0.8 的非官方兼容构建版本。

PetiteInventory 允许物品在背包内占用不同大小的空间,创建类似于《生化危机》、《逃离塔科夫》或《DayZ》的网格系统。

然而,多个 TaCZ 对象共享相同的物品基础 ID,仅通过 NBT 数据进行区分。因此,原始配置无法为单个弹匣、武器或配件分配不同的大小。

此兼容补丁修改了 PetiteInventory 的内部物品匹配系统,使其能够识别以下 NBT 标识符:

  • MagazineFamily 用于 TaCZ 弹匣。
  • GunId 用于 TaCZ 武器。
  • AttachmentId 用于 TaCZ 配件和兼容内容包。

这使得每个弹匣系列、武器和配件都能拥有自己的背包尺寸。

示例:弹匣系列

{
  "match": [
    "taczmagazines:magazine{MagazineFamily:\"9mm_17\"}"
  ],
  "result": "1*2"
}

示例:武器

{
  "match": [
    "tacz:modern_kinetic_gun{GunId:\"tacz:glock_17\"}"
  ],
  "result": "2*2"
}

示例:配件

{
  "match": [
    "tacz:attachment{AttachmentId:\"tacz:scope_vudu\"}"
  ],
  "result": "3*1"
}

只需写入稳定的标识符。无需包含弹药数量、伤害值、UUID、已装填弹匣和物品旋转等数值。

这意味着同一系列的空弹匣和装满弹药的弹匣将始终占用相同大小的空间。

为何需要此修改?

此功能无法仅通过数据包或普通的 PetiteInventory 配置规则来实现。

数据包无法修改 PetiteInventory 用于识别物品的 Java 逻辑。必须扩展内部物品匹配代码,使其能够读取存储在 NBT 中的 TaCZ 标识符。

独立的代码级附属模组或 Mixin 也可以提供此功能,但此版本直接修改了 PetiteInventory。

安装方法

  1. 从 mods 文件夹中移除原始的 PetiteInventory 1.0.8 .jar 文件。
  2. 将此兼容构建版本放入 mods 文件夹。
  3. 确保只安装了一个 PetiteInventory .jar 文件。
  4. 将所需规则添加到 PetiteInventory 的尺寸配置中。
  5. 重启 Minecraft。

请勿将此文件与原始 PetiteInventory 文件一同安装,因为两者使用相同的内部模组 ID。

需求条件

  • Minecraft 1.20.1
  • Forge 47 或更新版本
  • TaCZ
  • TaCZ Magazines(用于 MagazineFamily 支持)
  • PetiteInventory 配置文件
  • 兼容的 TaCZ 内容包(当使用其武器或配件 ID 时)

此补丁最初为 VIVI2 的 Dead Night 整合包 创建,但也可与所需模组独立使用。

制作人员

  • 原始 PetiteInventory 模组: MerrySnow
  • TaCZ: 其原始开发团队及贡献者
  • TaCZ Magazines 和内容包: 其各自的创作者
  • 兼容性修改: VIVI2

这是一个非官方兼容构建版本。与 PetiteInventory 或 TaCZ 的原始创作者无关联,也未获得其认可。

所有原始代码、资源、名称和商标均属于其各自创作者。