DynmapCommonAPI

基本信息

属性 值
接口 org.dynmap.DynmapCommonAPI(org/dynmap/DynmapCommonAPI.java)
用途 供其他 mod 在服务端控制地图渲染与网页端数据
获取途径 DynmapCommonAPIListener.apiEnabled(DynmapCommonAPI api) 回调参数
初始化调用 DynmapPlugin.java:1415 DynmapCommonAPIListener.apiInitialized(core);(:1481 有一处已注释的重复调用)

功能

模组间集成的唯一 Java 入口。共 20 个 public 方法,按用途分为 5 组。

标记

方法 源码行 说明
getMarkerAPI() DynmapCommonAPI.java:16 取标记 API
markerAPIInitialized() DynmapCommonAPI.java:22 标记系统是否就绪

渲染触发

方法 源码行 说明
triggerRenderOfVolume(wid, minx…maxz) DynmapCommonAPI.java:43 触发立方体区域渲染,返回受理数
triggerRenderOfBlock(wid, x, y, z) DynmapCommonAPI.java:54 触发单方块渲染
setPauseFullRadiusRenders(boolean) DynmapCommonAPI.java:59 暂停全图/半径渲染
getPauseFullRadiusRenders() DynmapCommonAPI.java:63 查询上述状态
setPauseUpdateRenders(boolean) DynmapCommonAPI.java:68 暂停增量渲染
getPauseUpdateRenders() DynmapCommonAPI.java:72 查询上述状态

玩家可见性

方法 源码行 说明
setPlayerVisiblity(player, is_visible) DynmapCommonAPI.java:78 设置玩家在地图上的可见性
getPlayerVisbility(player) DynmapCommonAPI.java:85 查询可见性
assertPlayerInvisibility(...) DynmapCommonAPI.java:92 声明性隐藏(供插件申请)
assertPlayerVisibility(...) DynmapCommonAPI.java:99 声明性显示
testIfPlayerVisibleToPlayer(player, player_to_see) DynmapCommonAPI.java:130 两玩家间是否可见

网页端消息

方法 源码行 说明
sendBroadcastToWeb(sender, msg) DynmapCommonAPI.java:28 向网页端广播
postPlayerMessageToWeb(...) DynmapCommonAPI.java:106 以玩家身份发消息到网页
postPlayerJoinQuitToWeb(...) DynmapCommonAPI.java:113 推送玩家进出事件
processSignChange(blkid, world, x, y, z, lines, playerid) DynmapCommonAPI.java:146 上报告示牌文本变化
testIfPlayerInfoProtected() DynmapCommonAPI.java:135 玩家信息是否受保护

其他

方法 源码行 说明
getDynmapCoreVersion() DynmapCommonAPI.java:118 取核心版本
setDisableChatToWebProcessing(boolean) DynmapCommonAPI.java:123 关闭聊天转发处理

数值

数值名 值
public 方法总数 20

交互

本 mod 自身只用 getMarkerAPI() 取标记 API,其余方法供外部 mod 调用。典型用法是继承 DynmapCommonAPIListener(见 DynmapCommonAPIListener)并在 apiEnabled 回调中保存 API 引用。

仓库内没有 @Mod 依赖声明指向本 API(DynmapMod.java:34 的 @Mod 注解无 dependencies 字段),因此该 API 在 Forge 层面不会强制任何 mod 加载本 mod——它是纯运行时的软契约。

相关条目