From 43e6fc59d6579ccefc24d46589a21c22c119f28a Mon Sep 17 00:00:00 2001 From: dvorakmortonxd Date: Tue, 20 Oct 2026 09:45:47 +0200 Subject: [PATCH] added a dissassembling animation of the rocket --- assets/landing_platform.png | Bin 0 -> 638 bytes assets/rocket_landing0.png | Bin 0 -> 533 bytes assets/rocket_landing0.png~ | Bin 0 -> 541 bytes assets/rocket_landing1.png | Bin 0 -> 638 bytes assets/rocket_landing1.png~ | Bin 0 -> 650 bytes assets/rocket_top.png-autosave.kra | Bin 0 -> 34018 bytes src/main/java/dev/dvorakmortonxd/Game.java | 41 ++++++++++++++++----- 7 files changed, 31 insertions(+), 10 deletions(-) create mode 100644 assets/landing_platform.png create mode 100644 assets/rocket_landing0.png create mode 100644 assets/rocket_landing0.png~ create mode 100644 assets/rocket_landing1.png create mode 100644 assets/rocket_landing1.png~ create mode 100644 assets/rocket_top.png-autosave.kra diff --git a/assets/landing_platform.png b/assets/landing_platform.png new file mode 100644 index 0000000000000000000000000000000000000000..e6e102f858dfc2b92625a6c398b498e04c6a1d11 GIT binary patch literal 638 zcmeAS@N?(olHy`uVBq!ia0vp^4L~f%!3HFs1d06sQk(@Ik;M!QddeWoSh3W;jDdm4 zz|+MsB*Xb_gtgxh1A(*a#4H$jbxSO{7IjVdk(u4+(#xQ@aP77SDlZp26;Svnxp3l| zPTAv+3v&)H>3;ij?{}NBOD4ZGn7SI27I5IA4%~N72(0XkZ+#jsJ8$(N1|Glk%{N(Y zFEMzrORx3z6T9grl`|R^39i`3tgx&0emdi>+}k>ZOPiV)ysX_Lw~9Kslt!$(l`eKK zvN!J9>1Pk0t<-#b=kD$Qwt?sSuj|yvZU27u;a&FA)3QUp3NnZv=zblX_jXZPh2+y` z%AWsz&)&P`Zu7&6t4s|=3xu!yWB4h=FO;t=_2>4pxl9EsIfP4DCu*d0@xSw%{mACL@ec7zdlf7TxxpHvE-Td1Z_wCRS z*doipAk(w*#GLP?obg7c=b3+Q}x7MGu>-nr|XHQ z6O$}{@GRl}_u2aS_cZ<<2VET=}Q+`}==RCr_Q@Vy(q-d3} U`2Ke@feDJi)78&qol`;+0B4OIyZ`_I literal 0 HcmV?d00001 diff --git a/assets/rocket_landing0.png b/assets/rocket_landing0.png new file mode 100644 index 0000000000000000000000000000000000000000..5ca44c1ce1c97b5b4046dcbece6660c44264d61b GIT binary patch literal 533 zcmV+w0_y#VP))Qd500009a7bBm001r{ z001r{0eGc9b^rhY$4Nv%R9HvtRzZ$~Fbt$C9C2tx$Sf*0E8epUU8Vy1T4$a!97hA)*_k*1K~HPodPf<8it{p=eZll z5wWmxhvbqFnjD||z7HY*7w~u7=-UM66rIph9?a zEIOC+OxK5az=u404vsIr=X^kiR@uX9a!% X0(Yh^y)lug00000NkvXXu0mjfJVn{I literal 0 HcmV?d00001 diff --git a/assets/rocket_landing0.png~ b/assets/rocket_landing0.png~ new file mode 100644 index 0000000000000000000000000000000000000000..4b497038d2bdc38a86548b6c8cb9462243a08ab3 GIT binary patch literal 541 zcmV+&0^g zakSbhNT`rFvSbBTNM#|0?;uD!KD3;Ca8(6q2xF3N@S&1w39a zO4c>6D;RAdR)HX(mJm-7Vg-1w)DYq&B1r%W@)qLyVM{Hv5h!U$P@{0+G&8xr{6aB@UHYN6M4!KAy;Ad^Q=1O?& zEa+4To>_!eroR}^D%(cz^g(-*ww&T0QHhTbVcDIMItb4Je!%gaiTy24!sbD_-vq1| zw^#(mT}C^-QAC7%7O&iPx)cCHkQ{d$<}?AzvUG4y(}Z3`^I#zS=Co4)hD5_Kbn`rS z<2WJ~I(JAe38BgHx$pZR0&oF;$4x%;vMLb~An}Whf%sqm2!RWQ#1>lT*G>^V5T_@46t9a?2W)7J7hF|o3quhnvBm~Ff{&>UzEGzXdk&4K1X fbD%l!PaJpyj^?H=t>_S}00000NkvXXu0mjfTMgu- literal 0 HcmV?d00001 diff --git a/assets/rocket_landing1.png b/assets/rocket_landing1.png new file mode 100644 index 0000000000000000000000000000000000000000..0834c516d9cc22cd85e007a99e7127698651d331 GIT binary patch literal 638 zcmV-^0)hRBP))Qd500009a7bBm001r{ z001r{0eGc9b^rhZFiAu~R9HvdmQ9YrFbsvus0WxO3+};g4nI5Y!Gh%+015gmj9ka5 zmO3@YtZaG0e+81S;7KqmM~&wOn{%$ zNs8@Sw`(%Fgp>mWFbbq6gz11@DLLWu%3&rtin4r~3s+wHqxE$((6{ zIv@w4Z!k@2l=)IwzSc>rF2Ht|NsywR8IGS_ZIoD+-up(D52iC!lQ z&s0mkYKWXo?`RL%wg^l%bZ^l$xA;dm@evR;r&G}i;(I_}aQb9Yf6I$<>!9eKz2kSD zhr@w$@yxA?TOhJH|DNZWAdnaNA9*>K>q?0elnluo085|O27x3JAb1!=40K)bD4zhF z6h*io3y2gHvG^(LQ!O|Gm-#W=Rw<@w%ZUU4qc;H1?M;dlpkr5#aA3(k(TRAh2~aXC z$uz|q!nG}kaFV!AcSJ~oh6oLIrL+YUYe_biSc4?tMN24$TMU8(2)-=2BiD86 zI1jo)L_)NQGoJC}(cRFu-30uuSE_En6JaTU`FF|p)u}p90l&wiOkoMDrqH7@rhuQ* zNs?`vw<(xhLdpRW&`U^55vBurt@IGmN<@|b7Sviu(~WH{A?*a-bK|VJR$mJz$b}MO z!jUQ-wNA7;GOKWEMUcDNg}?c6N-^lu{dyh+7PJ}><}%VmnbY^<($nKYNU<9=A{I5% z1a&}4h>nZCmx@@pAO$elH8L{3){RmTNq(LHZ#)USGBB=;rH0J48zJY!0zY)*7CX`E zWZ_EH;1!EV*|bG}$hL{#VneqkU2==Rg%fWfqU3bST0wjd=nGDtOzN{d3tI<8_XOsf zM=S&LDU-UrS%gDA#4Ea-Rs}!^lhYN)SW3Y4dL8gPpU+$iHxCEmKX*AjL6K;`-w&6| zWjGuTjK!6kCAWmgw}7A`BAe>COmo&>}*UT`F|}*<2PIORPbn@S-J@lAA3A00_QK0&dgkKtDWl ze=5U^`m?xY1-*!HDvitWzdE1=C56oHiNvRb2HWbL_AmCRybRHY0opvO=~GLOZ~1QV k-IC8I_oo7%3iPPJ9o5t`qv@!ZM*si-07*qoM6N<$f+Ig1j{pDw literal 0 HcmV?d00001 diff --git a/assets/rocket_top.png-autosave.kra b/assets/rocket_top.png-autosave.kra new file mode 100644 index 0000000000000000000000000000000000000000..2a0d7baaef9b8d90da2cb916cc277fa5eea29f19 GIT binary patch literal 34018 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 literal 0 HcmV?d00001 diff --git a/src/main/java/dev/dvorakmortonxd/Game.java b/src/main/java/dev/dvorakmortonxd/Game.java index 08facee..a59d0d4 100644 --- a/src/main/java/dev/dvorakmortonxd/Game.java +++ b/src/main/java/dev/dvorakmortonxd/Game.java @@ -34,8 +34,20 @@ public class Game extends JPanel implements ActionListener, KeyListener { private int mouseX, mouseY; + //defineds all the image assets used + private BufferedImage rocket; + private BufferedImage rocketTop; + private BufferedImage rocketBottom; + private BufferedImage rocketLanding0; + private BufferedImage rocketLanding1; + private BufferedImage rocketExhaust; + private BufferedImage parachute; + private BufferedImage button; + private BufferedImage buttonH; private BufferedImage planetZX311; private BufferedImage planetZX311H; + private BufferedImage landingPlatform; + private int hoverYOffset = 0; private String hoverDirection = "up"; // this makes the cool floating animation on the main menu private int planetX = 450; @@ -45,8 +57,7 @@ public class Game extends JPanel implements ActionListener, KeyListener { private Rectangle planetCollision = new Rectangle(planetX, planetY, planetSize, planetSize); private boolean hoveringOverPlanet = false; - private BufferedImage button; - private BufferedImage buttonH; + private int playButtonX = 70; private int quitButtonX = 70; private int playButtonY = 210; @@ -58,11 +69,6 @@ public class Game extends JPanel implements ActionListener, KeyListener { private boolean hoveringOverPlayButton = false; private boolean hoveringOverQuitButton = false; - private BufferedImage rocket; - private BufferedImage rocketTop; - private BufferedImage rocketBottom; - private BufferedImage rocketExhaust; - private BufferedImage parachute; private int rocketYPre = windowHeight/2-125; private int rocketY = windowHeight/2-125; private int rocketExhaustY = rocketY; @@ -99,6 +105,9 @@ public class Game extends JPanel implements ActionListener, KeyListener { rocketTop = ImageIO.read(new File("assets/rocket_top.png")); rocketBottom = ImageIO.read(new File("assets/rocket_bottom.png")); parachute = ImageIO.read(new File("assets/parachute.png")); + landingPlatform = ImageIO.read(new File("assets/landing_platform.png")); + rocketLanding0 = ImageIO.read(new File("assets/rocket_landing0.png")); + rocketLanding1 = ImageIO.read(new File("assets/rocket_landing1.png")); } catch (IOException e) { e.printStackTrace(); } @@ -217,13 +226,25 @@ public class Game extends JPanel implements ActionListener, KeyListener { g.fillOval(starX[i] - starSize, starY[i] - starSize, starSize, starSize); } } - if ((rocketY - hoverYOffset / 3 + (detachTimer-321)/5) <= 300){ + if ((rocketYPre + (detachTimer-321)/5) <= 300){ g.drawImage(parachute, windowWidth / 2 - 73, rocketY - hoverYOffset / 3 - 42 + (detachTimer-321)/5, 147, 90, this); g.drawImage(rocketTop, windowWidth / 2 - 73, rocketY - hoverYOffset / 3 + (detachTimer-321)/5, 147, 84, this); } else { + // (windowHeight-210) is the desired height + if ((1100-(detachTimer / 2 )) >= 340) { + g.drawImage(landingPlatform, 0, 1100-(detachTimer/2), windowWidth, windowWidth/128*30, this); + } else { + g.drawImage(landingPlatform, 0, 340, windowWidth, windowWidth/128*30, this); + } g.drawImage(parachute, windowWidth / 2 - 73, 258, 147, 90, this); - g.drawImage(rocketTop, windowWidth / 2 - 73, 300, 147, 84, this); + if (detachTimer <= 1200) { + g.drawImage(rocketTop, windowWidth / 2 - 73, 300, 147, 84, this); + } else if (1400 > detachTimer && detachTimer > 1200) { + g.drawImage(rocketLanding0, windowWidth / 2 - 73, 300, 147, 111, this); + } else { + g.drawImage(rocketLanding1, windowWidth / 2 - 73, 300, 147, 111, this); + } } } else { @@ -239,7 +260,6 @@ public class Game extends JPanel implements ActionListener, KeyListener { rocketBottomY = rocketY - hoverYOffset / 3 + 64 + (detachTimer - 260) * 2; g2.rotate(Math.toRadians((detachTimer-260)/3), rocketBottomX + 147 / 2, rocketBottomY + 171 / 2); g2.drawImage(rocketBottom, rocketBottomX, rocketBottomY, 147, 171, this); - } if (levelProgress) { @@ -255,6 +275,7 @@ public class Game extends JPanel implements ActionListener, KeyListener { public void keyPressed(KeyEvent e) { // input switch (e.getKeyCode()) { case KeyEvent.VK_ESCAPE -> System.exit(0); + case KeyEvent.VK_SPACE -> System.out.println(1100-(detachTimer/2)); } }