From 995af0fcda592d5ab7dd5ea3cfd871e2f772f94c Mon Sep 17 00:00:00 2001 From: Constrat <56174894+Constrat@users.noreply.github.com> Date: Sun, 20 Apr 2025 03:42:41 +0200 Subject: [PATCH] ci: bump oxi, clang, prettier, markdownlint (#12388) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ci: bump oxi, clang, prettier, markdownlint * chore: Auto update by pre-commit hooks [skip changelog] * chore: 移除不再使用clang-format的JSON文件 * chore: clang-format disable * chore: clang版本更新 * chore: Auto update by pre-commit hooks [skip changelog] * chore: ver注释 * docs: Modify the clang-format version restriction in the documentation to match the current changes @zzyyyl --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: status102 <102887808+status102@users.noreply.github.com> --- .clang-format | 9 ++-- .pre-commit-config.yaml | 8 ++-- docs/en-us/develop/development.md | 2 +- .../protocol/integrated-strategy-schema.md | 2 + docs/ja-jp/develop/development.md | 2 +- .../protocol/integrated-strategy-schema.md | 2 + docs/ko-kr/develop/development.md | 2 +- .../protocol/integrated-strategy-schema.md | 2 + docs/zh-cn/develop/development.md | 2 +- docs/zh-tw/develop/development.md | 2 +- resource/template/CloseSendClue.png | Bin 1462 -> 1461 bytes resource/template/InfrastFilterMenu.png | Bin 1164 -> 1148 bytes src/MaaCore/Common/AsstBattleDef.h | 3 +- .../Config/Miscellaneous/CopilotConfig.cpp | 3 +- .../Roguelike/RoguelikeCopilotConfig.cpp | 3 +- .../CombatRecordRecognitionTask.cpp | 11 ++--- .../Task/Fight/MedicineCounterTaskPlugin.cpp | 9 ++-- .../Task/Miscellaneous/AutoRecruitTask.cpp | 33 ++++++++------- .../Task/Miscellaneous/BattleProcessTask.cpp | 4 +- .../Miscellaneous/DepotRecognitionTask.cpp | 11 ++--- .../Miscellaneous/OperBoxRecognitionTask.cpp | 40 +++++++++--------- tools/ClangFormatter/clang-formatter.py | 2 +- 22 files changed, 85 insertions(+), 67 deletions(-) diff --git a/.clang-format b/.clang-format index 872d44af3e..3e410ad160 100644 --- a/.clang-format +++ b/.clang-format @@ -1,5 +1,5 @@ # https://clang.llvm.org/docs/ClangFormatStyleOptions.html -# for clang-format 17.0.1 +# for clang-format 20.0.0 Language: Cpp BasedOnStyle: "WebKit" # AccessModifierOffset: 2 @@ -26,9 +26,9 @@ AllowShortIfStatementsOnASingleLine: Never AllowShortLambdasOnASingleLine: Inline AllowShortLoopsOnASingleLine: false AlwaysBreakAfterDefinitionReturnType: None -AlwaysBreakAfterReturnType: None +BreakAfterReturnType: Automatic AlwaysBreakBeforeMultilineStrings: true -AlwaysBreakTemplateDeclarations: Yes +BreakTemplateDeclarations: Yes # AttributeMacros: # - __pragma # - _Pragma @@ -145,7 +145,7 @@ PointerAlignment: Left # - constexpr # - type ReferenceAlignment: Left -ReflowComments: true +ReflowComments: Always RemoveBracesLLVM: false RemoveParentheses: Leave RemoveSemicolon: false @@ -188,3 +188,4 @@ TabWidth: 4 UseTab: Never # VerilogBreakBetweenInstancePorts: # WhitespaceSensitiveMacros: +RemoveEmptyLinesInUnwrappedLines: true diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index ea8622b188..f8b0928cdc 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -4,18 +4,18 @@ ci: autofix_prs: true repos: - repo: https://github.com/shssoichiro/oxipng - rev: v9.1.2 + rev: v9.1.4 hooks: - id: oxipng args: ["-q", "-o", "2", "-s", "--ng"] - repo: https://github.com/pre-commit/mirrors-clang-format - rev: v17.0.1 + rev: v20.1.0 hooks: - id: clang-format files: ^src/MaaCore/.* args: ["--assume-filename", ".clang-format"] - repo: https://github.com/rbubley/mirrors-prettier - rev: v3.5.1 + rev: v3.5.3 hooks: - id: prettier files: ^((\.github/ISSUE_TEMPLATE|docs|resource|src|tools|website)/.*|\.pre-commit-config\.yaml|package-definition\.json) @@ -23,7 +23,7 @@ repos: - yaml - json - repo: https://github.com/DavidAnson/markdownlint-cli2 - rev: v0.13.0 + rev: v0.17.2 hooks: - id: markdownlint-cli2 files: ^docs/.*|^README\.md$ diff --git a/docs/en-us/develop/development.md b/docs/en-us/develop/development.md index 3baf25d47d..b7bdb4c673 100644 --- a/docs/en-us/develop/development.md +++ b/docs/en-us/develop/development.md @@ -124,7 +124,7 @@ The formatting tool will automatically run every time you submit to ensure that ### Enable clang-format in Visual Studio -1. Install clang-format version 17 or higher. +1. Install clang-format version 20.1.0 or higher. ```bash python -m pip install clang-format diff --git a/docs/en-us/protocol/integrated-strategy-schema.md b/docs/en-us/protocol/integrated-strategy-schema.md index 735d8a6d98..3ebb87cfa2 100644 --- a/docs/en-us/protocol/integrated-strategy-schema.md +++ b/docs/en-us/protocol/integrated-strategy-schema.md @@ -87,6 +87,7 @@ By default, only E1 Level 55 operators will be recruited 1. Introduction to existing groups Take Phantom's I.S. as an example: operators are mainly divided in + | Group | Considerations | Class | Operators | | :--- | :--- | :--- | :--- | | ***Ground block*** | 站场和清杂 | 重装, 近卫 | 奶盾, 基石, 羽毛笔, 山, M3, 令和稀音的召唤物, 斑点, 重装预备干员 | @@ -101,6 +102,7 @@ By default, only E1 Level 55 operators will be recruited 2. Groups requiring special handling In addition to those general groups, sometimes we need more custom tweaks for some operators or types such as + | Group | Operators | Features | | :--- | :--- | :--- | | Thorns | Thorns, Horn | Long-range melee, many maps have good spots | diff --git a/docs/ja-jp/develop/development.md b/docs/ja-jp/develop/development.md index 52e5fb434f..993960f358 100644 --- a/docs/ja-jp/develop/development.md +++ b/docs/ja-jp/develop/development.md @@ -101,7 +101,7 @@ Visual Studio 起動後、Git 操作は「Git 変更」画面からコマンド ## Visual Studioでclang-formatを有効にする -1. clang-format バージョン17以上をインストールします。 +1. clang-format バージョン20.1.0以上をインストールします。 ```bash python -m pip install clang-format diff --git a/docs/ja-jp/protocol/integrated-strategy-schema.md b/docs/ja-jp/protocol/integrated-strategy-schema.md index fba803836c..8cb7d8a969 100644 --- a/docs/ja-jp/protocol/integrated-strategy-schema.md +++ b/docs/ja-jp/protocol/integrated-strategy-schema.md @@ -86,6 +86,7 @@ JSONファイルはコメントをサポートしていません。テキスト 1. 既存のグループの紹介 ファントムテーマを例に取ると:主にオペレーターを以下のように分類しています + | グループ | 主な考慮事項 | 主に職種を含む | オペレーターの例 | | :--- | :--- | :--- | :--- | | **_地面阻挡_** | 場に立つことと雑魚を清掃 | 重装、前衛 | 庇護衛士、基石、ラ・プルマ、マウンテン、M3、リィンとシーンの召喚ユニット、スポット、重装予備隊員 | @@ -100,6 +101,7 @@ JSONファイルはコメントをサポートしていません。テキスト 2. 特別な操作が必要なグループ 上記のような一般的なグループ以外に、時折、特定のオペレーターやオペレーターの種類に対して細かいカスタマイズが必要な場合があります。例えば + | グループ | 含まれるオペレーター | 主な特徴 | | :--- | :--- | :--- | | 棘刺 | ソーンズ、ホルン | 地上遠隔攻撃、特定の位置に非常に適したマップがあります | diff --git a/docs/ko-kr/develop/development.md b/docs/ko-kr/develop/development.md index 7bdd60947a..d2432f8f91 100644 --- a/docs/ko-kr/develop/development.md +++ b/docs/ko-kr/develop/development.md @@ -128,7 +128,7 @@ MAA는 리포지토리의 코드 및 리소스 파일들을 아름답고 일관 ## Visual Studio에서 clang-format 사용 설정 -1. clang-format 17 또는 그 이상 버전을 설치합니다. +1. clang-format 20.1.0 또는 그 이상 버전을 설치합니다. ```bash python -m pip install clang-format diff --git a/docs/ko-kr/protocol/integrated-strategy-schema.md b/docs/ko-kr/protocol/integrated-strategy-schema.md index 086e4a145c..415f59d6fa 100644 --- a/docs/ko-kr/protocol/integrated-strategy-schema.md +++ b/docs/ko-kr/protocol/integrated-strategy-schema.md @@ -86,6 +86,7 @@ icon: ri:game-fill 1. 기존 그룹 소개 팬텀의 로그라이크를 예로 들어 설명: 오퍼레이터는 주로 다음과 같이 분류됩니다. + | Group | Considerations | Class | Operators | | :------------------------ | :------------------- | :--------------- | :----------------------------------------------------------------- | | ***Ground block*** | 전장과 잡몹 정리 | 디펜더, 가드 | 라 플루마, 마운틴, 몬3터, 링과 씬의 소환물, 스팟, 디펜더 예비 인원 | @@ -100,6 +101,7 @@ icon: ri:game-fill 2. 특별 취급이 필요한 그룹 위의 일반적인 그룹 외에도 일부 오퍼레이터나 유형에 대한 맞춤형 조정이 필요할 수 있습니다. + | Group | Operators | Features | | :---------- | :-------------------- | :--------------------------------------------------------------------------------------------------- | | Thorns | 쏜즈, 혼 | 장거리 근접, 많은 맵에서 좋음 | diff --git a/docs/zh-cn/develop/development.md b/docs/zh-cn/develop/development.md index 4be408ce38..2821c36e09 100644 --- a/docs/zh-cn/develop/development.md +++ b/docs/zh-cn/develop/development.md @@ -129,7 +129,7 @@ MAA 使用一系列的格式化工具来保证仓库中的代码和资源文件 ### 在 Visual Studio 中启用 clang-format -1. 安装 clang-format 17 或更高版本 +1. 安装 clang-format 20.1.0 或更高版本 ```bash python -m pip install clang-format diff --git a/docs/zh-tw/develop/development.md b/docs/zh-tw/develop/development.md index dc90349bd5..7cf18a17bf 100644 --- a/docs/zh-tw/develop/development.md +++ b/docs/zh-tw/develop/development.md @@ -125,7 +125,7 @@ MAA 使用一系列的格式化工具來保證倉庫中的代碼和資源文件 ### 在 Visual Studio 中啟用 clang-format -1. 安裝 clang-format 17 或更高版本 +1. 安裝 clang-format 20.1.0 或更高版本 ```bash python -m pip install clang-format diff --git a/resource/template/CloseSendClue.png b/resource/template/CloseSendClue.png index e9cb010fb5029755e499cbc5a7a0ab36cb883ddc..eff982d0aee4c040bafacab518e705b52506daf3 100644 GIT binary patch delta 1438 zcmV;P1!4NO3$+W7DS!X}|Nj2|{r&y?{QUd-`}+F&`T6+9<3>ged`<>lqo)z#G0)X~w=(9qD%&d$xv&CJZq z%gf8k%F4*d$i~LT#l^+M#KgnH!@|PC!NI}6z`(!1zrMb{y??#Eyu7@-ySuu&y1BWz zxVX5tx3{*owzajjw6wIdv$L|YvazwTuCA`EtgNf6tE#H1si~=_r>CZ-rlqB&q@<*y zqobmtqM)FlpP!$dot>JRnwgoIn3$NCmzR=~l8cLrii(PWfPjC0e|~;`e0+R+dwY6& zdwP0$czAescYk+wc6N1jb#iiYadB~PZ*OjHZf$LCY;0_6Yinw1YH4X{XlQ6>XJ=() zWn^SzV`F1tVq#%oVPIfjUteEdUS3^YU0hsTTU%RNT3T6ISy)(DS65e7R#sJ2Ra8_| zQ&Uq?Qc_V-QBY7&Pft)!Pft!xPfkuwO-)WsO-)QpOn*yDOiN2kN=i#gN=ivdNk~XZ zNJvOWM@UCUM@B|QMMXwMMMXqJMMOkILqkJCLP9}7K|nx3KtMo0KR-S`K0Q4>JUl!* zJ3Bf$IypHxI5;>rH#asmHZ?UhG&D3bGcz(WGBGhRFfcGLFE1`GE-fuBEG#T5D=R80 zDk&)`D1Rs@CnqN+CMG2%B_t#yBO@asA|fFnAs`?iA0Hq5?9?>?00UP^L_t(|+FjGn zZ`x8%QfH3)|iIoq3pfw;bR*nSXgMpTi{c9m-D$k9;wJ!%*`)Jj~4W zQ(R)PVPorBMMU7!oZ{k-g}J>(Bn%O||HpS_c|EZ!Og%bqL!~zXGCX(S7Jo3_WblCPcDAmMc+hs3QI8>zmgPc z5`Tfr{n8})9-*rio41x}HaX%;i z1n~TB#XNST^L(~Df`wKP2CNC4YU$6U;j&+<#N^4C==p^+`P9jdnxzRo{p;!Sxa4zAXSYw5c9q$1^^kO%x8%qEMOl~O+L4VvL z!S?DNJc^1-MGF@OD<_Bp3v0+Uu)Vw!0*>SPJ+Z@VHS0hr);ePCxT)bmOj=u>0;oLz zr9fKo;c8I{O?bGv(*W8tmrg3cKD)R4k25ZcH3wvf$UaGvBsg;4Kx$jeXGkd` zr3s26Rohs4?8wnGL#;SYwB_%#$$wqv#VF?Z)|xjKE1slM?bdMj*;8Be} zfMwz5a@~`&?N$KdC+of(czf*Aex($<&~G=IB-JDooSH}_`~$CFuYgG9!MA69>pC(c z9U|~Z=x8hU6sW%Y|6m6(v6fps0xi39TM6Q`XRKT=&vlO>3*M9?2@#820 z)X>CfxKvlZ|Br9~RBCp&M-hR8zzx=f*6jNkkDe`0ak=dObSBrQ!0g{92()Ha2aVGc z<8K8(wW`C0Z{29Wgsfp01hGT}goz>3*a8Te6d%iuB@wY$tpSi&030CH=al&y5dGmm sXgYf(5~~6s93m?KQ(`>14;S>m1cDu;H&S;OJOBUy07*qoM6N<$f`ps3!~g&Q delta 1439 zcmV;Q1z`HM3$_c8DSsayA0QwgAt50mA|fLrBP1jwB_$;$CMG8*CnzW=DJdx`Dk>{0 zD=aK5EiElBE-o)GFEB7LF)=YRGBPtWGc+_bH8nLhHa0gmH#j&rIXO8xIyyT$J3Kr* zJv}`>K0ZG`KR`f0KtMr3K|w-7LPJACL_|bHL`6kKMMXtMMt?>|M@L6TM@UFWNJvOY zNl8gcN=iyfOG`^jOG`{lOiWEpO-)TsPEJlvPESuyPft%!P*6}&QBhJ-Qd3h?R8&+| zRaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?WjVPRroVq;@tWMpJzWo2h) zXJ}|>X=!O{YJX~LYin$5Y;A3AZfUu_s;a81tE;T6tgf!Ev9YnTva++YvwyU-w6(Rhwzjsnx3{>sxVgEx zy1Kf%ySu!+yuH1>zP`S{zrVo1z`?=6!otGC!^6bH#KpzM#>U3T$jHjd%FD~k%*@Qq z&CSlv&d|`%(b3V=)YR40)#c^o=;-L`>gwz3>+J08?d|RE?(XmJ@9^;O@$vEU^78ZZ z^Yrxe_J8*F_xJbs`1twx`TF|$`}_O+{QUj>{r>*`|NsB7P_!rj00US_L_t(IPhHes zZ&YOv2Jq*ZdEawR%eLL!RjsmjGn*%_jr$ zbp{FI@~!0p*!%f=O`~vng0=^*2>{~qjWap0cjxw==H34wnJi7Ae7W|Dbg9#Pd6+N0 zLVqPlfOM>0U(Ve+_kQTBXici!QE_U5c7}A4;N|N}InaIZ<1?!0ti-&mLTiGa4nYE| z*OqgjyMA{!381s8%HBv@0J3J|$sr+Et}f?5w|)PaQN*<&SyUcaRx=`RF1+aB(%K~G z&g0}HUF$K^7<~V@Xb2>0HeP(Zb~*>T?SH%5A`~$XLIzd09XmP);KYY5J(&Z&jrDGT zph}=NB!;MD8Xm>B1juW(4CrmNJ8nY2;Q@q*2w=~}KLHp4^d8=Q;hd`6%+0he0aOyi zpq~~20R7GTPpN@`nwBQvL{(DwiC0C1mf#$3e#ADf%&3_=u9A>r>{Xea=e>3@7! z0`z35N=at`h=@xT-n+060g%jQio;H2<5Z1PWjakViFwqwR~9nha99A)>8Vi%R;83u z(kX$_MdLf?7c$^rb1Sb2n9XIwz8zOpl}rl<46g5AIGF(lj~?xnS{ESB)WN72KwY)`Wp}X zLI~mX@(^=I%(@<#A{VBx~0H8fdt9btwnB?SBV76;RyG z+%0tm)AJN$^UcS4Wo@Ydy6yEYR0L*#Tjf63If^F*$mgfR;$i{xe!2HDiW%S_VP>gF ze{%d$h^W;<%z)m;gB?bzpauuU-GO-Yhh}F1NAP6(>-V1{7^SKJI0b->5v$Fl9{}X? t*{Ho;1`TGM{4WZG@G2dr))*|X^AB$Dm6n{reX#%l002ovPDHLkV1g`;$us}} diff --git a/resource/template/InfrastFilterMenu.png b/resource/template/InfrastFilterMenu.png index a7dcbbb8883e3b71af5b5b062437d8971290c713..894a843f0654372ad7b1b021128a41cc44c392da 100644 GIT binary patch delta 693 zcmV;m0!sai3H%7K)B%5!Nkl6p|5DPXtWU(QBdl!Q4#dQ z5AUhk1D;S6u|*^xh|%n*&7McW7D=`jI+N(W@OL*b7Y~aC&oFj;V21b|B7uJKh9T;Q zIMQnE-PmGkKW5Ve9dN4rZ%*pDv zlZdtzyolF2VoVBsAp?p1M=POE3V9O9RhjfI0|0|j-k?GfM*`<5m}{~l1QMC|BHFu6 zFk{T8w*s+k@Yw>|TQYc;{vrKXvvz>#IM~EiT!vm6+*aPE&t|*`;d>3zsjLa-op3c%`#& z{i;(0yqLNz)tJ9pxho-Q@k+Y}Ux*+aQ>GA}+}xzvy11kOoLXwv=-q!t6mLwIVDJb! ze!klm96PnEM(^JG@GrcU8%+v^pQPbK=iAl!-Bp@(U!k|WmYIlQtq(-IagKtI4{i$@ zXS;2-_3nSIW<;rXJPH2aM}cnuWb1U>JL%SjL^4N$(FiE|o^Sb0aysx#xpU|K3)}gu zdjNXNt3yOAFXC;~COX$(v>^i^Tcdm6+w3ypC3fyBFec&+00H{A(){v#B@+dIt8)#6 zAwZDbdHOyRNm`Zinmg@8c?nOM^OgN?x!m!r+`BEOf4i5$OSNjqLzw7KF&&Dz6@ocu b`AGH^pVHni6df($00000NkvXXu0mjfWX?{Y delta 709 zcmV;$0y_Qt2#g7^)B%5^Nklu1-vIVI)5rsiF#l}tl zf6%$COLSV4irBFq0>UsZH|u)u`P!romtJM|oCNOk_(wA{#AS#C;%&r&Av*7Qd4eGt z$xl28(NGF*G?~+A9zi)g38MZD`D z7#D@9kb%UFTX~q0LQVo@EiQUquw+nHU2>8*2{NbVYLC}KAd$I?XwRR587p4?E)aj4 zome1R9^8ocwTv?o3nHH6B-q}CEMvvA z%i5T^5ij6umYax{=hXB%GRq){a{|k%Dl;N@Al|bsn6aXICZk4@acRO4(GHKP(G1w- zDX$6M&wd3F!AVdQ{Hwd4F@DTB!QQ@IJCJdC<`QdV#utD0w%M{rs)Rzt-u*sTwjPK} z6E4>7RBd*?%DY`5rjJZJK7RG5h2BHovuQuE^bZ_xZZ8}wT( zaEHloR3LvM2q(ci?^5Gk&J<$?eU>J}(VR%;Bq&SgKNMpIea=jVqdCzW5iQTDxw;it zD8@Fp36qD9=ZIJ?;vKiajDHxE$1)a*5rdnP;iw>iBcdJt2F4o<${8R)FAjRIjt&Zu zz)4UPtTGUW073EKr#}jj!i{)Foq;%Gz;sF)bJ0Cq!VwMTG@8?7=AyYIM>LqzXfCx| rp$Z|-d6QTV@qdUFAy}4KRm%PX(5xWA%J}BO00000NkvXXu0mjf`Bzl5 diff --git a/src/MaaCore/Common/AsstBattleDef.h b/src/MaaCore/Common/AsstBattleDef.h index 93fe98146f..58fe3ba8d6 100644 --- a/src/MaaCore/Common/AsstBattleDef.h +++ b/src/MaaCore/Common/AsstBattleDef.h @@ -56,6 +56,7 @@ enum class Role inline static Role get_role_type(const std::string& role_name) { + // clang-format off static const std::unordered_map NameToRole = { { "WARRIOR", Role::Warrior }, { "Warrior", Role::Warrior }, { "warrior", Role::Warrior }, { "GUARD", Role::Warrior }, { "Guard", Role::Warrior }, { "guard", Role::Warrior }, @@ -89,7 +90,7 @@ inline static Role get_role_type(const std::string& role_name) { "DRONE", Role::Drone }, { "Drone", Role::Drone }, { "drone", Role::Drone }, { "SUMMON", Role::Drone }, { "Summon", Role::Drone }, { "summon", Role::Drone }, { "无人机", Role::Drone }, { "召唤物", Role::Drone }, - }; + }; // clang-format on if (auto iter = NameToRole.find(role_name); iter != NameToRole.end()) { return iter->second; } diff --git a/src/MaaCore/Config/Miscellaneous/CopilotConfig.cpp b/src/MaaCore/Config/Miscellaneous/CopilotConfig.cpp index ac8a671ec1..82c969d977 100644 --- a/src/MaaCore/Config/Miscellaneous/CopilotConfig.cpp +++ b/src/MaaCore/Config/Miscellaneous/CopilotConfig.cpp @@ -252,6 +252,7 @@ asst::battle::RoleCounts asst::CopilotConfig::parse_role_counts(const json::valu asst::battle::DeployDirection asst::CopilotConfig::string_to_direction(const std::string& str) { + // clang-format off static const std::unordered_map DeployDirectionMapping = { { "Right", DeployDirection::Right }, { "RIGHT", DeployDirection::Right }, { "right", DeployDirection::Right }, { "右", DeployDirection::Right }, @@ -267,7 +268,7 @@ asst::battle::DeployDirection asst::CopilotConfig::string_to_direction(const std { "None", DeployDirection::None }, { "NONE", DeployDirection::None }, { "none", DeployDirection::None }, { "无", DeployDirection::None }, - }; + }; // clang-format on if (auto iter = DeployDirectionMapping.find(str); iter != DeployDirectionMapping.end()) { return iter->second; diff --git a/src/MaaCore/Config/Roguelike/RoguelikeCopilotConfig.cpp b/src/MaaCore/Config/Roguelike/RoguelikeCopilotConfig.cpp index c0730c1d63..1c4552a6fc 100644 --- a/src/MaaCore/Config/Roguelike/RoguelikeCopilotConfig.cpp +++ b/src/MaaCore/Config/Roguelike/RoguelikeCopilotConfig.cpp @@ -41,6 +41,7 @@ bool asst::RoguelikeCopilotConfig::parse(const json::value& json) std::string stage_name = json.at("stage_name").as_string(); CombatData data; data.stage_name = stage_name; + // clang-format off static const std::unordered_map DeployDirectionMapping = { { "Right", DeployDirection::Right }, { "RIGHT", DeployDirection::Right }, { "right", DeployDirection::Right }, { "右", DeployDirection::Right }, @@ -56,7 +57,7 @@ bool asst::RoguelikeCopilotConfig::parse(const json::value& json) { "None", DeployDirection::None }, { "NONE", DeployDirection::None }, { "none", DeployDirection::None }, { "无", DeployDirection::None }, - }; + }; // clang-format on if (auto opt = json.find("replacement_home")) { for (auto& point : opt.value()) { ReplacementHome home; diff --git a/src/MaaCore/Task/Experiment/CombatRecordRecognitionTask.cpp b/src/MaaCore/Task/Experiment/CombatRecordRecognitionTask.cpp index 0c4970478c..44557f2ae7 100644 --- a/src/MaaCore/Task/Experiment/CombatRecordRecognitionTask.cpp +++ b/src/MaaCore/Task/Experiment/CombatRecordRecognitionTask.cpp @@ -356,11 +356,12 @@ bool asst::CombatRecordRecognitionTask::slice_video() cv::resize(frame, frame, cv::Size(), m_scale, m_scale, cv::INTER_AREA); BattlefieldMatcher analyzer(frame); - analyzer.set_object_of_interest({ - .deployment = true, - .kills = true, - .speed_button = true, - }); + analyzer.set_object_of_interest( + { + .deployment = true, + .kills = true, + .speed_button = true, + }); analyzer.set_total_kills_prompt(total_kills); auto result_opt = analyzer.analyze(); diff --git a/src/MaaCore/Task/Fight/MedicineCounterTaskPlugin.cpp b/src/MaaCore/Task/Fight/MedicineCounterTaskPlugin.cpp index 4dbc5980d7..135639190c 100644 --- a/src/MaaCore/Task/Fight/MedicineCounterTaskPlugin.cpp +++ b/src/MaaCore/Task/Fight/MedicineCounterTaskPlugin.cpp @@ -183,10 +183,11 @@ std::optional return std::nullopt; } use += using_count; - medicines.emplace_back(Medicine { .use = using_count, - .inventry = inventory_count, - .reduce_button_position = result.rect, - .is_expiring = is_expiring }); + medicines.emplace_back( + Medicine { .use = using_count, + .inventry = inventory_count, + .reduce_button_position = result.rect, + .is_expiring = is_expiring }); LogTrace << __FUNCTION__ << "medicine using count:" << using_count << "," << "inventory count:" << inventory_count << "," << "is expiring:" << static_cast(is_expiring); diff --git a/src/MaaCore/Task/Miscellaneous/AutoRecruitTask.cpp b/src/MaaCore/Task/Miscellaneous/AutoRecruitTask.cpp index aa8b455a07..29a078e274 100644 --- a/src/MaaCore/Task/Miscellaneous/AutoRecruitTask.cpp +++ b/src/MaaCore/Task/Miscellaneous/AutoRecruitTask.cpp @@ -566,17 +566,19 @@ asst::AutoRecruitTask::calc_task_result_type asst::AutoRecruitTask::recruit_calc for (const auto& comb : result_vec) { json::array opers_json; for (const Recruitment& oper_info : comb.opers | views::reverse) { // print reversely - opers_json.emplace_back(json::object { - { "name", oper_info.name }, - { "id", oper_info.id }, - { "level", oper_info.level }, - }); + opers_json.emplace_back( + json::object { + { "name", oper_info.name }, + { "id", oper_info.id }, + { "level", oper_info.level }, + }); } - results_json["result"].as_array().emplace_back(json::object { - { "tags", json::array(get_tag_names(comb.tags)) }, - { "opers", opers_json }, - { "level", comb.min_level }, - }); + results_json["result"].as_array().emplace_back( + json::object { + { "tags", json::array(get_tag_names(comb.tags)) }, + { "opers", opers_json }, + { "level", comb.min_level }, + }); } info["details"] |= results_json; @@ -968,11 +970,12 @@ void asst::AutoRecruitTask::upload_to_penguin(Rng&& tags) body["stageId"] = "recruit"; auto& all_drops = body["drops"]; for (const auto& tag : tags) { - all_drops.emplace(json::object { - { "dropType", "NORMAL_DROP" }, - { "itemId", tag }, - { "quantity", 1 }, - }); + all_drops.emplace( + json::object { + { "dropType", "NORMAL_DROP" }, + { "itemId", tag }, + { "quantity", 1 }, + }); } body["source"] = UploadDataSource; body["version"] = Version; diff --git a/src/MaaCore/Task/Miscellaneous/BattleProcessTask.cpp b/src/MaaCore/Task/Miscellaneous/BattleProcessTask.cpp index c2b46dd1f2..e7fcc9e4df 100644 --- a/src/MaaCore/Task/Miscellaneous/BattleProcessTask.cpp +++ b/src/MaaCore/Task/Miscellaneous/BattleProcessTask.cpp @@ -87,8 +87,8 @@ void asst::BattleProcessTask::set_wait_until_end(bool wait_until_end) m_need_to_wait_until_end = wait_until_end; } -void asst::BattleProcessTask::set_formation_task_ptr( - std::shared_ptr> value) +void + asst::BattleProcessTask::set_formation_task_ptr(std::shared_ptr> value) { m_formation_ptr = value; } diff --git a/src/MaaCore/Task/Miscellaneous/DepotRecognitionTask.cpp b/src/MaaCore/Task/Miscellaneous/DepotRecognitionTask.cpp index de0f6444a2..7f132202ea 100644 --- a/src/MaaCore/Task/Miscellaneous/DepotRecognitionTask.cpp +++ b/src/MaaCore/Task/Miscellaneous/DepotRecognitionTask.cpp @@ -69,11 +69,12 @@ void asst::DepotRecognitionTask::callback_analyze_result(bool done) auto& arkplanner_data_items = arkplanner_obj["items"]; for (const auto& [item_id, item_info] : m_all_items) { - arkplanner_data_items.emplace(json::object { - { "id", item_id }, - { "have", item_info.quantity }, - { "name", item_info.item_name }, - }); + arkplanner_data_items.emplace( + json::object { + { "id", item_id }, + { "have", item_info.quantity }, + { "name", item_info.item_name }, + }); } arkplanner["data"] = arkplanner_obj.to_string(); } diff --git a/src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.cpp b/src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.cpp index 4b8033c073..6a6e4126c5 100644 --- a/src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.cpp +++ b/src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.cpp @@ -73,27 +73,29 @@ void asst::OperBoxRecognitionTask::callback_analyze_result(bool done) for (const auto& name : all_oper_names) { bool own = m_own_opers.contains(name); - all_opers.emplace_back(json::object { - { "id", BattleData.get_id(name) }, - { "name", name }, - { "name_en", BattleData.get_en(name) }, - { "name_jp", BattleData.get_jp(name) }, - { "name_kr", BattleData.get_kr(name) }, - { "name_tw", BattleData.get_tw(name) }, - { "rarity", BattleData.get_rarity(name) }, - { "own", own }, - }); + all_opers.emplace_back( + json::object { + { "id", BattleData.get_id(name) }, + { "name", name }, + { "name_en", BattleData.get_en(name) }, + { "name_jp", BattleData.get_jp(name) }, + { "name_kr", BattleData.get_kr(name) }, + { "name_tw", BattleData.get_tw(name) }, + { "rarity", BattleData.get_rarity(name) }, + { "own", own }, + }); } for (const auto& [name, box_info] : m_own_opers) { - own_opers.emplace_back(json::object { - { "id", box_info.id }, - { "name", box_info.name }, - { "own", box_info.own }, - { "elite", box_info.elite }, - { "level", box_info.level }, - { "potential", box_info.potential }, - { "rarity", box_info.rarity }, - }); + own_opers.emplace_back( + json::object { + { "id", box_info.id }, + { "name", box_info.name }, + { "own", box_info.own }, + { "elite", box_info.elite }, + { "level", box_info.level }, + { "potential", box_info.potential }, + { "rarity", box_info.rarity }, + }); } callback(AsstMsg::SubTaskExtraInfo, info); diff --git a/tools/ClangFormatter/clang-formatter.py b/tools/ClangFormatter/clang-formatter.py index a561f2f03c..27b2c57ebb 100644 --- a/tools/ClangFormatter/clang-formatter.py +++ b/tools/ClangFormatter/clang-formatter.py @@ -7,7 +7,7 @@ def ArgParser(): parser.add_argument("--input", help="input dir", metavar="I", dest="src") parser.add_argument("--clang-format", help="the path of clang-format.exe", metavar="PATH", dest="exe", default="clang-format") parser.add_argument("--style", help="clang-format style", dest="style", default="file") - parser.add_argument("--rule", help="json-style '.xxx' array", dest="rule", default="[\".c\", \".h\", \".cpp\", \".hpp\", \".json\"]") + parser.add_argument("--rule", help="json-style '.xxx' array", dest="rule", default="[\".c\", \".h\", \".cpp\", \".hpp\"]") parser.add_argument("--ignore", help="json-style path array", dest="ignore", default="[]") return parser