From 916d148bdbd184e14a55469241a4488bc690e16a Mon Sep 17 00:00:00 2001 From: Jonas_Jones <91549607+J-onasJones@users.noreply.github.com> Date: Mon, 2 Jan 2023 16:31:06 +0100 Subject: [PATCH] added url buttons to credits screen --- .gradle/7.4/checksums/checksums.lock | Bin 17 -> 17 bytes .../7.4/executionHistory/executionHistory.bin | Bin 1891042 -> 1891042 bytes .../executionHistory/executionHistory.lock | Bin 17 -> 17 bytes .gradle/7.4/fileHashes/fileHashes.bin | Bin 39447 -> 39447 bytes .gradle/7.4/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../7.4/fileHashes/resourceHashesCache.bin | Bin 34069 -> 34647 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes build/resources/main/fabric.mod.json | 6 +- .../gui/screens/ModCreditsScreen.java | 60 ++++++++++++++++++ 9 files changed, 63 insertions(+), 3 deletions(-) diff --git a/.gradle/7.4/checksums/checksums.lock b/.gradle/7.4/checksums/checksums.lock index d5154870a662645819752ad5a34c4a669c4c6093..f6ed442791f9666c8400a77f4684f7623d021217 100644 GIT binary patch literal 17 VcmZR!uih~CY3$E$3}C>d3;;ev1z`XH literal 17 VcmZR!uih~CY3$E$3}C<{4*)(u1zi9D diff --git a/.gradle/7.4/executionHistory/executionHistory.bin b/.gradle/7.4/executionHistory/executionHistory.bin index f2ad004b1d1bbee5c9960d0ed174757d7f7265ce..c2ecfbdb547fdd7dccf666028ec3d0762a33910c 100644 GIT binary patch delta 1145 zcmXYw4^We39LM)=Jg`5(o(*`}yA1@#e+V`OS3yQVEi+FkJxe!Wvi_kG^y?s?w3 zLr3lo9XbE-5B~2>8A7|OGT-vxO$VNq>@D*s_qNBvR2z!YaTt5ORt#>E?ip+;25jx^2rmau68(hDVL`KUV~iavx=wZqk5y=zKK7$ntPm|y1yb9by8;3} z(ljK~Y-cjfadR3L`zQ<><8wa@!1!YVFkB1|!^a3PPhbKuK^P$hVni4*CKwZf3B}Nu zFpLDlI2Ze*;b>z~n&mBZnxVYRdf-6WA*<0;w8eO^yehrY`2VT-L8q&f`z^bnu%B@j z_Dd_R&Nna0hk0;%?ZwMAykdWgSi0k3yf+r@Iwa_GUaX)a*v^%4xdp((o9L(93Ey>X z?wSof_dTsf3o)E{1fP+eM6oyI5VQ@=w@#sq8}eMxNfbJm6wpuf(mnq;;3S%tAyb3T ziHZzdHRvH~;{_&wKBAsigI@r{M4!);#jfjp16Kz|NVRZMzL`JjQ>BMbbs&8U!=Rlm zQ2-j5ltb<~>HHFl^xcdS{751l7C|IxbcrCCAn(upB+mdhiO#x2(cD`kGZ2BYssvKW zg+Io;`(`47=W=(lB$w46PLpnXB3cNN#DF^_rmv-yV3w$-O2D9jS{lmc$zW49z8<#m zQ?K(_q4aLyo(=hmAsad^lqj}7YP{CGRLU}Et*j-rPbhNSB=Gfz0Y=3Y%hF*9iX#{vufDoy+wmvZmDbIhBWsHmC y@Lpwj%ATB6@4FhOt44sR4dB8Dp0S#j24c$URMKV6*14~I3HK=z{&T3-ng0OMrw<7L delta 1055 zcmXYve@s(X6vzA8`=s=Vyq504Yo9|v5v9^L{4yefpxYcXiu)0nEtU!rbht?Y`4Rpg zqhs3HDGgi&!8rv}G8IJfrc+oUb77)Lh0V-u4!6Z@GYU@F4~FjCm%ZeZe9rg0larf! z@AW$F^*Xv{U&iLiz;HQ*dxR`5nB8+Lvn!3aoR5s^`~6eZTD2$R%^_AjSaH(6^`(@& z&Nc5m!_GR7ep@$Pci^W9zh`utfp$tJw=AXKlPu1XppwjVI)rM*5mp87aauHVz0^Hs ziT&S(Ek^o%k~LV3s{KSvu7y-1{xM6T^=!0iXesmLTcha%(&&fQOxh*cH;}m{ljo+W z4ob6gp%nIv(r*d5L&T_RE)ES7+f&Z)O|OTj6{N6Lb7pjh*v)cAhtE}WtbPVczsa2ex7`<6 zs2r*(c;(%}>TJzt*AnsJ;IODQbFLc=k9W&T)2IKAZMzwjc~ly>xB>>+PO%-y=9-Tm zC;w&8zb0P>QRjC#L36H=w;mO`UHYc0MR?+CVKMrL>}=b|#NaC(Jd0{up&aet6VM@I zZZ<3v9VNE;G`|?N605CXw$h(~`7u?bOhr8;46kH#Nm?A?_1WeP&Me>J-t_9j3$S$D zt*;GiIedJ$ulM{%=aR}H>QXl6udg&+PxwB4;K834AK^(OyHeLo&iVvFza72dNE^9f x{P%8T-LtQDWQ)E^22Mj5P diff --git a/.gradle/7.4/executionHistory/executionHistory.lock b/.gradle/7.4/executionHistory/executionHistory.lock index 2ce7d834b22c239d217be3d097babc2b23846fa5..ddae573de2981440ee3f9db7a19c1a17cf44ef33 100644 GIT binary patch literal 17 VcmZP;dVXqOvA@J!1~6cn4gfW{1l0fl literal 17 VcmZP;dVXqOvA@J!1~6c91^_i=1c3km diff --git a/.gradle/7.4/fileHashes/fileHashes.bin b/.gradle/7.4/fileHashes/fileHashes.bin index 06dd9b1a77047a0230874b3c059255c941a3f0c7..f0440ec55de7a077948abf80165acb6c46e2e891 100644 GIT binary patch delta 687 zcmXw1ZAep57~WkoG}a7mUGxNcCG1}lf7ze1NTt|HmO*+`64Hp&Ql~71=mYLPnx*j& zqBUFyQASj3AZ|FKV#uQC8YB_x<42%HiP6`Oiq1Xnx_|ETJm)#@dEWP&(YSRqZoOAO zs9yRQ`7?LboqE*1P_;U;IAgI$x|g|sTEyq5i=7-iyTpEBQvo3Zh7bV zO7?BlcFJ<7U1ZrEE|hlhF?SMkL+WKH>?5`hQkch8j0P|3;9Q9+d2O)Koi_?yxr<WY>-akW|&=l@O7}$+sbl z36ps{!D?nswudn0PA-Hn)=XXuVQilKF>`L-&dG*ZQj_OHP34>%2sHI>F+`4Qa(}keZa!3JbJpel? B)eQgu diff --git a/.gradle/7.4/fileHashes/fileHashes.lock b/.gradle/7.4/fileHashes/fileHashes.lock index 0b71b18c9ecea1a52be5b22505f13da9423efebb..1c52f6f0ead7f77046d00d0548be7d693f066022 100644 GIT binary patch literal 17 UcmZQ(pX8lY#>|n<00zRH038Ja)&Kwi literal 17 UcmZQ(pX8lY#>|n<00x5A035Rdh5!Hn diff --git a/.gradle/7.4/fileHashes/resourceHashesCache.bin b/.gradle/7.4/fileHashes/resourceHashesCache.bin index 1167e7b8c2580dc2f1511fe2b19c3920bb55287c..fac8918d2f25cb81409f88f8276a24a97d009c48 100644 GIT binary patch delta 942 zcmbQ*#dN)oX@iLbz&|dxm6eNbNDGVE5#$%7OfWD;W0nOuh>h`?&e9G9wdz{j%o08)xl;2)6E@{8cqW z;QHyCe65qNFNO+=ZVpu|WZ~C&7<6<)q8U{C+Rb~lG#S-beqXT0ruPU$uwD2+6#QKK zY-dwjj0#k7=H|QFos9fRQOq-RrMRJjs*_`NGc;IUth0Q){4zgO@I1@}RvG8Q(gi=K zLBw0PLS-&35!7PK{F%a&h4zIKlve;3+4#C(duiXq*!3mSoZ;_o{=+nPO0+>st$)U8FjZt6 zn9M7r6)mS6zG=hG$mo*@74@)?{&6lti2VRlbXEAp7kjt7(n2VKsW1yz#v`^uN$zAE zv-xJ_CO1qKk$3L>5mpzTxa84lrvsl|nlM!;I%M}5JuA;h;=IgppMUlv21Sg>IQdiN ofqbrNcKxlKpD#GR&zLM&A}svV?MNkOI$Nobl<#kin`$6~0c9;3KmY&$ delta 96 zcmV-m0H6QYjslg600zAS(NlU6QYv*j+?1C!P=V3STWNVBdp#{rX#H8Hc+HSrDtD*>?~5CyYANYp(0 CKP3DB diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock index fbb803f6207be1b567f29757ad691f91b6a93a70..fee1f57ce53c97837bfb62cfbb11c3db93d4c70c 100644 GIT binary patch literal 17 VcmZQR^Y!uEQ#$N>8Nh(K5&%Mo1$zJh literal 17 VcmZQR^Y!uEQ#$N>8Nh&92mnGM1rz`P diff --git a/build/resources/main/fabric.mod.json b/build/resources/main/fabric.mod.json index a945e80..c410583 100644 --- a/build/resources/main/fabric.mod.json +++ b/build/resources/main/fabric.mod.json @@ -9,9 +9,9 @@ "Jonas_Jones" ], "contact": { - "homepage": "https://jonasjones.me/MicrocontrollerMC", - "sources": "https://github.com/J-onasJones/MicrocontrollerMC", - "issues": "https://github.com/J-onasJones/MicrocontrollerMC/issues" + "homepage": "https://jonasjones.me/microcraft", + "sources": "https://github.com/J-onasJones/microcraft", + "issues": "https://github.com/J-onasJones/microcraft/issues" }, "license": "CC0-1.0", diff --git a/src/main/java/me/jonasjones/microcraft/gui/screens/ModCreditsScreen.java b/src/main/java/me/jonasjones/microcraft/gui/screens/ModCreditsScreen.java index 74f5890..f887f75 100644 --- a/src/main/java/me/jonasjones/microcraft/gui/screens/ModCreditsScreen.java +++ b/src/main/java/me/jonasjones/microcraft/gui/screens/ModCreditsScreen.java @@ -2,9 +2,18 @@ package me.jonasjones.microcraft.gui.screens; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; +import net.minecraft.client.gui.screen.ConfirmLinkScreen; import net.minecraft.client.gui.screen.Screen; +import net.minecraft.client.gui.widget.*; import net.minecraft.client.util.math.MatrixStack; +import net.minecraft.client.gui.widget.ButtonWidget; +import net.minecraft.client.gui.widget.GridWidget; +import net.minecraft.client.gui.widget.SimplePositioningWidget; +import net.minecraft.screen.ScreenTexts; import net.minecraft.text.Text; +import net.minecraft.util.Util; + +import java.util.Iterator; @Environment(EnvType.CLIENT) public class ModCreditsScreen extends Screen { @@ -16,6 +25,57 @@ public class ModCreditsScreen extends Screen { this.parent = parent; } + protected void init() { + this.addDrawableChild(ButtonWidget.builder(Text.of("Modrinth"), this::openModrinthPage).dimensions(this.width / 2 - 155, this.height / 6 + 12, 100, 20).build()); + this.addDrawableChild(ButtonWidget.builder(Text.of("GitHub"), this::openGithubPage).dimensions(this.width / 2 - 50, this.height / 6 + 12, 100, 20).build()); + this.addDrawableChild(ButtonWidget.builder(Text.of("Curseforge"), this::openCurseforgePage).dimensions(this.width / 2 + 55, this.height / 6 + 12, 100, 20).build()); + this.addDrawableChild(ButtonWidget.builder(Text.of("Homepage"), this::openHomepagePage).dimensions(this.width / 2 - 155, this.height / 6 + 35, 310, 20).build()); + + this.addDrawableChild(ButtonWidget.builder(ScreenTexts.DONE, (button) -> { + this.client.setScreen(this.parent); + }).dimensions(this.width / 2 - 100, this.height / 6 + 168, 200, 20).build()); + } + + private void openModrinthPage(ButtonWidget button) { + this.client.setScreen(new ConfirmLinkScreen((confirmed) -> { + if (confirmed) { + Util.getOperatingSystem().open("http://aka.jonasjones.me/microcraft-modrinth"); + } + + this.client.setScreen(this); + }, "http://aka.jonasjones.me/microcraft-modrinth", true)); + } + + private void openGithubPage(ButtonWidget button) { + this.client.setScreen(new ConfirmLinkScreen((confirmed) -> { + if (confirmed) { + Util.getOperatingSystem().open("http://aka.jonasjones.me/microcraft-github"); + } + + this.client.setScreen(this); + }, "http://aka.jonasjones.me/microcraft-github", true)); + } + + private void openCurseforgePage(ButtonWidget button) { + this.client.setScreen(new ConfirmLinkScreen((confirmed) -> { + if (confirmed) { + Util.getOperatingSystem().open("http://aka.jonasjones.me/microcraft-curseforge"); + } + + this.client.setScreen(this); + }, "http://aka.jonasjones.me/microcraft-curseforge", true)); + } + + private void openHomepagePage(ButtonWidget button) { + this.client.setScreen(new ConfirmLinkScreen((confirmed) -> { + if (confirmed) { + Util.getOperatingSystem().open("https://jonasjones.me/microcraft"); + } + + this.client.setScreen(this); + }, "https://jonasjones.me/microcraft", true)); + } + public void render(MatrixStack matrices, int mouseX, int mouseY, float delta) { this.renderBackground(matrices); drawCenteredText(matrices, this.textRenderer, this.title, this.width / 2, 15, 16777215);