From 1ba67ba2cce4e2259290af7385e0d8897c0e3373 Mon Sep 17 00:00:00 2001 From: dvorakmortonxd Date: Wed, 21 Oct 2026 13:25:59 +0200 Subject: [PATCH] just some code optimisations (moved a part of the functions from the paint function to the performaction, 1/2 commits, cuz im aiming for one commit an hour right now and I still didnt move all the needed stuff from the paint function) --- src/main/java/dev/dvorakmortonxd/Game.java | 51 +++++++++++----------- 1 file changed, 26 insertions(+), 25 deletions(-) diff --git a/src/main/java/dev/dvorakmortonxd/Game.java b/src/main/java/dev/dvorakmortonxd/Game.java index 7c6eeb7..6e3e313 100644 --- a/src/main/java/dev/dvorakmortonxd/Game.java +++ b/src/main/java/dev/dvorakmortonxd/Game.java @@ -11,8 +11,6 @@ import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.util.Random; - - public class Game extends JPanel implements ActionListener, KeyListener { // defines the window dimensions private final int windowWidth = 900; @@ -49,7 +47,7 @@ public class Game extends JPanel implements ActionListener, KeyListener { private BufferedImage landingPlatform; private BufferedImage sun; - // predefines all the player sprites (tabbed because its technically a part of the last comment lol) + // predefines all the player sprites (tabbed because its technically a part of the last comment lol) private BufferedImage playerForward0; private BufferedImage playerForward1; private BufferedImage playerForward2; @@ -71,8 +69,8 @@ public class Game extends JPanel implements ActionListener, KeyListener { private int planetSize = 128*3; private Rectangle planetCollision = new Rectangle(planetX, planetY, planetSize, planetSize); private boolean hoveringOverPlanet = false; - - + int hoverModifier; + double opacityModifier; private int playButtonX = 70; private int quitButtonX = 70; private int playButtonY = 210; @@ -130,8 +128,12 @@ public class Game extends JPanel implements ActionListener, KeyListener { playerBackward0 = ImageIO.read(new File("assets/player/playerSpriteBackward.png")); playerBackward1 = ImageIO.read(new File("assets/player/playerSpriteBackwardWalk0.png")); playerBackward2 = ImageIO.read(new File("assets/player/playerSpriteBackwardWalk1.png")); - - // player0 = ImageIO.read(new File("assets/player/playerSprite.png")); + playerLeft0 = ImageIO.read(new File("assets/player/playerSpriteLeft.png")); + playerLeft1 = ImageIO.read(new File("assets/player/playerSpriteLeftWalk0.png")); + playerLeft2 = ImageIO.read(new File("assets/player/playerSpriteLeftWalk1.png")); + playerRight0 = ImageIO.read(new File("assets/player/playerSpriteRight.png")); + playerRight1 = ImageIO.read(new File("assets/player/playerSpriteRightWalk0.png")); + playerRight2 = ImageIO.read(new File("assets/player/playerSpriteRightWalk1.png")); } catch (IOException e) { e.printStackTrace(); } @@ -144,8 +146,6 @@ public class Game extends JPanel implements ActionListener, KeyListener { timer.start(); } - - @Override public void actionPerformed(ActionEvent e) { // update step Random rand = new Random(); @@ -155,19 +155,23 @@ public class Game extends JPanel implements ActionListener, KeyListener { hoveringOverPlayButton = playButtonCollision.contains(mouseX, mouseY); hoveringOverQuitButton = quitButtonCollision.contains(mouseX, mouseY); if (hoverDirection == "up") { - hoverYOffset++; - if (opacityAnimation < 1.00f) { opacityAnimation += 0.01f; } - if (hoverYOffset > 90) { - hoverDirection = "down"; - } + hoverModifier = 1; + opacityModifier = 0.01f; + if (hoverYOffset > 90) { hoverDirection = "down"; } } else { - hoverYOffset--; - if (opacityAnimation > 0.01f) { opacityAnimation -= 0.01f; } - if (hoverYOffset <= 0) { - hoverDirection = "up"; - } + hoverModifier = -1; + opacityModifier = -0.01f; + if (hoverYOffset <= 0) { hoverDirection = "up"; } + } + hoverYOffset += hoverModifier; + if (opacityAnimation < 1.00f && opacityAnimation > 0.01f) { opacityAnimation += opacityModifier; } + if (level == 1) { + planetY = planetYPre + hoverYOffset / 6; + if (levelProgress) { + fadeAnimation += 20; + } + if (windowWidth - fadeAnimation <= 0) { level = 2; } } - if (level == 1) { planetY = planetYPre + hoverYOffset / 6; } if (level == 2) { rocketY = rocketYPre + hoverYOffset / 3; rocketExhaustY = rocketYPre + 150 + hoverYOffset / 2; detachTimer++;} repaint(); // triggers render } @@ -217,13 +221,10 @@ public class Game extends JPanel implements ActionListener, KeyListener { g.drawString("Quit (pretty lame)", quitButtonX +24, quitButtonY+67); } } - - if (levelProgress && (windowWidth-fadeAnimation)>0) { + if (levelProgress) { g.setColor(Color.BLACK); - g.fillRect(windowWidth-fadeAnimation, 0, windowWidth, windowHeight); - fadeAnimation += 20; + g.fillRect(windowWidth - fadeAnimation, 0, windowWidth, windowHeight); } - else if (levelProgress && (windowWidth-fadeAnimation)<=0) { level = 2; } } else if (level == 2) { if (detachTimer < 260) {