地图与场景
获取地图怪物数量
统计指定地图中一个或多个怪物的数量并写入变量,适用于刷怪监控、阶段判断和多怪种统计展示。
命令用途
GetMapMonCnt 用于统计指定地图中一个或多个怪物的数量,并把结果写入对应变量。
它常用于活动面板展示、刷怪监控、多怪种阶段判断和后续条件计算前的数量采集。
命令名
GetMapMonCnt
调用格式
GetMapMonCnt <地图名> <怪物名1|怪物名2|怪物名3...> <M变量1|M变量2|M变量3...>
参数说明
| 参数 | 必填 | 说明 |
|---|---|---|
地图名 | 是 | 要统计怪物数量的地图名或地图编号。 |
怪物名1|怪物名2|怪物名3... | 是 | 需要统计的怪物名称列表,多个怪物名用 | 分隔。 |
M变量1|M变量2|M变量3... | 是 | 用来接收数量结果的变量列表,顺序要和怪物名称一一对应。 |
返回或影响
- 这是写入型命令,会把统计结果写入对应的
M变量。 - 这条命令本身不是条件判断命令,通常先统计,再在后续
#IF中读取变量做比较。 - 多个怪物名称和多个变量会按顺序对应,数量不一致时结果容易错位。
示例
基础用法
#ACT
GetMapMonCnt d605 黑色恶蛆|蜈蚣|邪恶钳虫 M10|M11|M12
SendMsg 6 "黑色恶蛆:<$STR(M10)>,蜈蚣:<$STR(M11)>,邪恶钳虫:<$STR(M12)>"
这段写法会统计地图 d605 中三种怪物的数量,并分别写入 M10、M11、M12。
常见变体
#ACT
GetMapMonCnt 3 牛魔王|牛魔将军 M20|M21
#IF
LARGE M20 0
#ACT
SendMsg 6 "地图3当前仍有牛魔王。"
这段写法会先取出两种怪物数量,再在后续流程里按变量做判断。
注意事项
- 怪物名列表和变量列表必须一一对应,顺序写错会直接导致统计结果读错目标。
- 这条命令只负责写入数量,不会自动比较大小;如果要做条件判断,建议在后续显式读取变量再比较。
- 如果你只需要一个总量判断,而不是分别统计多个怪物,范围检查类命令有时会更直接。
