# 拆解台模组 (Disassembler Mod)

这是一个Minecraft Fabric模组，添加了一个拆解台功能方块，可以回收矿物制成的工具和装备。

## 功能特性

### 拆解台方块
- **合成配方**: 3个铁锭 + 3个钻石 + 3个原石
- **功能**: 将矿物工具和装备拆解为原材料
- **工作方式**: 放入工具后自动拆解，需要时间处理

### 支持的拆解物品

#### 工具类
- **钻石工具**: 钻石剑(2钻石)、钻石镐(3钻石)、钻石斧(3钻石)、钻石锹(1钻石)、钻石锄(2钻石)
- **铁工具**: 铁剑(2铁锭)、铁镐(3铁锭)、铁斧(3铁锭)、铁锹(1铁锭)、铁锄(2铁锭)
- **金工具**: 金剑(2金锭)、金镐(3金锭)、金斧(3金锭)、金锹(1金锭)、金锄(2金锭)
- **石工具**: 石剑(2原石)、石镐(3原石)、石斧(3原石)、石锹(1原石)、石锄(2原石)

#### 盔甲类
- **钻石盔甲**: 头盔(5钻石)、胸甲(8钻石)、护腿(7钻石)、靴子(4钻石)
- **铁盔甲**: 头盔(5铁锭)、胸甲(8铁锭)、护腿(7铁锭)、靴子(4铁锭)
- **金盔甲**: 头盔(5金锭)、胸甲(8金锭)、护腿(7金锭)、靴子(4金锭)

#### 下界合金装备
- **下界合金工具**: 返还1个下界合金锭
- **下界合金盔甲**: 返还1个下界合金锭

### 特殊规则
- **不拆解木制工具**: 木剑、木镐、木斧、木锹、木锄不会被拆解
- **无视耐久度**: 无论工具还剩多少耐久，都返还固定数量的材料
- **不返还非矿物部分**: 比如钻石剑只返还钻石，不返还木棍

## 使用方法

1. **合成拆解台**: 使用3铁锭、3钻石、3原石按照工作台配方合成
2. **放置拆解台**: 将拆解台放置在世界中
3. **放入工具**: 右键点击拆解台，将工具放入输入槽
4. **等待拆解**: 拆解台会自动处理，完成后在输出槽获得材料

## 技术细节

- **模组ID**: `husj`
- **Minecraft版本**: 1.21.9
- **模组加载器**: Fabric
- **依赖**: Fabric API

## 项目结构

```
src/main/resources/
├── assets/husj/
│   ├── blockstates/          # 方块状态定义
│   ├── items/                # 物品模型定义 (1.21+新增)
│   ├── models/block/         # 方块模型
│   ├── models/item/          # 物品模型 (1.21+已弃用，使用items/)
│   ├── textures/block/       # 方块贴图
│   └── lang/                 # 语言文件
├── data/husj/
│   ├── recipe/               # 合成配方 (1.21+使用单数)
│   ├── loot_table/blocks/    # 战利品表 (1.21+使用单数)
│   └── advancements/         # 进度
└── data/minecraft/tags/block/ # 方块标签
```

## Minecraft 1.21+ 版本注意事项

> **重要**: Minecraft 1.21.2+ 引入了重大数据包格式变更！

### 目录名称变更
| 旧版本 (1.20及以前) | 新版本 (1.21+) |
|-------------------|---------------|
| `data/.../recipes/` | `data/.../recipe/` |
| `data/.../loot_tables/` | `data/.../loot_table/` |

### 物品模型系统变更
- **旧系统**: `assets/.../models/item/xxx.json`
- **新系统**: `assets/.../items/xxx.json`

新的物品定义文件格式：
```json
{
  "model": {
    "type": "minecraft:model",
    "model": "namespace:block/block_model"
  }
}
```

### 配方格式变更
- `result` 中使用 `"id"` 替代 `"item"`
- `key` 中可以直接使用字符串 `"minecraft:item_id"` 替代对象 `{"item": "minecraft:item_id"}`

## 开发信息

这个模组是基于Fabric模组加载器开发的，包含了完整的方块实体、GUI界面和拆解逻辑实现。