社区流体API

社区流体API

NeoForge 流体 API(已停止维护)的从头开始社区重新实现。

基础库

TL;DR:自 Minecraft 26.1 起,NeoForged 团队已正式退役(Neo)Forge 流体 API……且未提供替代品。本模组是由社区从头重新实现的 API,旨在让添加流体的过程像过去一样简单(且无冲突)。仍在开发中。


如果你不知道这意味着什么,或想了解更多细节,以下是详细说明:

想知道为什么实体穿过你的流体就像它们不存在?为什么你的流体设置发光指令后却不发光、不推动你、让怪物路径异常、导管在里面不工作等,尽管你已经在 FluidType 类中设置了所有内容?这是因为(Neo)Forge 流体 API 已停止维护——自 MC 26.1 起,Neo 不再附带实现*。如果你想让流体“正常工作”,你需要一个能利用该 API 并使游戏实际响应的东西。这就是本 API 的用武之地——它几乎可以直接替换旧的 Forge 实现,由社区成员为 MC 26.1.2 从头编写!

它进行了一些修改,并扩展了旧功能:

  • isWaterLike 现已弃用。取而代之的是,多种更具针对性的方法已被修补
  • 现在必须为流体添加标签(回退行为会替换为水,但重用原版标签会导致大部分流体 API 被忽略)
  • 以下方法已被修补:#getTag、#reducesMiningSpeed、#canSpawnAquaticMobs、#canFish、#getFishingLootTableKey、#entityCanStandOn、#shouldSplash、#createSplashParticleOnClient、#createSplashParticleOnServer、#createWakeParticleOnServer、#makesWet、#hasUnderWaterMusic、#conduitCompatible、#slowsProjectiles、#getInertia、#triggersRipTide、#preventsBurning、#affectsVehicle
  • 为方便起见,提供了无色、可染色的原版飞溅和水波粒子(默认情况下,这些粒子会染上与流体相同的颜色,并替换原版粒子)

文档正在编写中;在此期间,请参阅社区维护的旧(Neo)Forge API 文档:


*实际上,旧 API 的大部分功能已不再实现,NeoForged 团队计划继续逐步淘汰其余部分。