From f675c92e7a5a2c9b62eab94d9046166296844942 Mon Sep 17 00:00:00 2001 From: oxydien Date: Sat, 1 Nov 2025 15:50:09 +0100 Subject: [PATCH] Multiloader rewrite - Supports: fabric, neoforge - Handler system - Documentation (user manual) - UI remake --- .github/assets/CURSEFORGE_inspect_url.png | Bin 0 -> 716863 bytes .github/assets/MODRINTH_versions_page.png | Bin 0 -> 186344 bytes .github/workflows/build.yml | 4 +- .gitignore | 1 + DOCS.md | 506 +++++++++++++++ README.md | 41 +- TODO | 30 + build.gradle | 80 +-- buildSrc/build.gradle | 3 + .../src/main/groovy/multiloader-common.gradle | 128 ++++ .../src/main/groovy/multiloader-loader.gradle | 44 ++ common/build.gradle | 38 ++ .../simpleModSync/HandlerRegistry.java | 55 ++ .../oxydien/simpleModSync/SimpleModSync.java | 74 +++ .../oxydien/simpleModSync}/config/Config.java | 52 +- .../simpleModSync/content/Content.java | 31 + .../simpleModSync/content/ContentInfo.java | 21 + .../simpleModSync/content/ContentType.java | 10 + .../content/ContentTypeUtils.java | 23 + .../simpleModSync/content/PackedContent.java | 18 + .../content/PackedContentMetadata.java | 29 +- .../simpleModSync/content/SyncSchema.java | 101 +++ .../simpleModSync/content/SyncStatus.java | 86 +++ .../content/handler/ContentHandler.java | 96 +++ .../content/handler/GameContentHandler.java | 31 + .../content/handler/ModContentHandler.java | 17 + .../content/handler/PackedContentHandler.java | 97 +++ .../exception/JsonValidationException.java | 9 + .../simpleModSync/io/FileOperations.java | 82 +++ .../dev/oxydien/simpleModSync/log/Log.java | 100 +++ .../simpleModSync/mixin/TitleScreenMixin.java | 46 ++ .../modification/Modification.java | 25 + .../modification/ModificationType.java | 7 + .../modification/ModificationTypeUtils.java | 21 + .../modification/RenameModification.java | 14 + .../handler/ModificationHandler.java | 84 +++ .../handler/RemoveModificationHandler.java | 14 + .../handler/RenameModificationHandler.java | 32 + .../simpleModSync/ui/ProgressHelper.java | 116 ++++ .../ui/screens/ContentSyncScreen.java | 327 ++++++++++ .../simpleModSync/ui/screens/InitScreen.java | 153 +++++ .../ui/widgets/ContentProgressWidget.java | 127 ++++ .../ui/widgets/LinearScrollLayout.java | 100 +++ .../ui/widgets/TotalSyncProgress.java | 28 + .../ui/widgets/TotalSyncStatus.java | 95 +++ .../oxydien/simpleModSync/utils/DirUtils.java | 97 +++ .../simpleModSync/utils/DownloadUtils.java | 29 + .../simpleModSync/utils/StringUtils.java | 11 + .../oxydien/simpleModSync/utils/ZipUtils.java | 33 + .../simpleModSync/workers/ContentWorker.java | 95 +++ .../simpleModSync/workers/SyncWorker.java | 275 +++++++++ .../assets/simplemodsync/lang/cs_cz.json | 27 + .../assets/simplemodsync/lang/en_us.json | 27 + .../assets/simplemodsync/lang/nl_nl.json | 27 + .../ui/textures/icons/datapack.aseprite | Bin 0 -> 363 bytes .../ui/textures/icons/datapack.png | Bin 0 -> 141 bytes .../ui/textures/icons/downloading.aseprite | Bin 0 -> 366 bytes .../ui/textures/icons/downloading.png | Bin 0 -> 124 bytes .../ui/textures/icons/error.aseprite | Bin 0 -> 367 bytes .../simplemodsync/ui/textures/icons/error.png | Bin 0 -> 126 bytes .../ui/textures/icons/finished.aseprite | Bin 0 -> 370 bytes .../ui/textures/icons/finished.png | Bin 0 -> 137 bytes .../ui/textures/icons/loading.aseprite | Bin 0 -> 1084 bytes .../ui/textures/icons/loading.png | Bin 0 -> 387 bytes .../ui/textures/icons/mod.aseprite | Bin 0 -> 362 bytes .../simplemodsync/ui/textures/icons/mod.png | Bin 0 -> 137 bytes .../ui/textures/icons/modified.aseprite | Bin 0 -> 370 bytes .../ui/textures/icons/modified.png | Bin 0 -> 133 bytes .../ui/textures/icons/packed.aseprite | Bin 0 -> 374 bytes .../ui/textures/icons/packed.png | Bin 0 -> 128 bytes .../ui/textures/icons/parsing.aseprite | Bin 0 -> 370 bytes .../ui/textures/icons/parsing.png | Bin 0 -> 124 bytes .../ui/textures/icons/preparing.aseprite | Bin 0 -> 373 bytes .../ui/textures/icons/preparing.png | Bin 0 -> 133 bytes .../ui/textures/icons/resourcepack.aseprite | Bin 0 -> 400 bytes .../ui/textures/icons/resourcepack.png | Bin 0 -> 146 bytes .../ui/textures/icons/shader.aseprite | Bin 0 -> 366 bytes .../ui/textures/icons/shader.png | Bin 0 -> 118 bytes .../ui/textures/icons/unknown.aseprite | Bin 0 -> 366 bytes .../ui/textures/icons/unknown.png | Bin 0 -> 119 bytes .../ui/textures/icons/unsynced.aseprite | Bin 0 -> 363 bytes .../ui/textures/icons/unsynced.png | Bin 0 -> 107 bytes fabric/build.gradle | 37 ++ .../fabric/SimpleModSyncFabric.java | 20 + .../resources/assets/simplemodsync}/icon.png | Bin fabric/src/main/resources/fabric.mod.json | 31 + .../main/resources/simplemodsync.mixins.json | 2 +- gradle.properties | 37 +- gradle/wrapper/gradle-wrapper.properties | 4 +- neoforge/build.gradle | 39 ++ .../neoforge/SimpleModSyncNeoforge.java | 21 + .../resources/META-INF/neoforge.mods.toml | 32 + .../main/resources/simplemodsync.mixins.json | 14 + neoforge/src/main/resources/simplemodsync.png | Bin 0 -> 3126 bytes qodana.yaml | 49 ++ settings.gradle | 46 +- src/main/java/dev/oxydien/SimpleModSync.java | 37 -- .../oxydien/SimpleModSyncDataGenerator.java | 11 - .../dev/oxydien/data/ContentSyncProgress.java | 53 -- .../dev/oxydien/data/ProgressCallback.java | 7 - src/main/java/dev/oxydien/data/SyncData.java | 216 ------- .../dev/oxydien/enums/CallbackReason.java | 7 - .../dev/oxydien/enums/ContentSyncOutcome.java | 10 - .../java/dev/oxydien/enums/SyncErrorType.java | 10 - .../oxydien/enums/SyncModificationType.java | 6 - .../java/dev/oxydien/enums/SyncState.java | 13 - src/main/java/dev/oxydien/logger/Log.java | 125 ---- .../dev/oxydien/mixin/TitleScreenMixin.java | 39 -- .../oxydien/networking/FileDownloader.java | 91 --- .../dev/oxydien/ui/SetSyncRemoteScreen.java | 100 --- .../dev/oxydien/ui/SyncFullViewScreen.java | 176 ------ .../ui/widget/ContentSyncProgressWidget.java | 208 ------- .../ui/widget/SimpleBackgroundWidget.java | 111 ---- .../oxydien/ui/widget/SyncOverviewWidget.java | 59 -- .../java/dev/oxydien/utils/FileUtils.java | 75 --- .../java/dev/oxydien/utils/PathUtils.java | 67 -- .../java/dev/oxydien/utils/StringUtils.java | 7 - .../oxydien/workers/ModDownloadWorker.java | 584 ------------------ .../assets/simple-mod-sync/lang/cs_cz.json | 40 -- .../assets/simple-mod-sync/lang/en_us.json | 40 -- .../assets/simple-mod-sync/lang/nl_nl.json | 40 -- src/main/resources/fabric.mod.json | 34 - 122 files changed, 3771 insertions(+), 2344 deletions(-) create mode 100644 .github/assets/CURSEFORGE_inspect_url.png create mode 100644 .github/assets/MODRINTH_versions_page.png create mode 100644 DOCS.md create mode 100644 TODO create mode 100644 buildSrc/build.gradle create mode 100644 buildSrc/src/main/groovy/multiloader-common.gradle create mode 100644 buildSrc/src/main/groovy/multiloader-loader.gradle create mode 100644 common/build.gradle create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/HandlerRegistry.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/SimpleModSync.java rename {src/main/java/dev/oxydien => common/src/main/java/dev/oxydien/simpleModSync}/config/Config.java (61%) create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/Content.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/ContentInfo.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/ContentType.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/ContentTypeUtils.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/PackedContent.java rename src/main/java/dev/oxydien/data/ConfigData.java => common/src/main/java/dev/oxydien/simpleModSync/content/PackedContentMetadata.java (68%) create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/SyncSchema.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/SyncStatus.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/handler/ContentHandler.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/handler/GameContentHandler.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/handler/ModContentHandler.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/content/handler/PackedContentHandler.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/exception/JsonValidationException.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/io/FileOperations.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/log/Log.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/mixin/TitleScreenMixin.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/modification/Modification.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/modification/ModificationType.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/modification/ModificationTypeUtils.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/modification/RenameModification.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/modification/handler/ModificationHandler.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/modification/handler/RemoveModificationHandler.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/modification/handler/RenameModificationHandler.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/ui/ProgressHelper.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/ui/screens/ContentSyncScreen.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/ui/screens/InitScreen.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/ContentProgressWidget.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/LinearScrollLayout.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/TotalSyncProgress.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/TotalSyncStatus.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/utils/DirUtils.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/utils/DownloadUtils.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/utils/StringUtils.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/utils/ZipUtils.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/workers/ContentWorker.java create mode 100644 common/src/main/java/dev/oxydien/simpleModSync/workers/SyncWorker.java create mode 100644 common/src/main/resources/assets/simplemodsync/lang/cs_cz.json create mode 100644 common/src/main/resources/assets/simplemodsync/lang/en_us.json create mode 100644 common/src/main/resources/assets/simplemodsync/lang/nl_nl.json create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/datapack.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/datapack.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/downloading.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/downloading.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/error.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/error.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/finished.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/finished.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/loading.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/loading.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/mod.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/mod.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/modified.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/modified.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/packed.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/packed.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/parsing.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/parsing.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/preparing.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/preparing.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/resourcepack.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/resourcepack.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/shader.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/shader.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/unknown.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/unknown.png create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/unsynced.aseprite create mode 100644 common/src/main/resources/assets/simplemodsync/ui/textures/icons/unsynced.png create mode 100644 fabric/build.gradle create mode 100644 fabric/src/main/java/dev/oxydien/simpleModSync/fabric/SimpleModSyncFabric.java rename {src/main/resources/assets/simple-mod-sync => fabric/src/main/resources/assets/simplemodsync}/icon.png (100%) create mode 100644 fabric/src/main/resources/fabric.mod.json rename src/main/resources/simple-mod-sync.mixins.json => fabric/src/main/resources/simplemodsync.mixins.json (74%) create mode 100644 neoforge/build.gradle create mode 100644 neoforge/src/main/java/dev/oxydien/simpleModSync/neoforge/SimpleModSyncNeoforge.java create mode 100644 neoforge/src/main/resources/META-INF/neoforge.mods.toml create mode 100644 neoforge/src/main/resources/simplemodsync.mixins.json create mode 100644 neoforge/src/main/resources/simplemodsync.png create mode 100644 qodana.yaml delete mode 100644 src/main/java/dev/oxydien/SimpleModSync.java delete mode 100644 src/main/java/dev/oxydien/SimpleModSyncDataGenerator.java delete mode 100644 src/main/java/dev/oxydien/data/ContentSyncProgress.java delete mode 100644 src/main/java/dev/oxydien/data/ProgressCallback.java delete mode 100644 src/main/java/dev/oxydien/data/SyncData.java delete mode 100644 src/main/java/dev/oxydien/enums/CallbackReason.java delete mode 100644 src/main/java/dev/oxydien/enums/ContentSyncOutcome.java delete mode 100644 src/main/java/dev/oxydien/enums/SyncErrorType.java delete mode 100644 src/main/java/dev/oxydien/enums/SyncModificationType.java delete mode 100644 src/main/java/dev/oxydien/enums/SyncState.java delete mode 100644 src/main/java/dev/oxydien/logger/Log.java delete mode 100644 src/main/java/dev/oxydien/mixin/TitleScreenMixin.java delete mode 100644 src/main/java/dev/oxydien/networking/FileDownloader.java delete mode 100644 src/main/java/dev/oxydien/ui/SetSyncRemoteScreen.java delete mode 100644 src/main/java/dev/oxydien/ui/SyncFullViewScreen.java delete mode 100644 src/main/java/dev/oxydien/ui/widget/ContentSyncProgressWidget.java delete mode 100644 src/main/java/dev/oxydien/ui/widget/SimpleBackgroundWidget.java delete mode 100644 src/main/java/dev/oxydien/ui/widget/SyncOverviewWidget.java delete mode 100644 src/main/java/dev/oxydien/utils/FileUtils.java delete mode 100644 src/main/java/dev/oxydien/utils/PathUtils.java delete mode 100644 src/main/java/dev/oxydien/utils/StringUtils.java delete mode 100644 src/main/java/dev/oxydien/workers/ModDownloadWorker.java delete mode 100644 src/main/resources/assets/simple-mod-sync/lang/cs_cz.json delete mode 100644 src/main/resources/assets/simple-mod-sync/lang/en_us.json delete mode 100644 src/main/resources/assets/simple-mod-sync/lang/nl_nl.json delete mode 100644 src/main/resources/fabric.mod.json diff --git a/.github/assets/CURSEFORGE_inspect_url.png b/.github/assets/CURSEFORGE_inspect_url.png new file mode 100644 index 0000000000000000000000000000000000000000..950c89cdc75381574154d28f152b3782d79f1c17 GIT binary patch literal 716863 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

=wdzp&#fgH#AK2=0NrHSn1 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

  • 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
    ;R50Py^l8-{_h77v_H&c7ST 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 z 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 _LA07$9PMmZSqa?U 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

    *EXR;aloivugE7X-l_0v)V@Zp7|rx2Z6Ww~shX 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º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

    dX#0w50LzQ>^gA8%+w*N`2D!5R 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≦IqTkmE)|bk7+<>E6pg-* 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

    NT zRnz3{&8i-*lD^(V-nOokv}f->AWPi|n+luLr@?@ovsr|RU@hpw+u~EJuuz7rcbv9_ z>yON^4{wuCpnH=2Jk`{>N?E2>eJ^Trtfs^K9yw>8Y|O_W*`!HZASS}`w{3#4h8Q>x z$1yIxrs=)N#uv6K`!Cy`dvC{_H3hz3!k4pCPdabG)?=0l!!)0{oOdj!241kP8$r{3 z;JFL|^EYnELX9;u`3-;W1upFkagAxG(DjK(y7(+}5hRZ?czK-cgr^R*JoRp^`c5R1 zmgcN+nkcDoj)`H(P)TPlb3OUUSB`v!9a`9rLDh(Q4t^n49?K7gWhmUza+}y8fs`4M zlu{=z8tX8uBV|tRu|xG#W@8@KZLZw=9V4$y+@6`Rl_QY>GNRb{oXxr(jNrg8Pn-qy%_exq?FyOO0FbICGpkb4^9^r*j#r_G&A)#V@DSi@ zuc5DHT;f2kT^R@n8Y1G=_%7~AMN$iww<4-7&e`Ecy5nI9)7`%@|AEEh$g{zmhqT=G+E05W`#jQ=7P>F91W3300;CADw`UaElY_U9J%X^P@wK4J}(u$RN->uv8FH`t)#q<0k&kI8< zL;fMFb|a4j#@O}2q|E<&CDHM%Z~ph5Sm5n3=$fnc(g-49I93StWy(}~5JI3;4XiDY zr+nGb6km|GmNY0f;r62BM$2{}H(spsYDg*H68%d=n`KDp^xcBSa8_Y@T&euE6tl<( zglYWZ-ztn8=cold}^TMT$%zfX!lh{yUdA{c``Yya`ya*VnbR2Mw%U zp65B@47y!e_tlMfi;Yn1-K%Cf2ANkw8pFA3A&{GVEXKRbkM9QW{QCOFFbI&TwgSD@ zin=q50G9lG!3epN$SMe|zGTVV95Y_5dm_4n=zgwak{l_X{`WnnaXKiQ^#h+ql@*Tv z%J7n9|58kE9ngucd8LQ%(2kDD9L0{%=%56j;+$-7_@OCwa->;)Zh@#XdDAx&a;L$K zJ~o5F^Y;Sr+N?Pzzq~(){sR|^7q;uFOa(u5LO{NzMD{ciX}cBfsCA z{LuHiB}n@82YyEGq4CH8|MSZEZjScV10|H}7ds;1aGVUk$T&^5{V191AFVs@_Aw^I zxYG|TssR?lu^Dgh8E>n-{(kNh?urb1D>F0XMtHAhn?op!=lMFrfsj2t^N>E5Qi3F{fi?A~_zQVBQh%RIl^UK(Zq;`}!M@u@(9EusG?n|+jkV(cc>x53*7yXupBnEvuRvgY;RYJ! z)1TjuP^#O2?c%>S=;L8t_w%-?@ylfv|BUfXuCbZ>p4D)sEu5#H(`^_6&e74=dBD-%na9dFjgX6E`VkXEiOK#+J%oN=WY3+=-g-CXyJZB-ujs2 ziu2DKiVo4i=WqKA)$SfX6C!_uzdZ6cK`K}Z+Kgd+{G9^Z2OJ1Fsnwa{IpIDQLo>A9 zQOiiqzBy9e)lu)vO-9hR4aqvvks*P)?ZwQ9rv#R3!i1vO1l zF){0e|2~bS!2U~h1AA3cmW9LEvA%(rX;ugv-f{=f!^X#W7YMg&wV83Fb)CBo7uZf} zH7(I)r5u{SkL$heHhU&(N(80<*M;EE_=d@j+{VJ<$s7N1oj}^k>j;p(U~U|CTj|3% z&(IQ6{!n1pY@6xV(fu(6HRB`4W0Ew{pS#g5FMIx{C7gG{?Q&xEJ-@G0y~Fdl4?tkG z@gbG&l}BqtjmwN|TFnP!|Gf*R4l3m3@U8mm%N#hJrG+`kyw*Kg_^c{W6GztZ|zsxNgi?pTG?gU^J(aU1{3wj>Av-p zIN}8r^=F>Q`))0LoKCejClGqL7~9C6d8>dp8B>0@Rae>d>D}pB`x@EUX_ATcRLmH3 zX({o%kI;{nNixQ%ICKO|q!3FGUD$LE;)$OGu8&`>r?^%6>#OekJbS@QQ`E&Mgp2&h z(aI&>+(KL?zDHFhDtZ+vMl2p;m^M6}wCvx0*eo;}jEy&$@N6C@H;NKk@ z{G#Kd1;PO~=Nwo+1z7@$KHuTdgv3ZKPzUK-^Tvj*{m&)0)RYwQiBv{uS=pCJ+DF)c zEJ@YLMn)99IM~xSA=0LB>XoG>Wo2z?dDrG($w58sX|f8}BWeZWV{B{%^Sjf^-~3lO zEzHJf2kf=H3b?~6>RF{oaanA*BcY6=$Ak2KxY#2+`YT^Bo}^Nl&wIFt$Iw>XF~75= zw3UC!AaHK@l481n)(jRq;rX&bP9MK2B6~r##+Uf@!)l#S)P3NYLA8Ao>qPBG0zNle zUZ;VW7VPIl5&KR9xur$ElrI@4>qtO1;}qW0w<>kK*+B!uHkGMz;~@?{-(J1I^2UM+oX*=;7z|7c4McBPw>J=<8X4%8HcHzKqQBiFIn1RCVYtS1`m2Rq?pTIs1NFJ+6;m6JSjX-mh6(7abLjYXfqIV zm!bbO*PDxOzjJqD-F9}JudBAWc@=wjN(Dj~`E)69%h=iPwkB}1egtg=X6)=hO}&1q z*v#gx%1UuNpJl(aAOMyMO{r;ni1SP%Ck4J=P`pn4E5AOk2BnqrflgpsbAQq+|Z0 zRIm6qy07FcSIY!9F$B~#NaCqpa-_xO#9+E`J6m!fd&KroAd(>Hx9p#*@WLcI#niGG zJcqe(lK%jH=DL^DkHL|*9(uRyUgW})^?FYJhZHf-?#7rS2+x?Jp z+$h%IK$|V^MPA(!)z{56uvU{Dv)<<)j+-!08MhM=8xJq2)ugs2CEn%L$TGx30S29d zNFKJ&R_~8H#jj^Hn%65IJ|dp#jOKZ3DOpS;a=_Ef^JLJ#i@V7k*RCXP=;e$JII7wE z(Wv_72gqUYcSA`kfHa7Fqr`Tm@U4j~0Rm^jof^q}W42}vq7b1m%_a^OS1Ytmp0=D2&A+>RPql?~5&&(QC4gBAlX}TD{ zwHxiQ+VHQ(@4fh`2>CHwVLIfi(POCbPJ7yLbx&A}qaAX*IKseHg=o5Mw~kQ#00_zDAs zM1V+;vlI+1YB)Y#SzcXDgMkirun3c}Ai3+`bZs(mG~wiBYGyWHp-%53w4FBlgPo_> zR=a}%V&Gob{|CVzKjFS?qVb9GG6i^!acJ{@uYcQZ@%!CFhy?VA+kV1qqV%-epgL7r zzuRUv$#Lip_U5Ht>XT!XQ@v!bCg3qK8U`m>rbKi#>0vP;L?I3h{WH=GX0qUs=F=87 za#W4VYDdnfaH0DpLuDoNBdco0j(qu*zH59PEg@V`gHgiMx%~USNycQx-_W6I>@1{k zTLadx*ijQ!-TN4-K49h9N}HNx|8r%S67kWG`@yO%t(?`g z?oP=X-*Dvc6{@|pwOjGo03XWx@6A8smH+5$>lR|8^J~3jX-00mt0A-;bp-Lu4lZTGC|R(-L7@N;|N`R`%ryIGi&lOh2WH{zGL&wpTn zav}p>%NH-nla+Wd(#reP{pwe$bTIDh5rG$l!hnu33nkYhfBo6(o`|WiPLE#lsa7s^zkHqoJZ`ojp^P_ezgMQ%B!az#yx zN{5K)GM|3R+s?{F+_QWATR4*6qYbjq%c`p2RGfT%C9!6J^m7a2jl&>Wbaf^X|M~0b z53rJcm=$aH$!f->ymj=SPgo`>M9B#Qbc}(IGU`*Cxp_lUBJGU(%+Zphtw2xz@Qse)`SB|UMehn2PH<6C!G zY{d{5!lcBryu8{SY2m-dV8e@c_pggw-e$`M9_U_t<#KWe4B8@$AR41N525Hx{rR& zHNg>fQ)y9(4}mCKGvq_@5el1s(m($GZpxb&Iuny|m$Fk+Za$NfJ@Yk#(d)!9ySdaB z(9>QUZFW1kg15u?T=J!?uX;R-w!_?9cXjn59qn_p>_^h>H&%`EziT4Psd8zFbM%MB zbtAkEt5Jydb@+fx^^@oOU^rTY*d&BO`17+D2N@nBMr<&GX;Fq(b}Gv@f^8~JS9BTOF2aawMKsCfCCnw3t$+QIV=n)5;(ymif$x%;% zRPYL#lE<3ljtpzwMq))wNn#T;+V_52(pqFRS&9m-&SUbvR&*9B*=#xL8k2R78G5)YlQJlQ3JNpox;3GpO?i{w zzOPc+uoHtOPQNpYNZR!>6A{8AlcuRcDU1j<<7e)wK^_rCBL@!*g{2GG!X`+qmISV1 z;Buq`i9|O?GjKc8{5`T78aSMs5%w$^nwn03rRtI0EA)dg zA(U%HmHaq%NdvD<;1A?3W&AQvua0AdPWiOP0qQKNG0equ@s~n2XBj=_%-Kv;F^I9W z12OcT(PU{k2%$%YWVto|-?uK;F3SNCGciknhja3lQz2?*Tvi6j$WyNjlNYVZQzYs) zBXZ*PmcKpp?rdjK)u)2G5-%-`9><6EF{feh%H+A;?yNeLBAns(6tL|jSA&AMdp8~) zw|R}kG){~T&VdE%UD-GdhIohR87CO#ndcF7Xc`;CE&2oZKj#R4)o2I6;;U(wVyl9F zESbf4s)#=8jKE%(=WL7V%Q^7T9nR&egGiVfZ%Ppcp3?;y9?HD%67f|qXzmK`UOb$i zt;*%rthzz1;9p}mq8)4%J!3aVRM)SwLLpV_PVrK!@$*hE*rF_Ceu%0q=UBOI=_q_{ z=5T%=T~}4>Uhx1;8iCV#cOs?D3G;`M@olN5!5vsV2@O{C$_pIRrztZ%LO*sbBwby1 z0NOyqMyR)LD+DLDu>St^jpgP)F5E)9nc|{wh8qx5-JbIjBw2{eCeDo)L;3|AA3`Se zS{DBK*Vdekj$caF+HnTEe!;ILWFi=hvlEKSfs@thbR%8Bu``|6DirYicnof?7{P$9 zR2WF6VUtYnvWNHQoKs3%0kuEi3CDGoL64f5wQNq*SSMUVGZhATYRayYEan|$1__n5<{?N% z9EAp4TGeG@Rb*oX{cK!{$0!`STScC$KbUIPgQ1SYfMx549`?p4vBb|2%aL-5dqlbB z0c_YrBB3U)rXHrAcHjx6s$w-E8pxwILXFJ3^J4TBdn5Z*i$iIVxSISEg7!m5ii$V9 zy$Fdv5hlp#hInG+JPIsUnR@=QZu%?x9|Z@TE}KC!M?)8JxyKJ)F0bz#uR_fFwQzAj z5Tr|Iy9Dj>H&qEX#ZRMJ94Y1MjMC^MW5-=1`}ukuZrj;lB|`T2nDWAPP~sTN+IOWf zdP>BKGjAZC`SQt!h~F*RfyYKP-ey20NUFigf`Kjg6OA>oKfXhQr!p+U#fLV&eDzIa zR*7>yudRtZx{2B@R)m{f?7hM7y~+F_92zFqr{qw{VhRJo&~#r5DOxnwQEG@3ne|1o z3fj_41S(8_d69i-aH$;6dM|o97qp+-BKFguuNwge zk)tu2o;L=xE!HBul#fpRAB)BgzayU?jdg#vIT8r-c`_;VN*0avW8AN_)fVJ792?WE z=?*0CIvzW)_B}r$^Z{w(@hR9{M(3Bid%@2NN(g)%7%R|wBF*&?UIlujvLc!HryHqn z{a=UmbDVfRs^$}L%09C>UvUB0KeVI|)lMKPYZ!Ge2H$$M6AaHb>l*V#@W%6Mz!brA z;2EdE3Y<^fjv~GP`zd!LA(1Xsd*zMFDg;}-8E8BJMM0z2aJI4VuZ$3(E=vJ_&iawV z%!P2>)@P`;=M6vk*)Uq3m-=l5eXQW(+Z_5Z)*^SvxHo4MxHz@JiE$#2f*K~DE&rlG z$W2h8H352-M$X~GJXH_&g3(H#kuU~2v-_Yx{xW9|C)k}Rw)L~il>NbPDhY566cykS zQH~vfbhf?!mpHM07DnvJ*f?KSRRgs%J15gglEZ$j(+E~7UrMgAc44*|crQ%h(w>Ds z5GzKQs8WVPAxW7mw9-GdU3EYKYmQbhQpb&sSGsV+ykRdjtF0`n>Z*)2$iE!8+MYrG z)AR5xM#!(0)bp|u$x^>@MVKuNt$GB3qM z3T1p{eRDZ$5!Llo@NZyWC@YH{cO3Y&v8?UFXfa@&SJm{&4)}v8*f(dcr{IYEvVcoq zX0iRr@7bR{9Nu2RlOrbnjIpv=2i5WJ&)e8E8;JcSJ}YSmAI8?hbzP=1PBV8CSAOBq z;avhwIF4vFBASDlzLliuS-8{wi+X?;n7}FpooM3aJ~*FYvo4SH-P4Mr*ZOL}nZy$}@oKe%g-E3lzRYO-B2@2N|pHg)U zw0U(Ah25hGn+B}iS>?Tfvc0N&q{%4~D&JE1XITnd4v8omvuy=ITpHyREw}S#TUdO0;scSYi*~Sg`uT z#mXuxOR1IOYQVu1SL^{owIqV9WiCELj^Os#8L-F-g~m5l4AyWl@>m+A-tgRlMKU4; zV=*L`O;J~Q`l#y3SCN*N2yHj;yAt$!itO`E66M;GOKkVo7b&TN}o*9`tbp)zLR zh~!iZH^GdHtUK-y;b8)mzec-YqeTdhDAcklFEHeR(OR4o(*9-dWCA+n(RSR?g3YJG zw|6VPOMYNXufa)SkWO>}K_wfROz_UjE;Wa+R%ZSbv3r1rwOqQ5X-UdP;?8;qGu?0r z$B*uNBd8F79)lu05@~$0Q@Mgsncte_r@|}6Godtz%uU64!7H^;zxDJU#VI7& zEM^Uu+IGG(b=|5!R8&^3wYyq>&stks!@|N+Qc|*bXZ-z}EH64*E}wDWzBZ!QRI-M> zHu~1nHSAoA6lp(Bub8eEAmc4_wW9mO{fJMt8RIGI7sMvGLFS_N>)uGm>+j$8dpn`{^#Si(gb5id;(R18Z$3Hcu*%ivW z!D{A#RuX){R6)`=o*7*xVa{{-JZN^S%5u`;zX*p>2kpCwBOuQ}P0{*sR@T;A6`Nw@ zu%1~nwn)A$duNo-11Vy37P-p)z&sETzgUps`j4p>|EuFBPe?6?0jAY zzWu(%XGvdQyq=l;SvQy3F^c;In}SA_;;;BE!V*5V_^^|D^+{2Z_eH8OWG~`Di9JFb0rQa% z!mkTz6;OA}iH#_;mX~Aw)sH@WfOrrLbs&ftHTz2ucgXZH{GGVGs@ymWe=zE#<}M%2 z7|#7b=LofF9@5L*cI48JSiAn|mpF*#Cl4r!(_@BH+@gIgcWp#J2Xx(NpC_7EbH+fx zHvcBzuxW9Roz`eIA@cd+@;?xl?Xk`;a+tO48mAzib2C*j7sQ{Gm6TD3!?Dvc5yo@5 z;dPSX(ZzS8app7~Bc}jQIi>d}%3*bfA2XEqAM$z1%;Zt`fH;MB8~>8A?`&adVWlk_ zCpS&h926h#Q?>Slkf9XL{x_+l2tw`$6`A2o;(RS_@#IN<=9}zrFc>(+pNK#WN zg69|?Q{g5W>{N_?YXlp3*v2(%lS%jP;8M9#YH34}J<@d0<%%Oz2V%Z&d+$?HHA2ce zIq0Ve7j{tWiia~KH^^i!EUOPyN=R1p*;%}yJ^76>d0T9j2&1#x( zw6$e>fQ(3GicKV_uVCqk-R#1Hpg{f)L_4WF#F#Nn%5k?q)cL^VMcr4(C^Colo8#A7MxU3hvq)?*GP z@SphB_oOi>Xh!yv-4)P@GSsL2_)eS=NF_@VK*0DVz1oU9;}eczV;GL!OU?Q=RT4w) zs60OX1k8^NpS{^d( zYpanmVIl8eoWq6NX`|`n>Sazay{e*k{7EW6;Y`gspeeAFOv|8CB>twhY@x@;z-P~7 z^M5~T8XYeILJ$6$9I;p}(n^-MxAT?AzXU7MhQq(Tp#Jv%fc#!DT&2yv)?~Rqwk9A3 zB@^g&Q**2yiMqj(nUaOdW_m7R6(quSE;Mdxes>7R9c?%gfB~36)+$tWNcW0=>J4Nc z@Q+Q6{T+Ao<@M=|1l$v_WJY+&8nA6=4PX8qnlzZsu<{+6Iv?=9t#)7VShtERro;#~ z($5HZe9d|w+K(OCg1JdH5|<|iJ@9SwpRRDmMZ35f6tEiL5%@no2)w`UPk7#4*|R!d zX^_K4lP)FI03N=l!h>aqZWdDn^UGRMJ}ioo79+ z%0;*bFiX22(^XpiIa*I>>HB5*nY;1A!P7+_c&#jVQs7f>yUuYTnK75)DvA^Ca*o~!ZWo~fYcvpM3vu38R;InWp3GF z4QjU(LIp^C)ZXragU-8?A9mdyXuOQNaYgbqHxyaF-Nk0FOTqztIA$%Y@XsGXc>WguF|KBCxNRm{U z8>Mm~qObg7ga^1xfmGYz6F@6{{Yw>nx}A~c=gXMq(;c#p&53mfmQwzR?G&`uyEO?E zNj_r6_VCLdyU{@nGQ4(o1+FWR;_p)1O1T<=Qc}Qu6O%ihGRBy4v-GP%>hrDt9=-qbO$$pD4NiYKK?m+s3&Q;T|$K$cOosW&dA)^x>(?RQ$yi%xgDeH zzx$2PZPaidrLpVX%o|Roy1VmwjBc8AF6hYL3mdo}id(n_pTsvUSLmYPa-T*KQU0}0 z@8}Z~ozdo;9coQ!cLxER*#4C_lhMMo5zr$WZe*A%sh~?~VZz0#vv?VpUpwnGI36i` zxlbJw6p&2n)JGlcp$cv={7fp@+fR9Q9%no6XbI28!Dm>jivwu+w!KrK)778-N0s-K zdl(`?fbi&WUT4<{gv6)!SfOT|2vJ9a2LSRNu$$Zb0N)Uz(A_9&z=E!2*+RY+Yva>> zq((xl{iHNi+crJxfJrs6{<&0xm^a#J2B!n%-XkUKCw`jOBKhR z?-8e*n#QonDE~u}h@apOgz4kPw;{9&Ud$V{8+vQebAQ)uTokOXM7+$B%GMNd9OrB8)iiPkKN1K_J)BgS(D)^mKWu5*}CXgzeC zeuBnWuYSU&2Pvm(&cBeeTG3HLuAaL*IC2sj=;$gxK~J_u=J=H?=&VLfEXxmu%jz*O ztELec$ph&__qQE5oEa;6$>?JyWm=LU{29{}%h;wJGOgIe3+3~LbYVYsN=i!?O5_P+ z(~^H%-kUR;z!&DJ?~PV_CYW)zIyc;9=H)4_)aWH8KVRq9`?PvL*a7i~$={{TjS*D; zak0k0HlLBa5Z>gKgU6Z>S!ePMDPK8lE?D_Mz`<^y4b2qS&S(NlJLLW9bfWjtwznj#vck4?)?+ zNh`BhInIUO3|B1%Q#8T2PM;_&8@x@ zA)!1>|X3a!FO10gX+3b1w)j^HpIPlo_=u6Ua$~%twaf=YO za@GiYepxSb{L1j~$=jCaJqKhUV54fbW^H29M}NAc9PjR`|SP zE?jYuqmct(tXoKows)_OJJq09n?TvPBbkoZp@zK!{yEdFG)M>YtX+TV%HW2m)CC@< z$+xoWhczS(5iBnOJ$4aDx^{eGIq!7BGgWVXed`+f+cF*ri)U-|bS+8G<53g{sBe?* zwFC;ZM22gjZ-5;f101RR3)nZEwn>Hlo<~r$-6ej3rZCj7=N%N@`bp4}i|%oL7LuH- z$$r)Ojs(^jjeQ&Oyo^)*1OB)Bw^bD=Axf&aMn~@$vjut8SE2>QQnz)cgf=%k`spLh z-qlX3hjzau^T+abY5iq9#SSLx6pM4-zX|$#T7Lm>c{W@vDR7>p#i_G1)Lxi1qk{&A z)lW^)sbPKf-@(3*ejDO?e`suii~$?P~K#&OQno+4|W;A41L8s>=plJ2Ehl zH@MB0yj}=zX||2%+z6CkIOMjrGRgjk^fyU*k4+?&Pp=pBH){apQ3-5hfP#QUTKjjc z73VrHV@?QP;?{OeMDXV6Sajp%1@(_{zY-I}zdqnr{90SFzrfsbHS>_> zP*pH2a->=-0qS_p?nVL=+g<<;_`he`SFFLu-ZAcPc8J?Oc9i>)cY}o|HtWv8z=@rq zOxr8#;1~BO*yJ-Bs$yeP!U5r)Kk@DBEWp1RZ0s;qZF>fjejH%twjK3DS92&4{+0C4 z9R>{Wc^$R*BI2&Z_LEvufPGe8S5|7dl_#th(AIaPEU~#`NGJ6)<9-*krbP7>jovS zz9vtMfzBmnnm8t&LRu}N|5coyTnMW{?oKZy*T!DDgdpnx)5owyHJY_U4~fCZxvYFk zSuMu`YhfrU($1dsN1kca=+sF550467<(M>LH77K~mFl>qs%_j_|*gbBp zuIHxOl;*J|Q=cPG#bg{VarmE%SpZ~;^xjeh(1HhDSdoW*jk!#yaWi7ucRZ;}L)Jd> zYI|baugB$qdN57Z23RcC8mIs?zqq(K7!*B9)W8xkB&-7Orp;wBVHBdU(rV8m15 z+$?bwS%WK8lv!G260NAac|xQ`u-eN!<=u*XR1yggXdsJW?AYDuzR|J!jt7pLv3?L> zY-+u~e0_nZBn?p;sn{hKA6}@qpfi>=Y~zhafDAJhP1uoJT}UA`3G!lOXH}q5in02S zp5#E{=(X7H4oayr>Bs)6&hYGEMNVFR>45$vCY1@fUWR~%WPZA{(hz$C=_{eGv%bHd z6Nrae=o&UGR(QM z(JFG75+0BViM6Rwy=1c7T%r7BjlpZCS=`6FpJjNHJ>vOUDalg>Lr3GQFwJcGcXOFJ z3HLx71xgg4KPA5mugWnoPPciZEL1&UsJ{W2nI83lGcKWu@&wwy6%PYQpa^2gMhqxN zhZ&UDn>5Tn2P+qKzS~#8@RqDLv?qp?_sVZU|Cyglu7cYB2Ba~X$6%S$Jqsp!v1ON! zqNwMYp0!_vSm~+>n8;S@2#$#i7tk{$p{2nWmMX}W>l)`9kJQ*~w(l0TI5za!R+ujM zd@uOXLT!p%@~nL?m~yX9C&K1aUWPg5@m)MhOHxB~sfO65Y4np%s6&G?G@MsR;i|Ge z2Bpn0g5<$h3I5Uh-@~WYb}t#AY%0PRwMGA-%#*D`e*TsVrH7@|lKi=Lb!uM5MnF)& zL?R3h6mbHz6e#AAxSVaE=WWZ<;thw3jgF3zF$xmbu7nxl1rMOl&-*mlZYG|lYCrnw zlS>R1(4-^B#VrP@B0ViFPgjjZv+K?k4GB$$DVOl`Rb1jqL_kzcMN`#$b)M{A4GlrB{a{$d*&3|&L7x210UZ86WFCZo7DEryMNrBymJnOs>MWrhCchV$W ztRh^oVz4bGmDNBr8bReVYsD=!K7PGT1mk+L1BOz`qQ2R9-PaA*Z)&}{VU2?wq@Hf72AMj#YU0Q_dkF5v%xQ?Up9|_tY)s*T%4bf z95_W z$ElK`+k}FSM-r;WM1u8{?DCB-T9a(cY&b~HqRu6tH#WfSucEI$F%316QtC)#+0b3) z0yf!JUSyv@0qc#9Pr+d}4&9lJd;#5Vv}BtYjDXECv2Z zyb`Cblx{ss!Ly+u`aBNCib*-CO%9YGQWbpWR@Y=X?52ISvj?d|(IQnCJ0}hCFdXDP zPZwgnhaJ{_F#*2J^S-0Iy$A0rudcaY-v@j5@6tt}rm~@sK%e&{rn01dQfXufYX^QF2r#)|FdQf;{NGAM}vpf>g1`IIcZk_{CX## zQdG>E&cwjLPeK`7^6h#h4eIOa*vO;f<9uC#QLGLNxF&2u*g}|alBxD^+*z{4M>5C9 ztMwFcs6-|&v1hRY-tj0`qW4Gfk9!`t>(!eNY%FuKo*UgNrrsJ0sV3u}qC4roHij1h{ z#-i(-Wb6ogMljAm4pX0keWCQ4skSyuC-bdU#G%URPHF5GmODq;8Ap2S+kT(?mcQzb z*z?vm4NE*DZHlrx$C18ktyIRD2(68xzl${Nd8#K8|L!&(e{eW$T-!p5d$$jeeKUes zg&TKxjnFTr>%){>-q}1<+e+&myZ#M;^77t$SmXUQLFMzP+)pBvvy|F2&|_$SDu2mu z-D=YEuGsKTme~vE#gm{&@;u~9&-2Nn(nu59SVJY75 z`h{#b?0yS zF7qjFl!)HWrSev&wK>Tq9h!jQ-K|ho4s%3>Jn_sFBgKhbXYaUvG#npH$v5;N=nBK^ z-$}kZ;^<~Et1eDQlRPd$y3~p^*wmCbUnL^j*Csm`EuQDfD#o3}Qvm=ws6gBFaP5*V}vXkdS*gaCFDTGg<~F2!(`0!BJIFk&q|*b$+$;;K}RM6fEeC zs{BJkoChNU7MC;TUnXB*pHk2|Z%!WsKx!BEkz;b~G|mX^Z+Tys9@iPZx^D>pl7Q;) zNz1EFi_KSg;o@HTQiT%!vBy>UG#3z|(q(Oh9yW?j=JpW{H+P!*mS?Y zJCgfadFZW4(5i+eEaWH+Et9_Vu2R&mD$tMLyAEiKuwXp&OPsQ?VOIawfp+WvPru!8 z^&NQbq4sGorI@h78y#%TTIE9k{cJSB+L=%SWkRS8+cpTK?0x}#VA637HXcYoBe=d_ zFMs;4<(t}vy9ojhqalW^wOsHBf4s;YGJ)nO`Txj#4R`D?OR=J)WG7c?=290u)Idr5 z>e#rXhJvA;iC8;cPeB+LdOL#B;D>l%EYWh@TL*{QhhxEE^TeuR+g?@Zd3A`~!Ai!8 zq!wDbUu!`Tb(1(w5P#LpAgnF8mRYxOrlDUXoN^{RX#By{QeL3Byluww^*0-;IssBY zR;26zTB^r6YR&3G6@Cu9=Ho21Oz?Pu*@k);{pli)T6w+!qJR$AeJW0vQ@+)J% z{0)lcQI4%}!NnFzsfqgT7v8Q{@gjxcg@}ka>zecS@-Xo^-8CvQa&&BL_ip7UU=Wor ztFAP?_D=G=?1STd*l_mzczZbLUw+p^Yq2~z0nYve=Et|^ik)cY7|P9#n8N5P`Rgt6 zr^xv98&D2M54|Rd=E-F^89C&dsD0&TgF=8bf9*Kbvduipk<2hE95()_%y7ZOQ*m>r zVu#6^%EZNvh=E8MwX}-QFkpSG@N6sx2^;#*y@C-wWjArH#fWqhR+oxdg*eJ2iPE!l`Fno+ zTqYx02APJ9tI107y1%YX54F0Rm9A%I=NGRa24-yD>m^2zoMnMuUdadZ0k@)-Cj%~Fcelhx0b0QWEzgriu0{%kJ zF8J(c1f|Ggb!euotUnYWD#_z<$zo|~>EROd%{D%=0wQ322SKmr*);$fTXw->p#&K? z`b8w{mwlSb=(z(YY;ch)*m?g9M!2hOf3|wQKbvUufBGEotv7(XWpRFfVgFI@Sc&nh z3X)G|SbK4;C)&&C^jHyZJN`d4h+5_5uf>{C=7i{_t^fcK*t%-=F+dHT!z; z7qA6neE{>gc5#J2U^M000?`K~(GWw@g^c;w%_a>NkCk=(o(`Ij;tPL{awmXKrKqn@0vs1(&}&ad6?*)&zJANP4 z?=MJ*D&2ZELvkR-Mp93Y7(iL!uz2DkR&Z;?AK$zrVEZBwXD2Z&4zr>oDu*SKW#d_? zq|`s;(e*tKup1g0+U}Nhs;{uWu(KxtqwG@V=T*+z!8Mpx_V2Gx0(Xn5ayfkJncL8M zGSF+c#YUx6k}Gw?FyaydU3m6eQ{R-)FKj3d!Lps9DOg-$t}hZ5ibbPJt9Qz2U7-0G zH9Y}Hi|=aEyG2z865mws{)`PPnC(}jW)~?-IPPExoD@vqP&xI>M{mu?VZ62rTloM;CpmDO*L&LgDRy7bXiq4EXyRq=~lsvW@9lP zjhB`3fv(Gf&PHa^+GV)~OT$UsO2U#Vei56O+VPaK@nCg=96SvJavJUT*2D9OD zFqLJxSGjns-e5;3s&RtBOq%6Q#hJ8jc0*73IqR6sg9&V`R3R-8Xd;N6s%Z9;@&=V- zKohZ|m;$iLoTyr|*X-%FY^hljrMYNlghu*mhiyIz;p>%;O0{-ZIE24BgWS~j4bsYu zFzXG-BAku(y7Km;S)DdmQ3O z$yT2&@OHUDmLP4fDGcNIhkWTNc${emi(5bg=NcC~Qn^3pGV3A$kqb|vXWw~lV%JGh z8@nwan3j4d`EVSJJZt?gz<|Qhzl)5W9TOsML{vcmMO<9`Z;SOv^22s%cXuveW(88# zM|%UH#x7<9M8i;nc-a|$w3q;QVbzc3NCNh@GU?Rt?Tc0+8qAoA&i?-IBtDlSW|QfC z(fI6be-mZfKHgun+g-lGz`%4q|EmPnr^BY}%GD@E++|YU>mcGg5{W?ie|eJ0si|z% z%M2A26?iNL5Zs$Cn42B$M(+lxuP0XPjp06WUVcJQ>+%Kw%UiPcq3P<^ z3i#lt=aDzh|DD(WZu9+FlXQKepb0Eb$~D?S0di z3_4d%R(5|kjC6Sa>hfwauDqhE;OB?mhQk~3>wRkv6&9jnUkI+l1Y>KRLEk5#*Gtj$ zCd&bB^PHh@bc!l^2Y?)a?^RV47H`MDWMuqmdN`Rena#^ipf*P)ES#75k6?U!0^>MZ zj2tLBl0hjIzY5Zsbn%ZKUJh0&s3-jjl;m7>rj9C^vGn_mv&lDMm{zmnO+vxSTt1m|Ow>gZgly>L?? z+$YfEIIQ5bfV{4z1y9t&jd5Y&E=kEoP>N&E*(x4K%vJ#^5sov3Y0>piEX96xy| zi(+JMiugxM_bP~UzyV{Y%?ptxiAvWVoXa5|VO@>Ph5fVTuD}K}(j|65f=cdTCu%)n;AG zTS``Czj+8IXsZ6qp#XFvmh+P{wLxfYM1<3A&r6nTn4D?tNNu?yQh_@Y>C4Y0RPMZQ zH_HzxzcvjLd~qg*zEM}0EaWvnD-3^bn4z<%;sa)|Cb(#{*qOSj3!HGJ8+A`=?{baO zZKd2Tg|4s&Tk|ZazgkiuXsYr@A~w-&YbNt(Z+uFu`3;!F_Y2n3O!HJzG#h-Dwo?E7 za4?qg&h&gsJ)fI%MJ3UrDDb}YqBzz^)$hU0TM0sEWr>DwKNnfJJytJn4>dftNH~^e zizAU=n6oWKjtTyA?ZMHh&+OMjDi2jl<3&CXH1dF3>zEHPgV)w5*Lu&o%I|8un2CUw zt34lg!-y^K?(TrPoHC`;q9toGwl{=C#1p?uA;EIDA6H#Y%I88$qGx_GUyQ(D{d4cc z(sJ3Hn-e=EJivm*e!fWhbgPT-7XagKN`>DdlnW)UE(cI`>|Zh-^-bry86{1rlQut;biUrvHM0}o8!J#rw41LW^D;zNRK8J&ISHlEvhP_ql7`G zbNiDh3OyC!6S>cG-YjJJ@ZG3FaM`Vn{tAFA4T(r5!!VIoSxcj<-9VbLmvIhw0bhJP*PO|+_eKo512@>OQ>N%YJcRTs$rJ+ zA?^i6ewQIbX0$V@!(sC^Wkuu%=J2~a?Zgt}3PE1VfhZ5Qu06#VIpqJ5a zwp|4*q6G^@e#mD6IHpkTc_%ti+Fa_=nW_-AYRXQJ`W-IzGK2J7}l+V*Bq$vP>|E6>DVtOfHUh;z}%8r{&dLU$IVk@$P~K2$;O%5 z8t_u#nFZs2k}$9vWaxGo4*drhFKhY3w;(c{$muG+@^;u{gdW=|CG&qRK_7GE5=qJg z*J3Kx1*la_B+F&or$)lk66_Q-a;Ot14#KMKIub?|ZNW(Uo234t)_&pY2{R=8{5i)% zz9OB*QK3WdXV8wdbQ?LRx(2$-aqycMms`Wd*u47k?@2CqdWx5GGn@ZM(^&?^)iv!J z2on6k9TME#HH6?6+y-}d_u%eMAOv@JclY2rxV!7wyr;e&P|Orm&8AkbzWeHX^@?z0 zOvZVpKbF77zEAS!zG2<}RYv%|<6+6#ypQwlTbK2P(bFFiTIB1|@h`ImF5FKXkhG(vG~-2)I&t`6n{(|(`(^-*Cl;YHzzrmY z1^*0f(F3|cU-ZcgWJ3#hs6-c>p!|79MrezQ%D$7~Td^}!mll!!S44)3AfhesRhtU1 zM~40Axa=173lB#Sd^#XI_B1h}Tx)UO{t%d(evmKwLhoM*!|V>GzTTa!jru`;`nZ<@ zFg2Osiv%O-?@#y9 zw*i*-hAEtik;&Ha(nD67>8DN2uK8`mE4(ng-3mT`!NpwmFJqOpkVN!kjwg}g z#g~m9x#YREcV(35t!v#aABu#OSl!I*vux9LN|%!TEHG%`3g62^%2l&bUY+0HXCN|TM@yTqPc4(DF|G{S|8hObb0jlm)uUtDk& zE3@4E!aLQ4L?{Kz1jbqK^DLr))v8Uwx$6n+GP=_F|5YSL85b@`J}Vhq(grY~LxU$C zpDK@LB*j*@_5Zv8Sj9V2^vfN0e^{+f<(M_x(|`mazbl}`V8oUC=j&!ehxN_kusOLc z4-F^z%WB^rMOx!W8y)<(Z(PPIndn@FMFc*L<|((`RJFaZ1{mk~lvNVm_<&(7Wx!&Q% z=(|)5x9)1ZK^w+t7*7N-_2QF}W_BWYnm>JqhTMDTNsx?hE~3g!ZG-~x^e)4;WbLfR zbj>CmT0_em`hu-SZM^-YNqA056|@D6G(-g1n@*^w7~f0`vKd|HcHCV8_#+VM+P#MY-8;^JN&v7@_HZkGnf%dLPXVLXG&a3qn2d$a2ki|3t{ z83a%+cDe8W4tc%bAo*DKl#wJcKCe&UFyKDftJ<;*sp>NM>wXT5Pe!#%J&e3$z88Gl z$sFotbuMXG7?s+s*uXvQe5Z975P{irYUMkplDzw=?!U)P5FNi5l5}T`n@s=Q_%fh(XR>Wtd<&~A?%cIiDtunUBo>UgYi-}d&shOEy!2Ht)7sd1S_PAlA*kPmH zl!f#S5wgZuq5e}4`_#oIJ0lrVyvlIraisgh;Q?@o>?Qk3@M&%$e9k z$WMvzDbU9f2PmmH@aW`K>)qSRdj;4eLxcDG6IaCc6y_7P3IT7SB$cdj$&&&$?z0c-eU;Nh{k?Yy>RxetD zd#OCU&}hR{!-%%jWv3s+-2}GA>^0IF6rbZgr(~rpr^k6R;(d|j37Xj%FV9=$+@)A{ z6$A@5^6d-i9B(8_WR6mxwGkX~n-8gjLcOBR%O1ibs9Jko!U#$gqw6}{f1eZqoNBY(MnD(Iji)ngk>LlJz?YXb^K z?t?!8Rp#4bUR8EEY6C5cJQZBDX$guR*sFw!eiJyU?CN!9*5=MD6Ekgo%;M(wxDNic zvXUZa&HKb{7cYq1TSGmbSWL}3=!EWlaZTW0g4oIZYOhBJkmEQ9_XQB&0M{XOeX-}h zYcjM4s>DD<-FSL{dO<3in}UIPax4z}aR(cnzWR-M!n(A-doIAe)dr6aGt7qZt$`-g zWdYJ-6XH*Jhs?u%DWaME+5IFZpFE8X*4y0O?v_mL`?1tEk9FU9>*kxTM(8fb*e3PB zJwfwO+ne11fOEoh6VM?%A4CVDt3;)=>bRnHYb%0jfGmdp7g;nn)Q5Dy>3k5S*J?n5 zxX9Ref!)vc^--Sy0x}YrfKzXGBni0U&Fvs3gw$zHxdv~|`qnE+TxM{T7CDl&W64mL zcCC>5@W)(S>)o(Hoy@S_mQR2z-3Wa&{V)n0wt)h6q%1O?|M7VA%pb)VS9Y(b0_m

    y7i zMiFk1FUuSs4NGr;6@}?%cJG`kJTH;G1|Ew2-#|~$BbrrARzjtMvW+7V{A61U-DJLp zwiBNddQw_)3BuNFI1^(#izNlJe6!N&Y2K2@4gcu zo?}st=zhhsQ^T`U>%QZ_v*XZRC?=RKE?Aj!?Y>i^QP)tP+uRHzJI-Ln_y$;XzGg7& zjP6|x?KuqXUJq~mh3odb>e*&iSghs%O0Apo4U!N-htC6%cmZj(CP^+?@WwO{&0ac@ zA>Z|^-4>(SWDmWO1I5Loaal-Nb%T*ff}MD^7uSmZBNpPdoBFmynUomrq+4aomWHHw zh^ajCpV4X?_+#`5JsTu6*D zr5C8kCRZ%Q2BUyET2n!}+K_td&({zT7*ukRvF-bT0@JzGaC`0VK5+wEBf+FFa09l~ zW&!L7kD!Ww+%*9Ttdl3O5^^GVf4qARGMbuB8&;T2#&9#8W+YR2ooNAC9RjRn(b`|49eb`k!I>IQph#n zs5P15Sc=8?t2rx;^FGYq>)9M_A?3SA|};+IY&LXlsWE(|R>VKrpikLjrw+0rbga z6Vwzfre=1eSyyV}y?yMI%|tM!FOI zWUe%ik6w0E>`I^Cm!hjzIdZ62%k(vyDLT2M4zT`#U&LU+8CFd<&c7Os-{L6de^cBm zXfil!l_Bc4&4tV_eLG{B`TlhdJSu%H=`SdiU;y}U81XTjc(-Jn!|J{0w+%`q^w;oq zrzDJv-HBwxr7k&n&$(A1QSiFwwr3%!AD<`%k|hlu4&p>bY7y&9^_i*VnkE^(1>Z=v z1iszD_#HU&x-h;<&q}|du=;=m!%(@kVs-W(0!Q?b|IN|l9V74|9UmS4OksSR%g<3P z?y2b8GHrRl0m+wQD$)cg^F}#oBOE%l*nuo~KVG#wu><3pr+%u1v^;tI%1Kx!{S-R^60e>B*sIK!+ zAgf%~H1lT7BMEtCS~`IpTdZboVIgGW`jKDoVe``;w>}04U?QH@p<204(0B$XPP8S% z3^$NwZcbMgq#6f_JvXOBQ2TpOaSU$Ld!V)f!dm5gteWYvY#wye{}L4y#eLuA2q?9S zp6khLraYAaS0xG99$frpP?j$o#D9Vy2;rT@-$e#tl-KwSVzbqTGtd9d06Js8;e8MO z8^PEkilZI)eBQa?L1I7%eN!-NURU49Hw)Z?gSemN$@q~PWiq+ZT-Tg&KC-Oo5=T%C zNgw2PZ6E!>BcBfsEeJw6?lrQSTiDJm09_axPa7ppgZSL5s79xOJXZ9aZR6AXY+8rR zzosVj+y0sjONilR zb0#;3__P@W&OfW}hS$@yB^7f~mq`DPVCC-K%}L>LUnZ^;@%V;zRAL`j8||mZ>cA;3 z^J5LwqfsojC0zQ`3?*aHs51u@?7_qAX6}y&azSo|t-q7T1X6YO=GxAdIrO>2*YzxW z9LNUp4(E_$oOw4{OdATt`f8G|6H)M7^A$dS{&;VV6iT!>D1W930NvVS#BBR&!y?1C z5Oy5O2^Y4P%1An$T*U71y6TSDexG4b#6N3H%#t1iAxh5Ye+j!OVPX?c)Bo$CefC7sK-#gVd8D=nNgg3833dL@Ld7EK{5VmR!xqe=8S}gu8elEu zbaYg>v6qPP{uZOnkG!wOTHjDjk;}>HfIM{i`g3J*F*NweBTupT^sCKm`Bbf`yi6J^ z#mic$8dD?@A2u+)d;oB4UYxa_YaXtwtgrxmGeU=Hr53@{zXi{^ z>d7(a-hz1dl89@LgyGGK*7Jcn^Vy4BlGo2noiD8E85z|JI>5O5zOYmQOU}JE4mb$r z``^vLI9{4)fjxB~gVC#3K>&!NmqjT?SV>8#sg^ByW^1P`?z|sIr|(~GVep{gUJVbS z`@gs#7%{R9v=9=1CeQ`UN6SjR#t0r3g)o$Dg8LJ2EWW44cr;d#=HBq`0`4c zDL20!29C(-KLB6$$&4^E}!W?F7Xn# z^73+y^g(>RGm0>xO*-tAV?J7r=+yV??Dt3|IUX2*!VUs}WV}EF_{dj}{D4qpDg!mM zwsimzW^kO$px*320Z@-9|4*=gT+i3dEG(dY^0v(P?Tu%AVB2ky_XoI-Rso^&KLxPD zfTGe@E*8NeU4*TDWj)UnuD_Yr{&tX6b#Tc_Ch-A7l9^^qOU_+v-NoB7M3|z~q4#nM z)93kbbW&|Z=9zA_FjMG%Hu2$<)BibvSHQu~SWnh99&$>Nrj*0p)%ZIjq%LR_D`VY`P zv7D}ou-M0-O}R&L?N@f$5~qgkT5_(Gt8`)Qlla#b$b6&B9^A;vir9GFzLjw2@_lAE zawgsYZZm1<$VDX#VDdhLIO!PGV{dHO-sK?yH^7;0C5(^jr?ufIAeA# zxwdomH+o;+y#{BPoSn@<&TsnM_f6gq5K2t10-DRK@(gF37R&{|9Y0e>6F|ZQxnh?O zSfft#z2qO4If*>o_sBEx5kH@^pkE7V#`t#Lz0Jt>*cB3SK&ts3QnSw&UY_a-`Kzt# z;G=j-(PX-Q?;`WAvUr^*jY)+JDeAUg>}cH@c;|-c^fcr2c^^9dv6K<$#7>RMCXc70 zVNram=u{3H3l$2&my*h?;ThD#r`0StWKzIyZmUC9%pgxE_m#Us<;iB0>x35LT%f<^ zV3qNuP9z?2>6aTjUoCW)9?|gZIIm;Ue$3~Uc>iG_xI4yFVP!rhe2`ZsaVxE3-dsm{ z!2Gb-)gPQlVJ2A7MudO4Wn>c*C(Ser=4K5aHP!jV7Ay9M-*Ci9^75JZW@-Q;e^v``hS9h}lb~v>}eBShgdt+DtDdV*wKv30E9718AK)A-t}cBcVUJ0Nbdhc?+$C z$EX&6RIN-@=aT?FLF~9m+~_Wg-Zx()Vs41nr+X2`lmObZbP5+vP>KbcLCc_}Y z+PNE&uV5_Eci-0s`i#Kd@+r&n zjAzyN{k7?Ae<5htbRsiMH~qT$mLuOTeW+k;&tBaE^*aOs^Vb$U7xPF9!)Dj!h95tzOTo+mv^g;?qu9nTxdh!`kwPUy$~I4y^=&K+%^M2 z>o#>Yn&qYGiv5RP8WUt~;gAGbra$%dSR1cru5ogO)2pjv1xvuA5PRP!fIJTK7h9a^ zk{Pwb!!W3}G94$ntsB>Zy#!-SvprE#bbWX#T8?N}J&wx{mTIYhpG$h={*f}aU3{n4 zX~V5GogDa3>9cZtU~tIVWp=vc4>7o4MpYQj`q9k$eP#i>6#}NjZW=A%wDZ+TT{lto zkH08|rN%*ZEfRd4ZjvKTj|Pe4Do@PTg_=Tsvsh<|qt@lHL<%P3{|(~o%^>{zVkNq( z7pMkGT4`4)eM=ZqGcrNr1#EegqWeb6=I2bu zll9cgi9t7yf$t|=Hsl@G`NOz^O-wfJzLb_btyo--N!QZE|H9Kb8HyH z?si=MkM6nH%l$6Z*6kx5vuSq;^EjT;U0+r!a__#c9h24ujd=863}brueM(txc0s3q z_p2xPCYN&4Pe5$5$CBimQbarTLr;b@^LuX3FWt!j4?=c*Q?Fx0@xQ*=#7);ZJ+nb% z!8g4hpSfugsaw316U;^i8+wY&?6NQXu!cH0(6Gn3`d;Z8aY_)wSHXjr0=oYX8xsc) zb=?v3?f7^Q5@<47S0l1GnZ^uwc%AnQb3b0#KiEA|eLOcGvY)NC9rpx}i*B&^)8_oM zX=vQ=-aJye)^c@o^IDPmoJ{6m)$a$fkom-Lxi;4SqL3Y?d+>#8z-En(*tp`!Mr5kI z?3un4!bil>QC{8ZXMAcMPV!e4c>6s34wFqd?#q+YL92|S*DW{0JzNEG)ER|@5zIM+ z>4Fn&V0ymcje=~!EQiZLBmJitssr>Ub?RudOIb@^EZ%S5U775D_lc?>dPRe^YM;d8 zVJf;E4rzx1Ou|Ek*g1EYhXRPuSo)?YPno&Sr`!H!CZ|rNpyb7P)r28(+Z#)6BhM_X z+G?uRV@N@sp5pB|y4Tg2gri1U8nJ2sWhg8|IfGeQsR(C^2xmtB1ey4k-*P$PlVV1- zJb8)VJt+f>Nh-TaIF6^5SARKqgFpXEPFA&Ao9{cjlkD225_*(ea#t+Iq?An$?2o`P z1k_mdb$wk!IIA`*r0lBw{_mzhOmlly_2K{!ZY7laok{J zSj2PIzN(k*v0MUS$H@6&0$=QkY8Q{wGcg}`Ye_Y@LeRgO(VVqy%ju9XZwP^IzS^{1 ziv8#s{;cX&d|;3}Z)R<6c%YQ8SLWOtTUggLgx3^g87~n|QS$4Ehk%_Dn-O#%>o_aR zr4O9mXabBVEM`+*%5>WCJD=t%FCH-Dzd-_0tH-tTUI660oAj{qdT%%!PtkNaK)_

    e+XOF#TUr~sv+tcmqnDpJc&J4;&Od(*yR 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 z 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 VKhu22!AAgpicmG#T4}S;{{hr%uTB5} literal 0 HcmV?d00001 diff --git a/.github/assets/MODRINTH_versions_page.png b/.github/assets/MODRINTH_versions_page.png new file mode 100644 index 0000000000000000000000000000000000000000..3cfdd2f5f90ba748c801c7005696e727d1cc7179 GIT binary patch literal 186344 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≺$gR)lG)^36Ps|Ult)1&k-^+Vn0guF*%RZ;IO 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 literal 0 HcmV?d00001 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b01da52..42fb112 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -34,4 +34,6 @@ jobs: uses: actions/upload-artifact@v4 with: name: Artifacts - path: build/libs/ \ No newline at end of file + path: | + fabric/build/libs/ + neoforge/build/libs/ \ No newline at end of file diff --git a/.gitignore b/.gitignore index d8619bb..797dda0 100644 --- a/.gitignore +++ b/.gitignore @@ -41,3 +41,4 @@ replay_*.log /translators/input /translators/output +/fabric/runs/ diff --git a/DOCS.md b/DOCS.md new file mode 100644 index 0000000..d9ca844 --- /dev/null +++ b/DOCS.md @@ -0,0 +1,506 @@ +# Simple Mod Sync - User Guide + +**Table of contents** + +- [Simple Mod Sync - User Guide](#simple-mod-sync-user-guide) + - [Quick Start Guide](#quick-start-guide) + - [Step 1: Create Your Sync File](#step-1-create-your-sync-file) + - [Step 2: Add Your First Mod](#step-2-add-your-first-mod) + - [Step 3: Add More Content](#step-3-add-more-content) + - [Step 4: Share Your File](#step-4-share-your-file) + - [Understanding the Sync File](#understanding-the-sync-file) + - [The Basics](#the-basics) + - [Making Content Updatable](#making-content-updatable) + - [Different Types of Content](#different-types-of-content) + - [Mods](#mods) + - [Resource Packs](#resource-packs) + - [Shaders](#shaders) + - [Data Packs](#data-packs) + - [Config Files (Packed Content)](#config-files-packed-content) + - [Getting Download Links](#getting-download-links) + - [From Modrinth](#from-modrinth) + - [From CurseForge](#from-curseforge) + - [From Other Sources](#from-other-sources) + - [Complete Example](#complete-example) + - [Tips and Troubleshooting](#tips-and-troubleshooting) + - [Glossary](#glossary) + - [Advanced Features](#advanced-features) + - [File Modifications](#file-modifications) + - [Remove Files](#remove-files) + - [Rename/Move Files](#renamemove-files) + + +--- + +## Quick Start Guide + +### Step 1: Create Your Sync File + +Open any text editor (Notepad, TextEdit, etc.) and paste this template: + +```json +{ + "sync_version": 3, + "sync": [ + + ] +} +``` + +Save it as `modpack.json` (or any name ending in `.json`). + +**What this means:** +- `sync_version: 3` tells Simple Mod Sync which format you're using (3 is the newest) +- `sync: [ ]` is where you'll put your list of content to download + +### Step 2: Add Your First Mod + +Let's add Sodium as an example. Between the square brackets `[ ]`, add: + +```json +{ + "sync_version": 3, + "sync": [ + { + "url": "https://cdn.modrinth.com/data/AANobbMI/versions/EoNKHoLH/sodium-fabric-0.6.5%2Bmc1.21.1.jar", + "name": "Sodium", + "version": "0.6.5", + "type": "mod" + } + ] +} +``` + +> Note that the URL is only as example, look at [From Modrinth](#from-modrinth) to get +> your own URL. + +**What each part means:** +- `url` - Where to download the file from +- `name` - A friendly name so you know what this is +- `version` - Any text that helps you track which version this is +- `type` - What kind of content this is (mod, resourcepack, shader, etc.) + +### Step 3: Add More Content + +To add more items, put a comma `,` after the closing `}` and add another item: + +```json +{ + "sync_version": 3, + "sync": [ + { + "url": "https://cdn.modrinth.com/data/AANobbMI/versions/EoNKHoLH/sodium-fabric-0.6.5%2Bmc1.21.1.jar", + "name": "Sodium", + "version": "0.6.5", + "type": "mod" + }, + { + "url": "https://cdn.modrinth.com/data/P7dR8mSH/versions/4OZL6q6h/fabric-api-0.110.5%2B1.21.1.jar", + "name": "Fabric API", + "version": "0.110.5", + "type": "mod" + } + ] +} +``` + +**Important:** Don't forget the comma between items! The last item should NOT have a comma after it. + +### Step 4: Share Your File + +1. Upload your `.json` file to a sharing service: + - **Pastebin**: Go to pastebin.com, paste your file, save, and use the "raw" link + - **GitHub Gist**: Create a gist at gist.github.com and use the "raw" link + - **Your own website**: Upload it anywhere and link directly to the file + +2. Make sure the link shows **only the text** (no website design around it) + +3. Give this link to your friends - they'll paste it into Simple Mod Sync and everything downloads automatically! + +--- + +## Understanding the Sync File + +### The Basics + +Every item in your sync list needs at minimum: +- **url** - The download link + +Optional but recommended: +- **name** - Helps you remember what this is +- **version** - Helps track updates +- **type** - Where to put the file (defaults to "mod") + +### Making Content Updatable + +The `version` field is important for updates. When you want to update a mod: + +1. Change the `url` to the new version's download link +2. Change the `version` to something different (any text works) +3. Users running the sync will automatically get the new version + +**Example:** +```json +{ + "url": "https://example.com/sodium-0.5.0.jar", + "version": "0.5.0", + "name": "Sodium" +} +``` + +When you update: +```json +{ + "url": "https://example.com/sodium-0.6.0.jar", + "version": "0.6.0", + "name": "Sodium" +} +``` + +Simple Mod Sync sees the version changed and downloads the new file! + +--- + +## Different Types of Content + +### Mods +```json +{ + "url": "https://example.com/cool-mod.jar", + "name": "Cool Mod", + "version": "1.0", + "type": "mod" +} +``` +Goes into your `mods` folder. + +### Resource Packs +```json +{ + "url": "https://example.com/texture-pack.zip", + "name": "Awesome Textures", + "version": "2.1", + "type": "resourcepack" +} +``` +Goes into your `resourcepacks` folder. + +### Shaders +```json +{ + "url": "https://example.com/shader.zip", + "name": "Beautiful Shaders", + "version": "1.5", + "type": "shader" +} +``` +Goes into your `shaderpacks` folder. + +### Data Packs +```json +{ + "url": "https://example.com/datapack.zip", + "name": "Custom Worldgen", + "version": "3.0", + "type": "datapack" +} +``` +Goes into your world's `datapacks` folder. + +### Config Files (Packed Content) + +For custom configurations or files that need to go in specific folders: + +```json +{ + "url": "https://example.com/configs.zip", + "name": "Modpack Configs", + "version": "1.0", + "type": "packed", + "directory": "config" +} +``` + +This downloads a ZIP file and extracts it into the folder you specify with `directory`. + +**Common uses:** +- `"directory": "config"` - Extract into the config folder +- `"directory": "config/somemod"` - Extract into a specific mod's config folder +- `"directory": "."` - Extract into the game directory root + +You can also use `"type": "config"` instead of `"type": "packed"` - they work the same way. + +--- + +## Getting Download Links + +### From Modrinth + +![Modrinth versions page example](./.github/assets/MODRINTH_versions_page.png) + +1. Go to the mod/pack page on Modrinth +2. Click the **Versions** tab +3. Find the version you want +4. **Right-click** the download button +5. Select "Copy link address" or "Copy link" +6. Paste this URL into your sync file + +The URL should look like: +``` +https://cdn.modrinth.com/data/PROJECT/versions/VERSION/filename.jar +``` + +**Important:** Make sure it ends with `.jar` or `.zip` - if it doesn't, you copied the wrong link! + +### From CurseForge + +Due to the way how CurseForge works, its not as easy to get the raw file URL. Either do it +by inspecting the network when downloading the mod. + +![CurseForge inspect page](./.github/assets/CURSEFORGE_inspect_url.png) + +Or follow this reddit post: https://www.reddit.com/r/feedthebeast/comments/fffna3/comment/fjyceu8/ + +The URL should look like: +``` +https://mediafilez.forgecdn.net/files/XXXX/YYY/filename.jar +``` + +**Note:** Some CurseForge links may redirect or change. If you have issues, consider re-uploading the file to a more stable hosting service. + +### From Other Sources + +You can use any direct download link that: +- Points directly to a `.jar` or `.zip` file +- Doesn't require login or clicking through pages +- Is publicly accessible + +**Good sources:** +- GitHub releases (use the "raw" download links) +- Direct file hosting services +- Your own web server + +**Avoid:** +- Links that go to web pages (not the file itself) +- Download sites with ads/waiting timers +- Links that require accounts or authentication + +--- + +## Complete Example + +Here's a full sync file with different types of content: + +```json +{ + "sync_version": 3, + "sync": [ + { + "url": "https://cdn.modrinth.com/data/AANobbMI/versions/EoNKHoLH/sodium-fabric-0.6.5%2Bmc1.21.1.jar", + "name": "Sodium", + "version": "0.6.5", + "type": "mod" + }, + { + "url": "https://cdn.modrinth.com/data/P7dR8mSH/versions/4OZL6q6h/fabric-api-0.110.5%2B1.21.1.jar", + "name": "Fabric API", + "version": "0.110.5", + "type": "mod" + }, + { + "url": "https://cdn.modrinth.com/data/slufHzC2/versions/Sdg6a6Tc/texture-pack.zip", + "name": "Cool Textures", + "version": "3.0", + "type": "resourcepack" + }, + { + "url": "https://cdn.modrinth.com/data/BS9T99lD/versions/tAx0UOBX/shaders.zip", + "name": "Amazing Shaders", + "version": "0.12", + "type": "shader" + }, + { + "url": "https://cdn.modrinth.com/data/lWDHr9jE/versions/aLQ1otmd/worldgen-pack.zip", + "name": "Custom World Generation", + "version": "2.4", + "type": "datapack" + }, + { + "url": "https://example.com/modpack-configs.zip", + "name": "Modpack Configuration", + "version": "1.0", + "type": "config", + "directory": "config" + } + ] +} +``` + +--- + +## Tips and Troubleshooting + +**✓ Always test your sync file** before sharing it! Run it yourself to make sure everything downloads correctly. + +**✓ Keep version numbers updated** every time you change a URL. This ensures users get the new version. + +**✓ Use clear names** so you and others know what each item is without checking the URL. + +**✓ Check your commas!** Missing or extra commas are the most common mistake. Every item needs a comma after it except the last one. + +**✓ Use a JSON validator** if something isn't working. Search "JSON validator" online and paste your file to check for errors. + +**✗ Don't use shortened URLs** (like bit.ly) - use the full direct download link. + +**✗ Don't include spaces or special characters** in version numbers unless necessary. + +--- + +## Glossary + +**Sync File / Schema File** - The `.json` file that contains your list of mods and content to download. + +**JSON** - A file format for storing structured data. It's just text with specific formatting rules (like needing commas between items). + +**URL** - The web address where a file can be downloaded from. Should point directly to a `.jar` or `.zip` file. + +**Version** - A text label that helps track which version of a mod you're using. Change this when you update the URL. + +**Type** - Tells Simple Mod Sync where to put the downloaded file (mods folder, resourcepacks folder, etc.). + +**Packed Content** - A ZIP file that gets extracted into a specific folder you choose. + +**Directory** - A folder path where packed content should be extracted to. + +--- + +## Advanced Features + +**Note:** This section is for advanced users who want more control over their Minecraft instance. Beginners can skip this entirely - the basic sync features above are all you need! + +### File Modifications + +The `modify` section lets you automatically remove or rename files in the game instance. This is useful for cleaning up old files or managing configurations. + +**Structure:** +```json +{ + "sync_version": 3, + "sync": [ + // ... your content here ... + ], + "modify": [ + // ... modifications here ... + ] +} +``` + +Each modification needs: +- `type` - What operation to perform ("remove" or "rename") +- `pattern` - A regex pattern that matches files to modify +- `path` - Where to look for files (usually `"."` for the game directory) + +**Warning:** Regex patterns can be complex. If you're not familiar with regex, use the examples below and test carefully! + +### Remove Files + +Automatically delete files matching a pattern. + +**Example - Remove user cache:** +```json +{ + "sync_version": 3, + "modify": [ + { + "type": "remove", + "pattern": "^usercache\\.json$", + "path": "." + } + ] +} +``` + +This removes the `usercache.json` file from the game directory. + +**Example - Remove old mod versions:** + +This might be useful when you removed a mod from your modpack. + +```json +{ + "type": "remove", + "pattern": "^mods/oldmod-.*\\.jar$", + "path": "." +} +``` + +This removes any file in the mods folder starting with "oldmod-" and ending with ".jar". + +### Rename/Move Files + +Move or rename files automatically. + +**Example - Backup a file:** +```json +{ + "sync_version": 3, + "modify": [ + { + "type": "rename", + "pattern": "^usercache\\.json$", + "result": "usercache_backup.json", + "path": "." + } + ] +} +``` + +This renames `usercache.json` to `usercache_backup.json`. + +**Common Patterns:** + +| What you want | Pattern | +|---------------|---------| +| Exact filename | `^filename\\.txt$` | +| Any file starting with "old" | `^old.*$` | +| Any .log file | `^.*\\.log$` | +| Files in config folder | `^config/.*$` | + +**Important Notes:** +- Always use double backslashes `\\` before dots in filenames (e.g., `\\.json` not `.json`) +- Test your patterns carefully - they can match more files than you expect! +- The `result` in rename operations is the new filename or path +- You can test regex patterns at regex101.com before using them + +**Full Example with Modifications:** +```json +{ + "sync_version": 3, + "sync": [ + { + "url": "https://cdn.modrinth.com/data/AANobbMI/versions/EoNKHoLH/sodium-fabric-0.6.5%2Bmc1.21.1.jar", + "name": "Sodium", + "version": "0.6.5", + "type": "mod" + } + ], + "modify": [ + { + "type": "remove", + "pattern": "^usercache\\.json$", + "path": "." + }, + { + "type": "remove", + "pattern": "^logs/.*\\.log$", + "path": "." + } + ] +} +``` + +This sync file downloads Sodium and cleans up the user cache and old log files. + +--- + +Note: This file was *improved* by Claude Sonnet 4.5 for better readability diff --git a/README.md b/README.md index 5dac1b8..e5786ba 100644 --- a/README.md +++ b/README.md @@ -1,44 +1,21 @@ # Simple Mod Sync -A lightweight mod for synchronizing game mods via a URL-based schema. +A simple way to share and sync mods, resource packs, shaders, and other Minecraft content with your friends or community. -## Features +## What is Simple Mod Sync? -- **Automated Mod Synchronization**: Synchronize mods from a specified URL on every game start. -- **Customizable Destination**: Choose where mods are downloaded on your system. -- **User-Friendly Setup**: Simple configuration with minimal setup required. +Simple Mod Sync lets you create a list of mods and other content that can be automatically downloaded and updated. Instead of telling your friends "download these 20 mods from different websites," you give them one link and this mod does the rest! -## Example schema file +Think of it like a shopping list, but for Minecraft content. You write down what you want (the URLs to download files), and Simple Mod Sync goes shopping for you. -The file retrieved from the URL must follow this structure: -```json -{ - "sync_version": 3, - "sync": [ - { - "url": "https://example.com/url/to/mod.jar", - "name": "some-mod_name", - "version": "2.8.1", - "type": "mod" - } - ] -} -``` -> Add more mods/files as needed to the content array. -> Additionally you can add 'modify' section to the file. +## Usage -## Simple Setup Guide +If you are just downloading this mod because somebody sent you, you probably +just need to download the mod, put it into the mods file and be gone. -1. **Create the JSON File**: Use the [example schema](#example-schema-file) to create your mod list file. - -2. **Host the File**: Upload the JSON file to an HTTP server. You can use services like [Pastebin](https://pastebin.com) for this. - -3. **Install the Mod**: Install the _Simple Mod Sync_ mod as usual. When the game starts for the first time, it will prompt you to enter the URL of your JSON file. - -4. **Monitor Synchronization**: Once the URL is set, the mod synchronization status will be visible in the top-left corner of the title screen. - -- To change the URL later, simply update the `download_url` setting in the config file or in the synced mods menu. +If you are the one hosting the server and/or managing the mods, look into the +[Docs file](./DOCS.md). ## For Developers diff --git a/TODO b/TODO new file mode 100644 index 0000000..fab55a9 --- /dev/null +++ b/TODO @@ -0,0 +1,30 @@ +DOCUMENTATION +- Sync version +- Sync + - Types + - Urls (how to obtain them) + - Versions + - Paths for packed type +- Modify + - Types + - Patterns +- For developers + - The system + - Handlers + - Contributing + + +COMMON + - [x] Modifications + - [x] Auto sync + - [ ] Minecraft version and loader check + - UI + - [x] Update list of contents when schema parsed + - [x] Content type icon + - [x] Init screen + - [ ] Restart game popup + - [w] Translations + - [x] Tooltips + +NEOFORGE + - [x] module diff --git a/build.gradle b/build.gradle index 2f6c710..7cede0c 100644 --- a/build.gradle +++ b/build.gradle @@ -1,80 +1,4 @@ plugins { - id 'fabric-loom' version '1.10-SNAPSHOT' - id 'maven-publish' -} - -version = project.mod_version -group = project.maven_group - -base { - archivesName = project.archives_base_name -} - -repositories { - // Add repositories to retrieve artifacts from in here. - // You should only use this when depending on other mods because - // Loom adds the essential maven repositories to download Minecraft and libraries from automatically. - // See https://docs.gradle.org/current/userguide/declaring_repositories.html - // for more information about repositories. -} - -fabricApi { - configureDataGeneration() -} - -dependencies { - // To change the versions see the gradle.properties file - minecraft "com.mojang:minecraft:${project.minecraft_version}" - mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2" - modImplementation "net.fabricmc:fabric-loader:${project.loader_version}" - - // Fabric API. This is technically optional, but you probably want it anyway. - modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" - -} - -processResources { - inputs.property "version", project.version - - filesMatching("fabric.mod.json") { - expand "version": project.version - } -} - -tasks.withType(JavaCompile).configureEach { - it.options.release = 21 -} - -java { - // Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task - // if it is present. - // If you remove this line, sources will not be generated. - withSourcesJar() - - sourceCompatibility = JavaVersion.VERSION_21 - targetCompatibility = JavaVersion.VERSION_21 -} - -jar { - from("LICENSE") { - rename { "${it}_${project.base.archivesName.get()}"} - } -} - -// configure the maven publication -publishing { - publications { - create("mavenJava", MavenPublication) { - artifactId = project.archives_base_name - from components.java - } - } - - // See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing. - repositories { - // Add repositories to publish to here. - // Notice: This block does NOT have the same function as the block in the top level. - // The repositories here will be used for publishing your artifact, not for - // retrieving dependencies. - } + id 'fabric-loom' version '1.10-SNAPSHOT' apply false + id 'net.neoforged.moddev' version '2.0.62-beta' apply false } \ No newline at end of file diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle new file mode 100644 index 0000000..1957c33 --- /dev/null +++ b/buildSrc/build.gradle @@ -0,0 +1,3 @@ +plugins { + id 'groovy-gradle-plugin' +} \ No newline at end of file diff --git a/buildSrc/src/main/groovy/multiloader-common.gradle b/buildSrc/src/main/groovy/multiloader-common.gradle new file mode 100644 index 0000000..881c91e --- /dev/null +++ b/buildSrc/src/main/groovy/multiloader-common.gradle @@ -0,0 +1,128 @@ +plugins { + id 'java-library' + id 'maven-publish' +} + +base { + archivesName = "${mod_id}-${project.name}-${minecraft_version}" +} + +java { + toolchain.languageVersion = JavaLanguageVersion.of(java_version) + withSourcesJar() + withJavadocJar() +} + +repositories { + mavenCentral() + exclusiveContent { + forRepository { + maven { + name = 'Sponge' + url = 'https://repo.spongepowered.org/repository/maven-public' + } + } + filter { includeGroupAndSubgroups('org.spongepowered') } + } + exclusiveContent { + forRepositories( + maven { + name = 'ParchmentMC' + url = 'https://maven.parchmentmc.org/' + }, + maven { + name = "NeoForge" + url = 'https://maven.neoforged.net/releases' + } + ) + filter { includeGroup('org.parchmentmc.data') } + } + maven { + name = 'BlameJared' + url = 'https://maven.blamejared.com' + } +} + +['apiElements', 'runtimeElements', 'sourcesElements', 'javadocElements'].each { variant -> + configurations."$variant".outgoing { + capability("$group:${project.name}:$version") + capability("$group:${base.archivesName.get()}:$version") + capability("$group:$mod_id-${project.name}-${minecraft_version}:$version") + capability("$group:$mod_id:$version") + } + publishing.publications.configureEach { + suppressPomMetadataWarningsFor(variant) + } +} + +sourcesJar { + from(rootProject.file('LICENSE')) { + rename { "${it}_${mod_name}" } + } +} + +jar { + from(rootProject.file('LICENSE')) { + rename { "${it}_${mod_name}" } + } + + manifest { + attributes([ + 'Specification-Title' : mod_name, + 'Specification-Vendor' : mod_author, + 'Specification-Version' : project.jar.archiveVersion, + 'Implementation-Title' : project.name, + 'Implementation-Version': project.jar.archiveVersion, + 'Implementation-Vendor' : mod_author, + 'Built-On-Minecraft' : minecraft_version + ]) + } +} + +processResources { + var expandProps = [ + 'version' : version, + 'group' : project.group, + 'minecraft_version' : minecraft_version, + 'minecraft_version_range' : minecraft_version_range, + 'fabric_version' : fabric_version, + 'fabric_loader_version' : fabric_loader_version, + 'mod_name' : mod_name, + 'mod_author' : mod_author, + 'mod_id' : mod_id, + 'license' : license, + 'description' : project.description, + 'neoforge_version' : neoforge_version, + 'neoforge_loader_version_range': neoforge_loader_version_range, + 'credits' : credits, + 'java_version' : java_version + ] + + var jsonExpandProps = expandProps.collectEntries { + key, value -> [(key): value instanceof String ? value.replace("\n", "\\\\n") : value] + } + + filesMatching(['META-INF/mods.toml', 'META-INF/neoforge.mods.toml']) { + expand expandProps + } + + filesMatching(['pack.mcmeta', 'fabric.mod.json', '*.mixins.json']) { + expand jsonExpandProps + } + + inputs.properties(expandProps) +} + +publishing { + publications { + register('mavenJava', MavenPublication) { + artifactId base.archivesName.get() + from components.java + } + } + repositories { + maven { + url System.getenv('local_maven_url') + } + } +} \ No newline at end of file diff --git a/buildSrc/src/main/groovy/multiloader-loader.gradle b/buildSrc/src/main/groovy/multiloader-loader.gradle new file mode 100644 index 0000000..1821919 --- /dev/null +++ b/buildSrc/src/main/groovy/multiloader-loader.gradle @@ -0,0 +1,44 @@ +plugins { + id 'multiloader-common' +} + +configurations { + commonJava{ + canBeResolved = true + } + commonResources{ + canBeResolved = true + } +} + +dependencies { + compileOnly(project(':common')) { + capabilities { + requireCapability "$group:$mod_id" + } + } + commonJava project(path: ':common', configuration: 'commonJava') + commonResources project(path: ':common', configuration: 'commonResources') +} + +tasks.named('compileJava', JavaCompile) { + dependsOn(configurations.commonJava) + source(configurations.commonJava) +} + +processResources { + dependsOn(configurations.commonResources) + from(configurations.commonResources) +} + +tasks.named('javadoc', Javadoc).configure { + dependsOn(configurations.commonJava) + source(configurations.commonJava) +} + +tasks.named('sourcesJar', Jar) { + dependsOn(configurations.commonJava) + from(configurations.commonJava) + dependsOn(configurations.commonResources) + from(configurations.commonResources) +} \ No newline at end of file diff --git a/common/build.gradle b/common/build.gradle new file mode 100644 index 0000000..98fd4df --- /dev/null +++ b/common/build.gradle @@ -0,0 +1,38 @@ +plugins { + id 'multiloader-common' + id 'net.neoforged.moddev' +} + +neoForge { + neoFormVersion = neo_form_version + def at = file('src/main/resources/META-INF/accesstransformer.cfg') + if (at.exists()) { + accessTransformers.from(at.absolutePath) + } + parchment { + minecraftVersion = parchment_minecraft + mappingsVersion = parchment_version + } +} + +dependencies { + compileOnly group: 'org.spongepowered', name: 'mixin', version: '0.8.5' + compileOnly group: 'io.github.llamalad7', name: 'mixinextras-common', version: '0.3.5' + annotationProcessor group: 'io.github.llamalad7', name: 'mixinextras-common', version: '0.3.5' +} + +configurations { + commonJava { + canBeResolved = false + canBeConsumed = true + } + commonResources { + canBeResolved = false + canBeConsumed = true + } +} + +artifacts { + commonJava sourceSets.main.java.sourceDirectories.singleFile + commonResources sourceSets.main.resources.sourceDirectories.singleFile +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/HandlerRegistry.java b/common/src/main/java/dev/oxydien/simpleModSync/HandlerRegistry.java new file mode 100644 index 0000000..e79b945 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/HandlerRegistry.java @@ -0,0 +1,55 @@ +package dev.oxydien.simpleModSync; + +import dev.oxydien.simpleModSync.content.ContentType; +import dev.oxydien.simpleModSync.content.ContentTypeUtils; +import dev.oxydien.simpleModSync.content.handler.ContentHandler; +import dev.oxydien.simpleModSync.content.handler.GameContentHandler; +import dev.oxydien.simpleModSync.content.handler.ModContentHandler; +import dev.oxydien.simpleModSync.content.handler.PackedContentHandler; +import dev.oxydien.simpleModSync.modification.handler.ModificationHandler; +import dev.oxydien.simpleModSync.modification.handler.RemoveModificationHandler; +import dev.oxydien.simpleModSync.modification.handler.RenameModificationHandler; + +import java.util.HashMap; + +public class HandlerRegistry { + private final HashMap> contentHandlers = new HashMap<>(); + private final HashMap> modificationHandlers = new HashMap<>(); + + public HandlerRegistry() {} + + public ContentHandler getContentHandler(String id) { + String normalized = id.trim().toLowerCase(); + return contentHandlers.get(normalized); + } + + public ContentHandler getContentHandler(ContentType id) { + return this.getContentHandler(ContentTypeUtils.ToString(id)); + } + + public ModificationHandler getModificationHandler(String id) { + String normalized = id.trim().toLowerCase(); + return modificationHandlers.get(normalized); + } + + public void registerContentHandler(String id, ContentHandler handler) { + contentHandlers.put(id, handler); + } + public void registerModificationHandler(String id, ModificationHandler handler) { + modificationHandlers.put(id, handler); + } + + public void init() { + this.contentHandlers.put("mod", new ModContentHandler()); + this.contentHandlers.put("resourcepack", new GameContentHandler("resourcepacks")); + this.contentHandlers.put("datapack", new GameContentHandler("datapacks")); + this.contentHandlers.put("shader", new GameContentHandler("shaderpacks")); + + ContentHandler packedContentHandler = new PackedContentHandler(); + this.contentHandlers.put("packed", packedContentHandler); + this.contentHandlers.put("config", packedContentHandler); + + this.modificationHandlers.put("remove", new RemoveModificationHandler()); + this.modificationHandlers.put("rename", new RenameModificationHandler()); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/SimpleModSync.java b/common/src/main/java/dev/oxydien/simpleModSync/SimpleModSync.java new file mode 100644 index 0000000..7cc1abb --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/SimpleModSync.java @@ -0,0 +1,74 @@ +package dev.oxydien.simpleModSync; + +import dev.oxydien.simpleModSync.config.Config; +import dev.oxydien.simpleModSync.content.SyncSchema; +import dev.oxydien.simpleModSync.log.Log; +import dev.oxydien.simpleModSync.workers.SyncWorker; +import org.jetbrains.annotations.Nullable; + +import java.nio.file.Path; +import java.util.concurrent.atomic.AtomicReference; + +public abstract class SimpleModSync { + public static final String MOD_ID = "simplemodsync"; + + private static SimpleModSync INSTANCE; + + public static void init(SimpleModSync instance) { + INSTANCE = instance; + } + + public static SimpleModSync getInstance() { + return INSTANCE; + } + + public abstract Path getInstanceDir(); + + public HandlerRegistry Handlers = new HandlerRegistry(); + private final AtomicReference workerThread = new AtomicReference<>(); + + @Nullable + public SyncSchema syncSchema; + public SyncWorker syncWorker; + + public void onInitialize() { + Log.init(MOD_ID); + Log.debug("Initializing SimpleModSync"); + + Path configPath = this.getInstanceDir().resolve("config").resolve(MOD_ID + ".json"); + new Config(configPath); + + this.Handlers.init(); + + if (Config.instance.getAutoDownload()) { + this.start(); + } + } + + public void start() { + if (this.syncWorker != null && this.syncWorker.isRunning()) { + return; + } + + Log.info("Starting SimpleModSync background worker thread..."); + + this.syncSchema = new SyncSchema(); + this.syncWorker = new SyncWorker(this.syncSchema); + + Thread thread = new Thread(this.syncWorker); + this.workerThread.set(thread); + thread.start(); + } + + public void stop() { // warn: unused + if (this.syncWorker != null) { + this.syncWorker.shutdown(); + this.syncWorker = null; + } + + Thread thread = workerThread.get(); + if (thread != null) { + thread.interrupt(); + } + } +} diff --git a/src/main/java/dev/oxydien/config/Config.java b/common/src/main/java/dev/oxydien/simpleModSync/config/Config.java similarity index 61% rename from src/main/java/dev/oxydien/config/Config.java rename to common/src/main/java/dev/oxydien/simpleModSync/config/Config.java index 3d91419..a3de5f5 100644 --- a/src/main/java/dev/oxydien/config/Config.java +++ b/common/src/main/java/dev/oxydien/simpleModSync/config/Config.java @@ -1,34 +1,34 @@ -package dev.oxydien.config; +package dev.oxydien.simpleModSync.config; import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.JsonParser; -import dev.oxydien.logger.Log; -import org.jetbrains.annotations.Nullable; +import dev.oxydien.simpleModSync.log.Log; import java.io.*; +import java.nio.file.Path; public class Config { - private final String path; + private final Path path; private boolean autoDownload; private String downloadUrl; - private String downloadDestination; public static Config instance; - public Config(String path, @Nullable String downloadDestination) { - this.path = path; + public Config(Path configFilePath) { + this.path = configFilePath; this.autoDownload = true; this.downloadUrl = ""; - this.downloadDestination = downloadDestination; + this.load(); this.save(); + instance = this; - Log.Log.debug("Config file loaded"); + Log.debug("Config file loaded"); } - public String getPath() { + public Path getPath() { return this.path; } @@ -36,12 +36,13 @@ public boolean getAutoDownload() { return this.autoDownload; } - public String getDownloadUrl() { - return this.downloadUrl; + public void setAutoDownload(boolean autoDownload) { + this.autoDownload = autoDownload; + this.save(); } - public String getDownloadDestination(String type) { - return this.getDownloadDestination() + "/" + type; + public String getDownloadUrl() { + return this.downloadUrl; } public void setDownloadUrl(String downloadUrl) { @@ -49,26 +50,21 @@ public void setDownloadUrl(String downloadUrl) { this.save(); } - public String getDownloadDestination() { - return this.downloadDestination; - } - // Deserialize from json file public void load() { // Read from json file StringBuilder content = new StringBuilder(); - try (BufferedReader br = new BufferedReader(new FileReader(this.getPath()))) { + try (BufferedReader br = new BufferedReader(new FileReader(this.getPath().toFile()))) { String line; while ((line = br.readLine()) != null) { content.append(line); } } catch (FileNotFoundException e) { - Log.Log.warn("config.load", "Config file not found, creating a default one", e); + Log.warning("config.load", "Config file not found, creating a default one", e); return; } catch (IOException e) { - Log.Log.error("config.load.IOException", "Failed to read config file", e); - return; + Log.error("config.load.IOException", "Failed to read config file", e); } // Parse json @@ -81,11 +77,6 @@ public void load() { if (downloadUrl != null && !downloadUrl.getAsString().isEmpty()) { this.downloadUrl = downloadUrl.getAsString(); } - - var downloadDestination = jsonElement.getAsJsonObject().get("download_destination"); - if (downloadDestination != null && downloadDestination.getAsString().isEmpty()) { - this.downloadDestination = downloadDestination.getAsString(); - } } // Serialize to json file @@ -94,13 +85,12 @@ public void save() { JsonObject json = new JsonObject(); json.addProperty("auto_download", this.autoDownload); json.addProperty("download_url", this.downloadUrl); - json.addProperty("download_destination", this.downloadDestination); // Write to json file - try (BufferedWriter bw = new BufferedWriter(new FileWriter(this.getPath()))) { + try (BufferedWriter bw = new BufferedWriter(new FileWriter(this.getPath().toFile()))) { bw.write(json.toString()); } catch (IOException e) { - Log.Log.error("config.save.IOException", "Failed to write config file", e); + Log.error("config.save.IOException", "Failed to write config file", e); } } -} +} \ No newline at end of file diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/Content.java b/common/src/main/java/dev/oxydien/simpleModSync/content/Content.java new file mode 100644 index 0000000..e8e2ad4 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/Content.java @@ -0,0 +1,31 @@ +package dev.oxydien.simpleModSync.content; + +public class Content { + private final String uri; + private final ContentType type; + private final String name; + private final String version; + + public Content(String uri, ContentType type, String name, String version) { + this.uri = uri; + this.type = type; + this.name = name; + this.version = version; + } + + public String getUri() { + return uri; + } + + public ContentType getType() { + return type; + } + + public String getName() { + return name; + } + + public String getVersion() { + return version; + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/ContentInfo.java b/common/src/main/java/dev/oxydien/simpleModSync/content/ContentInfo.java new file mode 100644 index 0000000..d617e55 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/ContentInfo.java @@ -0,0 +1,21 @@ +package dev.oxydien.simpleModSync.content; + +public class ContentInfo { + private final T content; + + public ContentInfo(T content) { + this.content = content; + } + + public String GetTitle() { + return this.content.getName().substring(0, Math.min(22, this.content.getName().length())); + } + + public T GetContent() { + return this.content; + } + + public ContentType GetContentType() { + return this.content.getType(); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/ContentType.java b/common/src/main/java/dev/oxydien/simpleModSync/content/ContentType.java new file mode 100644 index 0000000..cef9407 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/ContentType.java @@ -0,0 +1,10 @@ +package dev.oxydien.simpleModSync.content; + +public enum ContentType { + Mod, + ResourcePack, + ShaderPack, + DataPack, + Packed, + Config, // Same as Packed +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/ContentTypeUtils.java b/common/src/main/java/dev/oxydien/simpleModSync/content/ContentTypeUtils.java new file mode 100644 index 0000000..579733a --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/ContentTypeUtils.java @@ -0,0 +1,23 @@ +package dev.oxydien.simpleModSync.content; + +public class ContentTypeUtils { + public static String ToString(ContentType type) { + return switch (type) { + case Mod -> "mod"; + case ResourcePack -> "resourcepack"; + case ShaderPack -> "shader"; + case DataPack -> "datapack"; + case Packed, Config -> "packed"; + }; + } + + public static ContentType FromString(String type) { + return switch (type) { + case "resourcepack" -> ContentType.ResourcePack; + case "datapack" -> ContentType.DataPack; + case "shader" -> ContentType.ShaderPack; + case "config", "packed" -> ContentType.Packed; + default -> ContentType.Mod; + }; + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/PackedContent.java b/common/src/main/java/dev/oxydien/simpleModSync/content/PackedContent.java new file mode 100644 index 0000000..ca85196 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/PackedContent.java @@ -0,0 +1,18 @@ +package dev.oxydien.simpleModSync.content; + +public class PackedContent extends Content{ + private String directory = ""; + + public PackedContent(String uri, ContentType type, String name, String version) { + super(uri, type, name, version); + } + + public PackedContent(String uri, ContentType type, String name, String version, String directory) { + super(uri, type, name, version); + this.directory = directory; + } + + public String getDirectory() { + return this.directory; + } +} diff --git a/src/main/java/dev/oxydien/data/ConfigData.java b/common/src/main/java/dev/oxydien/simpleModSync/content/PackedContentMetadata.java similarity index 68% rename from src/main/java/dev/oxydien/data/ConfigData.java rename to common/src/main/java/dev/oxydien/simpleModSync/content/PackedContentMetadata.java index f204cec..b18bb6c 100644 --- a/src/main/java/dev/oxydien/data/ConfigData.java +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/PackedContentMetadata.java @@ -1,15 +1,14 @@ -package dev.oxydien.data; +package dev.oxydien.simpleModSync.content; -import com.google.gson.*; +import com.google.gson.Gson; +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; import java.util.List; import java.util.stream.Collectors; -/** - * Used to save information about config content (NOT CONFIG OF THIS MOD) - * Theoretically, can be used as a bundle not just for config - */ -public class ConfigData { +public class PackedContentMetadata { public static final int CURRENT_SCHEME_VERSION = 1; public static final List ALLOWED_SCHEME_VERSIONS = List.of(1); @@ -17,15 +16,15 @@ public class ConfigData { /// List of modified files (absolute path) private final List config; - public ConfigData(List config) { + public PackedContentMetadata(List config) { this.schemeVersion = CURRENT_SCHEME_VERSION; this.config = config; } - public static ConfigData fromJson(JsonObject jsonObject) { + public static PackedContentMetadata FromJson(JsonObject jsonObject) { int schemeVersion = jsonObject.get("scheme_version").getAsInt(); if (!ALLOWED_SCHEME_VERSIONS.contains(schemeVersion)) { - throw new IllegalArgumentException("Invalid scheme version: " + schemeVersion); + throw new UnsupportedOperationException("Invalid scheme version: " + schemeVersion); } List config = jsonObject.get("config").getAsJsonArray() @@ -33,23 +32,31 @@ public static ConfigData fromJson(JsonObject jsonObject) { .stream() .map(JsonElement::getAsString) .collect(Collectors.toList()); - return new ConfigData(config); + return new PackedContentMetadata(config); } public JsonObject toJson() { JsonObject jsonObject = new JsonObject(); jsonObject.addProperty("scheme_version", schemeVersion); + JsonArray configArray = new JsonArray(); for (String configItem : config) { configArray.add(configItem); } + jsonObject.add("config", configArray); return jsonObject; } + public String toJsonString() { + Gson gson = new Gson(); + return gson.toJson(toJson()); + } + public int getSchemeVersion() { return schemeVersion; } + /// List of modified files (absolute path) public List getConfig() { return config; diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/SyncSchema.java b/common/src/main/java/dev/oxydien/simpleModSync/content/SyncSchema.java new file mode 100644 index 0000000..55419b5 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/SyncSchema.java @@ -0,0 +1,101 @@ +package dev.oxydien.simpleModSync.content; + +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import dev.oxydien.simpleModSync.exception.JsonValidationException; +import dev.oxydien.simpleModSync.modification.Modification; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.concurrent.*; + +public class SyncSchema { + public static int CURRENT_VERSION = 3; + public static int[] SUPPORTED_VERSIONS = new int[] { 2, 3 }; + + private final ConcurrentHashMap contents = new ConcurrentHashMap<>(); + private final ConcurrentHashMap modifications = new ConcurrentHashMap<>(); + private final ConcurrentHashMap progress = new ConcurrentHashMap<>(); + + public SyncWork ParseJson(JsonObject rootObject) { + if (!rootObject.has("sync_version")) { + throw new JsonValidationException("sync_version", "Integer"); + } + + int syncVersion = rootObject.get("sync_version").getAsInt(); + if (Arrays.stream(SUPPORTED_VERSIONS).noneMatch((val) -> val == syncVersion)) { + throw new UnsupportedOperationException(String.format("Invalid sync_version: %d", syncVersion)); + } + + List contentIndexesToCheck = new ArrayList<>(); + + JsonArray syncArray = new JsonArray(); + if (rootObject.has("sync") && rootObject.get("sync").isJsonArray()) { + syncArray = rootObject.getAsJsonArray("sync"); + } + + this.progress.clear(); + + for (int i = 0; i < syncArray.size(); i++) { + if (!syncArray.get(i).isJsonObject()) { + this.progress.put(i, SyncStatus.OfState(SyncStatus.SyncState.INVALID)); + continue; + } + + this.progress.put(i, new SyncStatus()); + contentIndexesToCheck.add(i); + } + + List modificationIndexesToCheck = new ArrayList<>(); + + JsonArray modificationArray = new JsonArray(); + if (rootObject.has("modify") && rootObject.get("modify").isJsonArray()) { + modificationArray = rootObject.getAsJsonArray("modify"); + } + + for (int i = 0; i < modificationArray.size(); i++) { + if (!modificationArray.get(i).isJsonObject()) { + continue; + } + + modificationIndexesToCheck.add(i); + } + + return new SyncWork(contentIndexesToCheck, modificationIndexesToCheck); + } + + public interface UpdateStatusHandler { + void UpdateStatus(SyncStatus status); + } + + public void withStatus(int index, UpdateStatusHandler handler) { + if (!this.progress.containsKey(index)) { + return; + } + + // Just to be sure :3 + SyncStatus status = this.progress.get(index); + handler.UpdateStatus(status); + this.progress.put(index, status); + } + + public void setContent(int index, Content content) { + this.contents.put(index, content); + } + + public ConcurrentHashMap getProgress() { + return progress; + } + + public ConcurrentHashMap getContents() { + return contents; + } + + public ConcurrentHashMap getModifications() { + return modifications; + } + + public record SyncWork(List contentsToCheck, List modificationsToExecute) { + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/SyncStatus.java b/common/src/main/java/dev/oxydien/simpleModSync/content/SyncStatus.java new file mode 100644 index 0000000..40f961d --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/SyncStatus.java @@ -0,0 +1,86 @@ +package dev.oxydien.simpleModSync.content; + +import net.minecraft.network.chat.Component; + +public class SyncStatus { + public enum SyncState { + STARTING, + PARSING, + FINISHED, + DOWNLOADING, + MODIFIED, + UNSYNCED, + RETRIEVING_SCHEMA, + INVALID, + UNSUPPORTED, + ERROR, + } + + public static Component TranslatedState(SyncState state) { + return switch (state) { + case STARTING -> Component.translatable("simple_mod_sync.ui.sync_state.starting"); + case PARSING -> Component.translatable("simple_mod_sync.ui.sync_state.parsing"); + case FINISHED -> Component.translatable("simple_mod_sync.ui.sync_state.finished"); + case DOWNLOADING -> Component.translatable("simple_mod_sync.ui.sync_state.downloading"); + case MODIFIED -> Component.translatable("simple_mod_sync.ui.sync_state.modified"); + case UNSYNCED -> Component.translatable("simple_mod_sync.ui.sync_state.unsynced"); + case RETRIEVING_SCHEMA -> Component.translatable("simple_mod_sync.ui.sync_state.retrieving_schema"); + case INVALID -> Component.translatable("simple_mod_sync.ui.sync_state.invalid"); + case UNSUPPORTED -> Component.translatable("simple_mod_sync.ui.sync_state.unsupported"); + case ERROR -> Component.translatable("simple_mod_sync.ui.sync_state.error"); + }; + } + + private SyncState syncState; + private float downloadProgress; // 0 -> 1 + private String errorMessage; + + public SyncStatus() { + this.syncState = SyncState.STARTING; + this.downloadProgress = 0; + this.errorMessage = ""; + } + + public static SyncStatus OfState(SyncState state) { + SyncStatus status = new SyncStatus(); + status.setState(state); + return status; + } + + public static SyncStatus OfError(String errorMessage) { + SyncStatus status = new SyncStatus(); + status.setErrorMessage(errorMessage); + return status; + } + + public SyncState getState() { + if (!this.errorMessage.isBlank()) { + return SyncState.ERROR; + } + return this.syncState; + } + + public void setState(SyncState state) { + this.syncState = state; + } + + public float getDownloadProgress() { + return downloadProgress; + } + + public void setDownloadProgress(float downloadProgress) { + this.downloadProgress = downloadProgress; + } + + public String getErrorMessage() { + return errorMessage; + } + + public void setErrorMessage(String errorMessage) { + this.errorMessage = errorMessage; + } + + public boolean isError() { + return this.getState() == SyncState.ERROR; + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/handler/ContentHandler.java b/common/src/main/java/dev/oxydien/simpleModSync/content/handler/ContentHandler.java new file mode 100644 index 0000000..813ee27 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/handler/ContentHandler.java @@ -0,0 +1,96 @@ +package dev.oxydien.simpleModSync.content.handler; + +import com.google.gson.JsonObject; +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.content.*; +import dev.oxydien.simpleModSync.exception.JsonValidationException; +import dev.oxydien.simpleModSync.io.FileOperations; +import dev.oxydien.simpleModSync.utils.DirUtils; +import dev.oxydien.simpleModSync.utils.StringUtils; +import org.jetbrains.annotations.Nullable; + +import java.nio.file.Files; +import java.nio.file.Path; + +public abstract class ContentHandler { + public Content ParseJson(JsonObject contentObject, int index) { + if (!contentObject.has("url") + && !contentObject.has("uri")) { + throw new JsonValidationException("url", "String"); + } + + String url = (contentObject.has("url") ? contentObject.get("url") : contentObject.get("uri")).getAsString(); + + String name = contentObject.has("name") + ? contentObject.get("name").getAsString() + : String.format("UNNAMED_%d", index); + + String typeStr = contentObject.has("type") ? contentObject.get("type").getAsString() : "mod"; + ContentType type = ContentTypeUtils.FromString(typeStr); + + String version = contentObject.has("version") ? contentObject.get("version").getAsString() : "0"; + + return new Content(url, type, name, version); + } + + public boolean CheckExistence(T contentObject) { + Path dir = this.GetDirectory(SimpleModSync.getInstance().getInstanceDir()); + + Path filePath = dir.resolve(this.GetFileName(contentObject)); + return Files.exists(filePath); + } + + @Nullable + public Path GetOlderVersion(T contentObject) { + Path dir = this.GetDirectory(SimpleModSync.getInstance().getInstanceDir()); + String projectName = this.GetProjectName(contentObject); + + return DirUtils.DirContains(dir, projectName, false); + } + + public String GetFileName(T contentObject) { + return String.format("%s-%s.%s", StringUtils.sanitize(contentObject.getName()), StringUtils.sanitize(contentObject.getVersion()), this.GetFileExtension()); + } + + public String GetProjectName(T contentObject) { + return String.format("%s-", StringUtils.sanitize(contentObject.getName())); + } + + public ContentInfo GetInfo(T contentObject) { + return new ContentInfo<>(contentObject); + } + + public boolean NeedsUpdate(T contentObject) { + return !this.CheckExistence(contentObject); + } + + public void UpdateVersion(T contentObject, FileOperations files, int index) { + Path dir = this.GetDirectory(SimpleModSync.getInstance().getInstanceDir()); + String fileName = this.GetFileName(contentObject); + + Path outputPath = dir.resolve(fileName); + + files.DownloadFromUri(contentObject.getUri(), outputPath, index); + } + + /// 0 -> 1 + public float GetProgress(T contentObject, SyncStatus status) { + SyncStatus.SyncState state = status.getState(); + if (state == SyncStatus.SyncState.STARTING || state == SyncStatus.SyncState.UNSYNCED) { + return 0; + } + if (state == SyncStatus.SyncState.FINISHED || state == SyncStatus.SyncState.MODIFIED) { + return 1f; + } + if (state == SyncStatus.SyncState.PARSING) { + return 0.03f; + } + + return status.getDownloadProgress() * 0.9f + 0.1f; + } + + public abstract String GetFileExtension(); + + public abstract Path GetDirectory(Path basePath); + +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/handler/GameContentHandler.java b/common/src/main/java/dev/oxydien/simpleModSync/content/handler/GameContentHandler.java new file mode 100644 index 0000000..cd82ece --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/handler/GameContentHandler.java @@ -0,0 +1,31 @@ +package dev.oxydien.simpleModSync.content.handler; + +import dev.oxydien.simpleModSync.content.Content; + +import java.nio.file.Path; + +public class GameContentHandler extends ContentHandler { + private final String extension; + private final String directory; + + public GameContentHandler(String extension, String directory) { + this.extension = extension; + this.directory = directory; + } + + public GameContentHandler(String directory) { + this.extension = "zip"; + this.directory = directory; + } + + + @Override + public String GetFileExtension() { + return this.extension; + } + + @Override + public Path GetDirectory(Path basePath) { + return basePath.resolve(this.directory); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/handler/ModContentHandler.java b/common/src/main/java/dev/oxydien/simpleModSync/content/handler/ModContentHandler.java new file mode 100644 index 0000000..ee46578 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/handler/ModContentHandler.java @@ -0,0 +1,17 @@ +package dev.oxydien.simpleModSync.content.handler; + +import dev.oxydien.simpleModSync.content.Content; + +import java.nio.file.Path; + +public class ModContentHandler extends ContentHandler { + @Override + public String GetFileExtension() { + return "jar"; + } + + @Override + public Path GetDirectory(Path basePath) { + return basePath.resolve("mods"); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/content/handler/PackedContentHandler.java b/common/src/main/java/dev/oxydien/simpleModSync/content/handler/PackedContentHandler.java new file mode 100644 index 0000000..41b1ce2 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/content/handler/PackedContentHandler.java @@ -0,0 +1,97 @@ +package dev.oxydien.simpleModSync.content.handler; + +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.content.Content; +import dev.oxydien.simpleModSync.content.PackedContent; +import dev.oxydien.simpleModSync.content.PackedContentMetadata; +import dev.oxydien.simpleModSync.io.FileOperations; +import dev.oxydien.simpleModSync.log.Log; +import dev.oxydien.simpleModSync.utils.StringUtils; +import dev.oxydien.simpleModSync.utils.ZipUtils; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.List; + +public class PackedContentHandler extends ContentHandler { + @Override + public PackedContent ParseJson(JsonObject contentObject, int index) { + Content baseContent = super.ParseJson(contentObject, index); + + String directory = contentObject.has("directory") ? contentObject.get("directory").getAsString() : ""; + + return new PackedContent(baseContent.getUri(), baseContent.getType(), baseContent.getName(), baseContent.getVersion(), directory); + } + + @Override + public String GetFileExtension() { + return "json"; + } + + @Override + public String GetFileName(PackedContent contentObject) { + return String.format("sms_%s-%s.%s", StringUtils.sanitize(contentObject.getName()), StringUtils.sanitize(contentObject.getVersion()), this.GetFileExtension()); + } + + @Override + public String GetProjectName(PackedContent contentObject) { + return String.format("sms_%s-", contentObject.getName()); + } + + @Override + public Path GetDirectory(Path basePath) { + return basePath; + } + + @Override + public void UpdateVersion(PackedContent contentObject, FileOperations files, int index) { + Path dir = this.GetDirectory(SimpleModSync.getInstance().getInstanceDir()); + String safeName = StringUtils.sanitize(contentObject.getName()); + String safeVersion = StringUtils.sanitize(contentObject.getVersion()); + + Path metadataPath = dir.resolve(this.GetFileName(contentObject)); + Path tempZipPath = dir.resolve(String.format("sms_%s-%s.archive.zip", safeName, safeVersion)); + + + // Remove older version if exists + Path olderVersion = this.GetOlderVersion(contentObject); + if (olderVersion != null) { + Log.debug("UpdateVersion.PackedContentHandler", "Found older version of {}, deleting {}", safeName, olderVersion.getFileName()); + try { + String configJsonStr = Files.readString(olderVersion); + JsonObject jsonObject = JsonParser.parseString(configJsonStr).getAsJsonObject(); + PackedContentMetadata configData = PackedContentMetadata.FromJson(jsonObject); + + for (String file : configData.getConfig()) { + try { + Files.deleteIfExists(Path.of(file)); + } catch (IOException e) { + Log.warning("UpdateVersion.PackedContentHandler.delete", "Failed to delete file, ignoring: {}", e.getMessage()); + } + } + + Files.deleteIfExists(olderVersion); + } catch (IOException e) { + Log.error("UpdateVersion.PackedContentHandler.cleanup", "Failed to read or delete old version", e); + } + } + + // Download new version + try { + Log.debug("UpdateVersion.PackedContentHandler", "Downloading {} {}", contentObject.getName(), contentObject.getVersion()); + files.DownloadFromUri(contentObject.getUri(), tempZipPath, index); + + List modifiedFiles = ZipUtils.ExtractZipFile(tempZipPath, dir.resolve(StringUtils.sanitizeDirectory(contentObject.getDirectory()))); + List modifiedFilesAsString = modifiedFiles.stream().map(Path::toString).toList(); + PackedContentMetadata metadata = new PackedContentMetadata(modifiedFilesAsString); + Files.writeString(metadataPath, metadata.toJsonString()); + + Files.deleteIfExists(tempZipPath); + } catch (IOException e) { + Log.error("UpdateVersion.PackedContentHandler.download", "Failed to download or write file {}", contentObject.getName(), e); + } + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/exception/JsonValidationException.java b/common/src/main/java/dev/oxydien/simpleModSync/exception/JsonValidationException.java new file mode 100644 index 0000000..7f47d9f --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/exception/JsonValidationException.java @@ -0,0 +1,9 @@ +package dev.oxydien.simpleModSync.exception; + +public class JsonValidationException extends RuntimeException { + + public JsonValidationException(String fieldName, String expectedType) { + super(String.format("Required field '%s' of type %s is missing from JSON", + fieldName, expectedType)); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/io/FileOperations.java b/common/src/main/java/dev/oxydien/simpleModSync/io/FileOperations.java new file mode 100644 index 0000000..03c201b --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/io/FileOperations.java @@ -0,0 +1,82 @@ +package dev.oxydien.simpleModSync.io; + +import dev.oxydien.simpleModSync.content.SyncSchema; +import dev.oxydien.simpleModSync.content.SyncStatus; + +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.net.*; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; + +public class FileOperations { + private final SyncSchema syncSchema; + + public FileOperations(SyncSchema schema) { + this.syncSchema = schema; + } + + public interface ProgressCallback { + void onProgress(int percentage); // 0 -> 100 + } + + public void DownloadFromUri(String uri, Path output, int index) { + try { + this.downloadFileWithProgress(uri, output, (newProgress) -> { + syncSchema.withStatus(index, (status -> { + status.setState(SyncStatus.SyncState.DOWNLOADING); + status.setDownloadProgress(newProgress / (float) 100); + })); + }); + } catch (Exception e) { + syncSchema.withStatus(index, (status -> { + status.setErrorMessage(e.getMessage()); + })); + } + } + + public void downloadFileWithProgress(String uriString, Path outputPath, ProgressCallback callback) throws IOException, URISyntaxException { + URL url = new URI(uriString).toURL(); + URLConnection connection = url.openConnection(); + + if (connection instanceof HttpURLConnection httpURLConnection) { + httpURLConnection.setRequestMethod("GET"); + } + + long fileSize = connection.getContentLengthLong(); + InputStream inputStream = connection.getInputStream(); + + OutputStream outputStream = Files.newOutputStream(outputPath); + + byte[] buffer = new byte[4096]; + int bytesRead; + long totalBytesRead = 0; + int lastReportedProgress = -1; + + while ((bytesRead = inputStream.read(buffer)) != -1) { + outputStream.write(buffer, 0, bytesRead); + totalBytesRead += bytesRead; + + if (fileSize > 0) { + int progress = (int) ((totalBytesRead * 100) / fileSize); + if (progress > lastReportedProgress) { + callback.onProgress(progress); + lastReportedProgress = progress; + } + } + } + + outputStream.close(); + inputStream.close(); + + if (connection instanceof HttpURLConnection httpURLConnection) { + httpURLConnection.disconnect(); + } + + if (lastReportedProgress < 100) { + callback.onProgress(100); + } + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/log/Log.java b/common/src/main/java/dev/oxydien/simpleModSync/log/Log.java new file mode 100644 index 0000000..8868479 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/log/Log.java @@ -0,0 +1,100 @@ +package dev.oxydien.simpleModSync.log; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class Log { + private static Log instance; + private static Logger logger; + private static String modId; + + // Minimum log level - change this to control what gets logged + private static final LogLevel MIN_LEVEL = LogLevel.ALL; + + private Log(String modId) { + Log.modId = modId; + logger = LoggerFactory.getLogger(modId); + } + + /** + * Initialize the logger with your mod ID + * Call this once in your mod's initialization + */ + public static void init(String modId) { + if (instance == null) { + instance = new Log(modId); + } + } + + /** + * Log a debug message + */ + public static void debug(Object... messages) { + if (MIN_LEVEL.ordinal() <= LogLevel.DEBUG.ordinal()) { + logger.info(formatMessage(messages)); + } + } + + /** + * Log an info message + */ + public static void info(Object... messages) { + if (MIN_LEVEL.ordinal() <= LogLevel.INFO.ordinal()) { + logger.info(formatMessage(messages)); + } + } + + /** + * Log a warning message + */ + public static void warning(Object... messages) { + if (MIN_LEVEL.ordinal() <= LogLevel.WARNING.ordinal()) { + logger.warn(formatMessage(messages)); + } + } + + /** + * Log an error message + */ + public static void error(Object... messages) { + if (MIN_LEVEL.ordinal() <= LogLevel.ERROR.ordinal()) { + logger.error(formatMessage(messages)); + } + } + + /** + * Log an error message with an exception + */ + public static void error(Throwable throwable, Object... messages) { + if (MIN_LEVEL.ordinal() <= LogLevel.ERROR.ordinal()) { + logger.error(formatMessage(messages), throwable); + } + } + + private static String formatMessage(Object... messages) { + if (messages == null || messages.length == 0) { + return ""; + } + + StringBuilder sb = new StringBuilder(); + sb.append("["); + sb.append(Log.modId); + sb.append("] "); + + for (int i = 0; i < messages.length; i++) { + sb.append(messages[i]); + if (i < messages.length - 1) { + sb.append(" "); + } + } + return sb.toString(); + } + + private enum LogLevel { + ALL, + DEBUG, + INFO, + WARNING, + ERROR + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/oxydien/simpleModSync/mixin/TitleScreenMixin.java b/common/src/main/java/dev/oxydien/simpleModSync/mixin/TitleScreenMixin.java new file mode 100644 index 0000000..3e4320f --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/mixin/TitleScreenMixin.java @@ -0,0 +1,46 @@ +package dev.oxydien.simpleModSync.mixin; + +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.config.Config; +import dev.oxydien.simpleModSync.ui.ProgressHelper; +import dev.oxydien.simpleModSync.ui.screens.InitScreen; +import dev.oxydien.simpleModSync.ui.widgets.TotalSyncProgress; +import dev.oxydien.simpleModSync.ui.widgets.TotalSyncStatus; +import dev.oxydien.simpleModSync.workers.SyncWorker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.gui.screens.TitleScreen; +import net.minecraft.network.chat.Component; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(TitleScreen.class) +public class TitleScreenMixin extends Screen { + protected TitleScreenMixin(Component title) { + super(title); + } + + @Inject(at = @At("HEAD"), method = "init", cancellable = true) + private void simple_mod_sync$initHead(CallbackInfo ci) { + if (Config.instance.getDownloadUrl().isEmpty()) { + Minecraft.getInstance().setScreen(new InitScreen()); + ci.cancel(); + } + } + + @Inject(at = @At("RETURN"), method = "init") + private void simple_mod_sync$init(CallbackInfo ci) { + ProgressHelper progressHelper = new ProgressHelper(SimpleModSync.getInstance()); + + final int heightOffset = 3; + + TotalSyncProgress barWidget = new TotalSyncProgress(0, 0, this.width, heightOffset, progressHelper); + this.addRenderableOnly(barWidget); + + SyncWorker worker = SimpleModSync.getInstance().syncWorker; + + this.addRenderableWidget(new TotalSyncStatus(0, heightOffset, worker, progressHelper)); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/oxydien/simpleModSync/modification/Modification.java b/common/src/main/java/dev/oxydien/simpleModSync/modification/Modification.java new file mode 100644 index 0000000..f3e3539 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/modification/Modification.java @@ -0,0 +1,25 @@ +package dev.oxydien.simpleModSync.modification; + +public class Modification { + private final ModificationType type; + private final String pattern; + private final String path; + + public Modification(ModificationType type, String pattern, String path) { + this.type = type; + this.pattern = pattern; + this.path = path; + } + + public ModificationType getType() { + return this.type; + } + + public String getPattern() { + return this.pattern; + } + + public String getPath() { + return this.path; + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/modification/ModificationType.java b/common/src/main/java/dev/oxydien/simpleModSync/modification/ModificationType.java new file mode 100644 index 0000000..de5c5a4 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/modification/ModificationType.java @@ -0,0 +1,7 @@ +package dev.oxydien.simpleModSync.modification; + +public enum ModificationType { + Remove, + Rename, + Unknown // ignored +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/modification/ModificationTypeUtils.java b/common/src/main/java/dev/oxydien/simpleModSync/modification/ModificationTypeUtils.java new file mode 100644 index 0000000..89322d4 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/modification/ModificationTypeUtils.java @@ -0,0 +1,21 @@ +package dev.oxydien.simpleModSync.modification; + +import dev.oxydien.simpleModSync.content.ContentType; + +public class ModificationTypeUtils { + public static String ToString(ModificationType type) { + return switch (type) { + case Remove -> "remove"; + case Rename -> "rename"; + case Unknown -> "unknown"; + }; + } + + public static ModificationType FromString(String type) { + return switch (type) { + case "rename" -> ModificationType.Rename; + case "remove" -> ModificationType.Remove; + default -> ModificationType.Unknown; + }; + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/modification/RenameModification.java b/common/src/main/java/dev/oxydien/simpleModSync/modification/RenameModification.java new file mode 100644 index 0000000..b69f7f9 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/modification/RenameModification.java @@ -0,0 +1,14 @@ +package dev.oxydien.simpleModSync.modification; + +public class RenameModification extends Modification { + private final String result; + + public RenameModification(ModificationType type, String pattern, String path, String result) { + super(type, pattern, path); + this.result = result; + } + + public String getResult() { + return result; + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/modification/handler/ModificationHandler.java b/common/src/main/java/dev/oxydien/simpleModSync/modification/handler/ModificationHandler.java new file mode 100644 index 0000000..901e9e6 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/modification/handler/ModificationHandler.java @@ -0,0 +1,84 @@ +package dev.oxydien.simpleModSync.modification.handler; + +import com.google.gson.JsonObject; +import dev.oxydien.simpleModSync.content.Content; +import dev.oxydien.simpleModSync.content.ContentType; +import dev.oxydien.simpleModSync.content.ContentTypeUtils; +import dev.oxydien.simpleModSync.exception.JsonValidationException; +import dev.oxydien.simpleModSync.log.Log; +import dev.oxydien.simpleModSync.modification.Modification; +import dev.oxydien.simpleModSync.modification.ModificationType; +import dev.oxydien.simpleModSync.modification.ModificationTypeUtils; +import dev.oxydien.simpleModSync.utils.DirUtils; + +import java.io.IOException; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.List; +import java.util.regex.Pattern; + +public abstract class ModificationHandler { + public Modification ParseJson(JsonObject contentObject) { + if (!contentObject.has("type")) { + throw new JsonValidationException("type", "String (remove | rename)"); + } + + if (!contentObject.has("pattern")) { + throw new JsonValidationException("pattern", "String"); + } + + String typeStr = contentObject.get("type").getAsString(); + ModificationType type = ModificationTypeUtils.FromString(typeStr); + + String pattern = contentObject.get("pattern").getAsString(); + + String path = contentObject.has("path") ? contentObject.get("path").getAsString() : "."; + + return new Modification(type, pattern, path); + } + + public List GetRelevantPaths(T mod, Path basePath) { + Path workingDir = this.GetWorkingDirectory(mod, basePath); + + return DirUtils.GetFilePaths(workingDir); + } + + public Path GetWorkingDirectory(T mod, Path basePath) { + return DirUtils.sanitizePath(basePath, mod.getPath()); + } + + public Pattern GetPattern(T mod) { + return Pattern.compile(mod.getPattern()); + } + + public abstract void ApplyOn(T mod, Path filePath) throws IOException; + + public void Execute(T mod, Path basePath) throws Exception { + List relevantPaths = this.GetRelevantPaths(mod, basePath); + Log.debug("Running mod", mod.getPattern(), "in", mod.getPath(), "on", relevantPaths.size(), "possible items"); + + List sanitized = new ArrayList<>(); + for (Path path : relevantPaths) { + Path absolute = path.toAbsolutePath(); + String relativePath = basePath.relativize(absolute).toString(); + sanitized.add(relativePath); + } + + List matches = new ArrayList<>(); + Pattern pattern = this.GetPattern(mod); + + for (var filePath : sanitized) { + var matcher = pattern.matcher(filePath); + if (matcher.matches()) { + matches.add(filePath); + Log.debug("Execute.ModificationHandler", "Found match for {} at {}", mod.getPattern(), filePath); + break; + } + } + + for (var match : matches) { + Path filePath = basePath.resolve(match); + this.ApplyOn(mod, filePath); + } + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/modification/handler/RemoveModificationHandler.java b/common/src/main/java/dev/oxydien/simpleModSync/modification/handler/RemoveModificationHandler.java new file mode 100644 index 0000000..7273d10 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/modification/handler/RemoveModificationHandler.java @@ -0,0 +1,14 @@ +package dev.oxydien.simpleModSync.modification.handler; + +import dev.oxydien.simpleModSync.modification.Modification; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; + +public class RemoveModificationHandler extends ModificationHandler { + @Override + public void ApplyOn(Modification mod, Path filePath) throws IOException { + Files.delete(filePath); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/modification/handler/RenameModificationHandler.java b/common/src/main/java/dev/oxydien/simpleModSync/modification/handler/RenameModificationHandler.java new file mode 100644 index 0000000..e6d3aca --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/modification/handler/RenameModificationHandler.java @@ -0,0 +1,32 @@ +package dev.oxydien.simpleModSync.modification.handler; + +import com.google.gson.JsonObject; +import dev.oxydien.simpleModSync.exception.JsonValidationException; +import dev.oxydien.simpleModSync.modification.Modification; +import dev.oxydien.simpleModSync.modification.RenameModification; +import dev.oxydien.simpleModSync.utils.StringUtils; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; + +public class RenameModificationHandler extends ModificationHandler { + @Override + public RenameModification ParseJson(JsonObject contentObject) { + if (!contentObject.has("result")) { + throw new JsonValidationException("result", "String"); + } + + Modification base = super.ParseJson(contentObject); + + String result = contentObject.get("result").getAsString(); + + return new RenameModification(base.getType(), base.getPattern(), base.getPath(), result); + } + + @Override + public void ApplyOn(RenameModification mod, Path filePath) throws IOException { + Path parent = filePath.getParent(); + Files.move(filePath, parent.resolve(StringUtils.sanitizeDirectory(mod.getResult()))); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/ui/ProgressHelper.java b/common/src/main/java/dev/oxydien/simpleModSync/ui/ProgressHelper.java new file mode 100644 index 0000000..63e5033 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/ui/ProgressHelper.java @@ -0,0 +1,116 @@ +package dev.oxydien.simpleModSync.ui; + +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.content.Content; +import dev.oxydien.simpleModSync.content.ContentType; +import dev.oxydien.simpleModSync.content.SyncStatus; +import dev.oxydien.simpleModSync.content.handler.ContentHandler; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.resources.ResourceLocation; + +import java.util.Iterator; + +public class ProgressHelper { + private static final ResourceLocation LOADING_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/loading.png"); + private static final ResourceLocation FINISHED_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/finished.png"); + private static final ResourceLocation PARSING_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/parsing.png"); + private static final ResourceLocation UNSYNCED_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/unsynced.png"); + private static final ResourceLocation ERROR_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/error.png"); + private static final ResourceLocation MODIFIED_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/modified.png"); + private static final ResourceLocation PREPARING_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/preparing.png"); + private static final ResourceLocation DOWNLOADING_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/downloading.png"); + + private static final ResourceLocation MOD_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/mod.png"); + private static final ResourceLocation RESOURCEPACK_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/resourcepack.png"); + private static final ResourceLocation SHADER_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/shader.png"); + private static final ResourceLocation DATAPACK_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/datapack.png"); + private static final ResourceLocation PACKED_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/packed.png"); + private static final ResourceLocation UNKNOWN_ICON = ResourceLocation.tryBuild(SimpleModSync.MOD_ID, "ui/textures/icons/unknown.png"); + + private final SimpleModSync plugin; + private int frameCall = 0; + + public ProgressHelper(SimpleModSync instance) { + this.plugin = instance; + } + + public float getOverallProgress() { + if (plugin == null || plugin.syncSchema == null) { + return 0; + } + + int allElements = 0; + float progressSum = 0; + + var present = plugin.syncSchema.getProgress(); + for (Iterator it = present.keys().asIterator(); it.hasNext(); ) { + int key = it.next(); + + Content content = plugin.syncSchema.getContents().get(key); + if (content == null) { + continue; + } + + SyncStatus progress = plugin.syncSchema.getProgress().get(key); + + ContentHandler handler = plugin.Handlers.getContentHandler(content.getType()); + + if (handler == null) { + continue; + } + + ++allElements; + float contentProgress = handler.GetProgress(content, progress); + progressSum += contentProgress; + } + + return progressSum / allElements; + } + + public void drawStatusIcon(SyncStatus syncStatus, GuiGraphics guiGraphics, int x, int y) { + this.drawStatusIcon(syncStatus, guiGraphics, x, y, 3); + } + + public void drawStatusIcon(SyncStatus syncStatus, GuiGraphics guiGraphics, int x, int y, int margin) { + guiGraphics.blit(RenderType::guiTextured, this.getStateIcon(syncStatus), x + margin, y + margin, 0, 0, 10, 10, 10, 10); + } + + public void drawContentTypeIcon(ContentType type, GuiGraphics guiGraphics, int x, int y, int margin) { + guiGraphics.blit(RenderType::guiTextured, this.getContentTypeIcon(type), x + margin, y + margin, 0, 0, 10, 10, 10, 10); + } + + public void drawLoadingIcon(GuiGraphics guiGraphics, int x, int y) { + ++this.frameCall; + int frameOffset = (int) (double) (this.frameCall / 6); + if (frameOffset >= 8) { + this.frameCall = 0; + frameOffset = 0; + } + + guiGraphics.blit(RenderType::guiTextured, LOADING_ICON, x, y, 0, 16 * frameOffset, 16, 16, 16, 128); + } + + private ResourceLocation getStateIcon(SyncStatus syncStatus) { + return switch (syncStatus.getState()) { + case UNSYNCED -> UNSYNCED_ICON; + case FINISHED -> FINISHED_ICON; + case STARTING -> PREPARING_ICON; + case PARSING -> PARSING_ICON; + case DOWNLOADING -> DOWNLOADING_ICON; + case MODIFIED -> MODIFIED_ICON; + default -> ERROR_ICON; + }; + } + + private ResourceLocation getContentTypeIcon(ContentType type) { + return switch (type) { + case ContentType.Mod -> MOD_ICON; + case ResourcePack -> RESOURCEPACK_ICON; + case ShaderPack -> SHADER_ICON; + case DataPack -> DATAPACK_ICON; + case Packed, Config -> PACKED_ICON; + default -> UNKNOWN_ICON; + }; + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/ui/screens/ContentSyncScreen.java b/common/src/main/java/dev/oxydien/simpleModSync/ui/screens/ContentSyncScreen.java new file mode 100644 index 0000000..86361d9 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/ui/screens/ContentSyncScreen.java @@ -0,0 +1,327 @@ +package dev.oxydien.simpleModSync.ui.screens; + +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.config.Config; +import dev.oxydien.simpleModSync.content.SyncSchema; +import dev.oxydien.simpleModSync.log.Log; +import dev.oxydien.simpleModSync.ui.ProgressHelper; +import dev.oxydien.simpleModSync.ui.widgets.ContentProgressWidget; +import dev.oxydien.simpleModSync.ui.widgets.TotalSyncProgress; +import dev.oxydien.simpleModSync.workers.SyncWorker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.components.EditBox; +import net.minecraft.client.gui.components.MultiLineTextWidget; +import net.minecraft.client.gui.components.Renderable; +import net.minecraft.client.gui.components.events.AbstractContainerEventHandler; +import net.minecraft.client.gui.components.events.GuiEventListener; +import net.minecraft.client.gui.narration.NarratableEntry; +import net.minecraft.client.gui.narration.NarrationElementOutput; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.network.chat.Component; +import net.minecraft.util.Mth; +import org.jetbrains.annotations.Nullable; + +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.atomic.AtomicBoolean; + +public class ContentSyncScreen extends Screen { + private static final int WIDGET_GAP = 4; + private static final int CONTENT_WIDTH = 300; + + private SyncSchema schema; + private SyncWorker worker; + private final Screen parent; + private ScrollableContentList contentList; + private final ProgressHelper progressHelper; + private String errorMessage; + + public ContentSyncScreen(Component title, @Nullable Screen parent) { + super(title); + this.schema = SimpleModSync.getInstance().syncSchema; + this.worker = SimpleModSync.getInstance().syncWorker; + this.parent = parent; + this.progressHelper = new ProgressHelper(SimpleModSync.getInstance()); + this.errorMessage = ""; + } + + @Override + protected void init() { + super.init(); + final int heightOffset = 3; + + // Progress bar + TotalSyncProgress barWidget = new TotalSyncProgress(0, 0, this.width, heightOffset, this.progressHelper); + this.addRenderableOnly(barWidget); + + // Back button + this.addRenderableWidget(new Button.Builder(Component.translatable("simple_mod_sync.ui.content_screen.back_button"), + (buttonWidget) -> Minecraft.getInstance().setScreen(this.parent)).pos(3, 5).size(60, 20).build()); + + // Title + Component titleText = Component.translatable("simple_mod_sync.ui.content_screen.title"); + this.addRenderableOnly( + new MultiLineTextWidget(this.width / 2 - titleText.getString().length() - 30, 10, titleText, this.font) + .setColor(0xFF3DF6B4)); + + // Url field + EditBox urlField = new EditBox(this.font, this.width / 2 - 150, 24, + 300, 20, Component.literal("")); + urlField.setMaxLength(368); + urlField.setValue(Config.instance.getDownloadUrl()); + this.addRenderableWidget(urlField); + + // Save Url button + this.addRenderableWidget(new Button.Builder(Component.translatable("simple_mod_sync.ui.content_screen.save_url_button"), (buttonWidget) -> { + String url = urlField.getValue(); + Config.instance.setDownloadUrl(url); + }).pos(this.width / 2 - 150, 45).size(95, 20).build()); + + // Sync button + this.addRenderableWidget(new Button.Builder(Component.translatable("simple_mod_sync.ui.content_screen.sync_button"), + (buttonWidget) -> this.startSync()).pos(this.width / 2 - 48, 45).size(95, 20).build()); + + // Auto download toggle button widget + AtomicBoolean autoDownload = new AtomicBoolean(Config.instance.getAutoDownload()); + Component autoDownloadTextTrue = Component.translatable("simple_mod_sync.ui.content_screen.auto_download_true"); + Component autoDownloadTextFalse = Component.translatable("simple_mod_sync.ui.content_screen.auto_download_false"); + Button auto_download = new Button.Builder(autoDownload.get() ? autoDownloadTextTrue : autoDownloadTextFalse, (buttonWidget) -> { + autoDownload.set(!autoDownload.get()); + Config.instance.setAutoDownload(autoDownload.get()); + buttonWidget.setMessage(autoDownload.get() ? autoDownloadTextTrue : autoDownloadTextFalse); + }).pos(this.width / 2 + 55, 45).size(95, 20).build(); + this.addRenderableWidget(auto_download); + + int contentLeft = this.width / 2 - 150; + + // Initialize scrollable content list + int listTop = 80; + int listBottom = this.height - 5; + + this.contentList = new ScrollableContentList( + CONTENT_WIDTH, + listBottom - listTop, + listTop, + contentLeft + ); + this.addWidget(this.contentList); + + this.initContent(); + } + + private void initContent() { + if (this.schema == null || this.contentList == null) return; + this.contentList.clean(false); + + var progress = this.schema.getProgress(); + + for (var iterator = progress.keys().asIterator(); iterator.hasNext();) { + int key = iterator.next(); + + ContentProgressWidget widget = new ContentProgressWidget( + 0, 0, CONTENT_WIDTH, this.font, this.progressHelper, this.schema, key + ); + this.contentList.addEntry(widget); + } + } + + private void updateState() { + this.initContent(); + + if (this.worker != null) + if (this.worker.getStatus().isError()) { + this.errorMessage = this.worker.getStatus().getErrorMessage(); + } else { + this.errorMessage = ""; + } + } + + @Override + public void render(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTick) { + super.render(guiGraphics, mouseX, mouseY, partialTick); + if (this.worker == null && SimpleModSync.getInstance().syncWorker != null) { + this.schema = SimpleModSync.getInstance().syncSchema; + this.worker = SimpleModSync.getInstance().syncWorker; + this.worker.subscribeUpdateCallback(this::updateState); + } + + if (this.contentList != null) { + this.contentList.render(guiGraphics, mouseX, mouseY, partialTick); + } + + if (this.worker != null && this.worker.getStatus().isError()) { + guiGraphics.drawString(this.font, this.worker.getStatus().getErrorMessage(), this.width / 2 - 150, 65, 0xFFFF1C1C, false); + } + } + + @Override + public boolean mouseScrolled(double mouseX, double mouseY, double scrollX, double scrollY) { + if (this.contentList != null && this.contentList.mouseScrolled(mouseX, mouseY, scrollX, scrollY)) { + return true; + } + return super.mouseScrolled(mouseX, mouseY, scrollX, scrollY); + } + + + private void startSync() { + SimpleModSync.getInstance().start(); + this.worker = null; + this.schema = null; + } + + // Inner class for scrollable list + private static class ScrollableContentList extends AbstractContainerEventHandler implements Renderable, GuiEventListener, NarratableEntry { + private final List entries = new ArrayList<>(); + private final int width; + private final int height; + private final int top; + private final int left; + private double scrollAmount = 0; + private boolean scrolling = false; + + public ScrollableContentList(int width, int height, int top, int left) { + this.width = width; + this.height = height; + this.top = top; + this.left = left; + } + + public void addEntry(ContentProgressWidget widget) { + this.entries.add(widget); + this.updatePositions(); + } + + public void clean(boolean updatePositions) { + this.entries.clear(); + if (updatePositions) + this.updatePositions(); + } + + private void updatePositions() { + int yPos = 0; + for (ContentProgressWidget widget : this.entries) { + widget.setX(this.left); + widget.setY(this.top + yPos - (int) this.scrollAmount); + yPos += widget.getHeight() + WIDGET_GAP; + } + } + + private int getContentHeight() { + int total = 0; + for (ContentProgressWidget widget : this.entries) { + total += widget.getHeight() + WIDGET_GAP; + } + return Math.max(0, total - WIDGET_GAP); + } + + private int getMaxScroll() { + return Math.max(0, this.getContentHeight() - this.height); + } + + @Override + public void render(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTick) { + // Update positions in case heights changed + this.updatePositions(); + + // Enable scissor for clipping + guiGraphics.enableScissor(this.left, this.top, this.left + this.width, this.top + this.height); + + for (ContentProgressWidget widget : this.entries) { + if (this.isWidgetVisible(widget)) { + widget.render(guiGraphics, mouseX, mouseY, partialTick); + } + } + + guiGraphics.disableScissor(); + + // Draw scrollbar if needed + if (this.getMaxScroll() > 0) { + this.renderScrollbar(guiGraphics); + } + } + + private boolean isWidgetVisible(ContentProgressWidget widget) { + int widgetTop = widget.getY(); + int widgetBottom = widgetTop + widget.getHeight(); + return widgetBottom >= this.top && widgetTop <= this.top + this.height; + } + + private void renderScrollbar(GuiGraphics guiGraphics) { + int scrollbarX = this.left + this.width + 2; + int scrollbarWidth = 6; + + // Scrollbar background + guiGraphics.fill(scrollbarX, this.top, scrollbarX + scrollbarWidth, + this.top + this.height, 0xFF000000); + + // Scrollbar thumb + int maxScroll = this.getMaxScroll(); + int thumbHeight = Math.max(20, (int) ((float) this.height / this.getContentHeight() * this.height)); + int thumbY = this.top + (int) ((this.scrollAmount / maxScroll) * (this.height - thumbHeight)); + + guiGraphics.fill(scrollbarX, thumbY, scrollbarX + scrollbarWidth, + thumbY + thumbHeight, 0xFF808080); + } + + @Override + public boolean mouseScrolled(double mouseX, double mouseY, double scrollX, double scrollY) { + if (this.isMouseOver(mouseX, mouseY)) { + this.scrollAmount = Mth.clamp(this.scrollAmount - scrollY * 10, 0, this.getMaxScroll()); + return true; + } + return false; + } + + @Override + public boolean mouseDragged(double mouseX, double mouseY, int button, double dragX, double dragY) { + if (this.scrolling) { + this.scrollAmount = Mth.clamp(this.scrollAmount - dragY, 0, this.getMaxScroll()); + return true; + } + return super.mouseDragged(mouseX, mouseY, button, dragX, dragY); + } + + @Override + public boolean mouseClicked(double mouseX, double mouseY, int button) { + this.scrolling = button == 0 && this.isMouseOverScrollbar(mouseX, mouseY); + return super.mouseClicked(mouseX, mouseY, button); + } + + @Override + public boolean mouseReleased(double mouseX, double mouseY, int button) { + if (button == 0) { + this.scrolling = false; + } + return super.mouseReleased(mouseX, mouseY, button); + } + + @Override + public boolean isMouseOver(double mouseX, double mouseY) { + return mouseX >= this.left && mouseX <= this.left + this.width && + mouseY >= this.top && mouseY <= this.top + this.height; + } + + private boolean isMouseOverScrollbar(double mouseX, double mouseY) { + int scrollbarX = this.left + this.width + 2; + return mouseX >= scrollbarX && mouseX <= scrollbarX + 6 && + mouseY >= this.top && mouseY <= this.top + this.height; + } + + @Override + public List children() { + return this.entries; + } + + @Override + public NarrationPriority narrationPriority() { + return NarrationPriority.NONE; + } + + @Override + public void updateNarration(NarrationElementOutput narrationElementOutput) { + + } + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/oxydien/simpleModSync/ui/screens/InitScreen.java b/common/src/main/java/dev/oxydien/simpleModSync/ui/screens/InitScreen.java new file mode 100644 index 0000000..d8d1515 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/ui/screens/InitScreen.java @@ -0,0 +1,153 @@ +package dev.oxydien.simpleModSync.ui.screens; + +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.config.Config; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.components.Checkbox; +import net.minecraft.client.gui.components.EditBox; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.gui.screens.TitleScreen; +import net.minecraft.network.chat.Component; + +public class InitScreen extends Screen { + private static final int CONTENT_WIDTH = 300; + private static final int SPACING = 10; + private static final int TEXT_FIELD_HEIGHT = 20; + private static final int BUTTON_HEIGHT = 20; + + private EditBox urlField; + private Checkbox autoUpdateCheckbox; + private int contentStartY; + + public InitScreen() { + super(Component.translatable("simple_mod_sync.ui.init_screen.title")); + } + + @Override + protected void init() { + super.init(); + + int totalHeight = calculateTotalHeight(); + contentStartY = (this.height - totalHeight) / 2; + + int centerX = this.width / 2; + int currentY = contentStartY; + + // Skip title + currentY += 20 + SPACING; + + // Skip sub-header + currentY += 10 + SPACING; + + // Skip disclaimer (3 lines) + currentY += 30 + SPACING * 2; + + // URL text field + urlField = new EditBox(this.font, centerX - CONTENT_WIDTH / 2, currentY, + CONTENT_WIDTH, TEXT_FIELD_HEIGHT, Component.literal("URL")); + urlField.setHint(Component.literal("https://example.com/sync.json")); + urlField.setMaxLength(500); + + // Load current URL if exists + String currentUrl = Config.instance.getDownloadUrl(); + if (currentUrl != null && !currentUrl.isEmpty()) { + urlField.setValue(currentUrl); + } + + this.addRenderableWidget(urlField); + currentY += TEXT_FIELD_HEIGHT + SPACING * 2; + + // Auto-update checkbox + autoUpdateCheckbox = Checkbox.builder( + Component.translatable("simple_mod_sync.ui.init_screen.auto_update"), + this.font) + .pos(centerX - CONTENT_WIDTH / 2, currentY) + .selected(Config.instance.getAutoDownload()) + .build(); + + this.addRenderableWidget(autoUpdateCheckbox); + currentY += BUTTON_HEIGHT + SPACING * 2; + + // Save button + Button saveButton = Button.builder( + Component.translatable("simple_mod_sync.ui.init_screen.save"), + button -> this.onSave()) + .bounds(centerX - CONTENT_WIDTH / 2, currentY, CONTENT_WIDTH, BUTTON_HEIGHT) + .build(); + + this.addRenderableWidget(saveButton); + } + + private int calculateTotalHeight() { + int height = 0; + height += 20; // Title + height += SPACING; + height += 10; // Sub-header + height += SPACING; + height += 30; // Disclaimer (3 lines) + height += SPACING * 2; + height += TEXT_FIELD_HEIGHT; // URL field + height += SPACING * 2; + height += BUTTON_HEIGHT; // Checkbox + height += SPACING * 2; + height += BUTTON_HEIGHT; // Save button + return height; + } + + @Override + public void render(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTick) { + super.render(guiGraphics, mouseX, mouseY, partialTick); + + int centerX = this.width / 2; + int currentY = contentStartY; + + // Title + guiGraphics.drawCenteredString(this.font, this.title, centerX, currentY, 0xFFFFFF); + currentY += 20 + SPACING; + + // Sub-header + Component subHeader = Component.translatable("simple_mod_sync.ui.init_screen.sub_header"); + guiGraphics.drawCenteredString(this.font, subHeader, centerX, currentY, 0xAAAAAA); + currentY += 10 + SPACING; + + // Disclaimer + String disclaimer = "§7By entering a URL below, you acknowledge that you are"; + String disclaimer2 = "§7responsible for any content synced from that source."; + String disclaimer3 = "§7Use trusted sources only."; + + guiGraphics.drawCenteredString(this.font, disclaimer, centerX, currentY, 0xFFFFFF); + currentY += 10; + guiGraphics.drawCenteredString(this.font, disclaimer2, centerX, currentY, 0xFFFFFF); + currentY += 10; + guiGraphics.drawCenteredString(this.font, disclaimer3, centerX, currentY, 0xFFFFFF); + } + + private void onSave() { + String url = urlField.getValue().trim(); + + // Validate URL + if (url.isEmpty()) { + Config.instance.setDownloadUrl("-"); + } else { + if (!url.startsWith("http://") && !url.startsWith("https://")) { + urlField.setTextColor(0xFF5555); + return; + } + Config.instance.setDownloadUrl(url); + } + + Config.instance.setAutoDownload(autoUpdateCheckbox.selected()); + + if (autoUpdateCheckbox.selected()) { + SimpleModSync.getInstance().start(); + } + + this.minecraft.setScreen(new TitleScreen()); + } + + @Override + public void onClose() { + this.minecraft.setScreen(new TitleScreen()); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/ContentProgressWidget.java b/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/ContentProgressWidget.java new file mode 100644 index 0000000..91d433b --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/ContentProgressWidget.java @@ -0,0 +1,127 @@ +package dev.oxydien.simpleModSync.ui.widgets; + +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.content.*; +import dev.oxydien.simpleModSync.content.handler.ContentHandler; +import dev.oxydien.simpleModSync.ui.ProgressHelper; +import net.minecraft.client.gui.Font; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.gui.components.AbstractWidget; +import net.minecraft.client.gui.components.Tooltip; +import net.minecraft.client.gui.narration.NarrationElementOutput; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.network.chat.Component; + +import java.time.Duration; +import java.time.temporal.ChronoUnit; + +public class ContentProgressWidget extends AbstractWidget { + private static final int WIDGET_DEFAULT_HEIGHT = 28; + private static final int DEFAULT_PADDING = 4; + + private final Font font; + private final ProgressHelper helper; + + private final int index; + private final SyncSchema schema; + private ContentInfo contentInfo; + private ContentHandler handler; + private SyncStatus status; + + public ContentProgressWidget(int x, int y, int width, Font font, ProgressHelper helper, SyncSchema schema, int index) { + super(x, y, width, WIDGET_DEFAULT_HEIGHT, Component.empty()); + + this.font = font; + this.helper = helper; + + this.index = index; + this.schema = schema; + + this.setTooltipDelay(Duration.of(500, ChronoUnit.MILLIS)); + + this.fetchData(); + } + + private void fetchData() { + if (schema.getProgress().containsKey(this.index)) { + this.status = schema.getProgress().get(index); + } + + if (schema.getContents().containsKey(index)) { + Content content = schema.getContents().get(index); + this.handler = SimpleModSync.getInstance().Handlers.getContentHandler(content.getType()); + this.contentInfo = this.handler.GetInfo(content); + } + + this.updateTooltip(); + } + + private void updateTooltip() { + var builder = Component.empty(); + if (this.contentInfo != null) { + builder.append(Component.translatable(String.format("simple_mod_sync.ui.content_type.%s", ContentTypeUtils.ToString(this.contentInfo.GetContentType())))); + builder.append(" "); + } + builder.append(this.getModName()); + builder.append(": "); + if (this.status != null) { + builder.append(SyncStatus.TranslatedState(this.status.getState())); + } + this.setTooltip(Tooltip.create(builder)); + } + + @Override + public int getHeight() { + int base = super.getHeight(); + if (this.status != null && this.status.getState() == SyncStatus.SyncState.ERROR) { + return base + this.font.lineHeight + DEFAULT_PADDING; + } + return base; + } + + @Override + protected void renderWidget(GuiGraphics guiGraphics, int i, int i1, float v) { + this.fetchData(); // This might not be the most optimized way + + guiGraphics.fill(RenderType.guiOverlay(), this.getX(), this.getY(), this.getX() + this.getWidth(), + this.getY() + this.getHeight(), 0xa0000000); + + if (this.status != null) { + // Progress bar + if (contentInfo != null) { + guiGraphics.fill( + this.getX(), + this.getY(), + (int) (this.getX() + (((float) this.width) * this.handler.GetProgress(this.contentInfo.GetContent(), this.status))), + this.getY() + 3, + 0xFFFFFFFF + ); + } + + // Status icon + this.helper.drawStatusIcon(this.status, guiGraphics, this.getX() + DEFAULT_PADDING, this.getY() + DEFAULT_PADDING + 2, 0); + + if (this.status.getState() == SyncStatus.SyncState.ERROR) { + String msg = this.status.getErrorMessage(); + guiGraphics.drawString(this.font, String.format("§c§l%s§r", msg), this.getX() + DEFAULT_PADDING, + this.getY() + DEFAULT_PADDING * 2 + this.font.lineHeight, 0xFF55FFFF, false); + } + } + + if (this.contentInfo != null) { + this.helper.drawContentTypeIcon(this.contentInfo.GetContentType(), guiGraphics, + this.getX() + DEFAULT_PADDING, this.getY() + DEFAULT_PADDING + 12, 0); + } + + guiGraphics.drawString(this.font, String.format("§l%s§r", this.getModName()), + this.getX() + 20 + DEFAULT_PADDING, this.getY() + DEFAULT_PADDING + this.font.lineHeight / 2, 0xFF55FFFF, false); + } + + private String getModName() { + return this.contentInfo == null ? this.index + " ???" : this.contentInfo.GetTitle(); + } + + @Override + protected void updateWidgetNarration(NarrationElementOutput narrationElementOutput) { + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/LinearScrollLayout.java b/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/LinearScrollLayout.java new file mode 100644 index 0000000..9883f30 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/LinearScrollLayout.java @@ -0,0 +1,100 @@ +package dev.oxydien.simpleModSync.ui.widgets; + +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.gui.components.AbstractScrollArea; +import net.minecraft.client.gui.components.AbstractWidget; +import net.minecraft.client.gui.components.events.GuiEventListener; +import net.minecraft.client.gui.layouts.Layout; +import net.minecraft.client.gui.layouts.LinearLayout; +import net.minecraft.client.gui.narration.NarratableEntry; +import net.minecraft.client.gui.narration.NarrationElementOutput; +import net.minecraft.client.gui.navigation.ScreenDirection; +import net.minecraft.client.gui.navigation.ScreenRectangle; +import net.minecraft.network.chat.CommonComponents; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +public class LinearScrollLayout extends AbstractScrollArea { + private final List children = new ArrayList<>(); + private final Layout layout; + + public LinearScrollLayout(int width, int height) { + super(0, 0, width, height, CommonComponents.EMPTY); + this.layout = new LinearLayout(width, height, LinearLayout.Orientation.VERTICAL); + layout.visitWidgets(this::addWidget); + } + + public void addWidget(AbstractWidget widget) { + this.children.add(widget); + } + + protected int contentHeight() { + return this.layout.getHeight(); + } + + protected double scrollRate() { + return 10.0F; + } + + protected void renderWidget(GuiGraphics gui, int mouseX, int mouseY, float delta) { + gui.enableScissor(this.getX(), this.getY(), this.getX() + this.width, this.getY() + this.height); + gui.pose().pushPose(); + gui.pose().translate(0.0F, -this.scrollAmount(), 0.0F); + + for(AbstractWidget abstractwidget : this.children) { + abstractwidget.render(gui, mouseX, mouseY, delta); + } + + gui.pose().popPose(); + gui.disableScissor(); + this.renderScrollbar(gui); + } + + protected void updateWidgetNarration(@NotNull NarrationElementOutput narrationElementOutput) { + } + + public @NotNull ScreenRectangle getBorderForArrowNavigation(@NotNull ScreenDirection screenDirection) { + return new ScreenRectangle(this.getX(), this.getY(), this.width, this.contentHeight()); + } + + public void setFocused(@Nullable GuiEventListener eventListener) { + super.setFocused(false); + if (eventListener != null) { + ScreenRectangle screenrectangle = this.getRectangle(); + ScreenRectangle eventRectangle = eventListener.getRectangle(); + int i = (int)((double)eventRectangle.top() - this.scrollAmount() - (double)screenrectangle.top()); + int j = (int)((double)eventRectangle.bottom() - this.scrollAmount() - (double)screenrectangle.bottom()); + if (i < 0) { + this.setScrollAmount(this.scrollAmount() + (double)i - (double)14.0F); + } else if (j > 0) { + this.setScrollAmount(this.scrollAmount() + (double)j + (double)14.0F); + } + } + + } + + public List children() { + return this.children; + } + + public void setX(int x) { + super.setX(x); + this.layout.setX(x); + this.layout.arrangeElements(); + } + + public void setY(int y) { + super.setY(y); + this.layout.setY(y); + this.layout.arrangeElements(); + } + + public @NotNull Collection getNarratables() { + return this.children; + } + +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/TotalSyncProgress.java b/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/TotalSyncProgress.java new file mode 100644 index 0000000..4d397f2 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/TotalSyncProgress.java @@ -0,0 +1,28 @@ +package dev.oxydien.simpleModSync.ui.widgets; + +import dev.oxydien.simpleModSync.log.Log; +import dev.oxydien.simpleModSync.ui.ProgressHelper; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.gui.components.AbstractWidget; +import net.minecraft.client.gui.narration.NarrationElementOutput; +import net.minecraft.network.chat.Component; + +public class TotalSyncProgress extends AbstractWidget { + private final ProgressHelper progressHelper; + + public TotalSyncProgress(int x, int y, int width, int height, ProgressHelper progressHelper) { + super(x, y, width, height, Component.empty()); + this.progressHelper = progressHelper; + } + + @Override + protected void renderWidget(GuiGraphics guiGraphics, int i, int i1, float v) { + float progress = this.progressHelper.getOverallProgress(); + + guiGraphics.fill(0, 0, (int) (((float) this.width) * progress), this.height, 0xAFFFFFFF); + } + + @Override + protected void updateWidgetNarration(NarrationElementOutput narrationElementOutput) { + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/TotalSyncStatus.java b/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/TotalSyncStatus.java new file mode 100644 index 0000000..505228e --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/ui/widgets/TotalSyncStatus.java @@ -0,0 +1,95 @@ +package dev.oxydien.simpleModSync.ui.widgets; + +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.content.SyncStatus; +import dev.oxydien.simpleModSync.ui.ProgressHelper; +import dev.oxydien.simpleModSync.ui.screens.ContentSyncScreen; +import dev.oxydien.simpleModSync.workers.SyncWorker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.gui.components.AbstractWidget; +import net.minecraft.client.gui.components.Tooltip; +import net.minecraft.client.gui.narration.NarratedElementType; +import net.minecraft.client.gui.narration.NarrationElementOutput; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceLocation; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.time.Duration; +import java.time.temporal.ChronoUnit; + +public final class TotalSyncStatus extends AbstractWidget { + private static final int SIZE = 16; + + private final int x; + private final int y; + private final ProgressHelper progressHelper; + private SyncWorker syncWorker; + private boolean isFocused; + + private static final ResourceLocation BACKGROUND = ResourceLocation.withDefaultNamespace("widget/button_disabled"); + + public TotalSyncStatus(int x, int y, SyncWorker syncWorker, + ProgressHelper progressHelper) { + super(x, y, SIZE, SIZE, Component.empty()); + this.x = x; + this.y = y; + this.syncWorker = syncWorker; + this.progressHelper = progressHelper; + this.setTooltip(Tooltip.create(SyncStatus.TranslatedState(SyncStatus.SyncState.UNSYNCED))); + this.setTooltipDelay(Duration.of(200, ChronoUnit.MILLIS)); + } + + @Override + public void renderWidget(@NotNull GuiGraphics guiGraphics, int mouseX, int mouseY, float v) { + if (this.syncWorker == null) { + this.syncWorker = SimpleModSync.getInstance().syncWorker; + } + + if (this.isFocused() || mouseX < this.x + SIZE && mouseX > this.x && mouseY < this.y + SIZE && mouseY > this.y) + { + guiGraphics.blitSprite(RenderType::guiTexturedOverlay, BACKGROUND, this.x, this.y, SIZE, SIZE); + } + + if (syncWorker == null) { + this.progressHelper.drawStatusIcon(SyncStatus.OfState(SyncStatus.SyncState.UNSYNCED), guiGraphics, this.x, this.y); + return; + } + + this.progressHelper.drawStatusIcon(this.syncWorker.getStatus(), guiGraphics, this.x, this.y); + + if (this.syncWorker.isRunning()) { + this.progressHelper.drawLoadingIcon(guiGraphics, this.x, this.y); + } + + this.setTooltip(Tooltip.create(SyncStatus.TranslatedState(this.syncWorker.getStatus().getState()))); + } + + @Override + public void onClick(double mouseX, double mouseY) { + super.onClick(mouseX, mouseY); + Minecraft.getInstance().setScreen(new ContentSyncScreen(Component.translatable("simple_mod_sync.ui.sync_full_view.title"), null)); + } + + @Override + public void setFocused(boolean b) { + this.isFocused = b; + } + + @Override + public boolean isFocused() { + return this.isFocused; + } + + @Override + public @NotNull NarrationPriority narrationPriority() { + return NarrationPriority.NONE; + } + + @Override + protected void updateWidgetNarration(NarrationElementOutput narrationElementOutput) { + narrationElementOutput.add(NarratedElementType.HINT, "Sync status"); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/utils/DirUtils.java b/common/src/main/java/dev/oxydien/simpleModSync/utils/DirUtils.java new file mode 100644 index 0000000..23ef539 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/utils/DirUtils.java @@ -0,0 +1,97 @@ +package dev.oxydien.simpleModSync.utils; + +import dev.oxydien.simpleModSync.log.Log; +import org.jetbrains.annotations.Nullable; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.List; + +public class DirUtils { + /** + * Checks if any file in given directory matches the filename. If fullname is false it checks if any file starts with given filename. + * @param path The directory for the file to be checked + * @param filename The (partial) filename + * @param fullname Whether the filename is whole or not + * @return The path if found or null if not found + */ + @Nullable + public static Path DirContains(Path path, String filename, boolean fullname) { + try (var stream = Files.list(path)) { + for (var dirFile : stream.toList()) { + if (fullname) { + if (dirFile.getFileName().toString().equals(filename)) { + return dirFile; + } + else { + continue; + } + } + + if (dirFile.getFileName().toString().startsWith(filename)) { + return dirFile; + } + } + } catch (IOException e) { + Log.warning("Failed to list contents of " + path, e); + return null; + } + return null; + } + + /** + * Returns a list of all file paths under the given directory, recursively. + * @param startPath The root directory path to start searching from + * @return List of absolute file paths as strings + */ + public static List GetFilePaths(Path startPath) { + List filePaths = new ArrayList<>(); + + if (!startPath.toFile().exists() || !startPath.toFile().isDirectory()) { + throw new IllegalArgumentException("Invalid directory path: " + startPath); + } + + collectFilePaths(startPath, filePaths); + return filePaths; + } + + private static void collectFilePaths(Path directory, List filePaths) { + File[] files = directory.toFile().listFiles(); + if (files != null) { + for (File file : files) { + filePaths.add(file.toPath()); + if (file.isDirectory()) { + collectFilePaths(file.toPath(), filePaths); + } + } + } + } + + /** + * Sanitizes a given path by making sure it is a valid path and does not attempt to traverse outside the given base directory. + * Used so the mod cannot access files outside the base (minecraft) directory. + * + * @param baseDir The base directory to work from. + * @param userProvidedPath The path specified by the user. + * @return The sanitized path. + * @throws SecurityException If the path is invalid or attempts to traverse outside the base directory. + */ + public static Path sanitizePath(Path baseDir, String userProvidedPath) { + try { + // Convert paths to canonical form + Path requestedPath = baseDir.resolve(userProvidedPath).toAbsolutePath().normalize(); + + // Check if the requested path starts with the base directory + if (!requestedPath.startsWith(baseDir)) { + throw new SecurityException("Path traversal attempt detected"); + } + + return requestedPath; + } catch (Exception e) { + throw new SecurityException("Invalid path", e); + } + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/utils/DownloadUtils.java b/common/src/main/java/dev/oxydien/simpleModSync/utils/DownloadUtils.java new file mode 100644 index 0000000..41554bb --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/utils/DownloadUtils.java @@ -0,0 +1,29 @@ +package dev.oxydien.simpleModSync.utils; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.net.HttpURLConnection; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.util.stream.Collectors; + +public class DownloadUtils { + public static String downloadString(String uriString) throws IOException, URISyntaxException { + URL url = new URI(uriString).toURL(); + HttpURLConnection connection = (HttpURLConnection) url.openConnection(); + connection.setRequestMethod("GET"); + + InputStream inputStream = connection.getInputStream(); + BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); + String jsonString = reader.lines().collect(Collectors.joining("\n")); + + reader.close(); + inputStream.close(); + connection.disconnect(); + + return jsonString; + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/utils/StringUtils.java b/common/src/main/java/dev/oxydien/simpleModSync/utils/StringUtils.java new file mode 100644 index 0000000..c94b4a8 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/utils/StringUtils.java @@ -0,0 +1,11 @@ +package dev.oxydien.simpleModSync.utils; + +public class StringUtils { + public static String sanitize(String input) { + return input.replaceAll("[^a-zA-Z0-9.\\-_]", ""); + } + + public static String sanitizeDirectory(String input) { + return input.replaceAll("[^a-zA-Z0-9. \\-/_\\\\]", ""); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/utils/ZipUtils.java b/common/src/main/java/dev/oxydien/simpleModSync/utils/ZipUtils.java new file mode 100644 index 0000000..f9ea4ff --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/utils/ZipUtils.java @@ -0,0 +1,33 @@ +package dev.oxydien.simpleModSync.utils; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.List; +import java.util.zip.ZipFile; + +public class ZipUtils { + public static List ExtractZipFile(Path zipFilePath, Path destinationDirectory) throws IOException { + List extractedFiles = new ArrayList<>(); + try (ZipFile zipFile = new ZipFile(zipFilePath.toFile())) { + zipFile.entries().asIterator().forEachRemaining(zipEntry -> { + try { + Path path = destinationDirectory.resolve(zipEntry.getName()); + if (zipEntry.isDirectory()) { + Files.createDirectories(path); + extractedFiles.add(path.toAbsolutePath()); + } else { + Files.createDirectories(path.getParent()); + Files.copy(zipFile.getInputStream(zipEntry), path); + extractedFiles.add(path.toAbsolutePath()); + } + } catch (IOException e) { + throw new RuntimeException(e); + } + }); + } + return extractedFiles; + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/workers/ContentWorker.java b/common/src/main/java/dev/oxydien/simpleModSync/workers/ContentWorker.java new file mode 100644 index 0000000..7596e41 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/workers/ContentWorker.java @@ -0,0 +1,95 @@ +package dev.oxydien.simpleModSync.workers; + +import com.google.gson.JsonObject; +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.content.Content; +import dev.oxydien.simpleModSync.content.SyncSchema; +import dev.oxydien.simpleModSync.content.SyncStatus; +import dev.oxydien.simpleModSync.content.handler.ContentHandler; +import dev.oxydien.simpleModSync.io.FileOperations; +import dev.oxydien.simpleModSync.log.Log; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; + +public class ContentWorker { + private final FileOperations files; + private final SyncSchema schema; + + public ContentWorker(SyncSchema schema) { + this.schema = schema; + this.files = new FileOperations(schema); + } + + public void Process(JsonObject contentObject, ContentHandler handler, int index) { + long wid = Thread.currentThread().threadId(); + Log.debug("Worker %d is processing index: %d".formatted(wid, index)); + + // Parsing content + this.schema.withStatus(index, (status) -> { + status.setState(SyncStatus.SyncState.PARSING); + }); + + Content content; + try { + content = handler.ParseJson(contentObject, index); + } catch (Exception e) { + this.schema.withStatus(index, (status) -> { + status.setErrorMessage(e.getMessage()); + }); + return; + } + this.schema.setContent(index, content); + + Log.debug("Worker %d parsed: %s: %s".formatted(wid, content.getType().toString(), content.getName())); + + // Check directory + Path contentDir = handler.GetDirectory(SimpleModSync.getInstance().getInstanceDir()); + if (!contentDir.toFile().exists()){ + try { + Files.createDirectories(contentDir); + } catch (IOException e) { + this.schema.withStatus(index, (status) -> { + status.setErrorMessage(e.getMessage()); + }); + return; + } + } + + // Checking versions + boolean needsUpdate = handler.NeedsUpdate(content); + if (!needsUpdate) { + Log.debug("Worker %d finished index %d, without update".formatted(wid, index)); + this.schema.withStatus(index, (status) -> { + status.setState(SyncStatus.SyncState.FINISHED); + }); + return; + } + + try { + Path olderVersion = handler.GetOlderVersion(content); + if (olderVersion != null) { + Log.info("Worker %d found older version of %s".formatted(wid, content.getName())); + + Files.delete(olderVersion); + } + } catch (Exception e) { + this.schema.withStatus(index, (status) -> { + status.setErrorMessage(e.getMessage()); + }); + } + + // Downloading new version + handler.UpdateVersion(content, this.files , index); + + // Finished + if (handler.CheckExistence(content)) { + this.schema.withStatus(index, (status) -> { + status.setState(SyncStatus.SyncState.MODIFIED); + }); + } + + Log.debug("Worker %d finished index %d".formatted(wid, index)); + } +} diff --git a/common/src/main/java/dev/oxydien/simpleModSync/workers/SyncWorker.java b/common/src/main/java/dev/oxydien/simpleModSync/workers/SyncWorker.java new file mode 100644 index 0000000..2b7ea34 --- /dev/null +++ b/common/src/main/java/dev/oxydien/simpleModSync/workers/SyncWorker.java @@ -0,0 +1,275 @@ +package dev.oxydien.simpleModSync.workers; + +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import com.google.gson.JsonSyntaxException; +import dev.oxydien.simpleModSync.HandlerRegistry; +import dev.oxydien.simpleModSync.SimpleModSync; +import dev.oxydien.simpleModSync.config.Config; +import dev.oxydien.simpleModSync.content.SyncSchema; +import dev.oxydien.simpleModSync.content.SyncStatus; +import dev.oxydien.simpleModSync.content.handler.ContentHandler; +import dev.oxydien.simpleModSync.log.Log; +import dev.oxydien.simpleModSync.modification.Modification; +import dev.oxydien.simpleModSync.modification.handler.ModificationHandler; +import dev.oxydien.simpleModSync.utils.DownloadUtils; + +import java.io.IOException; +import java.net.URISyntaxException; +import java.util.List; +import java.util.concurrent.*; +import java.util.concurrent.atomic.AtomicBoolean; +import java.util.concurrent.atomic.AtomicReference; + +public class SyncWorker implements Runnable { + public interface SyncWorkerUpdateCallback { + /// Called whenever the state changes + void update(); + } + + private final SyncSchema schema; + private final ConcurrentHashMap contentObjects = new ConcurrentHashMap<>(); + private final ConcurrentHashMap modificationObjects = new ConcurrentHashMap<>(); + private final CopyOnWriteArraySet contentsToCheck = new CopyOnWriteArraySet<>(); + private final AtomicBoolean isRunning = new AtomicBoolean(false); + private final ExecutorService virtualThreadExecutor; + private final AtomicReference syncStatus = new AtomicReference<>(new SyncStatus()); + private final AtomicReference updateCallback = new AtomicReference<>(); + + public SyncWorker(SyncSchema schema) { + this.schema = schema; + this.virtualThreadExecutor = Executors.newVirtualThreadPerTaskExecutor(); + } + + public SyncStatus getStatus() { + return this.syncStatus.get(); + } + + @Override + public void run() { + if (!isRunning.compareAndSet(false, true)) { + return; + } + + this.contentsToCheck.clear(); + + this.changeStatus(SyncStatus.OfState(SyncStatus.SyncState.RETRIEVING_SCHEMA)); + + try { + // Download the base json + String url = Config.instance.getDownloadUrl(); + + if (url.isBlank() || url.length() < 4) { + this.syncStatus.set(SyncStatus.OfState(SyncStatus.SyncState.UNSYNCED)); + Log.warning("Download is empty or invalid, not syncing"); + return; + } + + String jsonString = DownloadUtils.downloadString(url); + + this.syncStatus.set(SyncStatus.OfState(SyncStatus.SyncState.PARSING)); + + JsonObject rootObject = JsonParser.parseString(jsonString).getAsJsonObject(); + SyncSchema.SyncWork work = schema.ParseJson(rootObject); + this.contentsToCheck.addAll(work.contentsToCheck()); + this.extractContentObjects(rootObject); + this.extractModificationObjects(rootObject, work.modificationsToExecute()); + + this.changeStatus(SyncStatus.OfState(SyncStatus.SyncState.DOWNLOADING)); + + this.processAllContent(); + + this.processModifications(work.modificationsToExecute()); + + this.finish(); + } catch (IOException e) { + Log.error("run.SyncWorker.IOException", "Failed to download syncSchema file", e); + this.changeStatus(SyncStatus.OfError("Failed to download syncSchema file")); + } catch (URISyntaxException e) { + Log.error("run.SyncWorker.URISyntaxException", "Invalid syncScheme URL address", e); + this.changeStatus(SyncStatus.OfError("Invalid syncScheme URL address")); + } catch (JsonSyntaxException e) { + Log.error("run.SyncWorker.JsonSyntaxException", "Invalid json format", e); + this.changeStatus(SyncStatus.OfError("Invalid json format")); + } catch (UnsupportedOperationException e) { + Log.error("run.SyncWorker.UnsupportedOperationException", "Unsupported feature", e); + this.changeStatus(SyncStatus.OfError("Unsupported feature")); + } finally { + isRunning.set(false); + } + } + + private void extractContentObjects(JsonObject rootObject) { + this.contentObjects.clear(); + + JsonArray syncArray = new JsonArray(); + if (rootObject.has("sync") && rootObject.get("sync").isJsonArray()) { + syncArray = rootObject.getAsJsonArray("sync"); + } + + for (int i = 0; i < syncArray.size(); i++) { + if (syncArray.get(i).isJsonObject() && this.contentsToCheck.contains(i)) { + this.contentObjects.put(i, syncArray.get(i).getAsJsonObject()); + } + } + } + + private void extractModificationObjects(JsonObject rootObject, List modificationsToExecute) { + this.modificationObjects.clear(); + + JsonArray modifyArray = new JsonArray(); + if (rootObject.has("modify") && rootObject.get("modify").isJsonArray()) { + modifyArray = rootObject.getAsJsonArray("modify"); + } + + for (int i = 0; i < modifyArray.size(); i++) { + if (modifyArray.get(i).isJsonObject() && modificationsToExecute.contains(i)) { + this.modificationObjects.put(i, modifyArray.get(i).getAsJsonObject()); + } else { + Log.debug("Modification at index", i, "has invalid structure"); + } + } + } + + private void processAllContent() { + HandlerRegistry registry = SimpleModSync.getInstance().Handlers; + CountDownLatch latch = new CountDownLatch(contentsToCheck.size()); + + for (Integer index : contentsToCheck) { + this.virtualThreadExecutor.submit(() -> { + try { + this.processContentItem(index, registry); + } catch (Exception e) { + schema.withStatus(index, status -> { + status.setErrorMessage("Unexpected error: " + e.getMessage()); + }); + } finally { + latch.countDown(); + } + }); + } + + // Wait for all workers to complete + try { + latch.await(); + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); + } + } + + private void processContentItem(int index, HandlerRegistry registry) { + JsonObject contentObject = contentObjects.get(index); + if (contentObject == null) { + schema.withStatus(index, status -> { + status.setErrorMessage("Content object not found"); + }); + return; + } + + String type = "mod"; + if (contentObject.has("type") && contentObject.get("type").isJsonPrimitive() + && contentObject.get("type").getAsJsonPrimitive().isString()) { + type = contentObject.get("type").getAsString(); + } + + ContentHandler handler = registry.getContentHandler(type); + if (handler == null) { + schema.withStatus(index, status -> { + status.setState(SyncStatus.SyncState.UNSUPPORTED); + }); + return; + } + + ContentWorker worker = new ContentWorker(schema); + worker.Process(contentObject, handler, index); + } + + private void processModifications(List integers) { + HandlerRegistry registry = SimpleModSync.getInstance().Handlers; + + Log.debug("Running", integers.size(), "modifications"); + + for (Integer index : integers) { + JsonObject modObject = modificationObjects.get(index); + if (modObject == null) { + return; + } + + if (!modObject.has("type") || !modObject.get("type").isJsonPrimitive()) { + Log.warning("Failed to run modification on index", index, ": No valid type specified"); + return; + } + String type = modObject.get("type").getAsString(); + + ModificationHandler handler = registry.getModificationHandler(type); + if (handler == null) { + Log.warning("Failed to run modification on index", index, ": Unsupported type specified", type); + return; + } + + try { + Modification mod = handler.ParseJson(modObject); + handler.Execute(mod, SimpleModSync.getInstance().getInstanceDir()); + } catch (Exception e) { + Log.error("Failed to run modification on index", index, e); + } + } + } + + private void finish() { + var progresses = this.schema.getProgress(); + boolean anyModified = false; + boolean anyError = false; + + for (var iterator = progresses.keys().asIterator(); iterator.hasNext();) { + int key = iterator.next(); + SyncStatus status = progresses.get(key); + + if (status.getState() == SyncStatus.SyncState.ERROR) { + anyError = true; + } + + if (status.getState() == SyncStatus.SyncState.MODIFIED) { + anyModified = true; + } + } + + if (anyError) { + this.changeStatus(SyncStatus.OfState(SyncStatus.SyncState.ERROR)); + } else if (anyModified) { + this.changeStatus(SyncStatus.OfState(SyncStatus.SyncState.MODIFIED)); + } else { + this.changeStatus(SyncStatus.OfState(SyncStatus.SyncState.FINISHED)); + } + } + + private void changeStatus(SyncStatus syncStatus) { + this.syncStatus.set(syncStatus); + if (this.updateCallback.get() != null) { + this.updateCallback.get().update(); + } + } + + public void subscribeUpdateCallback(SyncWorkerUpdateCallback callback) { + this.updateCallback.set(callback); + } + + public boolean isRunning() { + return isRunning.get(); + } + + public void shutdown() { + if (this.virtualThreadExecutor != null && !this.virtualThreadExecutor.isShutdown()) { + this.virtualThreadExecutor.shutdown(); + try { + if (!this.virtualThreadExecutor.awaitTermination(60, TimeUnit.SECONDS)) { + this.virtualThreadExecutor.shutdownNow(); + } + } catch (InterruptedException e) { + this.virtualThreadExecutor.shutdownNow(); + Thread.currentThread().interrupt(); + } + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/assets/simplemodsync/lang/cs_cz.json b/common/src/main/resources/assets/simplemodsync/lang/cs_cz.json new file mode 100644 index 0000000..ad0323b --- /dev/null +++ b/common/src/main/resources/assets/simplemodsync/lang/cs_cz.json @@ -0,0 +1,27 @@ +{ + "simple_mod_sync.ui.init_screen.title": "Simple Mod Sync", + "simple_mod_sync.ui.init_screen.sub_header": "Zadejte URL níže a stiskněte tlačítko", + "simple_mod_sync.ui.init_screen.auto_update": "Automatická synchronizace", + "simple_mod_sync.ui.init_screen.save": "Uložit", + "simple_mod_sync.ui.content_screen.title": "§lSimple Mod Sync", + "simple_mod_sync.ui.content_screen.save_url_button": "Uložit URL", + "simple_mod_sync.ui.content_screen.sync_button": "Synchronizovat nyní", + "simple_mod_sync.ui.content_screen.auto_download_true": "Vypnout auto-sync", + "simple_mod_sync.ui.content_screen.auto_download_false": "Povolit auto-sync", + "simple_mod_sync.ui.content_screen.back_button": "Zpět", + "simple_mod_sync.ui.content_type.mod": "Mód", + "simple_mod_sync.ui.content_type.resourcepack": "Balíček zdrojů", + "simple_mod_sync.ui.content_type.shader": "Shader", + "simple_mod_sync.ui.content_type.datapack": "Datový balíček", + "simple_mod_sync.ui.content_type.packed": "Zabaleno", + "simple_mod_sync.ui.sync_state.starting": "Synchronizace právě začala", + "simple_mod_sync.ui.sync_state.parsing": "Parsování souboru šablony", + "simple_mod_sync.ui.sync_state.finished": "Vše hotovo, není vyžadována žádná akce!", + "simple_mod_sync.ui.sync_state.downloading": "Stahování nového obsahu", + "simple_mod_sync.ui.sync_state.modified": "Restartujte hru pro použití aktualizace", + "simple_mod_sync.ui.sync_state.unsynced": "Nesynchronizováno", + "simple_mod_sync.ui.sync_state.retrieving_schema": "Načítání souboru šablony", + "simple_mod_sync.ui.sync_state.invalid": "Neplatná struktura, více v logu", + "simple_mod_sync.ui.sync_state.unsupported": "Nepodporovaná funkce, více v logu", + "simple_mod_sync.ui.sync_state.error": "Něco se pokazilo, více v herním logu" +} \ No newline at end of file diff --git a/common/src/main/resources/assets/simplemodsync/lang/en_us.json b/common/src/main/resources/assets/simplemodsync/lang/en_us.json new file mode 100644 index 0000000..26369a0 --- /dev/null +++ b/common/src/main/resources/assets/simplemodsync/lang/en_us.json @@ -0,0 +1,27 @@ +{ + "simple_mod_sync.ui.init_screen.title": "Simple Mod Sync", + "simple_mod_sync.ui.init_screen.sub_header": "Enter the URL bellow and press the button", + "simple_mod_sync.ui.init_screen.auto_update": "Auto synchronize", + "simple_mod_sync.ui.init_screen.save": "Save", + "simple_mod_sync.ui.content_screen.title": "§lSimple Mod Sync", + "simple_mod_sync.ui.content_screen.save_url_button": "Save URL", + "simple_mod_sync.ui.content_screen.sync_button": "Sync now", + "simple_mod_sync.ui.content_screen.auto_download_true": "Disable auto", + "simple_mod_sync.ui.content_screen.auto_download_false": "Enable auto", + "simple_mod_sync.ui.content_screen.back_button": "Back", + "simple_mod_sync.ui.content_type.mod": "Mod", + "simple_mod_sync.ui.content_type.resourcepack": "Resource pack", + "simple_mod_sync.ui.content_type.shader": "Shader", + "simple_mod_sync.ui.content_type.datapack": "Datapack", + "simple_mod_sync.ui.content_type.packed": "Packed", + "simple_mod_sync.ui.sync_state.starting": "The synchronization just started", + "simple_mod_sync.ui.sync_state.parsing": "Parsing the schema file", + "simple_mod_sync.ui.sync_state.finished": "All done, no action required!", + "simple_mod_sync.ui.sync_state.downloading": "Downloading new content", + "simple_mod_sync.ui.sync_state.modified": "Restart your game to apply update", + "simple_mod_sync.ui.sync_state.unsynced": "Not synchronized", + "simple_mod_sync.ui.sync_state.retrieving_schema": "Retrieving the schema file", + "simple_mod_sync.ui.sync_state.invalid": "Invalid structure, see more in logs", + "simple_mod_sync.ui.sync_state.unsupported": "Unsupported feature, see more in logs", + "simple_mod_sync.ui.sync_state.error": "Something went wrong, see more in game logs" +} diff --git a/common/src/main/resources/assets/simplemodsync/lang/nl_nl.json b/common/src/main/resources/assets/simplemodsync/lang/nl_nl.json new file mode 100644 index 0000000..547a4a9 --- /dev/null +++ b/common/src/main/resources/assets/simplemodsync/lang/nl_nl.json @@ -0,0 +1,27 @@ +{ + "simple_mod_sync.ui.init_screen.title": "Simple Mod Sync", + "simple_mod_sync.ui.init_screen.sub_header": "Voer de URL hieronder in en druk op de knop", + "simple_mod_sync.ui.init_screen.auto_update": "Automatisch synchroniseren", + "simple_mod_sync.ui.init_screen.save": "Opslaan", + "simple_mod_sync.ui.content_screen.title": "§lSimple Mod Sync", + "simple_mod_sync.ui.content_screen.save_url_button": "URL opslaan", + "simple_mod_sync.ui.content_screen.sync_button": "Nu synchroniseren", + "simple_mod_sync.ui.content_screen.auto_download_true": "Auto uitschakelen", + "simple_mod_sync.ui.content_screen.auto_download_false": "Auto inschakelen", + "simple_mod_sync.ui.content_screen.back_button": "Terug", + "simple_mod_sync.ui.content_type.mod": "Mod", + "simple_mod_sync.ui.content_type.resourcepack": "Resource pack", + "simple_mod_sync.ui.content_type.shader": "Shader", + "simple_mod_sync.ui.content_type.datapack": "Datapack", + "simple_mod_sync.ui.content_type.packed": "Ingepakt", + "simple_mod_sync.ui.sync_state.starting": "De synchronisatie is zojuist gestart", + "simple_mod_sync.ui.sync_state.parsing": "Schemabestand parseren", + "simple_mod_sync.ui.sync_state.finished": "Alles voltooid, geen actie vereist!", + "simple_mod_sync.ui.sync_state.downloading": "Nieuwe inhoud downloaden", + "simple_mod_sync.ui.sync_state.modified": "Herstart je spel om de update toe te passen", + "simple_mod_sync.ui.sync_state.unsynced": "Niet gesynchroniseerd", + "simple_mod_sync.ui.sync_state.retrieving_schema": "Schemabestand ophalen", + "simple_mod_sync.ui.sync_state.invalid": "Ongeldige structuur, zie logs voor meer info", + "simple_mod_sync.ui.sync_state.unsupported": "Niet-ondersteunde functie, zie logs voor meer info", + "simple_mod_sync.ui.sync_state.error": "Er is iets misgegaan, zie de game-logs voor meer info" +} \ No newline at end of file diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/datapack.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/datapack.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..1d06c402d97d27d8c716c4790e596127d685f548 GIT binary patch literal 363 zcmd01WMFu(l#zi82o)HB9EKDiMgX7~NRUAQ2x$Rc0}cK4kp*lk3y>`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU3~hiMRs{y2Qy3ZkGr^Q_FmNzb%-Q_4^6UL+3~3I` b28K>m7jEwOBCPFyLNDi?N(f4F%}28J29*~C-V}>arbm_43U_c zoS-0NU}RumaO2mWU;X|UAL=Ic@azydbR@xqdl!q|ftI{KAfbZQ8#Gl|A}+8_nA>pX lSU^Xfu8(2nL1!KY26Hp{%`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU4DEp&Rs{y2Qy3ZkGr^Q_FmNzb%t=mgVEXU>hdnu_ eA*OPM#3q|vRx@PmtT&t#d@N@p!EoYf4F%}28J29*~C-V}>G4phB43U_c zoS-26$NuB|hyOeOzc}P``a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU3>|f4F%}28J29*~C-V}>vG89KF)7^Xurv+#7@|3@`js-T-Hc;hMj0Stu?1%Lb?aPoD%~> Ya=+wvtH_mKfo3pxy85}Sb4q9e0AKPbApigX literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/finished.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/finished.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..55c0d6fcda41aaab5fc641a17447405d99c42469 GIT binary patch literal 370 zcmXS7WMFu(l#zi82o)HB9EKDiMgX7~NRUAQ2x$R60S*22kp*lk3y>`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU44r`-Rs{y2Qy3ZkGr^Q_FmNzb%t=mYVA$&&_kW@x ivyj7d=P>6k3&T$>XI!ScKTDo`_$m7g3x-RfneqUuFiOn; literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/finished.png b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/finished.png new file mode 100644 index 0000000000000000000000000000000000000000..78ce3e7102da71b9bfa046bd9481a633c74c32de GIT binary patch literal 137 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4F%}28J29*~C-V}>arSg^43U_c zoS-0Npj7-tukx?^v-nH5k98~*h!xzGq!!baz?D$sb7Ys`>O*a3)z4*}Q$iB}Ich9e literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/loading.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/loading.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..7fdd52d0e8caa13e6f9fed8faff32c4d0dbad6c5 GIT binary patch literal 1084 zcmcCvVPJT$l!HM42o)F@85kH+fEWRQVjw}F446VlP>IC~H1^j=7O<^Ar!a^CF}nh~ zU0Fa;7LW@RfD9!C6ITtJG)u$&Fzfq;YBv|8y*oVX_b0QNPXn^{8JJJW^Ul-{@>Vgj zv9z}@F-T~N&U=_V`+xk|C#P@!`Tzg_?6uol>e@52vLeHR%AC5^7#ZCRPrhEgtADyz zSH6Kf$R-75APEEifedyApTx@4A_c=RAcs`}5*+`TU`qHH_!uhYBqtnTiQixMx4&nj z#=+I|B>uL1Nx1BNA|~e3ksqwFyrzHrwQGOe@#WuprAU9}FU^hOk@j|`47>-#8WMm8 z{rboV4g`?b1ArKtE!@P|Vn5@n;^)q*?Pt`Nu*d2$=n4L}O+z!EGGBDrIc2eX$uF%s z!D}CNqj??wY#D~**XZSef<7^?#Fl{7CzASuva7}-NeNwRViMX0iJMQ@P z#Gkn6yk>U-1B29x|F$`3R>Z)q!0H=tvf@7!v19|&j4GhvuNB?oEx#>zy?Ciy)yuPx$JxN4CRA_U@bHOW(Ag+RAAK%^cctihpV)v#YaWsRs`KQLh} zeP~y%Ub#xbgg8DareO@Bv^sZ(M}21WEt^002ovPDHLkV1iN0rj!5x literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/mod.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/mod.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..8066a91ec449dffdb0bcbaaa5ffbc8aa36f404e8 GIT binary patch literal 362 zcmc~|WMFu(l#zi82o)HB9EKDiMgX7~NRUAQ2x$Rc0S*22kp*lk3y>`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU46T72Rs{y2Qy3ZkGr^Q_FmNzb%-MbA{kQ)@jAs~F aPvl6*&z8`u^!mD(IqB)gM25SpAqN3?7D%%I literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/mod.png b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/mod.png new file mode 100644 index 0000000000000000000000000000000000000000..ecdb086b70af133976f329d2f87c69d5d263634c GIT binary patch literal 137 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4F%}28J29*~C-V}>arSg^43U_c zoS-0NU}Rum5c8`1cfbF{xQBXfY$dHPW+l|9*a3)z4*}Q$iB}EI%x2 literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/modified.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/modified.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..56d8c8fd55e290dfa875536b498b14fb406718c3 GIT binary patch literal 370 zcmXS7WMFu(l#zi82o)HB9EKDiMgX7~NRUAQ2x$R60S*22kp*lk3y>`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU44r`-Rs{y2Qy3ZkGr^Q_FmNzb%t=mgXed?-|KDuD iEY{%9r`GQ;YgU<3`r_AxtBHqS6g}A?&2TEgb1wj-*GuXE literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/modified.png b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/modified.png new file mode 100644 index 0000000000000000000000000000000000000000..7442d8a63e4debc57c68cc4125eae9ad6c6a78db GIT binary patch literal 133 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4F%}28J29*~C-V}>vG;Uw43U_c zoS+~+$9U(j|8q`W{Xa#!N%P3k#?FYdIyY2$&Se-YX(uHBfy?zyzJyr@C5KclFm_27 dYASIuFfcc%?Uvj8As=WIgQu&X%Q~loCIGtDDkJ~^ literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/packed.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/packed.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..90bd9f154b99d8fc31166b56dab84e4a02eaf26e GIT binary patch literal 374 zcmXS8WMFu(l#zi82o)HB9EKDiMgX7~NRUAQ2x$Sn0S*22kp*lk3y>`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU4BdeoRs{y2Qy3ZkGr^Q_FmNzb%t=m2NH}rk)UWdm nEDkj@B=n?WW%X)zTrph0m~`dwX8!rn7q2RwW@HGgwVMb47Me}4 literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/packed.png b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/packed.png new file mode 100644 index 0000000000000000000000000000000000000000..9a407a23e3ae66d014ccdf15030f76730c915abb GIT binary patch literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4F%}28J29*~C-V}>vGR0r43U_c zoS-0@l9u|{{rTeVgQ5#BORz2QPPp7~S*yg=$KcqP%*zs-JEafLb=fUA{dfTzd)R7D aMg|Q}>-(E}bWZ?HVeoYIb6Mw<&;$UML?_Jv literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/parsing.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/parsing.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..8982da8d5ecb9e9f6b4dae64fb8d8b5362cb5f2c GIT binary patch literal 370 zcmXS7WMFu(l#zi82o)HB9EKDiMgX7~NRUAQ2x$R60S*22kp*lk3y>`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU44r`-Rs{y2Qy3ZkGr^Q_FmNzb%t=mYXqdA5|Np}V i%u){G&d-vA`*r+Q+9>{>cyz+u{?jofwha1eR`~$iPfNl8 literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/parsing.png b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/parsing.png new file mode 100644 index 0000000000000000000000000000000000000000..020c7ee9aa9c3d30cb5cd9beaff48e5de58dcc9b GIT binary patch literal 124 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4F%}28J29*~C-V}>G4phB43U_c zoS-0Npi~_6?%#j@ literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/preparing.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/preparing.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..1cc354d7931f20878095f2a68b29edce4812304c GIT binary patch literal 373 zcmXSAWMFu(l#zi82o)HB9EKDiMgX7~NRUAQ2x$Sn0uBB3kp*lk3y>`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU4BdbnRs{y2Qy3ZkGr^Q_FmNzb%t=mYXxRNf_@8nz mn@Ynucd^6E#qR2q*q->bf4F%}28J29*~C-V}>vG;Uw43U_c zoS-0Npj7p9zURwVV9WzUVAhS!JEZM!-nWc^pA ed+^ISF)+M1Zcy8NPhJ>k6oaR$pUXO@geCxXb}9(~ literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/resourcepack.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/resourcepack.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..cb427bda4afdf2bdfa52245c6c4443582c70bfaa GIT binary patch literal 400 zcmbQh$iVPmDI)_H5GpVLISeU4i~v9}kRXEq5Yhq&08Rh(kriw!E6@TlAZAwpTZv>{ z7Ld&Xa-9N@p`>8qs$r96Y1kiTeZNrc=7O|$hiCo%WH$3@K-NA3^C@}WnfgKADn>Sz z_Vy(P2~E*?50hvAk3ak5^zA?Y|No!8c6&=*duCQvWLQv{Q`Z_JqnqK$*Q literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/resourcepack.png b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/resourcepack.png new file mode 100644 index 0000000000000000000000000000000000000000..567c3448404020254e1011c0b419e19061402bfc GIT binary patch literal 146 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4F%}28J29*~C-V}>@$qzV43U_c zoS-0NU}Rum@WbBVPrv^~x7N=+JS`%Jp3LCTY+&SRHDE1xy+QL!eZr6W#fK{0=J`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU4DEp&Rs{y2Qy3ZkGr^Q_FmNzb%t=mgXb6wo_TO;^ eBd>sR+nM7>kEO9GRwkWMIePZRBZg@*nv4L3#7SfT literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/shader.png b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/shader.png new file mode 100644 index 0000000000000000000000000000000000000000..5b117814b99eb512dc1f786e550f5d2f758e8bb3 GIT binary patch literal 118 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4F%}28J29*~C-V}>G4OP843U_c zoS-1S=hUXZ|FuqkvyWpv(vj$q5ZZEHYle()AfNiptQaAd+Wv4xMFs}-o63)G@^$YA P>SgeB^>bP0l+XkK@^T`q literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/unknown.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/unknown.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..3199de405086e994620af57ad9cf290ba0c75b40 GIT binary patch literal 366 zcmc~}WMFu(l#zi82o)HB9EKDiMgX7~NRUAQ2x$S{0S*22kp*lk3y>`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU4DEp&Rs{wICZJ>fGr^RwF>o+c%t=m2NU&Hd_FrDo eSfSIf4F%}28J29*~C-V}>G4ynC43U_c zoS-0Npj7O)`sjc6XS44`o#zopr0AY9~LI3~& literal 0 HcmV?d00001 diff --git a/common/src/main/resources/assets/simplemodsync/ui/textures/icons/unsynced.aseprite b/common/src/main/resources/assets/simplemodsync/ui/textures/icons/unsynced.aseprite new file mode 100644 index 0000000000000000000000000000000000000000..e8eca4acd7ab8a3963a6fcc5bf1481fca73f90dd GIT binary patch literal 363 zcmd01WMFu(l#zi82o)HB9EKDiMgX7~NRUAQ2x$Rc0}cK4kp*lk3y>`a#Ow-SE0L_r z04g15a?-#1wT#)we@T}jT%w|3f$l7OMJ|)jPQ$NUC#mL6e z-oC^jp(#4=Ve;(%@n@f$zWwL_|NpbsZf~h;&&RMxDbTd5pdiAdU>0Vv= z2J#@A6qtb|4EzT&*cp5hD^rUU3~hiMRs{wIW}svKGr^RwFmNzb%t=mYXjq*z^S|VT b8wPep(z9)tXVsMyZf4F%}28J29*~C-V}>QT23j43U_c zoUni;M)dTbe!XKZJxXiT1eZ?GIqIUV;AL3qdxVw2giX$BjvoI3paup{S3j3^P6=0.16.0", + "minecraft": ">=1.21.1", + "java": ">=17", + "fabric-api": "*" + } +} diff --git a/src/main/resources/simple-mod-sync.mixins.json b/fabric/src/main/resources/simplemodsync.mixins.json similarity index 74% rename from src/main/resources/simple-mod-sync.mixins.json rename to fabric/src/main/resources/simplemodsync.mixins.json index 1c88c03..e6ed992 100644 --- a/src/main/resources/simple-mod-sync.mixins.json +++ b/fabric/src/main/resources/simplemodsync.mixins.json @@ -1,6 +1,6 @@ { "required": true, - "package": "dev.oxydien.mixin", + "package": "dev.oxydien.simpleModSync.mixin", "compatibilityLevel": "JAVA_21", "mixins": [ "TitleScreenMixin" diff --git a/gradle.properties b/gradle.properties index 4556793..d56d32e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,17 +1,28 @@ -# Done to increase the memory available to gradle. -org.gradle.jvmargs=-Xmx1G -org.gradle.parallel=true +version=1.3.0 +group=dev.oxydien.simpleModSync +java_version=21 -# Fabric Properties -# check these on https://fabricmc.net/develop +# Common minecraft_version=1.21.5 -yarn_mappings=1.21.5+build.1 -loader_version=0.16.14 +mod_name=SimpleModSync +mod_author=oxydien +mod_id=simplemodsync +license=MIT +credits=oxydien +description=A simple way to share and sync mods, resource packs, shaders, and other Minecraft content with your friends or community. +minecraft_version_range=[1.21.5, 1.22) +neo_form_version=1.21.5-20250325.162830 +parchment_minecraft=1.21.4 +parchment_version=2025.03.23 -# Mod Properties -mod_version=1.2.0 -maven_group=dev.oxydien -archives_base_name=simple-mod-sync +# Fabric +fabric_version=0.119.5+1.21.5 +fabric_loader_version=0.16.10 -# Dependencies -fabric_version=0.125.3+1.21.5 +# NeoForge +neoforge_version=21.5.4-beta +neoforge_loader_version_range=[4,) + +# Gradle +org.gradle.jvmargs=-Xmx3G +org.gradle.daemon=false \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ca025c8..adda1f2 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,7 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists +zipStorePath=wrapper/dists \ No newline at end of file diff --git a/neoforge/build.gradle b/neoforge/build.gradle new file mode 100644 index 0000000..acb78aa --- /dev/null +++ b/neoforge/build.gradle @@ -0,0 +1,39 @@ +plugins { + id 'multiloader-loader' + id 'net.neoforged.moddev' +} + +neoForge { + version = neoforge_version + // Automatically enable neoforge AccessTransformers if the file exists + def at = project(':common').file('src/main/resources/META-INF/accesstransformer.cfg') + if (at.exists()) { + accessTransformers.from(at.absolutePath) + } + parchment { + minecraftVersion = parchment_minecraft + mappingsVersion = parchment_version + } + runs { + configureEach { + systemProperty('neoforge.enabledGameTestNamespaces', mod_id) + ideName = "NeoForge ${it.name.capitalize()} (${project.path})" // Unify the run config names with fabric + } + client { + client() + } + data { + clientData() + } + server { + server() + } + } + mods { + "${mod_id}" { + sourceSet sourceSets.main + } + } +} + +sourceSets.main.resources { srcDir 'src/generated/resources' } \ No newline at end of file diff --git a/neoforge/src/main/java/dev/oxydien/simpleModSync/neoforge/SimpleModSyncNeoforge.java b/neoforge/src/main/java/dev/oxydien/simpleModSync/neoforge/SimpleModSyncNeoforge.java new file mode 100644 index 0000000..76458fe --- /dev/null +++ b/neoforge/src/main/java/dev/oxydien/simpleModSync/neoforge/SimpleModSyncNeoforge.java @@ -0,0 +1,21 @@ +package dev.oxydien.simpleModSync.neoforge; + +import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.loading.FMLPaths; +import dev.oxydien.simpleModSync.SimpleModSync; +import java.nio.file.Path; + +@Mod(SimpleModSync.MOD_ID) +public class SimpleModSyncNeoforge extends SimpleModSync { + + public SimpleModSyncNeoforge(IEventBus eventBus) { + SimpleModSync.init(this); + super.onInitialize(); + } + + @Override + public Path getInstanceDir() { + return FMLPaths.GAMEDIR.get(); + } +} \ No newline at end of file diff --git a/neoforge/src/main/resources/META-INF/neoforge.mods.toml b/neoforge/src/main/resources/META-INF/neoforge.mods.toml new file mode 100644 index 0000000..1fdc200 --- /dev/null +++ b/neoforge/src/main/resources/META-INF/neoforge.mods.toml @@ -0,0 +1,32 @@ +modLoader = "javafml" #mandatory +loaderVersion = "${neoforge_loader_version_range}" #mandatory +license = "${license}" # Review your options at https://choosealicense.com/. +#issueTrackerURL="https://change.me.to.your.issue.tracker.example.invalid/" #optional + +[[mods]] #mandatory +modId = "${mod_id}" #mandatory +version = "${version}" #mandatory +displayName = "${mod_name}" #mandatory +#updateJSONURL="https://change.me.example.invalid/updates.json" #optional (see https://docs.neoforged.net/docs/misc/updatechecker/) +#displayURL="https://change.me.to.your.mods.homepage.example.invalid/" #optional (displayed in the mod UI) +logoFile="${mod_id}.png" #optional +credits="${credits}" #optional +authors = "${mod_author}" #optional +description = '''${description}''' #mandatory (Supports multiline text) + +[[mixins]] +config = "${mod_id}.mixins.json" + +[[dependencies.${mod_id}]] #optional +modId = "neoforge" #mandatory +type="required" #mandatory (Can be one of "required", "optional", "incompatible" or "discouraged") +versionRange = "[${neoforge_version},)" #mandatory +ordering = "NONE" # The order that this dependency should load in relation to your mod, required to be either 'BEFORE' or 'AFTER' if the dependency is not mandatory +side = "BOTH" # Side this dependency is applied on - 'BOTH', 'CLIENT' or 'SERVER' + +[[dependencies.${mod_id}]] +modId = "minecraft" +type="required" #mandatory (Can be one of "required", "optional", "incompatible" or "discouraged") +versionRange = "${minecraft_version_range}" +ordering = "NONE" +side = "BOTH" diff --git a/neoforge/src/main/resources/simplemodsync.mixins.json b/neoforge/src/main/resources/simplemodsync.mixins.json new file mode 100644 index 0000000..ede68aa --- /dev/null +++ b/neoforge/src/main/resources/simplemodsync.mixins.json @@ -0,0 +1,14 @@ +{ + "required": true, + "minVersion": "0.8", + "package": "dev.oxydien.simpleModSync.mixin", + "compatibilityLevel": "JAVA_21", + "mixins": [], + "client": [ + "TitleScreenMixin" + ], + "server": [], + "injectors": { + "defaultRequire": 1 + } +} \ No newline at end of file diff --git a/neoforge/src/main/resources/simplemodsync.png b/neoforge/src/main/resources/simplemodsync.png new file mode 100644 index 0000000000000000000000000000000000000000..9612763da08eecb8ed793769cc7665c95b536ae7 GIT binary patch literal 3126 zcmV-649W9}P)Px=@JU2LRCt{2U0sY-R~7!&9+V#$+AK~~nepeLnrK23X`+cdlm`+s z2}4s&q=^ao(4=iz?L%#$i9R*(f(brgB1TB4Zw&2|+OaZB3&?bWT8d%npaIVEVehri zzL(3HbMHCl-o4M=UqWVvJ9qCrcYS-UwfFitKtx1DL_|bHL_|bHL_{Bfx;4@G_&ERJ z^r>!57c{nQ*@}}VPj*E%l}z%`#?NpSYYy}Jf~qE`832_G$TJ+i5=%5TO;C(Z%HU~n*IAPcoM0c8tb@Xv!spcnv1n}SMa z=^kq71Xd;dWPSmR)bxige4u6oSheTT%7hO9?~OeTf-CrF0=xhbVg1{$RyKYzzkqkY zd;kQ182~Byrm{J^h2RNLweV-g4j`GoX?8womB|dMf$)JE5THuoPY+K3r1!blN)bB) zP(;C>1OoN}xH5bH-@nabdUygv05PCI0236$dj9p;|AA@%0^QC;IRht@6np?Gy;a z+~D*<)IQZ)@B;4%z|0_UVH42k<+HW*%CY$JdOsnEV_?yJI6b`2oaf0N>lEofp2#?R z%uqGA_pRW)2C(NZ>YN5v@a9HOk@)xec&Al05wAOH14_DLjr3@R|SuvD*u8o$vKhEXpV|^8sEHKq_xINx+Gd+&LJ$OC6A6;=EC9SacA!_w$;7HBAM5oJ+Jg54AajK$X*d{r`zLmq{s9z(Iq;qU%nU`!Dah2-IRxN?7mwq{iL*UiU2A;mm2o5- zM)|n+1Q6Jy4I&f4)4S{H!K0Xa>X$uTTQgRC;|slBLT&^>fOIF3&DRr$keKn&nLlHC z*t6pyg;6^k1OWg^+<*<`N(z@EWpnl~j7(s5@5?=0Ws0F^b^5yRUVzuZpw?g$8_;q5 z1OP~XW&65L`rQ1N*K&_KJ+fcF*Tf%)fT4YlVQ8Xrul}+L8uhw}G%Fb7eK@!oL`q)} z89^zNFDU+j{g_#61ctdtGD#<Qh`Pb05G~`89R>vYtBw*IxS_R(}19SlVGSDkCi} z@fE?C00G-<9!gWZ%s>6JIEtDw`y*z9lykdVnFh8AkV3<)QIVejpk0R@$&h!N|!b4f_4~0w1H8f}jZ?(BhR{tUv4l5_i#FiPVAsfIbeg*Z=?~pZMO&*LD1y{}VFloWW&SU4#JE z`|Ny(su7$McrUoSOB_14!Z-cN$qsh3fHegMD|hX{Lz6Fcyq^D@`IE0^zX7$;0Igt; zhN1=nG3#Ght0&C*~09uh}W$I=naF&_j zd*wSX*kh&iBJff8KuriB0v&o~e9_;vaYcs&WeWe++=q=`f3x4=8EQcQHpv%x;_&zH z-`S9?QFdsVe@Ca_r zUbF4yY}|>xz61nNgJU2!eO(L>zW&2f=hyAz7fja?q}@kM2eL?jE}&N*vfFq{Dwfjb zl3_HL4VnPrT=gQ};tF4ykGYZFbzZ@|I_0@eVwe^3Qu ze{QO=rtm$}Wt7-a{mvak$Ou*g0M72K*!zBX>M#aOo?u;ez93iv$Rp%Hge7ZNS3aNQ z71l-Yf?x?Cf?#Ice*apJR}(IRC4hS@>()7J*(00GAdG?AWnj{>r(%FXQ&yhn3F3Qac(*2e3R?RKR|=iAli( z+~EXl9xTBCmTg&w!EcY@fjy6wHqXqq2@FWBVPJiMvs%OiO#t01NQZ-&V4f_J-Vn-e z1=1QpTmR3%itU?m->y-tS|pNqVPryI2Xo_%UW+rp%IdQBz5 z=@UuqYj^KzBGr)T>*k(?ApATCn*ab{TEHaC7%)W`4CwCxNT;au1`l@kW~FZt82WKV zPEP>|{RZX(WFdG0=xCh#G?6qlOW9x%*+hMtK;pECaes%wAXZ=`4S^sTSi|-FuS}J%G@Ymmg4X~7 zw-=CGkYSrgI=0+xCS&|PV-ln*Ia@P9GP*I$uqMw`fbZMJ*5p+BvzkVNTo*-_<<%^f7U7Hh8E{ghPr8#xqA0Ow_r%#nNT*M+M%OS7KtB>ZP zTvT-e>&db1d%Jh@ + +#Disable inspections +#exclude: +# - name: +# paths: +# - + +projectJDK: "21" #(Applied in CI/CD pipeline) + +#Execute shell command before Qodana execution (Applied in CI/CD pipeline) +#bootstrap: sh ./prepare-qodana.sh + +#Install IDE plugins before Qodana execution (Applied in CI/CD pipeline) +#plugins: +# - id: #(plugin id can be found at https://plugins.jetbrains.com) + +# Quality gate. Will fail the CI/CD pipeline if any condition is not met +# severityThresholds - configures maximum thresholds for different problem severities +# testCoverageThresholds - configures minimum code coverage on a whole project and newly added code +# Code Coverage is available in Ultimate and Ultimate Plus plans +#failureConditions: +# severityThresholds: +# any: 15 +# critical: 5 +# testCoverageThresholds: +# fresh: 70 +# total: 50 + +#Qodana supports other languages, for example, Python, JavaScript, TypeScript, Go, C#, PHP +#For all supported languages see https://www.jetbrains.com/help/qodana/linters.html +linter: jetbrains/qodana-jvm-community:2025.2 diff --git a/settings.gradle b/settings.gradle index 75c4d72..5fb683d 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,10 +1,38 @@ pluginManagement { - repositories { - maven { - name = 'Fabric' - url = 'https://maven.fabricmc.net/' - } - mavenCentral() - gradlePluginPortal() - } -} \ No newline at end of file + repositories { + gradlePluginPortal() + mavenCentral() + exclusiveContent { + forRepository { + maven { + name = 'Fabric' + url = uri('https://maven.fabricmc.net') + } + } + filter { + includeGroup('net.fabricmc') + includeGroup('fabric-loom') + } + } + exclusiveContent { + forRepository { + maven { + name = 'Sponge' + url = uri('https://repo.spongepowered.org/repository/maven-public') + } + } + filter { + includeGroupAndSubgroups("org.spongepowered") + } + } + } +} + +plugins { + id 'org.gradle.toolchains.foojay-resolver-convention' version '0.8.0' +} + +rootProject.name = 'simple-mod-sync' +include('common') +include('fabric') +include('neoforge') diff --git a/src/main/java/dev/oxydien/SimpleModSync.java b/src/main/java/dev/oxydien/SimpleModSync.java deleted file mode 100644 index 07bf654..0000000 --- a/src/main/java/dev/oxydien/SimpleModSync.java +++ /dev/null @@ -1,37 +0,0 @@ -package dev.oxydien; - -import dev.oxydien.config.Config; -import dev.oxydien.logger.Log; -import dev.oxydien.workers.ModDownloadWorker; -import net.fabricmc.api.ModInitializer; - -import net.fabricmc.loader.api.FabricLoader; - -public class SimpleModSync implements ModInitializer { - public static final String MOD_ID = "simple-mod-sync"; - - public static ModDownloadWorker worker; - - @Override - public void onInitialize() { - new Log(MOD_ID, true); - Log.Log.info("Simple Mod Sync is starting up..."); - FabricLoader loader = FabricLoader.getInstance(); - String configPath = loader.getConfigDir() + "/" + MOD_ID + ".json"; - String destPath = loader.getGameDir().toString(); - new Config(configPath, destPath); - - worker = new ModDownloadWorker(); - if (Config.instance.getAutoDownload()) { - SimpleModSync.StartWorker(); - } - } - - public static void StartWorker() { - if (worker.GetProgress() != 0 && worker.GetProgress() != 100) { - Log.Log.debug("start-worker", "Worker already started {}", worker.GetProgress()); - return; - } - worker.start(); - } -} diff --git a/src/main/java/dev/oxydien/SimpleModSyncDataGenerator.java b/src/main/java/dev/oxydien/SimpleModSyncDataGenerator.java deleted file mode 100644 index ab5eef7..0000000 --- a/src/main/java/dev/oxydien/SimpleModSyncDataGenerator.java +++ /dev/null @@ -1,11 +0,0 @@ -package dev.oxydien; - -import net.fabricmc.fabric.api.datagen.v1.DataGeneratorEntrypoint; -import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator; - -public class SimpleModSyncDataGenerator implements DataGeneratorEntrypoint { - @Override - public void onInitializeDataGenerator(FabricDataGenerator fabricDataGenerator) { - // unused - } -} diff --git a/src/main/java/dev/oxydien/data/ContentSyncProgress.java b/src/main/java/dev/oxydien/data/ContentSyncProgress.java deleted file mode 100644 index 8cc6c3a..0000000 --- a/src/main/java/dev/oxydien/data/ContentSyncProgress.java +++ /dev/null @@ -1,53 +0,0 @@ -package dev.oxydien.data; - -import dev.oxydien.enums.ContentSyncOutcome; -import org.jetbrains.annotations.Nullable; - -import java.util.concurrent.atomic.AtomicInteger; -import java.util.concurrent.atomic.AtomicReference; - -public class ContentSyncProgress { - - private final int index; - private final AtomicInteger progress; - private AtomicReference outcome; - private AtomicReference exception; - - public ContentSyncProgress(int index, int progress) { - this.index = index; - this.progress = new AtomicInteger(progress); - this.outcome = new AtomicReference<>(ContentSyncOutcome.IN_PROGRESS); - this.exception = new AtomicReference<>(null); - } - - public int getIndex() { - return this.index; - } - - public int getProgress() { - return this.progress.get(); - } - - public ContentSyncOutcome getOutcome() { - return this.outcome.get(); - } - - public Exception getException() { - return this.exception.get(); - } - - public void setProgress(int progress) { - this.progress.set(progress); - } - - public void setOutcome(ContentSyncOutcome outcome, @Nullable Exception exception) { - this.outcome.set(outcome); - this.exception.set(exception); - } - - public boolean isError() { - var outcome = this.getOutcome(); - return outcome == ContentSyncOutcome.INVALID_URL || outcome == ContentSyncOutcome.DOWNLOAD_INTERRUPTED || - outcome == ContentSyncOutcome.ALREADY_EXISTS; - } -} diff --git a/src/main/java/dev/oxydien/data/ProgressCallback.java b/src/main/java/dev/oxydien/data/ProgressCallback.java deleted file mode 100644 index 2ee8512..0000000 --- a/src/main/java/dev/oxydien/data/ProgressCallback.java +++ /dev/null @@ -1,7 +0,0 @@ -package dev.oxydien.data; - -import dev.oxydien.enums.CallbackReason; - -public interface ProgressCallback { - void onProgress(CallbackReason reason); -} diff --git a/src/main/java/dev/oxydien/data/SyncData.java b/src/main/java/dev/oxydien/data/SyncData.java deleted file mode 100644 index fdfda3b..0000000 --- a/src/main/java/dev/oxydien/data/SyncData.java +++ /dev/null @@ -1,216 +0,0 @@ -package dev.oxydien.data; - -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import dev.oxydien.enums.SyncModificationType; -import net.minecraft.util.JsonHelper; -import org.jetbrains.annotations.Nullable; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -public class SyncData { - public static final List ALLOWED_SYNC_VERSIONS = List.of(1,2,3); - - private final int syncVersion; - private final List sync; - private final List modify; - - public SyncData(int syncVersion, List content, List modify) { - this.syncVersion = syncVersion; - this.sync = content; - this.modify = modify; - } - - /// Used for parsing the sync data - public static SyncData fromJson(JsonObject jsonObject) { - // Check if the sync version is supported - int syncVersion = JsonHelper.getInt(jsonObject, "sync_version"); - if (!ALLOWED_SYNC_VERSIONS.contains(syncVersion)) { - throw new IllegalArgumentException("Invalid sync version: " + syncVersion); - } - - List contentList = new ArrayList<>(); - List modifications = new ArrayList<>(); - - // Parse the sync data content - int index = 0; - JsonElement contentElement = jsonObject.get("sync"); - if (contentElement == null) { - contentElement = jsonObject.get("content"); - } - if (!contentElement.isJsonArray()) { - throw new IllegalArgumentException("'sync' or 'content' is not an array in sync data"); - } - for (JsonElement element : contentElement.getAsJsonArray()) { - JsonObject contentObject = element.getAsJsonObject(); - - SyncData.Content content = SyncData.Content.fromJson(index, contentObject); - contentList.add(content); - index++; - } - - // Parse the sync data modifications (if any) - JsonElement modifyElement = jsonObject.get("modify"); - if (modifyElement != null && modifyElement.isJsonArray()) { - index = 0; - for (JsonElement element : modifyElement.getAsJsonArray()) { - JsonObject modifyObject = element.getAsJsonObject(); - SyncData.Modification modification = SyncData.Modification.fromJson(index, modifyObject); - modifications.add(modification); - index++; - } - } - - return new SyncData(syncVersion, contentList, modifications); - } - - public int getSyncVersion() { - return syncVersion; - } - - public List getContent() { - return Collections.unmodifiableList(this.sync); - } - - public List getModify() { - return Collections.unmodifiableList(this.modify); - } - - public static class Content { - /// Used for assigning status - private final int index; - /// Used for downloading the given content - private final String url; - /// Used to determine if the content is already downloaded, or should be updated / removed - private final String version; - /// File name (prefix, without file extension) - private final String name; - /// Used to determine the folder where the content should be downloaded - @Nullable private final String directoryOverride; - /// File type (mod, resourcepack, shaderpack, datapack, config) - @Nullable private final String type; - - public Content(int index, String url, String version, String fileName, @Nullable String directory, @Nullable String type) { - this.index = index; - this.url = url; - this.version = version; - this.name = fileName; - this.directoryOverride = directory; - this.type = type; - } - - /// Used for parsing the sync data - public static Content fromJson(int index, JsonObject jsonObject) { - String url = JsonHelper.getString(jsonObject, "url"); - String version = JsonHelper.getString(jsonObject, "version"); - String name = jsonObject.has("name") ? JsonHelper.getString(jsonObject, "name") : JsonHelper.getString(jsonObject, "mod_name"); - String directory = jsonObject.get("directory") != null ? jsonObject.get("directory").getAsString() : null; - String type = jsonObject.get("type") != null ? jsonObject.get("type").getAsString() : null; - return new SyncData.Content(index, url, version, name, directory, type); - } - - /// Used for assigning status - public int getIndex() { - return this.index; - } - /// Used for downloading the given content - public String getUrl() { - return this.url; - } - /// File name (prefix, without file extension) - public String getName() { - return this.name; - } - /// Used to determine if the content is already downloaded, or should be updated / removed - public String getVersion() { - return this.version; - } - /// Used to determine the folder where the content should be downloaded - @Nullable - public String getDirectoryOverride() { - return this.directoryOverride; - } - /// File type (mod, resourcepack, shaderpack, datapack, config) - @Nullable - public String getType() { - return this.type; - } - - - /** - * Gets the folder name for the given content type. - *

    This is used to determine the folder where the content should be downloaded. - * @return The folder name (e.g. "mods", "resourcepacks", etc.) - */ - public String getTypeFolder() { - return switch (this.getType()) { - case "resourcepack" -> "resourcepacks"; - case "shader" -> "shaderpacks"; - case "datapack" -> "datapacks"; - case "config" -> "config"; - case null, default -> "mods"; - }; - } - - /** - * Gets the file extension for the given content type. - *

    This is used to determine the file extension when downloading the content. - * @return The file extension (e.g. ".jar", ".zip") - */ - public String getFileExtension() { - return switch (this.getType()) { - case "resourcepack", "shader", "datapack" -> ".zip"; - case null, default -> ".jar"; - }; - } - } - - public static class Modification { - private final int index; - private final SyncModificationType type; - private final String pattern; - private final String path; - @Nullable private final String result; - - public Modification(int index, SyncModificationType type, String path, String pattern, @Nullable String result) { - this.index = index; - this.type = type; - this.pattern = pattern; - this.path = path; - this.result = result; - } - - public static Modification fromJson(int index, JsonObject jsonObject) { - String typeStr = JsonHelper.getString(jsonObject, "type"); - SyncModificationType type; - switch (typeStr) { - case "remove" -> type = SyncModificationType.REMOVE; - case "rename" -> type = SyncModificationType.RENAME; - default -> type = null; - } - String path = JsonHelper.getString(jsonObject, "path"); - String pattern = JsonHelper.getString(jsonObject, "pattern"); - String result = jsonObject.get("result") != null ? jsonObject.get("result").getAsString() : null; - return new SyncData.Modification(index, type, path, pattern, result); - } - - public int getIndex() { - return this.index; - } - public SyncModificationType getType() { - return this.type; - } - public String getPattern() { - return this.pattern; - } - public String getPath() { - return this.path; - } - @Nullable - public String getResult() { - return this.result; - } - } -} diff --git a/src/main/java/dev/oxydien/enums/CallbackReason.java b/src/main/java/dev/oxydien/enums/CallbackReason.java deleted file mode 100644 index ee8b52c..0000000 --- a/src/main/java/dev/oxydien/enums/CallbackReason.java +++ /dev/null @@ -1,7 +0,0 @@ -package dev.oxydien.enums; - -public enum CallbackReason { - NONE, - UPDATE, - UNSUBSCRIBED, -} diff --git a/src/main/java/dev/oxydien/enums/ContentSyncOutcome.java b/src/main/java/dev/oxydien/enums/ContentSyncOutcome.java deleted file mode 100644 index 8f5a179..0000000 --- a/src/main/java/dev/oxydien/enums/ContentSyncOutcome.java +++ /dev/null @@ -1,10 +0,0 @@ -package dev.oxydien.enums; - -public enum ContentSyncOutcome { - IN_PROGRESS, - SUCCESS, - ALREADY_EXISTS, - INVALID_URL, - DOWNLOAD_INTERRUPTED, - SUSPICIOUS_CONTENT, -} diff --git a/src/main/java/dev/oxydien/enums/SyncErrorType.java b/src/main/java/dev/oxydien/enums/SyncErrorType.java deleted file mode 100644 index 42972ba..0000000 --- a/src/main/java/dev/oxydien/enums/SyncErrorType.java +++ /dev/null @@ -1,10 +0,0 @@ -package dev.oxydien.enums; - -public enum SyncErrorType { - NONE, - REMOTE_NOT_SET, - REMOTE_NOT_FOUND, - PARSING_FAILED, - DOWNLOAD_FAILED, - FAILED_TO_WRITE_FILE, -} diff --git a/src/main/java/dev/oxydien/enums/SyncModificationType.java b/src/main/java/dev/oxydien/enums/SyncModificationType.java deleted file mode 100644 index 3ed5352..0000000 --- a/src/main/java/dev/oxydien/enums/SyncModificationType.java +++ /dev/null @@ -1,6 +0,0 @@ -package dev.oxydien.enums; - -public enum SyncModificationType { - RENAME, - REMOVE, -} diff --git a/src/main/java/dev/oxydien/enums/SyncState.java b/src/main/java/dev/oxydien/enums/SyncState.java deleted file mode 100644 index 291ea4d..0000000 --- a/src/main/java/dev/oxydien/enums/SyncState.java +++ /dev/null @@ -1,13 +0,0 @@ -package dev.oxydien.enums; - -public enum SyncState { - INITIALIZING, - CHECKING_REMOTE, - PARSING_REMOTE, - DOWNLOADING, - MODIFICATIONS, - READY, - DID_NOT_SYNC, - NEEDS_RESTART, - ERROR -} diff --git a/src/main/java/dev/oxydien/logger/Log.java b/src/main/java/dev/oxydien/logger/Log.java deleted file mode 100644 index 54162c7..0000000 --- a/src/main/java/dev/oxydien/logger/Log.java +++ /dev/null @@ -1,125 +0,0 @@ -package dev.oxydien.logger; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -public class Log { - public static Log Log = null; - - private final String name; - private final Logger logger; - private final Pattern PLACEHOLDER_PATTERN = Pattern.compile("\\{}"); - - public Log(String logName, boolean setStatic) { - this.name = logName; - this.logger = LoggerFactory.getLogger(this.name); - - if (setStatic) { - Log = this; - } - } - - public enum LogLevel { - INFO, WARN, DEBUG, DEV, ERROR, FATAL - } - - public void log(LogLevel level, String placement, String message, Object... args) { - String formattedMessage = this.formatMessage(message, args); - String logMessage = String.format("[%s] (%s): %s", this.name, placement, formattedMessage); - - switch (level) { - case INFO: - logger.info(logMessage); - break; - case WARN: - logger.warn(logMessage); - break; - case DEBUG: - logger.info("[DEBUG] {}", logMessage); - break; - case DEV: - logger.info("[DEV] {}", logMessage); - break; - case ERROR: - logger.error(logMessage); - break; - case FATAL: - logger.error("[FATAL] {}", logMessage); - break; - } - } - - private String formatMessage(String message, Object... args) { - if (args == null || args.length == 0) { - return message; - } - - Matcher matcher = PLACEHOLDER_PATTERN.matcher(message); - StringBuilder result = new StringBuilder(); - int argIndex = 0; - - while (matcher.find()) { - if (argIndex < args.length) { - matcher.appendReplacement(result, Matcher.quoteReplacement(String.valueOf(args[argIndex]))); - argIndex++; - } else { - matcher.appendReplacement(result, Matcher.quoteReplacement("{}")); - } - } - matcher.appendTail(result); - - while (argIndex < args.length) { - result.append(" ").append(args[argIndex]); - argIndex++; - } - - return result.toString(); - } - - public void info(String message, Object... args) { - this.log(LogLevel.INFO, "", message, args); - } - - public void info(String placement, String message, Object... args) { - this.log(LogLevel.INFO, placement, message, args); - } - - public void warn(String message, Object... args) { - this.log(LogLevel.WARN, "", message, args); - } - - public void warn(String placement, String message, Object... args) { - this.log(LogLevel.WARN, placement, message, args); - } - - public void debug(String message, Object... args) { - this.log(LogLevel.DEBUG, "", message, args); - } - - public void debug(String placement, String message, Object... args) { - this.log(LogLevel.DEBUG, placement, message, args); - } - - // Dev does not have a method without placement, so the developer can find the logs - public void dev(String placement, String message, Object... args) { - this.log(LogLevel.DEV, placement, message, args); - } - - public void error(String message, Object... args) { - this.log(LogLevel.ERROR, "", message, args); - } - - public void error(String placement, String message, Object... args) { - this.log(LogLevel.ERROR, placement, message, args); - } - - public void fatal(String message, Object... args) { - this.log(LogLevel.FATAL, "", message, args); - } - - public void fatal(String placement, String message, Object... args) { - this.log(LogLevel.FATAL, placement, message, args); - } -} \ No newline at end of file diff --git a/src/main/java/dev/oxydien/mixin/TitleScreenMixin.java b/src/main/java/dev/oxydien/mixin/TitleScreenMixin.java deleted file mode 100644 index 5fc4864..0000000 --- a/src/main/java/dev/oxydien/mixin/TitleScreenMixin.java +++ /dev/null @@ -1,39 +0,0 @@ -package dev.oxydien.mixin; - -import dev.oxydien.SimpleModSync; -import dev.oxydien.config.Config; -import dev.oxydien.enums.SyncErrorType; -import dev.oxydien.enums.SyncState; -import dev.oxydien.ui.SetSyncRemoteScreen; -import dev.oxydien.ui.widget.SyncOverviewWidget; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.gui.screen.Screen; -import net.minecraft.client.gui.screen.TitleScreen; -import net.minecraft.text.Text; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; - -@Mixin(TitleScreen.class) -public class TitleScreenMixin extends Screen { - protected TitleScreenMixin(Text title) { - super(title); - } - - @Inject(at = @At("RETURN"), method = "init") - private void simple_mod_sync$init(CallbackInfo ci) { - SyncOverviewWidget simple_mod_sync$overview = new SyncOverviewWidget(this.textRenderer); - this.addDrawableChild(simple_mod_sync$overview); - - if (SimpleModSync.worker.GetState() == SyncState.ERROR) { - if (SimpleModSync.worker.GetErrorType() == SyncErrorType.REMOTE_NOT_SET) { - if (Config.instance.getDownloadUrl().isEmpty()) { - MinecraftClient.getInstance().setScreen( - new SetSyncRemoteScreen(Text.empty(), this) - ); - } - } - } - } -} diff --git a/src/main/java/dev/oxydien/networking/FileDownloader.java b/src/main/java/dev/oxydien/networking/FileDownloader.java deleted file mode 100644 index 618ea7c..0000000 --- a/src/main/java/dev/oxydien/networking/FileDownloader.java +++ /dev/null @@ -1,91 +0,0 @@ -package dev.oxydien.networking; - -import java.io.*; -import java.net.HttpURLConnection; -import java.net.URI; -import java.net.URISyntaxException; -import java.net.URL; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.stream.Collectors; - -public class FileDownloader { - public static String downloadString(String uriString) throws IOException, URISyntaxException { - URL url = new URI(uriString).toURL(); - HttpURLConnection connection = (HttpURLConnection) url.openConnection(); - connection.setRequestMethod("GET"); - - InputStream inputStream = connection.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); - String jsonString = reader.lines().collect(Collectors.joining("\n")); - - reader.close(); - inputStream.close(); - connection.disconnect(); - - return jsonString; - } - - public static String downloadFile(String uriString, String outputFileName) throws IOException, URISyntaxException { - URL url = new URI(uriString).toURL(); - HttpURLConnection connection = (HttpURLConnection) url.openConnection(); - connection.setRequestMethod("GET"); - InputStream inputStream = connection.getInputStream(); - - Path outputPath = Paths.get(outputFileName); - Files.copy(inputStream, outputPath); - - inputStream.close(); - connection.disconnect(); - - return outputPath.toString(); - } - - public interface ProgressCallback { - void onProgress(int percentage); - } - - public static void downloadFileWithProgress(String uriString, String outputFileName, ProgressCallback callback) throws IOException, URISyntaxException { - URL url = new URI(uriString).toURL(); - HttpURLConnection connection = (HttpURLConnection) url.openConnection(); - connection.setRequestMethod("GET"); - - long fileSize = connection.getContentLengthLong(); - InputStream inputStream = connection.getInputStream(); - - Path outputPath = Paths.get(outputFileName); - OutputStream outputStream = Files.newOutputStream(outputPath); - - byte[] buffer = new byte[4096]; - int bytesRead; - long totalBytesRead = 0; - int lastReportedProgress = -1; - - while ((bytesRead = inputStream.read(buffer)) != -1) { - outputStream.write(buffer, 0, bytesRead); - totalBytesRead += bytesRead; - - if (fileSize > 0) { // Only calculate progress if file size is known - int progress = (int) ((totalBytesRead * 100) / fileSize); - if (progress > lastReportedProgress) { - callback.onProgress(progress); - lastReportedProgress = progress; - } - } - } - - outputStream.close(); - inputStream.close(); - connection.disconnect(); - - if (lastReportedProgress < 100) { - callback.onProgress(100); - } - } - - public static boolean fileExists(String path) { - Path filePath = Paths.get(path); - return Files.exists(filePath); - } -} diff --git a/src/main/java/dev/oxydien/ui/SetSyncRemoteScreen.java b/src/main/java/dev/oxydien/ui/SetSyncRemoteScreen.java deleted file mode 100644 index a74b5da..0000000 --- a/src/main/java/dev/oxydien/ui/SetSyncRemoteScreen.java +++ /dev/null @@ -1,100 +0,0 @@ -package dev.oxydien.ui; - -import dev.oxydien.SimpleModSync; -import dev.oxydien.config.Config; -import dev.oxydien.ui.widget.SimpleBackgroundWidget; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.gui.DrawContext; -import net.minecraft.client.gui.screen.Screen; -import net.minecraft.client.gui.widget.*; -import net.minecraft.text.Text; - -import java.util.concurrent.atomic.AtomicBoolean; - -public class SetSyncRemoteScreen extends Screen { - private final Screen parent; - - public SetSyncRemoteScreen(Text title, Screen parent) { - super(title); - this.parent = parent; - } - - @Override - public void init() { - super.init(); - // Background widget - this.addDrawableChild(new SimpleBackgroundWidget(0, 0, this.width, this.height, 0xF1000000)); - - // Subtitle widget - Text subtitleText = Text.translatable("simple_mod_sync.ui.set_sync_screen.subtitle"); - int x = this.width / 2 - subtitleText.getString().length() - 30; - int y = this.getPosY(2) + 5; - MultilineTextWidget subtitleWidget = new MultilineTextWidget(x, y, subtitleText, this.textRenderer); - subtitleWidget.setMaxWidth(this.width - 80); - subtitleWidget.setMaxRows(2); - this.addDrawableChild(subtitleWidget); - - // URL field widget - int urlFieldX = this.width / 2 - 100; - int urlFieldY = this.getPosY(3); - int urlFieldWidth = 200; - int urlFieldHeight = 20; - TextFieldWidget remoteUrl = new TextFieldWidget(this.textRenderer, urlFieldX, urlFieldY, urlFieldWidth, urlFieldHeight, Text.literal("")); - remoteUrl.setMaxLength(368); - this.addDrawableChild(remoteUrl); - - // Auto download toggle button widget - Text autoDownloadTextTrue = Text.translatable("simple_mod_sync.ui.set_sync_screen.auto_download_true"); - Text autoDownloadTextFalse = Text.translatable("simple_mod_sync.ui.set_sync_screen.auto_download_false"); - AtomicBoolean autoDownload = new AtomicBoolean(Config.instance.getAutoDownload()); - int autoDownloadX = this.width / 2 - 70; - int autoDownloadY = this.getPosY(4); - ButtonWidget auto_download = new ButtonWidget.Builder(autoDownload.get() ? autoDownloadTextTrue : autoDownloadTextFalse, (buttonWidget) -> { - autoDownload.set(!autoDownload.get()); - buttonWidget.setMessage(autoDownload.get() ? autoDownloadTextTrue : autoDownloadTextFalse); - }).position(autoDownloadX, autoDownloadY).size(140, 20).build(); - this.addDrawableChild(auto_download); - - // Cancel button widget - int cancelButtonX = this.width / 2 - 105; - int cancelButtonY = this.getPosY(5); - ButtonWidget.Builder cancelBuilder = new ButtonWidget.Builder(Text.translatable("simple_mod_sync.ui.set_sync_screen.cancel_button"), - (buttonWidget) -> { - Config.instance.setDownloadUrl("-"); - MinecraftClient.getInstance().setScreen(parent); - SimpleModSync.StartWorker(); - }); - ButtonWidget cancelButton = cancelBuilder.position(cancelButtonX, cancelButtonY).size(100, 20).build(); - this.addDrawableChild(cancelButton); - - // Set button widget - this.addDrawableChild(new ButtonWidget.Builder(Text.translatable("simple_mod_sync.ui.set_sync_screen.confirm_button"), (buttonWidget) -> { - String url = remoteUrl.getText(); - if (!url.isEmpty()) { - Config.instance.setDownloadUrl(url); - MinecraftClient.getInstance().setScreen(parent); - SimpleModSync.StartWorker(); - } - }).position(this.width / 2 + 5, this.getPosY(5)).size(100, 20).build()); - } - - @Override - public void render(DrawContext context, int mouseX, int mouseY, float delta) { - super.render(context, mouseX, mouseY, delta); - var matrices = context.getMatrices(); - - // Title widget - float scaleModifier = 1.7f; - matrices.push(); - matrices.scale(scaleModifier, scaleModifier, scaleModifier); // Scale the text - Text titleText = Text.translatable("simple_mod_sync.ui.set_sync_screen.title"); - int titleX = (int)(this.width * 0.6f) / 2 - titleText.getString().length() - 33; - int titleY = 30; - context.drawText(this.textRenderer, titleText, titleX, titleY, 0xFF3DF6B4, true); - matrices.pop(); - } - - private int getPosY(int elementIndex) { - return 50 + elementIndex * 25; - } -} diff --git a/src/main/java/dev/oxydien/ui/SyncFullViewScreen.java b/src/main/java/dev/oxydien/ui/SyncFullViewScreen.java deleted file mode 100644 index 5f2ee77..0000000 --- a/src/main/java/dev/oxydien/ui/SyncFullViewScreen.java +++ /dev/null @@ -1,176 +0,0 @@ -package dev.oxydien.ui; - -import dev.oxydien.SimpleModSync; -import dev.oxydien.config.Config; -import dev.oxydien.data.ContentSyncProgress; -import dev.oxydien.data.ProgressCallback; -import dev.oxydien.data.SyncData; -import dev.oxydien.enums.CallbackReason; -import dev.oxydien.ui.widget.ContentSyncProgressWidget; -import dev.oxydien.ui.widget.SimpleBackgroundWidget; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.gui.DrawContext; -import net.minecraft.client.gui.screen.Screen; -import net.minecraft.client.gui.widget.ButtonWidget; -import net.minecraft.client.gui.widget.MultilineTextWidget; -import net.minecraft.client.gui.widget.TextFieldWidget; -import net.minecraft.text.Text; -import org.jetbrains.annotations.Nullable; - -import java.util.ArrayList; -import java.util.Comparator; -import java.util.HashMap; -import java.util.List; -import java.util.concurrent.atomic.AtomicBoolean; - -public class SyncFullViewScreen extends Screen implements ProgressCallback { - private HashMap progress; - private int page; - private int pageSize; - private final Screen parent; - private SimpleBackgroundWidget progressBar; - private final int widgetHeight = 45; - - public SyncFullViewScreen(Text title, @Nullable Screen parent) { - super(title); - this.progress = new HashMap<>(); - this.page = 0; - this.pageSize = 4; - this.parent = parent; - } - - @Override - public void onDisplayed() { - super.onDisplayed(); - - SimpleModSync.worker.subscribe(this); - } - - @Override - public void init() { - super.init(); - this.progress = new HashMap<>(); - this.pageSize = (this.height - 100) / this.widgetHeight; - - // Back button - this.addDrawableChild(new ButtonWidget.Builder(Text.translatable("simple_mod_sync.ui.sync_full_view.back_button"), - (buttonWidget) -> MinecraftClient.getInstance().setScreen(this.parent)).position(3, 5).size(60, 20).build()); - - this.progressBar = new SimpleBackgroundWidget(0, 0, this.width, 2, 0xFFFFFFFF); - this.addDrawableChild(this.progressBar); - - // Title - Text titleText = Text.translatable("simple_mod_sync.ui.sync_full_view.title"); - this.addDrawableChild( - new MultilineTextWidget(this.width / 2 - titleText.getString().length() - 30, 10, titleText, this.textRenderer) - .setTextColor(0xFF3DF6B4)); - - // Url field - TextFieldWidget urlField = new TextFieldWidget(this.textRenderer, this.width / 2 - 150, 24, - 300, 20, Text.literal("")); - urlField.setMaxLength(368); - urlField.setText(Config.instance.getDownloadUrl()); - this.addDrawableChild(urlField); - - // Save Url button - this.addDrawableChild(new ButtonWidget.Builder(Text.translatable("simple_mod_sync.ui.sync_full_view.save_url_button"), (buttonWidget) -> { - String url = urlField.getText(); - if (!url.isEmpty()) { - Config.instance.setDownloadUrl(url); - } - }).position(this.width / 2 - 150, 45).size(95, 20).build()); - - // Sync button - this.addDrawableChild(new ButtonWidget.Builder(Text.translatable("simple_mod_sync.ui.sync_full_view.sync_button"), - (buttonWidget) -> SimpleModSync.StartWorker()).position(this.width / 2 - 48, 45).size(95, 20).build()); - - // Auto download toggle button widget - AtomicBoolean autoDownload = new AtomicBoolean(Config.instance.getAutoDownload()); - Text autoDownloadTextTrue = Text.translatable("simple_mod_sync.ui.sync_full_view.auto_download_true"); - Text autoDownloadTextFalse = Text.translatable("simple_mod_sync.ui.sync_full_view.auto_download_false"); - ButtonWidget auto_download = new ButtonWidget.Builder(autoDownload.get() ? autoDownloadTextTrue : autoDownloadTextFalse, (buttonWidget) -> { - autoDownload.set(!autoDownload.get()); - buttonWidget.setMessage(autoDownload.get() ? autoDownloadTextTrue : autoDownloadTextFalse); - }).position(this.width / 2 + 55, 45).size(95, 20).build(); - this.addDrawableChild(auto_download); - - // Previous and next page buttons - this.addDrawableChild(new ButtonWidget.Builder(Text.translatable("simple_mod_sync.ui.sync_full_view.previous_page"), (buttonWidget) -> { - if (this.page > 0) { - this.page--; - } - }).size(20, 20).position(this.width / 2 - 175, 45).build()); - this.addDrawableChild(new ButtonWidget.Builder(Text.translatable("simple_mod_sync.ui.sync_full_view.next_page"), (buttonWidget) -> { - int numPages = (int)Math.ceil((float) this.getContentAmount() / (float)this.pageSize); - if (this.page < numPages - 1) { - this.page++; - } - }).size(20, 20).position(this.width / 2 + 155, 45).build()); - - this.onProgress(CallbackReason.NONE); - } - - @Override - public void render(DrawContext context, int mouseX, int mouseY, float delta) { - super.render(context, mouseX, mouseY, delta); - - int index = 0; - - // Sort by progress then name - List sortedWidgets = new ArrayList<>(progress.values()); - sortedWidgets.sort(Comparator.comparingInt((ContentSyncProgressWidget w) -> - w != null && w.getProgress() == 0 ? Integer.MAX_VALUE : w != null ? w.getProgress() : Integer.MAX_VALUE) - .thenComparing(w -> w != null && w.getName() != null ? w.getName() : "") - ); - - // Set page size based on screen height - this.pageSize = (this.height - 100) / this.widgetHeight; - - // Draw progress widgets - for (ContentSyncProgressWidget widget : sortedWidgets) { - if (widget == null) continue; - // Only draw widgets on the current page - if (index >= page * pageSize && index < (page + 1) * pageSize) { - widget.setPosition(this.width / 2 - widget.getWidth() / 2, - 70 + (index - page * pageSize) * widget.getHeight() + (index - page * pageSize) * 3); - widget.render(context, mouseX, mouseY, delta); - } - - index++; - } - } - - @Override - public void onProgress(CallbackReason reason) { - //SimpleModSync.LOGGER.info("Sync progress: {}", reason); - - this.progressBar.setSize((int)(this.width * ((float)SimpleModSync.worker.GetProgress() / 100f)), 2); - - List progresses = SimpleModSync.worker.GetModProgress(); - SyncData data = SimpleModSync.worker.GetSyncData(); - if (data == null) return; - for (SyncData.Content content : data.getContent()) { - if (content == null) continue; - - ContentSyncProgress modProgress = progresses.stream().filter(p -> p.getIndex() == content.getIndex()).findFirst().orElse(null); - if (!progress.containsKey(content.getIndex())) { - progress.put(content.getIndex(), new ContentSyncProgressWidget(0, 0, 350, this.widgetHeight, this.textRenderer, content, modProgress)); - } - - ContentSyncProgressWidget widget = progress.get(content.getIndex()); - if (widget != null) { - widget.setProgress(modProgress); - } - } - } - - private int getContentAmount() { - SyncData data = SimpleModSync.worker.GetSyncData(); - if (data == null) return 0; - int counter = 0; - for (int i = 0; i < data.getContent().size(); i++) { - if (data.getContent().get(i) != null) counter++; - } - return counter; - } -} diff --git a/src/main/java/dev/oxydien/ui/widget/ContentSyncProgressWidget.java b/src/main/java/dev/oxydien/ui/widget/ContentSyncProgressWidget.java deleted file mode 100644 index 6461aaf..0000000 --- a/src/main/java/dev/oxydien/ui/widget/ContentSyncProgressWidget.java +++ /dev/null @@ -1,208 +0,0 @@ -package dev.oxydien.ui.widget; - -import dev.oxydien.data.ContentSyncProgress; -import dev.oxydien.data.SyncData; -import net.minecraft.client.font.TextRenderer; -import net.minecraft.client.gui.*; -import net.minecraft.client.gui.navigation.GuiNavigation; -import net.minecraft.client.gui.navigation.GuiNavigationPath; -import net.minecraft.client.gui.screen.narration.NarrationMessageBuilder; -import net.minecraft.client.gui.widget.ClickableWidget; -import net.minecraft.client.gui.widget.Widget; -import net.minecraft.client.render.RenderLayer; -import net.minecraft.text.Text; -import org.jetbrains.annotations.Nullable; - -import java.util.function.Consumer; - -public class ContentSyncProgressWidget implements Widget, Drawable, Element, Selectable { - private int x; - private int y; - private final int width; - private final int height; - private final TextRenderer textRenderer; - private final SyncData.Content content; - @Nullable private ContentSyncProgress progress; - - public ContentSyncProgressWidget(int x, int y, int width, int height, TextRenderer textRenderer, SyncData.Content content, @Nullable ContentSyncProgress progress) { - this.setPosition(x, y); - this.width = width; - this.height = height; - this.textRenderer = textRenderer; - this.content = content; - this.progress = progress; - } - - @Override - public void render(DrawContext context, int mouseX, int mouseY, float delta) { - // Background - context.fill(RenderLayer.getGuiOverlay(), this.getX(), this.getY(), this.getX() + this.getWidth(), - this.getY() + this.getHeight(), 0xa0000000); - - // Progress bar - int progressNum = this.progress != null ? this.progress.getProgress() : 0; - if (this.progress != null) { - context.fill(this.getX(), this.getY(), - this.getX() + (int) (this.getWidth() * (float) (progressNum) / (float) 100), this.getY() + 1, 0xa3FFFFFF); - } - - int textHeight = this.getY() + this.getHeight() / 2 - this.textRenderer.fontHeight / 2 + 2; - - // Outcome - String outcomeText = progressNum >= 100 && this.progress != null && !this.progress.isError() ? "COMPLETE" : - (this.progress != null ? this.progress.getOutcome().name() : "AWAITING_WORKER"); - context.drawText(this.textRenderer, Text.translatable(String.format("simple_mod_sync.ui.outcome.%s", outcomeText.toLowerCase())), - this.getX() + this.getWidth() - this.textRenderer.getWidth(outcomeText) - 3, textHeight, 0xFFF13FFF, false); - - // Outcome exception - if (this.progress != null && this.progress.isError() && this.progress.getException() != null) { - context.drawText(this.textRenderer, Text.translatable("simple_mod_sync.ui.error.exception").getString(), - this.getX() + 5, this.getY() + 2, 0xFF55FFFF, false); - } - - // Mod name - String modName = this.content.getName(); - context.drawText(this.textRenderer, String.format("§l%s§r", modName.substring(0, Math.min(22, modName.length()))), - this.getX() + 15, textHeight, 0xFF55FFFF, false); - context.drawText(this.textRenderer, this.content.getType(), this.getX() + 180, - textHeight, 0xFFFFFFFF, false); - } - - public int getProgress() { - return this.progress != null ? this.progress.getProgress() : 0; - } - public String getName() { - return this.content.getName(); - } - - public void setProgress(@Nullable ContentSyncProgress progress) { - this.progress = progress; - } - - @Override - public void mouseMoved(double mouseX, double mouseY) { - Element.super.mouseMoved(mouseX, mouseY); - } - - @Override - public boolean mouseClicked(double mouseX, double mouseY, int button) { - return Element.super.mouseClicked(mouseX, mouseY, button); - } - - @Override - public boolean mouseReleased(double mouseX, double mouseY, int button) { - return Element.super.mouseReleased(mouseX, mouseY, button); - } - - @Override - public boolean mouseDragged(double mouseX, double mouseY, int button, double deltaX, double deltaY) { - return Element.super.mouseDragged(mouseX, mouseY, button, deltaX, deltaY); - } - - @Override - public boolean mouseScrolled(double mouseX, double mouseY, double horizontalAmount, double verticalAmount) { - return Element.super.mouseScrolled(mouseX, mouseY, horizontalAmount, verticalAmount); - } - - @Override - public boolean keyPressed(int keyCode, int scanCode, int modifiers) { - return Element.super.keyPressed(keyCode, scanCode, modifiers); - } - - @Override - public boolean keyReleased(int keyCode, int scanCode, int modifiers) { - return Element.super.keyReleased(keyCode, scanCode, modifiers); - } - - @Override - public boolean charTyped(char chr, int modifiers) { - return Element.super.charTyped(chr, modifiers); - } - - @Override - public @Nullable GuiNavigationPath getNavigationPath(GuiNavigation navigation) { - return Element.super.getNavigationPath(navigation); - } - - @Override - public boolean isMouseOver(double mouseX, double mouseY) { - return Element.super.isMouseOver(mouseX, mouseY); - } - - @Override - public void setFocused(boolean focused) { - } - - @Override - public boolean isFocused() { - return false; - } - - @Override - public @Nullable GuiNavigationPath getFocusedPath() { - return Element.super.getFocusedPath(); - } - - @Override - public SelectionType getType() { - return SelectionType.NONE; - } - - @Override - public boolean isNarratable() { - return Selectable.super.isNarratable(); - } - - @Override - public void appendNarrations(NarrationMessageBuilder builder) { - } - - @Override - public void setX(int x) { - this.x = x; - } - - @Override - public void setY(int y) { - this.y = y; - } - - @Override - public int getX() { - return this.x; - } - - @Override - public int getY() { - return this.y; - } - - @Override - public int getWidth() { - return this.width; - } - - @Override - public int getHeight() { - return this.height; - } - - @Override - public ScreenRect getNavigationFocus() { - return Widget.super.getNavigationFocus(); - } - - @Override - public void setPosition(int x, int y) { - Widget.super.setPosition(x, y); - } - - @Override - public void forEachChild(Consumer consumer) { - } - - @Override - public int getNavigationOrder() { - return Element.super.getNavigationOrder(); - } -} diff --git a/src/main/java/dev/oxydien/ui/widget/SimpleBackgroundWidget.java b/src/main/java/dev/oxydien/ui/widget/SimpleBackgroundWidget.java deleted file mode 100644 index d052240..0000000 --- a/src/main/java/dev/oxydien/ui/widget/SimpleBackgroundWidget.java +++ /dev/null @@ -1,111 +0,0 @@ -package dev.oxydien.ui.widget; - -import net.minecraft.client.gui.*; -import net.minecraft.client.gui.screen.narration.NarrationMessageBuilder; -import net.minecraft.client.gui.widget.ClickableWidget; -import net.minecraft.client.gui.widget.Widget; -import net.minecraft.client.render.RenderLayer; - -import java.util.function.Consumer; - -public class SimpleBackgroundWidget implements Widget, Drawable, Element, Selectable { - private int x; - private int y; - private int width; - private int height; - private int color; - - public SimpleBackgroundWidget(int x, int y, int width, int height, int color) { - this.setPosition(x, y); - this.color = (color == 0) ? 0xa0000000 : color; - this.width = width; - this.height = height; - } - - @Override - public void render(DrawContext context, int mouseX, int mouseY, float delta) { - context.fill(RenderLayer.getGuiOverlay(), this.getX(), this.getY(), this.getX() + this.getWidth(), this.getY() + this.getHeight(), this.color); - } - - @Override - public void setFocused(boolean focused) { - return; - } - - @Override - public boolean isFocused() { - return false; - } - - @Override - public void setX(int x) { - this.x = x; - } - - @Override - public void setY(int y) { - this.y = y; - } - - @Override - public int getX() { - return this.x; - } - - @Override - public int getY() { - return this.y; - } - - @Override - public int getWidth() { - return this.width; - } - - @Override - public int getHeight() { - return this.height; - } - - public int getColor() { - return this.color; - } - - public void setPosition(int x, int y) { - this.x = x; - this.y = y; - } - - public void setSize(int width, int height) { - this.width = width; - this.height = height; - } - - public void setColor(int color) { - this.color = color; - } - - @Override - public ScreenRect getNavigationFocus() { - return Widget.super.getNavigationFocus(); - } - - @Override - public void forEachChild(Consumer consumer) { - - } - - @Override - public SelectionType getType() { - return SelectionType.NONE; - } - - @Override - public boolean isNarratable() { - return Selectable.super.isNarratable(); - } - - @Override - public void appendNarrations(NarrationMessageBuilder builder) { - } -} diff --git a/src/main/java/dev/oxydien/ui/widget/SyncOverviewWidget.java b/src/main/java/dev/oxydien/ui/widget/SyncOverviewWidget.java deleted file mode 100644 index df7e5b6..0000000 --- a/src/main/java/dev/oxydien/ui/widget/SyncOverviewWidget.java +++ /dev/null @@ -1,59 +0,0 @@ -package dev.oxydien.ui.widget; - -import dev.oxydien.SimpleModSync; -import dev.oxydien.enums.SyncErrorType; -import dev.oxydien.enums.SyncState; -import dev.oxydien.ui.SyncFullViewScreen; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.font.TextRenderer; -import net.minecraft.client.gui.DrawContext; -import net.minecraft.client.gui.screen.narration.NarrationMessageBuilder; -import net.minecraft.client.gui.widget.PressableWidget; -import net.minecraft.client.render.RenderLayer; -import net.minecraft.text.Text; - -public class SyncOverviewWidget extends PressableWidget { - private final TextRenderer textRenderer; - - public SyncOverviewWidget(TextRenderer textRenderer) { - super(0 ,0, 120, 28, Text.literal("")); - this.textRenderer = textRenderer; - } - - @Override - protected void renderWidget(DrawContext context, int mouseX, int mouseY, float delta) { - super.renderWidget(context, mouseX, mouseY, delta); - SyncState state = SimpleModSync.worker.GetState(); - SyncErrorType errorType = SimpleModSync.worker.GetErrorType(); - int progress = SimpleModSync.worker.GetProgress(); - - int foregroundColor = state == SyncState.ERROR ? 0xFFFF0000 : 0xFFFFFFFF; - int updateColor = state == SyncState.ERROR ? 0xA3FF0000 : 0xA3FFFFFF; - - // Background - context.fill(RenderLayer.getGui(), this.getX(), this.getY(), this.getX() + this.getWidth(), this.getY() + this.getHeight(), 0xa0000000); - - // Progress bar - context.fill(RenderLayer.getGuiOverlay(), this.getX() + 4, this.getY() + 2, - this.getX() + (int)(this.getWidth() * (float)(progress) / (float)100) - 2, this.getY() + 5, updateColor); - - // Text - Text text; - if (state != SyncState.ERROR) text = Text.translatable(String.format("simple_mod_sync.ui.%s", state.name().toLowerCase()), progress); - else text = Text.translatable(String.format("simple_mod_sync.ui.error.%s", errorType.name().toLowerCase())); - - int i = 0; - for (String line : text.getString().split("\n")) { - context.drawText(this.textRenderer, line, this.getX() + 5, this.getY() + 6 + (this.textRenderer.fontHeight + 2) * i++, foregroundColor, false); - } - } - - @Override - public void onPress() { - MinecraftClient.getInstance().setScreen(new SyncFullViewScreen(Text.translatable("simple_mod_sync.ui.sync_full_view.title"), null)); - } - - @Override - protected void appendClickableNarrations(NarrationMessageBuilder builder) { - } -} diff --git a/src/main/java/dev/oxydien/utils/FileUtils.java b/src/main/java/dev/oxydien/utils/FileUtils.java deleted file mode 100644 index 9845a9a..0000000 --- a/src/main/java/dev/oxydien/utils/FileUtils.java +++ /dev/null @@ -1,75 +0,0 @@ -package dev.oxydien.utils; - -import java.io.File; -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.List; -import java.util.zip.ZipFile; - -public class FileUtils { - public static String ReadFile(String path) throws IOException { - Path filePath = Paths.get(path); - List lines = Files.readAllLines(filePath); - return String.join("\n", lines); - } - - public static void WriteFile(String path, String content) throws IOException { - Path filePath = Paths.get(path); - Files.write(filePath, content.getBytes()); - } - - public static List UnZipFile(String zipFilePath, String destinationDirectory) throws IOException { - List extractedFiles = new ArrayList<>(); - try (ZipFile zipFile = new ZipFile(zipFilePath)) { - zipFile.entries().asIterator().forEachRemaining(zipEntry -> { - try { - if (zipEntry.isDirectory()) { - Path dir = Paths.get(destinationDirectory, zipEntry.getName()); - Files.createDirectories(dir); - extractedFiles.add(dir.toAbsolutePath()); - } else { - Path file = Paths.get(destinationDirectory, zipEntry.getName()); - Files.createDirectories(file.getParent()); - Files.copy(zipFile.getInputStream(zipEntry), file); - extractedFiles.add(file.toAbsolutePath()); - } - } catch (IOException e) { - throw new RuntimeException(e); - } - }); - } - return extractedFiles; - } - - /** - * Returns a list of all file paths under the given directory, recursively. - * @param startPath The root directory path to start searching from - * @return List of absolute file paths as strings - */ - public static List GetFilePaths(String startPath) { - List filePaths = new ArrayList<>(); - File startDir = new File(startPath); - - if (!startDir.exists() || !startDir.isDirectory()) { - throw new IllegalArgumentException("Invalid directory path: " + startPath); - } - - collectFilePaths(startDir, filePaths); - return filePaths; - } - - private static void collectFilePaths(File directory, List filePaths) { - File[] files = directory.listFiles(); - if (files != null) { - for (File file : files) { - filePaths.add(file.getAbsolutePath()); - if (file.isDirectory()) { - collectFilePaths(file, filePaths); - } - } - } - } -} diff --git a/src/main/java/dev/oxydien/utils/PathUtils.java b/src/main/java/dev/oxydien/utils/PathUtils.java deleted file mode 100644 index ae58d84..0000000 --- a/src/main/java/dev/oxydien/utils/PathUtils.java +++ /dev/null @@ -1,67 +0,0 @@ -package dev.oxydien.utils; - -import dev.oxydien.logger.Log; -import org.jetbrains.annotations.Nullable; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; - -public class PathUtils { - - @Nullable - public static Path PathExistsFromStartInDir(String dirPath, String search) { - Path dir = Path.of(dirPath); - if (Files.isDirectory(dir)) { - try (var stream = Files.list(dir)) { - for (var p : stream.toList()) { - if (p.getFileName().toString().startsWith(search)) { - return p; - } - } - } catch (IOException e) { - Log.Log.error("path-utils.pefsid.IOException", "Error while searching for file in directory", e); - } - } - return null; - } - - public static boolean PathExists(String path) { - return Files.exists(Path.of(path)); - } - - public static void CreateFolder(String path) { - try { - Files.createDirectories(Path.of(path)); - } catch (IOException e) { - Log.Log.error("path-utils.create-folder.IOException", "Error while creating folder", e); - } - } - - /** - * Sanitizes a given path by making sure it is a valid path and does not attempt to traverse outside the given base directory. - * Used so the mod cannot access files outside the base (minecraft) directory. - * - * @param basePath The base directory to work from. - * @param userProvidedPath The path specified by the user. - * @return The sanitized path. - * @throws SecurityException If the path is invalid or attempts to traverse outside the base directory. - */ - public static String sanitizePath(String basePath, String userProvidedPath) { - try { - // Convert paths to canonical form - Path baseDir = Paths.get(basePath).toAbsolutePath().normalize(); - Path requestedPath = baseDir.resolve(userProvidedPath).toAbsolutePath().normalize(); - - // Check if the requested path starts with the base directory - if (!requestedPath.startsWith(baseDir)) { - throw new SecurityException("Path traversal attempt detected"); - } - - return requestedPath.toString(); - } catch (Exception e) { - throw new SecurityException("Invalid path", e); - } - } -} diff --git a/src/main/java/dev/oxydien/utils/StringUtils.java b/src/main/java/dev/oxydien/utils/StringUtils.java deleted file mode 100644 index f6df97e..0000000 --- a/src/main/java/dev/oxydien/utils/StringUtils.java +++ /dev/null @@ -1,7 +0,0 @@ -package dev.oxydien.utils; - -public class StringUtils { - public static String removeUnwantedCharacters(String input) { - return input.replaceAll("[^a-zA-Z0-9.\\-_]", ""); - } -} diff --git a/src/main/java/dev/oxydien/workers/ModDownloadWorker.java b/src/main/java/dev/oxydien/workers/ModDownloadWorker.java deleted file mode 100644 index 23e932b..0000000 --- a/src/main/java/dev/oxydien/workers/ModDownloadWorker.java +++ /dev/null @@ -1,584 +0,0 @@ -package dev.oxydien.workers; - -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import dev.oxydien.data.ConfigData; -import dev.oxydien.data.ContentSyncProgress; -import dev.oxydien.enums.*; -import dev.oxydien.logger.Log; -import dev.oxydien.networking.FileDownloader; -import dev.oxydien.config.Config; -import dev.oxydien.data.ProgressCallback; -import dev.oxydien.data.SyncData; -import dev.oxydien.utils.FileUtils; -import dev.oxydien.utils.PathUtils; -import dev.oxydien.utils.StringUtils; -import org.jetbrains.annotations.Nullable; - -import java.io.IOException; -import java.net.URISyntaxException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; -import java.util.concurrent.*; -import java.util.concurrent.atomic.AtomicInteger; -import java.util.concurrent.atomic.AtomicReference; -import java.util.regex.Pattern; - -public class ModDownloadWorker implements Runnable { - /// State where the worker is - private SyncState state; - /// Data used for syncing - @Nullable private SyncData syncData; - /// Error type if there is one else [SyncErrorType::NONE] - private SyncErrorType errorType; - /// Progress of the sync (0 to 100) - private final AtomicInteger overallProgress; - /// Callbacks to notify when progress is updated - public static List callbacks = new CopyOnWriteArrayList<>(); - /// Main worker thread - private final AtomicReference workerThread; - /// Progress of each content separately - private final AtomicReference> contentSyncProgress; - /// Executor service (waits for completion) - private CompletionService completionService; - /// Executor service (runs tasks) - private ExecutorService executorService; - - public SyncState GetState() { - return this.state; - } - - public SyncErrorType GetErrorType() { - return this.errorType; - } - - public int GetProgress() { - return this.overallProgress.get(); - } - - public SyncData GetSyncData() { - return this.syncData; - } - - public List GetModProgress() { - return this.contentSyncProgress.get(); - } - - public ModDownloadWorker() { - this.state = SyncState.DID_NOT_SYNC; - this.syncData = null; - this.errorType = SyncErrorType.NONE; - this.workerThread = new AtomicReference<>(); - this.overallProgress = new AtomicInteger(0); - this.contentSyncProgress = new AtomicReference<>(new CopyOnWriteArrayList<>()); - this.executorService = Executors.newFixedThreadPool(Math.min(Runtime.getRuntime().availableProcessors(), 4)); - this.completionService = new ExecutorCompletionService<>(this.executorService); - } - - public void subscribe(ProgressCallback callback) { - if (callback != null && !callbacks.contains(callback)) { - callbacks.add(callback); - //SimpleModSync.LOGGER.info("[SMS-WORKER] Added callback {} {}", callback, callbacks); - } - } - - public void unsubscribe(ProgressCallback callback) { - if (callback != null) { - callbacks.remove(callback); - } - } - - /** - * Starts the mod download worker. This will: - * - Check if the remote URL is set, and if not, set an error and return - * - Check if the remote URL is set to "-", in which case the synchronization will be disabled - * - Download the remote JSON file - * - Parse the JSON file - * - Download all mods listed in the JSON file - * - Set the state to READY or NEEDS_RESTART depending on whether any mods were downloaded - */ - @Override - public void run() { - workerThread.set(Thread.currentThread()); - Log.Log.info("bw.run", "Mod download worker started"); - - // Check if the remote URL is set - String url = Config.instance.getDownloadUrl(); - if (url.isEmpty()) { - this.handleError(SyncErrorType.REMOTE_NOT_SET, "Remote URL not set"); - return; - } - - // Check if the remote URL is set to "-", in which case the synchronization will be disabled - if (url.equals("-")) { - this.overallProgress.set(100); - this.errorType = SyncErrorType.REMOTE_NOT_SET; - this.setState(SyncState.READY); - Log.Log.info("bw.run", "Synchronization disabled, returning early"); - return; - } - - // Download the remote JSON file - this.updateProgress(2); - this.setState(SyncState.CHECKING_REMOTE); - - String jsonString; - try { - jsonString = FileDownloader.downloadString(url); - } catch (IOException | URISyntaxException e) { - this.handleError(SyncErrorType.REMOTE_NOT_FOUND, "Remote URL not found", e); - return; - } - - // Parse the JSON file - this.updateProgress(4); - this.setState(SyncState.PARSING_REMOTE); - try { - this.syncData = this.parseSyncData(jsonString); - } catch (Exception e) { - this.handleError(SyncErrorType.PARSING_FAILED, "Failed to parse remote data", e); - return; - } - - // Download all the content - this.updateProgress(10); - this.setState(SyncState.DOWNLOADING); - - int totalTasks = this.syncData.getContent().size(); - for (SyncData.Content content : this.syncData.getContent()) { - this.completionService.submit(() -> switch (content.getType()) { - case "config" -> this.downloadConfig(content); - case null, default -> this.downloadContent(content); - }); - } - - // Wait for completion - boolean changed = false; - for (int i = 0; i < totalTasks; i++) { - try { - Future future = this.completionService.take(); - changed |= future.get(); - } catch (InterruptedException e) { - Thread.currentThread().interrupt(); - Log.Log.error("bw.run.interruptException", "Download process was interrupted for {}", - this.syncData.getContent().get(i).getName(), e); - break; - } catch (ExecutionException e) { - Log.Log.error("bw.run.executionException", "Error during parallel download for {}", - this.syncData.getContent().get(i).getName(), e); - } - } - - // Shutdown executor service and wait for termination - this.executorService.shutdown(); - try { - if (!this.executorService.awaitTermination(60, TimeUnit.SECONDS)) { - this.executorService.shutdownNow(); - } - } catch (InterruptedException e) { - this.executorService.shutdownNow(); - Thread.currentThread().interrupt(); - } - this.updateProgress(98); - - // Run modifications - this.setState(SyncState.MODIFICATIONS); - for (SyncData.Modification modification : this.syncData.getModify()) { - this.runModification(modification); - } - - // Update progress - this.updateProgress(100); - if (changed) { - this.setState(SyncState.NEEDS_RESTART); - } else { - this.setState(SyncState.READY); - } - - Log.Log.info("bw.run", "Synchronization finished"); - } - - /** - * Downloads a mod from the given content URL to the download destination. - * - *

    If the file already exists, it will be skipped. If an older version of the mod exists, it will be deleted. - * This method will catch any exceptions that occur during the download process and return false. - * - * @param content The content to download. - * @return Whether the mod was downloaded successfully. - */ - private boolean downloadContent(SyncData.Content content) { - // Validate content type - if (Objects.equals(content.getType(), "config")) { - Log.Log.warn("bw.downloadContent","DEV ISSUE: config is not supported in this function, skipping {}", content.getName()); - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.SUSPICIOUS_CONTENT, null); - return false; - } - - // Get working folder - var workingDirectory = this.getContentValidDirectory(content.getDirectoryOverride(), content.getTypeFolder()); - if (workingDirectory.isEmpty()) { - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.SUSPICIOUS_CONTENT, null); - return false; - } - - var contentName = StringUtils.removeUnwantedCharacters(content.getName()); - var contentVersion = StringUtils.removeUnwantedCharacters(content.getVersion()); - - // Create full path to the content - String path = workingDirectory + "/" + - contentName + "-" + - contentVersion + - content.getFileExtension(); - - // Check if content already exists - if (FileDownloader.fileExists(path)) { - Log.Log.debug("bw.downloadContent","File already exists, skipping {}", content.getName()); - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.ALREADY_EXISTS, null); - return false; - } - - // Find any older versions - Path olderVersion = PathUtils.PathExistsFromStartInDir(workingDirectory + "/", contentName); - if (olderVersion != null) { - Log.Log.debug("bw.downloadContent", "Found older version of {}, deleting {}", content.getName(), olderVersion.getFileName()); - try { - Files.delete(olderVersion); - } catch (IOException e) { - Log.Log.error("bw.downloadContent.delete.IOException","Failed to delete file", e); - } - } - - // Download the content - Log.Log.debug("bw.downloadContent", "Downloading {} {}", content.getName(), content.getVersion()); - try { - FileDownloader.downloadFileWithProgress(content.getUrl(), path, - (progress) -> this.updateContentProgress(content.getIndex(), progress, ContentSyncOutcome.IN_PROGRESS, null)); - } catch (IOException e) { - Log.Log.error("bw.downloadContent.write.IOException", "Failed to download file {}", content.getName(), e); - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.DOWNLOAD_INTERRUPTED , e); - return false; - } catch (URISyntaxException e) { - Log.Log.error("bw.downloadContent.write.URISyntaxException", "Failed to download file {}", content.getName(), e); - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.INVALID_URL , e); - return false; - } - - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.SUCCESS, null); - Log.Log.debug("bw.downloadContent", "Successfully Downloaded {} {} {}", content.getName(), content.getType(), content.getVersion()); - return true; - } - - /** - * Downloads a config file from the given url and places it in the valid directory specified by {@link #getContentValidDirectory(String, String)}. - *

    - * This function will check if the config already exists, and if so, will skip the download and return false. - * If the config is an older version, it will delete the older version and apply the changes from the newer version. - * If the config is a newer version, it will overwrite the existing config. - *

    - * The progress of the download will be updated in the callback ({@link #updateContentProgress(int, int, ContentSyncOutcome, Exception)}). - * @param content the (config) content to download - * @return true if the config was successfully downloaded or updated, false if not - */ - private boolean downloadConfig(SyncData.Content content) { - // Validate content type - if (!Objects.equals(content.getType(), "config")) { - Log.Log.warn("bw.downloadConfig","DEV ISSUE: {} is not supported in this function, skipping {}", content.getType(), content.getName()); - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.SUSPICIOUS_CONTENT, null); - return false; - } - - // Get working folder - var workingDirectory = this.getContentValidDirectory(content.getDirectoryOverride(), content.getTypeFolder()); - if (workingDirectory.isEmpty()) { - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.SUSPICIOUS_CONTENT, null); - return false; - } - - var configName = StringUtils.removeUnwantedCharacters(content.getName()); - var configVersion = StringUtils.removeUnwantedCharacters(content.getVersion()); - - // Create full path to the config registry (sms_configName-version.json) - String path = workingDirectory + "/" + "sms_" + - configName + "-" + - configVersion + - ".json"; - var tempZipPath = workingDirectory + "/" + "sms_" + - configName + "-" + - configVersion + - ".archive.zip"; - - // Check if config already exists - if (FileDownloader.fileExists(path)) { - Log.Log.debug("bw.downloadConfig","Found existing config, skipping {}", content.getName()); - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.ALREADY_EXISTS, null); - return false; - } - this.updateContentProgress(content.getIndex(), 10, ContentSyncOutcome.ALREADY_EXISTS, null); - - // Check for older versions - Path olderVersion = PathUtils.PathExistsFromStartInDir(workingDirectory + "/", configName); - if (olderVersion != null) { - // Remove older version's changes - Log.Log.debug("bw.downloadConfig", "Found older version of {}, deleting changes {}", configName, olderVersion.getFileName()); - boolean allowed = true; - try { - var configJsonStr = FileUtils.ReadFile(olderVersion.toString()); - var jsonElement = JsonParser.parseString(configJsonStr); - var jsonObject = jsonElement.getAsJsonObject(); - var configData = ConfigData.fromJson(jsonObject); - - for (String file : configData.getConfig()) { - try { - Files.delete(Path.of(file)); - } catch (IOException e) { - Log.Log.warn("bw.downloadConfig.delete.IOException","Failed to delete file, ignoring: ", e); - } - } - } catch (IOException e) { - Log.Log.error("bw.downloadConfig.read.IOException", "Failed to read file", e); - allowed = false; - } - - if (allowed) { - try { - Files.delete(olderVersion); - } catch (IOException e) { - Log.Log.error("bw.downloadConfig.delete.IOException","Failed to delete file", e); - } - } - } - - // Download the config - Log.Log.debug("bw.downloadConfig", "Downloading {} {}", content.getName(), content.getVersion()); - try { - FileDownloader.downloadFileWithProgress(content.getUrl(), tempZipPath, - (progress) -> this.updateContentProgress(content.getIndex(), (int) (10 + (progress * 0.8)), ContentSyncOutcome.IN_PROGRESS, null)); - var modifiedFiles = FileUtils.UnZipFile(tempZipPath, workingDirectory); - var modifiedFilesAsString = modifiedFiles.stream().map(Path::toString).toList(); - var configData = new ConfigData(modifiedFilesAsString); - var configJsonStr = configData.toJson().toString(); - FileUtils.WriteFile(path, configJsonStr); - - // Remove temp zip file - Files.delete(Path.of(tempZipPath)); - } catch (IOException e) { - Log.Log.error("bw.downloadConfig.write.IOException", "Failed to download parse or write file {}", content.getName(), e); - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.DOWNLOAD_INTERRUPTED , e); - return false; - } catch (URISyntaxException e) { - Log.Log.error("bw.downloadConfig.write.URISyntaxException", "Failed to download file {}", content.getName(), e); - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.INVALID_URL , e); - return false; - } - - this.updateContentProgress(content.getIndex(), 100, ContentSyncOutcome.SUCCESS, null); - Log.Log.debug("bw.downloadConfig", "Successfully Downloaded {} {} {}", content.getName(), content.getType(), content.getVersion()); - - return true; - } - - private void runModification(SyncData.Modification modification) { - // Validate input - if (modification.getType() == SyncModificationType.RENAME && modification.getResult() == null) { - Log.Log.error("bw.runModification", "Modification type is RENAME but result is null, (result is used for RENAME)"); - return; - } - - // Get working folder - var workingDirectory = this.getContentValidDirectory(modification.getPath(), ""); - if (workingDirectory.isEmpty()) { - Log.Log.debug("bw.runModification", "Suspicious content, skipping {} {}", modification.getType(), modification.getPath()); - return; - } - - var matchData = FileUtils.GetFilePaths(workingDirectory); - if (matchData.isEmpty()) { - Log.Log.debug("bw.runModification", "Ignoring content, no data for {} {}", modification.getType(), modification.getPath()); - return; - } - - List relativeMatches = new ArrayList<>(); - for (String match : matchData) { - String relativePath = Path.of(workingDirectory).relativize(Path.of(match)).toString(); - relativeMatches.add(relativePath); - } - - List matches = new ArrayList<>(); - var pattern = Pattern.compile(modification.getPattern()); - for (var filePath : relativeMatches) { - var matcher = pattern.matcher(filePath); - if (matcher.matches()) { - matches.add(filePath); - Log.Log.debug("bw.runModification", "Found match for {} at {}", modification.getPattern(), filePath); - break; - } - } - - switch (modification.getType()) { - case REMOVE: - for (var match : matches) { - try { - Files.delete(Path.of(match)); - } catch (IOException e) { - Log.Log.error("bw.runModification.delete.IOException","Failed to delete file", e); - } - } - break; - case RENAME: - for (var match : matches) { - try { - assert modification.getResult() != null; - var targetFile = Path.of(match); - var parent = targetFile.getParent(); - Files.move(targetFile, Path.of(parent + "/" + modification.getResult())); - } catch (IOException e) { - Log.Log.error("bw.runModification.move.IOException","Failed to move file", e); - } - } - break; - default: - Log.Log.error("bw.runModification", "Unknown modification type {}", modification.getType()); - } - Log.Log.debug("bw.runModification", "Successfully ran modification {} at {}", modification.getType(), workingDirectory); - } - - /** - * Updates the progress of the content at the given index in the mod progress list. - * If the content doesn't exist, a new ContentSyncProgress object is created and added to the list. - * If the content does exist, its progress is updated. - * The overall progress is then updated by calling {@link #updateOverallProgress()}. - * - * @param contentIndex The index of the content to update. - * @param progress The new progress of the content. - * @param outcome The outcome of the content. If the content has finished downloading, this is the outcome. - * @param e The exception that occurred during the download, if any. - */ - private void updateContentProgress(int contentIndex, int progress, ContentSyncOutcome outcome, @Nullable Exception e) { - List contentSyncProgress = this.contentSyncProgress.get(); - // Find existing content with the same index - ContentSyncProgress content = contentSyncProgress.stream() - .filter(mod -> mod.getIndex() == contentIndex) - .findFirst().orElse(null); - - if (content == null) { - // Create new content - ContentSyncProgress newContent = new ContentSyncProgress(contentIndex, progress); - if (errorType != null) { - newContent.setOutcome(outcome, e); - } - contentSyncProgress.add(newContent); - } else { - // Update existing content's progress - content.setProgress(progress); - if (errorType != null) { - content.setOutcome(outcome, e); - } - } - this.contentSyncProgress.set(contentSyncProgress); - this.updateOverallProgress(); - } - - /** - * Calculates the overall progress by summing the progress of all content and dividing it by the total number of content. - * The overall progress is then set to the calculated value. - * The state is then set to the current state to trigger a progress update callback. - */ - private void updateOverallProgress() { - int totalProgress = (int) ((float) this.contentSyncProgress.get().stream().mapToInt(ContentSyncProgress::getProgress).sum() * 0.95f); - int overallProgress = totalProgress / this.contentSyncProgress.get().size(); - this.overallProgress.set(overallProgress); - this.setState(this.state); // Trigger progress update callback - } - - private void handleError(SyncErrorType errorType, String message) { - this.handleError(errorType, message, null); - } - - private void handleError(SyncErrorType errorType, String message, @Nullable Exception e) { - this.errorType = errorType; - this.setState(SyncState.ERROR); - if (e != null) { - Log.Log.error("bw", "{}", message, e); - } else { - Log.Log.error("bw", "{}", message); - } - } - - private String getContentValidDirectory(@Nullable String directory, String fallback) { - String output; - var baseDir = Config.instance.getDownloadDestination(); - if (directory != null) { - try { - output = PathUtils.sanitizePath(baseDir, directory); - } catch (SecurityException e) { - Log.Log.error("bw.downloadContent.sanitizePath.SecurityException", "Failed to sanitize path", e); - return ""; - } - } else { - if (fallback.isEmpty()) { - return ""; - } - - output = baseDir + "/" + fallback; - } - - if (!PathUtils.PathExists(output)) { - PathUtils.CreateFolder(output); - } - - return output; - } - - private void updateProgress(int progress) { - this.overallProgress.set(progress); - this.setState(state); // Trigger progress update callback - } - - private SyncData parseSyncData(String jsonString) { - JsonElement jsonElement = JsonParser.parseString(jsonString); - JsonObject jsonObject = jsonElement.getAsJsonObject(); - - return SyncData.fromJson(jsonObject); - } - - private void setState(SyncState state) { - this.state = state; - //SimpleModSync.LOGGER.info("[SMS-WORKER] Calling UPDATE callback {}", callbacks); - for (ProgressCallback progressCallback : callbacks) { - progressCallback.onProgress(CallbackReason.UPDATE); - } - } - - /** - * Starts the content download worker. - * This will: - * - Clear any stored data - * - Initialize the executor service - * - Set the state to INITIALIZING - * - Start the worker thread - */ - public void start() { - Thread thread = new Thread(this); - this.syncData = null; - this.contentSyncProgress.set(new CopyOnWriteArrayList<>()); - this.overallProgress.set(0); - this.errorType = null; - this.executorService = Executors.newFixedThreadPool(Math.min(Runtime.getRuntime().availableProcessors(), 4)); - this.completionService = new ExecutorCompletionService<>(this.executorService); - this.setState(SyncState.INITIALIZING); - this.workerThread.set(thread); - thread.start(); - } - - public void stop() { - Thread thread = workerThread.get(); - if (thread != null) { - thread.interrupt(); - } - } -} diff --git a/src/main/resources/assets/simple-mod-sync/lang/cs_cz.json b/src/main/resources/assets/simple-mod-sync/lang/cs_cz.json deleted file mode 100644 index c9e0e63..0000000 --- a/src/main/resources/assets/simple-mod-sync/lang/cs_cz.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "simple_mod_sync.ui.initializing": "Inicializace", - "simple_mod_sync.ui.checking_remote": "Kontroluji server", - "simple_mod_sync.ui.parsing_remote": "Čtení dat ze serveru", - "simple_mod_sync.ui.downloading": "Stahování %d%%...", - "simple_mod_sync.ui.modifications": "Modifikace", - "simple_mod_sync.ui.ready": "Připraveno k hraní", - "simple_mod_sync.ui.needs_restart": "Restartujte hru", - "simple_mod_sync.ui.error": "Chyba", - "simple_mod_sync.ui.error.unknown": "Neznámá chyba", - "simple_mod_sync.ui.error.remote_not_set": "Adresa serveru není nastavena\nNastavte ji v config souboru", - "simple_mod_sync.ui.error.remote_not_found": "Adresa serveru nenalezena\nNepodařilo se připojit k serveru", - "simple_mod_sync.ui.error.parsing_failed": "Nepodařilo se přečíst data ze serveru", - "simple_mod_sync.ui.error.download_failed": "Nepodařilo se stáhnout mody", - "simple_mod_sync.ui.error.failed_to_write_file": "Nepodařilo se zapsat mody na disk", - "simple_mod_sync.ui.set_sync_screen.title": "§lSimple Mod Sync", - "simple_mod_sync.ui.set_sync_screen.subtitle": "§oNastavit adresu serveru", - "simple_mod_sync.ui.set_sync_screen.confirm_button": "Potvrdit", - "simple_mod_sync.ui.set_sync_screen.cancel_button": "Zrušit", - "simple_mod_sync.ui.set_sync_screen.auto_download_true": "Vypnout auto-stahování", - "simple_mod_sync.ui.set_sync_screen.auto_download_false": "Zapnout auto-stahování", - "simple_mod_sync.ui.sync_full_view.title": "§lSimple Mod Sync", - "simple_mod_sync.ui.sync_full_view.save_url_button": "Uložit URL", - "simple_mod_sync.ui.sync_full_view.sync_button": "Synchronizovat", - "simple_mod_sync.ui.sync_full_view.auto_download_true": "Vypnout auto", - "simple_mod_sync.ui.sync_full_view.auto_download_false": "Zapnout auto", - "simple_mod_sync.ui.sync_full_view.previous_page": "<", - "simple_mod_sync.ui.sync_full_view.next_page": ">", - "simple_mod_sync.ui.sync_full_view.back_button": "Zpět", - "simple_mod_sync.ui.did_not_sync": "Auto-stahovaní\nvypnuto", - "simple_mod_sync.ui.outcome.success": "Dokončeno", - "simple_mod_sync.ui.outcome.in_progress": "Pracuji", - "simple_mod_sync.ui.outcome.already_exists": "Už existuje", - "simple_mod_sync.ui.outcome.invalid_url": "Špatná URL", - "simple_mod_sync.ui.outcome.download_interrupted": "Stahování přerušeno", - "simple_mod_sync.ui.outcome.awaiting_worker": "Cekám na worker", - "simple_mod_sync.ui.outcome.suspicious_content": "Podezřelý obsah", - "simple_mod_sync.ui.outcome.complete": "Dokončeno!", - "simple_mod_sync.ui.error.exception": "Akce selhala, zkontrolujte logy" -} diff --git a/src/main/resources/assets/simple-mod-sync/lang/en_us.json b/src/main/resources/assets/simple-mod-sync/lang/en_us.json deleted file mode 100644 index 7316cf7..0000000 --- a/src/main/resources/assets/simple-mod-sync/lang/en_us.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "simple_mod_sync.ui.set_sync_screen.title": "§lSimple Mod Sync", - "simple_mod_sync.ui.set_sync_screen.subtitle": "§oSet the remote URL", - "simple_mod_sync.ui.set_sync_screen.confirm_button": "Confirm", - "simple_mod_sync.ui.set_sync_screen.cancel_button": "Cancel", - "simple_mod_sync.ui.set_sync_screen.auto_download_true": "Disable auto download", - "simple_mod_sync.ui.set_sync_screen.auto_download_false": "Enable auto download", - "simple_mod_sync.ui.sync_full_view.title": "§lSimple Mod Sync", - "simple_mod_sync.ui.sync_full_view.save_url_button": "Save URL", - "simple_mod_sync.ui.sync_full_view.sync_button": "Sync now", - "simple_mod_sync.ui.sync_full_view.auto_download_true": "Disable auto", - "simple_mod_sync.ui.sync_full_view.auto_download_false": "Enable auto", - "simple_mod_sync.ui.sync_full_view.previous_page": "<", - "simple_mod_sync.ui.sync_full_view.next_page": ">", - "simple_mod_sync.ui.sync_full_view.back_button": "Back", - "simple_mod_sync.ui.initializing": "Initializing", - "simple_mod_sync.ui.checking_remote": "Checking remote", - "simple_mod_sync.ui.parsing_remote": "Reading remote data", - "simple_mod_sync.ui.did_not_sync": "Auto download\ndisabled", - "simple_mod_sync.ui.downloading": "Downloading %d%%...", - "simple_mod_sync.ui.modifications": "Modifications", - "simple_mod_sync.ui.ready": "Ready to play", - "simple_mod_sync.ui.needs_restart": "Restart your game", - "simple_mod_sync.ui.outcome.success": "Success", - "simple_mod_sync.ui.outcome.in_progress": "In progress", - "simple_mod_sync.ui.outcome.already_exists": "Already exists", - "simple_mod_sync.ui.outcome.invalid_url": "Invalid URL", - "simple_mod_sync.ui.outcome.download_interrupted": "Download failed", - "simple_mod_sync.ui.outcome.awaiting_worker": "Awaiting worker", - "simple_mod_sync.ui.outcome.suspicious_content": "Suspicious content", - "simple_mod_sync.ui.outcome.complete": "Done!", - "simple_mod_sync.ui.error": "Error", - "simple_mod_sync.ui.error.unknown": "Unknown error", - "simple_mod_sync.ui.error.remote_not_set": "Remote URL not set\nSet it in the config file", - "simple_mod_sync.ui.error.remote_not_found": "Remote URL not found\nCould not connect to the server", - "simple_mod_sync.ui.error.parsing_failed": "Failed to parse remote data", - "simple_mod_sync.ui.error.download_failed": "Failed to download mods", - "simple_mod_sync.ui.error.failed_to_write_file": "Failed to write mods to disk", - "simple_mod_sync.ui.error.exception": "Action failed, check logs for details" -} diff --git a/src/main/resources/assets/simple-mod-sync/lang/nl_nl.json b/src/main/resources/assets/simple-mod-sync/lang/nl_nl.json deleted file mode 100644 index a9bdd5d..0000000 --- a/src/main/resources/assets/simple-mod-sync/lang/nl_nl.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "simple_mod_sync.ui.checking_remote": "De server controleren", - "simple_mod_sync.ui.did_not_sync": "Auto-downloaden\nuitgeschakeld", - "simple_mod_sync.ui.downloading": "Downloaden %d%%...", - "simple_mod_sync.ui.error": "Fout", - "simple_mod_sync.ui.error.download_failed": "Downloaden van mods mislukt", - "simple_mod_sync.ui.error.exception": "Actie mislukt, controleer logboeken voor details", - "simple_mod_sync.ui.error.failed_to_write_file": "Mislukt bij het schrijven van mods naar schijf", - "simple_mod_sync.ui.error.parsing_failed": "Mislukt bij het lezen van gegevens van de server", - "simple_mod_sync.ui.error.remote_not_found": "Serveradres niet gevonden\nVerbinding met server mislukt", - "simple_mod_sync.ui.error.remote_not_set": "Serveradres is niet ingesteld\nStel het in in het configuratiebestand", - "simple_mod_sync.ui.error.unknown": "Onbekende fout", - "simple_mod_sync.ui.initializing": "Initialiseren", - "simple_mod_sync.ui.modifications": "Wijzigingen", - "simple_mod_sync.ui.needs_restart": "Herstart je spel", - "simple_mod_sync.ui.outcome.already_exists": "Bestaat al", - "simple_mod_sync.ui.outcome.awaiting_worker": "Wachtende werknemer", - "simple_mod_sync.ui.outcome.complete": "Gedaan!", - "simple_mod_sync.ui.outcome.download_interrupted": "Downloaden mislukt", - "simple_mod_sync.ui.outcome.in_progress": "In uitvoering", - "simple_mod_sync.ui.outcome.invalid_url": "Ongeldige URL", - "simple_mod_sync.ui.outcome.suspicious_content": "Verdachte inhoud", - "simple_mod_sync.ui.outcome.success": "Gedaan", - "simple_mod_sync.ui.parsing_remote": "Gegevens van de server lezen", - "simple_mod_sync.ui.ready": "Klaar om te spelen", - "simple_mod_sync.ui.set_sync_screen.auto_download_false": "Auto-downloaden inschakelen", - "simple_mod_sync.ui.set_sync_screen.auto_download_true": "Auto-downloaden uitschakelen", - "simple_mod_sync.ui.set_sync_screen.cancel_button": "Annuleren", - "simple_mod_sync.ui.set_sync_screen.confirm_button": "Bevestigen", - "simple_mod_sync.ui.set_sync_screen.subtitle": "§oStel het serveradres in", - "simple_mod_sync.ui.set_sync_screen.title": "§lSimple Mod Sync", - "simple_mod_sync.ui.sync_full_view.auto_download_false": "inschakelen auto", - "simple_mod_sync.ui.sync_full_view.auto_download_true": "uitschakelen auto", - "simple_mod_sync.ui.sync_full_view.back_button": "Terug", - "simple_mod_sync.ui.sync_full_view.next_page": ">", - "simple_mod_sync.ui.sync_full_view.previous_page": "<", - "simple_mod_sync.ui.sync_full_view.save_url_button": "URL opslaan", - "simple_mod_sync.ui.sync_full_view.sync_button": "Nu synchroniseren", - "simple_mod_sync.ui.sync_full_view.title": "§lSimple Mod Sync" -} diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json deleted file mode 100644 index 93f7ad7..0000000 --- a/src/main/resources/fabric.mod.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "schemaVersion": 1, - "id": "simple-mod-sync", - "version": "${version}", - "name": "Simple Mod Sync", - "description": "A lightweight mod for synchronizing game mods via a URL-based schema.", - "authors": [ - "oxydien" - ], - "contact": { - "homepage": "https://modrinth.com/mod/simple-mod-sync", - "sources": "https://github.com/oxydien/simple-mod-sync" - }, - "license": "MIT", - "icon": "assets/simple-mod-sync/icon.png", - "environment": "*", - "entrypoints": { - "main": [ - "dev.oxydien.SimpleModSync" - ], - "fabric-datagen": [ - "dev.oxydien.SimpleModSyncDataGenerator" - ] - }, - "mixins": [ - "simple-mod-sync.mixins.json" - ], - "depends": { - "fabricloader": ">=0.16.5", - "minecraft": "~1.21.5", - "fabric-api": "*", - "java": ">=21" - } -}