diff --git a/.github/workflows/release-ota.yml b/.github/workflows/release-ota.yml index bbbf9f7fb5..4995fe59a1 100644 --- a/.github/workflows/release-ota.yml +++ b/.github/workflows/release-ota.yml @@ -137,7 +137,7 @@ jobs: - name: Unpack the .dmg files for .dylib run: | mkdir -p ${{ runner.temp }}/dylib - hdiutil attach MAA-${{ needs.create-tag.outputs.release_tag }}-macos-universal.dmg + hdiutil attach packages/MAA-${{ needs.create-tag.outputs.release_tag }}-macos-universal.dmg cp /Volumes/MAA/MAA.app/Contents/Frameworks/*.dylib ${{ runner.temp }}/dylib zip -X9 packages/MAA-${{ needs.create-tag.outputs.release_tag }}-macos-runtime-universal.zip ${{ runner.temp }}/dylib/* - name: Upload to MaaRelease diff --git a/CHANGELOG.md b/CHANGELOG.md index e593a4ebc2..dd9caa3718 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,21 +1,48 @@ -## v4.20.0-rc.1 +## v4.20.0 + +### 新增 + +- 适配萨米肉鸽 (#5393) @DavidWang19 @SherkeyXD @LingXii @qxdqhr @HauKuen @yyjdelete @Ziqing19 @mathlover @yc080713 @mikucy @hguandl @vic233333 @salenth +- 定时任务可切换配置 (#5323) @ABA2396 @MistEO ### 改进 -- 修改萨米第一层提丰放置顺序以及站位 (#5567) @salenth +- 自动关闭“检测到有未下载的语音资源”窗口 (#5396) @Hydrogina +- 肉鸽debug日志写入图片前限制文件夹内图片数量 (#5325) @BladeHiker +- 优化HttpClient构建过程 (#5357) @ChingCdesu @HisAtri +- 自动检测更新的随机延迟改为一小时 @ABA2396 +- 更改更新弹窗格式 @ABA2396 - 优化水月部分地图部署逻辑 (#5576) @Yumi0606 - 全局配置不存在时会优先使用当前配置的字段,并赋值给全局配置 @ABA2396 - 调整窗口标题 @TiSpH ### 修复 +- 添加定时器缺少的判断 @ABA2396 +- 点击技能启动按钮时,验证按钮已消失,防止卡死在子弹时间中 (#5374) @chaserhkj +- 添加山的干员名字纠错规则 (#5372) @chaserhkj +- add CloseEvent task for Phantom Roguelike (#5358) @chaserhkj +- 强制启动定时任务未在运行时不关闭方舟 #5346 @ABA2396 +- 尝试修复运行时下载完成更新包后卡死 (#5327) @ABA2396 +- 强制定时启动无法保存; 配置名称过长显示问题 (#5532) @TiSpH +- 定时功能设置无法更新 @ABA2396 - 0 时的定时任务无法提前重启 (#5571) @TiSpH - 修复定时器配置从未选择时的逻辑错误 @ABA2396 -- 定时器保存问题 @ABA2396 - 修复输入非法时间时,输入框会重置但却存储错误数据的问题 @ABA2396 ### 其他 +- 优化了互斥规划问题的 dlx 算法实现在一定情况下的速度 @lhhxxxxx +- 更新裁图小工具 @MistEO +- 在文档的导航栏里加上前往官网的链接 @AnnAngela +- 修改关卡重连描述 @ABA2396 +- 代码清理 @ABA2396 +- fix typo in AsstCaller.h (#5435) @eltociear +- 添加一键编译macOS Core的脚本 @hguandl +- 在用户有代理的情况下,提升国外镜像的优先级 (s3限速上行50Mbps) @ChingCdesu +- AsstConf.h 对 clang-tidy 不友好的问题 (#5510) @hxdnshx +- 规范化step name (#5517) @SherkeyXD +- 删除export后面多余的空格 (#5515) @SherkeyXD - 修复对ranges支持检测的判断条件 (#5548) @hguandl - 修复初次使用多出来一个Global配置的问题 @MistEO - added new ignored Sami IS4 images @Constrat @@ -29,7 +56,12 @@ #### YostarEN -- added missing strings form missing_translate-YostarEN @Constrat +- raised threshold for StageAnnihilation.png (#5234) @Constrat +- Added correct StageAnnihilation.png after update @Constrat +- Visiting only 1 Friend Clue Exchange in YostarEN (#5424) @Constrat +- Missing .png for YostarEN and modified tools/ignore_list_of_templates.txt (lack of Chinese characters) (#5458) @Constrat +- OperBox not retrieving Oper Class bar in EN @Constrat +- added missing strings form missing_translate-YostarEN @Constrat - Workaround for EN infrastracture oper regex (#5549) @Constrat #### YostarKR @@ -39,4 +71,11 @@ #### txwy -- 修复干员名识别 (#5580) @Arcelibs +- 繁中服干员名识别错误 @Arcelibs + +### For dev + +- Python api 更新 同时请求多个url下载 (#5390) @HisAtri +- 使用字典推导式 (#5381) @HisAtri +- 修复Python更新器中重试次数的问题 (#5402) @Q-ModifiedJ +- 适配pythonAPI到最新版 (#5347) @DoyoDia diff --git a/maadeps-download.py b/maadeps-download.py index 3694ebcbda..7810b2ac98 100644 --- a/maadeps-download.py +++ b/maadeps-download.py @@ -8,6 +8,7 @@ import time from pathlib import Path import shutil +TARGET_TAG = "2023-04-24-3" basedir = Path(__file__).parent def detect_host_triplet(): @@ -98,7 +99,7 @@ def main(): target_triplet = sys.argv[1] else: target_triplet = detect_host_triplet() - print("about to download prebuilt dependency libraries for", target_triplet) + print(f"about to download prebuilt dependency libraries for {target_triplet} of {TARGET_TAG}") if len(sys.argv) == 1: print(f"to specify another triplet, run `{sys.argv[0]} `") print(f"e.g. `{sys.argv[0]} arm64-windows`") @@ -119,6 +120,8 @@ def main(): devel_asset = None runtime_asset = None for release in releases: + if release["tag_name"] != TARGET_TAG: + continue for asset in release["assets"]: target, component = split_asset_name(asset["name"]) if target == target_triplet: diff --git a/resource/global/YoStarEN/resource/tasks.json b/resource/global/YoStarEN/resource/tasks.json index c0ccb5c87d..5b301646ea 100644 --- a/resource/global/YoStarEN/resource/tasks.json +++ b/resource/global/YoStarEN/resource/tasks.json @@ -2778,6 +2778,22 @@ 0 ] }, + "OperBoxRoleTab": { + "roi": [ + 1169, + 0, + 111, + 119 + ] + }, + "OperBoxRoleTabSelect": { + "roi": [ + 1159, + 0, + 121, + 122 + ] + }, "PRTS2": { "text": [ "Takeover" diff --git a/resource/global/YoStarEN/resource/template/OperBoxRoleTab.png b/resource/global/YoStarEN/resource/template/OperBoxRoleTab.png index 2aa1cb0406..034b93fa31 100644 Binary files a/resource/global/YoStarEN/resource/template/OperBoxRoleTab.png and b/resource/global/YoStarEN/resource/template/OperBoxRoleTab.png differ diff --git a/resource/global/YoStarEN/resource/template/OperBoxRoleTabSelect.png b/resource/global/YoStarEN/resource/template/OperBoxRoleTabSelect.png index 95601c483d..0ad11c4793 100644 Binary files a/resource/global/YoStarEN/resource/template/OperBoxRoleTabSelect.png and b/resource/global/YoStarEN/resource/template/OperBoxRoleTabSelect.png differ diff --git a/src/MaaCore/Utils/Algorithm.hpp b/src/MaaCore/Utils/Algorithm.hpp index a395350134..170d8ff2e0 100644 --- a/src/MaaCore/Utils/Algorithm.hpp +++ b/src/MaaCore/Utils/Algorithm.hpp @@ -221,8 +221,10 @@ namespace asst::algorithm for (auto& i : group_list) { group_name_mapping[i.first] = group_id_mapping.size(); group_id_mapping.emplace_back(i.first); + bool is_empty = true; for (auto& j : i.second) { if (char_set.contains(j)) { + is_empty = false; node_id_mapping.emplace_back(i.first, j); if (!char_name_mapping.contains(j)) { char_name_mapping[j] = char_id_mapping.size(); @@ -230,6 +232,9 @@ namespace asst::algorithm } } } + if (is_empty) { + return std::nullopt; + } } // 建 01 矩阵