chore: Auto update by pre-commit hooks [skip changelog]
@@ -7,7 +7,10 @@
|
||||
},
|
||||
{
|
||||
"type": "EmergencyOps",
|
||||
"template": ["JieGarden@Roguelike@MapNodeEmergencyOps.png", "JieGarden@Roguelike@MapNodeEmergencyOpsGrey.png"]
|
||||
"template": [
|
||||
"JieGarden@Roguelike@MapNodeEmergencyOps.png",
|
||||
"JieGarden@Roguelike@MapNodeEmergencyOpsGrey.png"
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Encounter",
|
||||
@@ -19,7 +22,10 @@
|
||||
},
|
||||
{
|
||||
"type": "BoskyPassage",
|
||||
"template": ["JieGarden@Roguelike@MapNodeBoskyPassage.png", "JieGarden@Roguelike@MapNodeBoskyPassageGrey.png"]
|
||||
"template": [
|
||||
"JieGarden@Roguelike@MapNodeBoskyPassage.png",
|
||||
"JieGarden@Roguelike@MapNodeBoskyPassageGrey.png"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -436,7 +436,7 @@
|
||||
"JieGarden@Roguelike@LeaveOperation": {
|
||||
"roi": [41, 22, 78, 71],
|
||||
"action": "ClickSelf",
|
||||
"next":["JieGarden@Roguelike@GiveUpOperation", "JieGarden@Roguelike@LeaveOperation"]
|
||||
"next": ["JieGarden@Roguelike@GiveUpOperation", "JieGarden@Roguelike@LeaveOperation"]
|
||||
},
|
||||
"JieGarden@Roguelike@GiveUpOperation": {
|
||||
"algorithm": "OcrDetect",
|
||||
@@ -450,10 +450,7 @@
|
||||
"text": ["放弃行动"],
|
||||
"roi": [770, 470, 150, 45],
|
||||
"action": "ClickSelf",
|
||||
"next": [
|
||||
"JieGarden@Roguelike@OperationFailed",
|
||||
"JieGarden@Roguelike@ConfirmToGiveUp"
|
||||
]
|
||||
"next": ["JieGarden@Roguelike@OperationFailed", "JieGarden@Roguelike@ConfirmToGiveUp"]
|
||||
},
|
||||
"JieGarden@Roguelike@OperationFailed": {
|
||||
"baseTask": "JieGarden@Roguelike@MissionFailedFlag",
|
||||
|
||||
|
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 5.7 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 6.0 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 5.4 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 8.9 KiB After Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 5.8 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 8.5 KiB After Width: | Height: | Size: 5.4 KiB |
@@ -81,8 +81,11 @@ public:
|
||||
|
||||
// ———————— get map details ———————————————————————————————————————————————————————
|
||||
[[nodiscard]] size_t size() const { return m_nodes.size(); }
|
||||
|
||||
[[nodiscard]] size_t get_num_columns() const { return m_column_indices.size(); }
|
||||
|
||||
[[nodiscard]] size_t get_curr_pos() const { return m_curr_pos; }
|
||||
|
||||
[[nodiscard]] size_t get_column_begin(const size_t& column) const;
|
||||
[[nodiscard]] size_t get_column_end(const size_t& column) const;
|
||||
[[nodiscard]] size_t get_next_node() const;
|
||||
@@ -113,6 +116,8 @@ private:
|
||||
std::vector<RoguelikeNodePtr> m_nodes;
|
||||
std::vector<size_t> m_column_indices; // m_column_indices[c] 代表列 c 的 node index 的上限 (exclusive)
|
||||
size_t m_curr_pos = 0; // 当前位置的 node index
|
||||
RoguelikeNodeCostFun m_cost_fun = [&]([[maybe_unused]] const RoguelikeNodePtr& node) { return 0; };
|
||||
RoguelikeNodeCostFun m_cost_fun = [&]([[maybe_unused]] const RoguelikeNodePtr& node) {
|
||||
return 0;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -342,7 +342,7 @@ void asst::RoguelikeRoutingTaskPlugin::generate_edges(
|
||||
const int rightmost_y = (rightmost_y_min_p.y + rightmost_y_max_p.y) / 2;
|
||||
|
||||
if ((std::abs(prev_y - node_y) < m_direction_threshold &&
|
||||
std::abs(leftmost_y - rightmost_y) < m_direction_threshold) ||
|
||||
std::abs(leftmost_y - rightmost_y) < m_direction_threshold) ||
|
||||
(prev_y < node_y && leftmost_y < rightmost_y - m_direction_threshold) ||
|
||||
(prev_y > node_y && leftmost_y > rightmost_y + m_direction_threshold)) {
|
||||
m_map.add_edge(prev, node);
|
||||
|
||||
@@ -36,9 +36,8 @@ private:
|
||||
/// 画面最左侧节点 (忽视 init node) 所在列的 index。
|
||||
/// 按照定义,要求 leftmost_column >= 1。
|
||||
/// </param>
|
||||
/// <param name="image_draw_opt">ASST_DEBUG 模式下用于标注识别结果的截图。若为 std::nullopt 则不标注识别结果。</param>
|
||||
/// <returns>
|
||||
/// 若有新地图信息,则返回 true, 反之则返回 false。
|
||||
/// <param name="image_draw_opt">ASST_DEBUG 模式下用于标注识别结果的截图。若为 std::nullopt
|
||||
/// 则不标注识别结果。</param> <returns> 若有新地图信息,则返回 true, 反之则返回 false。
|
||||
/// </returns>
|
||||
/// <remarks>
|
||||
/// 画面中最多同时存在三列节点。
|
||||
|
||||