跳转至

欢迎来到进阶开发

恭喜读者已经完成了 Minecraft 1.7.10 开发的基本部分!读者是否并未满足于此,正在期待着创建一些生物,与 NEI 与 Waila 进行通讯,甚至是玩转整个 Minecraft?
非常好!不过在我们开始之前,希望读者已经对以下内容完全掌握:

  • 读者非常清楚客户端,逻辑服务端与专用服务端的区别,并且非常清楚如何分辨当前线程位于哪个部分。
  • 读者已经知道 NBT 的使用,并且知道 NBT 不可以存储过多数据,否则游戏会因为发包体量过大而拒绝推送。
  • 读者已经知道 Minecraft 1.7.10 有大部分内容非常肮脏,并且准备好在非常混乱的环境中肉搏。

因此,希望读者先回答几个问题:

  1. C2S 是什么?
  2. 在非 Java 开发环境下,想要使用 @Proxy 或者 @Instance 魔法注解需要做什么?
  3. 我们通过什么方式注册工具与盔甲的材质?
  4. 注册药水效果前需要做什么?
  5. 如果我们不使用网络封包,在什么情况下会致使 Minecraft 游戏宕掉?
  6. 空槽位是一个 ItemStack 吗?

如果读者能够很快的回答这些问题——恭喜!现在读者已经对基本内容有了足够扎实的掌握!现在我们当然可以开始新的旅程!

如果读者完全没有概念,这里是答案:

  1. C2S 是 Client to Server 的缩写,意为从客户端到服务端,指封包传递方向。
  2. 在非 Java 开发环境下,我们需要在 @Mod 注解中提交适配器。
  3. 我们需要通过修改枚举类的方式注册,通过 Forge 提供的 EnumHelper 安全的修改枚举。
  4. 注册药水前,需要手动的反射药水记录表进行拓宽。
  5. 在不适用网络封包的情况下,如果当前运行环境处于专用服务端,会导致调用客户端相关的内容失败而崩溃。
  6. 在 1.7.10 中,任何空槽位都是 null 而不是空气,更不是 ItemStack.EMPTY