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 契约):
- 继承
PartBase编写部件 - 实现
IPartFactory供PartRegistry反射构造 - 在
PartRegistry注册 - 客户端补
IPartRenderPlacement