fix: 大地图技能, 撤离按钮及相机偏移修复, 连带引航者S6地图TN-2 ~ TN-4 view[1] (#15252)

* chore: TN-2

* fix: 技能&撤退 大地图视角偏移

Co-authored-by: status102 <102887808+status102@users.noreply.github.com>

* chore: TN-3&TN-4

* perf: const

---------

Co-authored-by: Weiyou Wang <44151844+Alan-Charred@users.noreply.github.com>
This commit is contained in:
Status102
2025-12-31 20:03:37 +08:00
committed by GitHub
parent a96d297693
commit a7bb06a225
6 changed files with 7 additions and 13 deletions

View File

@@ -117,13 +117,13 @@ static constexpr double rel_pos_z = -0.3967874050140381;
inline auto get_retreat_screen_pos(const Level& level)
{
const vec3d relative_pos = { -rel_pos_x, +rel_pos_y, rel_pos_z };
const vec3d relative_pos = { -rel_pos_x + level.view[0].x, +rel_pos_y, rel_pos_z };
return world_to_screen(level, relative_pos, true);
}
inline auto get_skill_screen_pos(const Level& level)
{
const vec3d relative_pos = { +rel_pos_x, -rel_pos_y, rel_pos_z };
const vec3d relative_pos = { +rel_pos_x + level.view[0].x, -rel_pos_y, rel_pos_z };
return world_to_screen(level, relative_pos, true);
}

View File

@@ -1993,9 +1993,7 @@
-9.76
],
[
-6.44125193356232,
-6.6,
-11.914085001901128
-6.56142893 , -6.58700198, -10.61876491
]
],
"width": 28

View File

@@ -1858,9 +1858,7 @@
-12.370000000000001
],
[
-6.480434066357736,
-8.1,
-14.571257326096456
-6.58477799, -8.0842036, -13.14269852
]
],
"width": 29

View File

@@ -1984,9 +1984,7 @@
-10.63
],
[
-7.767389648510402,
-7.1,
-13.031340013522145
-7.91026368 , -7.09102322, -11.50721891
]
],
"width": 31

View File

@@ -7,5 +7,5 @@
"pool": "跨年欢庆·中坚",
"time": 1766606400
},
"last_updated": "2025-12-29 07:30:07.000"
"last_updated": "2025-12-31 10:30:07.000"
}

View File

@@ -355,7 +355,7 @@ cv::Mat asst::BattleHelper::get_top_view(const cv::Mat& cam_img, bool side)
};
std::vector<cv::Point2f> screen_points;
for (const auto& point : world_points) {
cv::Vec3d temp { point.x, -point.y, -0.3967874050140381 };
cv::Vec3d temp { point.x + m_map_data.view[0].x, -point.y, Map::TileCalc2::rel_pos_z };
auto screen_pt = Map::TileCalc2::world_to_screen(m_map_data, temp, true);
screen_points.push_back(screen_pt);
}