地图显示选项(Map / InGameMap)

基本信息

属性 值
宿主类 journeymap.client.properties.MapProperties(MapProperties.java:22,abstract)、InGameMapProperties(InGameMapProperties.java:21,abstract)
@Config 字段数 11(MapProperties)+ 8(InGameMapProperties)= 20
影响的配置文件 journeymap.fullmap.config、journeymap.minimap.config、journeymap.minimap2.config、journeymap.webmap.config(四者都继承本组字段)
所属页签 FullMap / WebMap / MiniMap1 / MiniMap2(字段标注 Inherit,由 addSlots() 重映射)
附加非配置字段 zoomLevel(MapProperties.java:57)

功能

这两个抽象类构成 JourneyMap 所有"游戏内地图"的公共配置底座。它们控制的是在地图上画什么(实体、路点、网格、洞穴)以及画出来多大、多清晰(图标集、缩放、模糊),与 CoreProperties 中"怎么算地图"的过程类设置相对。

由于四张地图配置都继承同一组字段,改动会同时影响全屏地图、小地图 1/2 和 Web 地图——它们共用同一份字段定义,但各自持久化到不同文件。

MapProperties(11 项)—— 地图上显示哪些图层

语言键 字段 类型 默认 范围 说明
jm.common.show_mobs showMobs bool true — 显示敌对生物图标
jm.common.show_animals showAnimals bool true — 显示动物图标
jm.common.show_villagers showVillagers bool true — 显示村民图标
jm.common.show_pets showPets bool true — 显示宠物(已驯服生物)图标
jm.common.show_players showPlayers bool true — 显示其它玩家图标
jm.common.show_waypoints showWaypoints bool true — 显示路点标记
jm.common.show_self showSelf bool true — 显示自身位置标记
jm.common.show_grid showGrid bool true — 显示网格线
jm.common.mob_icon_set entityIconSetName String "2D" — 实体图标集名称,默认 "2D"
jm.common.entity_scale entityScale int 100 50–400 实体图标缩放百分比
jm.common.entity_blur entityBlur bool true — 对远距离实体图标做模糊

(行号:MapProperties.java:25-55。)

zoomLevel(MapProperties.java:57,new AtomicInteger(0))是非 @Config 字段:它记录当前缩放级别而不作为可调选项暴露;全屏地图的缩放按钮通过 fullMapProperties.zoomLevel.get() 读取并用 Math.pow(2, zoomLevel) 换算成方块边长(ui/fullscreen/Fullscreen.java:695)。

InGameMapProperties(8 项)—— 叠加信息与文字

语言键 字段 类型 默认 范围 说明
jm.common.show_caves showCaves bool true — 地图叠加洞穴层
jm.common.font_scale fontScale int 1 1–4 地图文字缩放
jm.minimap.texture_size textureSmall bool true — 使用小尺寸纹理
jm.minimap.show_waypointlabels showWaypointLabels bool true — 显示路点文字标签
jm.common.location_format_verbose locationFormatVerbose bool true — 坐标使用冗长格式(含维度名)
jm.common.location_format locationFormat String 由 LocationFormat.IdProvider 给出 — 坐标格式串
jm.minimap.mob_heading showMobHeading bool true — 显示生物朝向箭头
jm.minimap.player_heading showPlayerHeading bool true — 显示玩家朝向箭头

(行号:InGameMapProperties.java:24-45。)

preferredMapType(AtomicReference<MapType.Name>,默认 MapType.Name.day)由各具体子类各自声明一份(FullMapProperties.java:18、MiniMapProperties.java:79、WebMapProperties.java:28),同样不带 @Config 注解,通过抽象 getter getPreferredMapType() 暴露。

数值

数值名 值
MapProperties @Config 字段数 11
InGameMapProperties @Config 字段数 8
合计 20
默认开启的图层数 11 项中 11 项全部默认 true(无一项默认关闭)
entityScale 范围 50–400(默认 100,即 100%)
fontScale 范围 1–4(默认 1)
缩放级别换算 方块边长 = 2 ^ zoomLevel(Fullscreen.java:695)

交互

触发 行为
在 Options Manager 改动任一图层开关 立即影响所有继承该字段的地图(全屏 / 小地图 1 / 小地图 2 / Web 地图)
全屏地图点击放大/缩小按钮 按钮启用条件为 zoomLevel < state.maxZoom / > state.minZoom(Fullscreen.java:379、:392),修改 zoomLevel 后立即重建网格渲染器(:717)
游戏开启 Unicode 字体 FullMapProperties.newFileInit() 把 fontScale 设为 2(FullMapProperties.java:29-32)
实体图标集设为非 "2D" 由 getFileName(Entity) 解析到不同图标目录(Constants.ENTITY_ICON_DIR,Constants.java:62)

相关条目