ByteCodecs
[!INFO] Git Commit:
7808254| Updated: 2026-10-02
| 属性 | 值 |
|---|---|
| 类名 | codechicken.multipart.asm.ByteCodecs |
| 类型 | object,8 个方法,212 行 |
| 启用版本 | Minecraft 1.7.10 |
| NBT 变长整数编解码:Forge 的 NBT 用 7 位一段、每段最高位为续位的方式 | |
| 压缩整数。这里额外实现了「零值压缩」,让常见的小值只占 1 字节。 |
关键点
encode/decode:7 位基础编解码。encode8to7/decode7to8:在 8 位与 7 位表示间转换。avoidZero/regenerateZero:写出时把 0 编码成最短形式、读回时还原为 0。 这是 Forge NBT 的既有约定,不做这步会导致读出的数值整体偏移 1。src/dst:ByteCodecs.scala内对输入输出缓冲区的写入游标。
相关条目
- ScalaSignature - 字节流读取的调用方