PartBase 与部件注册表

基本信息

属性 值
类 uk.co.qmunity.lib.part.PartBase
修饰 public abstract class PartBase implements IPart(PartBase.java:31)
注册表 uk.co.qmunity.lib.part.PartRegistry(PartRegistry.java:6)
玩家可见 否(纯 API)

功能

PartBase

PartBase 是给下游模组继承的部件基类,已经默认实现了 IPart 的 全部方法。下游通常只需继承它并覆写需要的行为。

现成的具体实现:

  • PartNormallyOccluded(final class,PartNormallyOccluded.java:11)—— 继承 PartBase 并实现 IPartOccluding,用于按其它部件遮挡关系决定渲染的部件。

两个 IPartPlacement 实现

类 行为
PartPlacementDefault 默认放置策略
PartPlacementFace 按面朝向放置的策略

两者都是 implements IPartPlacement,供「部件只能用特定方向放置」的部件 (如电线、管道)继承。

PartRegistry

部件注册入口。下游模组在此登记自己的 IPart 实现, 使其能被 TileMultipart 反序列化回具体部件实例。

使用方式

典型接入流程(源码结构,非逐字 API 契约):

  1. 继承 PartBase 编写部件
  2. 实现 IPartFactory 供 PartRegistry 反射构造
  3. 在 PartRegistry 注册
  4. 客户端补 IPartRenderPlacement

相关条目