optimized object scaling

This commit is contained in:
2025-11-28 15:29:25 +01:00
parent a17ca8853c
commit 038fbb14db
6 changed files with 37 additions and 17 deletions

View File

@@ -14,35 +14,35 @@ public class AssetSetter {
} }
public void setObject() { public void setObject() {
panel.obj[0] = new KeyObj(); panel.obj[0] = new KeyObj(panel);
panel.obj[0].worldX = 23 * panel.tileSize; panel.obj[0].worldX = 23 * panel.tileSize;
panel.obj[0].worldY = 7 * panel.tileSize; panel.obj[0].worldY = 7 * panel.tileSize;
panel.obj[1] = new KeyObj(); panel.obj[1] = new KeyObj(panel);
panel.obj[1].worldX = 23 * panel.tileSize; panel.obj[1].worldX = 23 * panel.tileSize;
panel.obj[1].worldY = 40 * panel.tileSize; panel.obj[1].worldY = 40 * panel.tileSize;
panel.obj[2] = new KeyObj(); panel.obj[2] = new KeyObj(panel);
panel.obj[2].worldX = 37 * panel.tileSize; panel.obj[2].worldX = 37 * panel.tileSize;
panel.obj[2].worldY = 7 * panel.tileSize; panel.obj[2].worldY = 7 * panel.tileSize;
panel.obj[3] = new DoorObj(); panel.obj[3] = new DoorObj(panel);
panel.obj[3].worldX = 10 * panel.tileSize; panel.obj[3].worldX = 10 * panel.tileSize;
panel.obj[3].worldY = 11 * panel.tileSize; panel.obj[3].worldY = 11 * panel.tileSize;
panel.obj[4] = new DoorObj(); panel.obj[4] = new DoorObj(panel);
panel.obj[4].worldX = 8 * panel.tileSize; panel.obj[4].worldX = 8 * panel.tileSize;
panel.obj[4].worldY = 28 * panel.tileSize; panel.obj[4].worldY = 28 * panel.tileSize;
panel.obj[5] = new DoorObj(); panel.obj[5] = new DoorObj(panel);
panel.obj[5].worldX = 12 * panel.tileSize; panel.obj[5].worldX = 12 * panel.tileSize;
panel.obj[5].worldY = 22 * panel.tileSize; panel.obj[5].worldY = 22 * panel.tileSize;
panel.obj[6] = new ChestObj(); panel.obj[6] = new ChestObj(panel);
panel.obj[6].worldX = 10 * panel.tileSize; panel.obj[6].worldX = 10 * panel.tileSize;
panel.obj[6].worldY = 7 * panel.tileSize; panel.obj[6].worldY = 7 * panel.tileSize;
panel.obj[7] = new BootsObj(); panel.obj[7] = new BootsObj(panel);
panel.obj[7].worldX = 37 * panel.tileSize; panel.obj[7].worldX = 37 * panel.tileSize;
panel.obj[7].worldY = 42 * panel.tileSize; panel.obj[7].worldY = 42 * panel.tileSize;
} }

View File

@@ -23,7 +23,7 @@ public class UI {
this.panel = panel; this.panel = panel;
arial_40 = new Font("Arial", Font.PLAIN, 40); arial_40 = new Font("Arial", Font.PLAIN, 40);
arial_80B = new Font("Arial", Font.BOLD, 80); arial_80B = new Font("Arial", Font.BOLD, 80);
keyImage = new KeyObj().image; keyImage = new KeyObj(panel).image;
} }
public void showMessage(String text) { public void showMessage(String text) {

View File

@@ -1,6 +1,8 @@
package de.miaurizius.jgame2d.object; package de.miaurizius.jgame2d.object;
import de.miaurizius.jgame2d.core.Boot; import de.miaurizius.jgame2d.core.Boot;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.Utility;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
import java.io.FileInputStream; import java.io.FileInputStream;
@@ -9,10 +11,13 @@ import java.util.logging.Level;
public class BootsObj extends SuperObject { public class BootsObj extends SuperObject {
public BootsObj() { GamePanel panel;
public BootsObj(GamePanel panel) {
this.panel = panel;
name = "boots"; name = "boots";
try { try {
image = ImageIO.read(new FileInputStream("assets/objects/boots.png")); image = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/boots.png")), panel.tileSize, panel.tileSize);
} catch(IOException e) { } catch(IOException e) {
Boot.logger.log(Level.SEVERE, "Could not load image", e); Boot.logger.log(Level.SEVERE, "Could not load image", e);
} }

View File

@@ -1,6 +1,8 @@
package de.miaurizius.jgame2d.object; package de.miaurizius.jgame2d.object;
import de.miaurizius.jgame2d.core.Boot; import de.miaurizius.jgame2d.core.Boot;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.Utility;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
import java.io.FileInputStream; import java.io.FileInputStream;
@@ -9,10 +11,13 @@ import java.util.logging.Level;
public class ChestObj extends SuperObject { public class ChestObj extends SuperObject {
public ChestObj() { GamePanel panel;
public ChestObj(GamePanel panel) {
this.panel = panel;
name = "chest"; name = "chest";
try { try {
image = ImageIO.read(new FileInputStream("assets/objects/chest.png")); image = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/chest.png")), panel.tileSize, panel.tileSize);
} catch(IOException e) { } catch(IOException e) {
Boot.logger.log(Level.SEVERE, "Could not load image", e); Boot.logger.log(Level.SEVERE, "Could not load image", e);
} }

View File

@@ -1,6 +1,8 @@
package de.miaurizius.jgame2d.object; package de.miaurizius.jgame2d.object;
import de.miaurizius.jgame2d.core.Boot; import de.miaurizius.jgame2d.core.Boot;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.Utility;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
import java.io.FileInputStream; import java.io.FileInputStream;
@@ -9,10 +11,13 @@ import java.util.logging.Level;
public class DoorObj extends SuperObject { public class DoorObj extends SuperObject {
public DoorObj() { GamePanel panel;
public DoorObj(GamePanel panel) {
this.panel = panel;
name = "door"; name = "door";
try { try {
image = ImageIO.read(new FileInputStream("assets/objects/door.png")); image = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/door.png")), panel.tileSize, panel.tileSize);
} catch(IOException e) { } catch(IOException e) {
Boot.logger.log(Level.SEVERE, "Could not load image", e); Boot.logger.log(Level.SEVERE, "Could not load image", e);
} }

View File

@@ -1,6 +1,8 @@
package de.miaurizius.jgame2d.object; package de.miaurizius.jgame2d.object;
import de.miaurizius.jgame2d.core.Boot; import de.miaurizius.jgame2d.core.Boot;
import de.miaurizius.jgame2d.core.GamePanel;
import de.miaurizius.jgame2d.core.Utility;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
import java.io.FileInputStream; import java.io.FileInputStream;
@@ -9,10 +11,13 @@ import java.util.logging.Level;
public class KeyObj extends SuperObject { public class KeyObj extends SuperObject {
public KeyObj() { GamePanel panel;
public KeyObj(GamePanel panel) {
this.panel = panel;
name = "key"; name = "key";
try { try {
image = ImageIO.read(new FileInputStream("assets/objects/key.png")); image = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/key.png")), panel.tileSize, panel.tileSize);
} catch(IOException e) { } catch(IOException e) {
Boot.logger.log(Level.SEVERE, "Could not load image", e); Boot.logger.log(Level.SEVERE, "Could not load image", e);
} }