Pedestal Trophy Model

基本信息

属性 值
model ID pedestal
父类 glowredman.amazingtrophies.api.TrophyModelHandler(被其余 4 个 model handler 继承作为 super.render())
注册处 ClientHandler.registerTrophyModelHandlers()(first provider)
资源路径 模型 amazingtrophies:models/trophy_pedestal.obj;贴图 amazingtrophies:textures/blocks/trophy_pedestal.png

配置

无配置字段——该 handler 是所有 model handler 的渲染基座,本身写死加载 trophy_pedestal 模型和贴图;其余 4 个 model handler 都会通过 super.render(...) 调用它先画底座。

当 TrophyProperties.getModelHandler() == null 时,RendererTrophy 会回退到一个 PedestalTrophyModelHandler() 单例,仅渲染底座。

渲染细节

按视角:

  1. 绑定底座贴图 → 设置模型矩阵 → 用方块元数据 rotation(0–15,每档 22.5°)绕 Y 轴旋转。
  2. 调用 ModelWrapper.renderAll() 渲染 trophy_pedestal.obj。
  3. 若 name == null || name.isEmpty() || time == 0,跳过浮雕文字。
  4. 文字部分:将视角反向 180°,平移到基座正面 (0, -0.5, 0.376),缩放至 0.00625f;用 gtnhlib 的 FontRendering 工具绘制玩家名 + 日期(按本地时区格式化 %tF,缓存到 Long2ObjectMap)。

标签渲染距离阈值:仅当相机相对奖杯距离平方 ≤ 32 * 32 时才绘制玩家名与日期(由 RendererTrophy 控制)。

触发位置

RendererTrophy.renderTileEntityAt(TESR)+ RendererTrophy.renderItem(ItemStack 渲染/手持)。

相关条目

源码

src/main/java/glowredman/amazingtrophies/model/PedestalTrophyModelHandler.java