跳到主要内容

小地图配置

小地图配置分为两个部分:MiniMapTemplate配置MiniMap脚本配置

地图目录

MiniMapTemplate相关文件放置在地图目录中game_hud目录下,其中包含文件:

MiniMapTemplate.json:小地图基本信息配置,如果没有MiniMap脚本配置,则默认在左上角,且不方便做个性化UI调整。

miniMap.png:小地图图集,通过打包图集工具生成。

miniMap.json:小地图图集信息文件,通过打包图集工具生成。

miniMap目录:在game_hud下的子目录,如果没有打包图集则读取该目录资源,其中小地图icon地图底图放置在该目录下。

MiniMapTemplate配置

    {
"Scale": [ 1, 1 ], // xy缩放比,通常不变
"Templates": [ // 小地图样式组,可以配置多个样式,用于多地图游戏
{
"TemplateName": "MiniMap_1", // 小地图样式名称,也是场景目录名称
"Anchor": [ 0, 0 ],
"Layout": [
{
"Name": "MainMiniMap", // 固定格式
"Type": "MINIMAP", // 固定格式
"Rect": [ 0, 0, 256, 256 ],
"Color": [ 255, 255, 255, 255 ], // 小地图颜色
"MapSize": [5120, 5120], // 地图场景大小
"TexturePath": "game_hud/miniMap/minimap_1.png" // 图片资源路径
}
]
},
{
"TemplateName": "MiniMap_2",
"Anchor": [ 0, 0 ],
"Layout": [
{
"Name": "MainMiniMap",
"Type": "MINIMAP",
"Rect": [ 0, 0, 256, 256 ],
"Color": [ 255, 255, 255, 255 ],
"MapSize": [5120, 5120],
"TexturePath": "game_hud/miniMap/minimap_2.png"
}
]
}
]
}

MiniMap脚本配置

程序提供了个特殊的控件base.ui.minimap_canvas{},可以用来影响到MiniMapTemplate

该控件用于客户端的lua脚本中,具体如何改变此控件的大小和位置请参考客户端文档

    local minimap = base.ui.minimap_canvas {
-- 需要绑定的单位,绑定后就以单位为小地图中心,默认为nil
follow_target_id = 1,
-- 场景地图和小地图的像素比,用于绑定单位时地图滚动,默认为0
map_ratio = 10,
layout = {
-- 像普通控件一样定制排版信息,可以操作minimap_template在游戏中的显示方式
...
},
base.ui.panel{
-- 像普通控件一样添加children,或者被其他控件嵌套,这样可以定制特殊的功能
...
},
}
-- 生成UI
local ui , bind = base.ui.create(minimap)

支持的独特属性

  • follow_target_id 需要跟随的单位id
  • map_ratio 一个设计像素对应的场景大小

若没有follow_target_idmap_ratio==0, 则显示整张地图