diff --git a/HMCL/image/april_fools.png b/HMCL/image/april_fools.png new file mode 100644 index 000000000..b248712fa Binary files /dev/null and b/HMCL/image/april_fools.png differ diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/setting/VersionIconType.java b/HMCL/src/main/java/org/jackhuang/hmcl/setting/VersionIconType.java index 4d5dca747..926a8c52c 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/setting/VersionIconType.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/setting/VersionIconType.java @@ -29,6 +29,7 @@ public enum VersionIconType { COMMAND("/assets/img/command.png"), OPTIFINE("/assets/img/optifine.png"), CRAFT_TABLE("/assets/img/craft_table.png"), + APRIL_FOOLS("/assets/img/april_fools.png"), FABRIC("/assets/img/fabric.png"), FORGE("/assets/img/forge.png"), NEO_FORGE("/assets/img/neoforge.png"), diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/VersionsPage.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/VersionsPage.java index a4ad59dee..c5b1d343e 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/VersionsPage.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/download/VersionsPage.java @@ -200,8 +200,13 @@ public final class VersionsPage extends Control implements WizardPage, Refreshab break; case PENDING: case SNAPSHOT: - content.getTags().setAll(i18n("version.game.snapshot")); - content.setImage(VersionIconType.COMMAND.getIcon()); + if (GameVersionNumber.asGameVersion(remoteVersion.getGameVersion()).isSpecial()) { + content.getTags().setAll(i18n("version.game.april_fools")); + content.setImage(VersionIconType.APRIL_FOOLS.getIcon()); + } else { + content.getTags().setAll(i18n("version.game.snapshot")); + content.setImage(VersionIconType.COMMAND.getIcon()); + } content.setExternalLink(i18n("wiki.version.game", wikiSuffix)); break; default: diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionIconDialog.java b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionIconDialog.java index a999fe421..a394ec03a 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionIconDialog.java +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/versions/VersionIconDialog.java @@ -60,6 +60,7 @@ public class VersionIconDialog extends DialogPane { createIcon(VersionIconType.CHEST), createIcon(VersionIconType.CHICKEN), createIcon(VersionIconType.COMMAND), + createIcon(VersionIconType.APRIL_FOOLS), createIcon(VersionIconType.OPTIFINE), createIcon(VersionIconType.CRAFT_TABLE), createIcon(VersionIconType.FABRIC), diff --git a/HMCL/src/main/resources/assets/img/april_fools.png b/HMCL/src/main/resources/assets/img/april_fools.png new file mode 100644 index 000000000..d35577459 Binary files /dev/null and b/HMCL/src/main/resources/assets/img/april_fools.png differ diff --git a/HMCL/src/main/resources/assets/img/april_fools@2x.png b/HMCL/src/main/resources/assets/img/april_fools@2x.png new file mode 100644 index 000000000..414bc6131 Binary files /dev/null and b/HMCL/src/main/resources/assets/img/april_fools@2x.png differ