added draw time and debug mode

This commit is contained in:
2025-11-28 14:48:57 +01:00
parent 521951129b
commit c00cb61e08
2 changed files with 30 additions and 24 deletions

View File

@@ -6,6 +6,8 @@ import de.miaurizius.jgame2d.tile.TileManager;
import javax.swing.*; import javax.swing.*;
import java.awt.*; import java.awt.*;
import java.util.logging.Level;
import java.util.logging.Logger;
public class GamePanel extends JPanel implements Runnable { public class GamePanel extends JPanel implements Runnable {
@@ -96,11 +98,28 @@ public class GamePanel extends JPanel implements Runnable {
super.paintComponent(graphics); super.paintComponent(graphics);
Graphics2D graphics2d = (Graphics2D) graphics; Graphics2D graphics2d = (Graphics2D) graphics;
// DEBUG
long drawStart = 0;
drawStart = System.nanoTime();
//Draw all components //Draw all components
tileM.draw(graphics2d); tileM.draw(graphics2d);
for (SuperObject superObject : obj) if (superObject != null) superObject.draw(graphics2d, this); for (SuperObject superObject : obj) if (superObject != null) superObject.draw(graphics2d, this);
player.draw(graphics2d); player.draw(graphics2d);
ui.draw(graphics2d); ui.draw(graphics2d);
long drawEnd = System.nanoTime();
long passed = drawEnd - drawStart;
// DEBUG
if(keyH.checkDrawTime) {
graphics2d.setColor(Color.white);
graphics2d.drawString("Draw Time: " + passed, 10, 400);
System.out.println("Draw Time: " + passed);
Logger.getLogger("DEBUG").log(Level.FINE, "Draw Time: " + passed);
}
// END
graphics.dispose(); graphics.dispose();
} }

View File

@@ -6,6 +6,8 @@ import java.awt.event.KeyListener;
public class KeyHandler implements KeyListener { public class KeyHandler implements KeyListener {
public boolean upPressed, downPressed, leftPressed, rightPressed; public boolean upPressed, downPressed, leftPressed, rightPressed;
// DEBUG
public boolean checkDrawTime = false;
@Override @Override
public void keyTyped(KeyEvent e) {} public void keyTyped(KeyEvent e) {}
@@ -14,18 +16,11 @@ public class KeyHandler implements KeyListener {
public void keyPressed(KeyEvent e) { public void keyPressed(KeyEvent e) {
int code = e.getKeyCode(); int code = e.getKeyCode();
switch (code) { switch (code) {
case KeyEvent.VK_W, KeyEvent.VK_UP: case KeyEvent.VK_W, KeyEvent.VK_UP -> upPressed = true;
upPressed = true; case KeyEvent.VK_S, KeyEvent.VK_DOWN -> downPressed = true;
break; case KeyEvent.VK_A, KeyEvent.VK_LEFT -> leftPressed = true;
case KeyEvent.VK_S, KeyEvent.VK_DOWN: case KeyEvent.VK_D, KeyEvent.VK_RIGHT -> rightPressed = true;
downPressed = true; case KeyEvent.VK_T -> checkDrawTime = !checkDrawTime;
break;
case KeyEvent.VK_A, KeyEvent.VK_LEFT:
leftPressed = true;
break;
case KeyEvent.VK_D, KeyEvent.VK_RIGHT:
rightPressed = true;
break;
} }
} }
@@ -33,18 +28,10 @@ public class KeyHandler implements KeyListener {
public void keyReleased(KeyEvent e) { public void keyReleased(KeyEvent e) {
int code = e.getKeyCode(); int code = e.getKeyCode();
switch (code) { switch (code) {
case KeyEvent.VK_W, KeyEvent.VK_UP: case KeyEvent.VK_W, KeyEvent.VK_UP -> upPressed = false;
upPressed = false; case KeyEvent.VK_S, KeyEvent.VK_DOWN -> downPressed = false;
break; case KeyEvent.VK_A, KeyEvent.VK_LEFT -> leftPressed = false;
case KeyEvent.VK_S, KeyEvent.VK_DOWN: case KeyEvent.VK_D, KeyEvent.VK_RIGHT -> rightPressed = false;
downPressed = false;
break;
case KeyEvent.VK_A, KeyEvent.VK_LEFT:
leftPressed = false;
break;
case KeyEvent.VK_D, KeyEvent.VK_RIGHT:
rightPressed = false;
break;
} }
} }
} }