switched from SuperObject to Entity for objects
This commit is contained in:
@@ -4,7 +4,7 @@ import de.miaurizius.jgame2d.core.enums.GameState;
|
|||||||
import de.miaurizius.jgame2d.core.handlers.*;
|
import de.miaurizius.jgame2d.core.handlers.*;
|
||||||
import de.miaurizius.jgame2d.entity.Entity;
|
import de.miaurizius.jgame2d.entity.Entity;
|
||||||
import de.miaurizius.jgame2d.entity.Player;
|
import de.miaurizius.jgame2d.entity.Player;
|
||||||
import de.miaurizius.jgame2d.object.SuperObject;
|
import de.miaurizius.jgame2d.entity.objects.SuperObject;
|
||||||
import de.miaurizius.jgame2d.tile.TileManager;
|
import de.miaurizius.jgame2d.tile.TileManager;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
@@ -45,7 +45,7 @@ public class GamePanel extends JPanel implements Runnable {
|
|||||||
|
|
||||||
// ENTITY AND OBJECT
|
// ENTITY AND OBJECT
|
||||||
public Player player = new Player(this, keyH);
|
public Player player = new Player(this, keyH);
|
||||||
public SuperObject[] obj = new SuperObject[10];
|
public Entity[] obj = new Entity[10];
|
||||||
public Entity[] npc = new Entity[10];
|
public Entity[] npc = new Entity[10];
|
||||||
|
|
||||||
// GAME STATE
|
// GAME STATE
|
||||||
@@ -127,7 +127,7 @@ public class GamePanel extends JPanel implements Runnable {
|
|||||||
|
|
||||||
// GAME
|
// GAME
|
||||||
tileM.draw(graphics2d);
|
tileM.draw(graphics2d);
|
||||||
for (SuperObject superObject : obj) if (superObject != null) superObject.draw(graphics2d, this);
|
for (Entity superObject : obj) if (superObject != null) superObject.draw(graphics2d);
|
||||||
for(Entity npc : npc) if(npc != null) npc.draw(graphics2d);
|
for(Entity npc : npc) if(npc != null) npc.draw(graphics2d);
|
||||||
player.draw(graphics2d);
|
player.draw(graphics2d);
|
||||||
ui.draw(graphics2d);
|
ui.draw(graphics2d);
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package de.miaurizius.jgame2d.core;
|
package de.miaurizius.jgame2d.core;
|
||||||
|
|
||||||
import de.miaurizius.jgame2d.core.enums.GameState;
|
import de.miaurizius.jgame2d.core.enums.GameState;
|
||||||
import de.miaurizius.jgame2d.object.HeartObj;
|
import de.miaurizius.jgame2d.entity.Entity;
|
||||||
import de.miaurizius.jgame2d.object.SuperObject;
|
import de.miaurizius.jgame2d.entity.objects.HeartObj;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
@@ -22,7 +22,7 @@ public class UI {
|
|||||||
arial_80B = new Font("Arial", Font.BOLD, 80);
|
arial_80B = new Font("Arial", Font.BOLD, 80);
|
||||||
|
|
||||||
// CREATE HUD OBJECT
|
// CREATE HUD OBJECT
|
||||||
SuperObject heart = new HeartObj(panel);
|
Entity heart = new HeartObj(panel);
|
||||||
heart_full = heart.image;
|
heart_full = heart.image;
|
||||||
heart_half = heart.image2;
|
heart_half = heart.image2;
|
||||||
heart_blank = heart.image3;
|
heart_blank = heart.image3;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ package de.miaurizius.jgame2d.core.handlers;
|
|||||||
|
|
||||||
import de.miaurizius.jgame2d.core.GamePanel;
|
import de.miaurizius.jgame2d.core.GamePanel;
|
||||||
import de.miaurizius.jgame2d.entity.Entity;
|
import de.miaurizius.jgame2d.entity.Entity;
|
||||||
import de.miaurizius.jgame2d.object.SuperObject;
|
import de.miaurizius.jgame2d.entity.objects.SuperObject;
|
||||||
|
|
||||||
public class CollisionHandler {
|
public class CollisionHandler {
|
||||||
|
|
||||||
@@ -57,7 +57,7 @@ public class CollisionHandler {
|
|||||||
int index = 999;
|
int index = 999;
|
||||||
int c = -1;
|
int c = -1;
|
||||||
|
|
||||||
for(SuperObject obj : panel.obj) {
|
for(Entity obj : panel.obj) {
|
||||||
c++;
|
c++;
|
||||||
if (obj != null) {
|
if (obj != null) {
|
||||||
|
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ public class Entity {
|
|||||||
public int worldX, worldY;
|
public int worldX, worldY;
|
||||||
public int speed;
|
public int speed;
|
||||||
public BufferedImage up1, up2, down1, down2, left1, left2, right1, right2;
|
public BufferedImage up1, up2, down1, down2, left1, left2, right1, right2;
|
||||||
public Direction direction;
|
public Direction direction = Direction.DOWN;
|
||||||
public int spriteCounter = 0;
|
public int spriteCounter = 0;
|
||||||
public int spriteNum = 1;
|
public int spriteNum = 1;
|
||||||
public Rectangle solidArea = new Rectangle(0, 0, 48, 48);
|
public Rectangle solidArea = new Rectangle(0, 0, 48, 48);
|
||||||
@@ -27,6 +27,9 @@ public class Entity {
|
|||||||
public int actionLock = 0;
|
public int actionLock = 0;
|
||||||
String[] dialogue = new String[20];
|
String[] dialogue = new String[20];
|
||||||
int dialogueIndex = 0;
|
int dialogueIndex = 0;
|
||||||
|
public BufferedImage image, image2, image3;
|
||||||
|
public String name;
|
||||||
|
public boolean collision = false;
|
||||||
|
|
||||||
// CHARACTER STATUS
|
// CHARACTER STATUS
|
||||||
public int maxLife;
|
public int maxLife;
|
||||||
@@ -98,7 +101,7 @@ public class Entity {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
BufferedImage initEntitySprites(String name) {
|
public BufferedImage initEntitySprites(String name) {
|
||||||
try {
|
try {
|
||||||
return Utility.scaleImage(ImageIO.read(new FileInputStream("assets/" + name + ".png")), panel.tileSize, panel.tileSize);
|
return Utility.scaleImage(ImageIO.read(new FileInputStream("assets/" + name + ".png")), panel.tileSize, panel.tileSize);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
|||||||
14
src/de/miaurizius/jgame2d/entity/objects/BootsObj.java
Normal file
14
src/de/miaurizius/jgame2d/entity/objects/BootsObj.java
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
package de.miaurizius.jgame2d.entity.objects;
|
||||||
|
|
||||||
|
import de.miaurizius.jgame2d.core.GamePanel;
|
||||||
|
import de.miaurizius.jgame2d.entity.Entity;
|
||||||
|
|
||||||
|
public class BootsObj extends Entity {
|
||||||
|
|
||||||
|
public BootsObj(GamePanel panel) {
|
||||||
|
super(panel);
|
||||||
|
name = "boots";
|
||||||
|
down1 = initEntitySprites("objects/boots.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
14
src/de/miaurizius/jgame2d/entity/objects/ChestObj.java
Normal file
14
src/de/miaurizius/jgame2d/entity/objects/ChestObj.java
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
package de.miaurizius.jgame2d.entity.objects;
|
||||||
|
|
||||||
|
import de.miaurizius.jgame2d.core.GamePanel;
|
||||||
|
import de.miaurizius.jgame2d.entity.Entity;
|
||||||
|
|
||||||
|
public class ChestObj extends Entity {
|
||||||
|
|
||||||
|
public ChestObj(GamePanel panel) {
|
||||||
|
super(panel);
|
||||||
|
name = "chest";
|
||||||
|
down1 = initEntitySprites("objects/chest");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
15
src/de/miaurizius/jgame2d/entity/objects/DoorObj.java
Normal file
15
src/de/miaurizius/jgame2d/entity/objects/DoorObj.java
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
package de.miaurizius.jgame2d.entity.objects;
|
||||||
|
|
||||||
|
import de.miaurizius.jgame2d.core.GamePanel;
|
||||||
|
import de.miaurizius.jgame2d.entity.Entity;
|
||||||
|
|
||||||
|
public class DoorObj extends Entity {
|
||||||
|
|
||||||
|
public DoorObj(GamePanel panel) {
|
||||||
|
super(panel);
|
||||||
|
name = "door";
|
||||||
|
down1 = initEntitySprites("objects/door");
|
||||||
|
collision = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
16
src/de/miaurizius/jgame2d/entity/objects/HeartObj.java
Normal file
16
src/de/miaurizius/jgame2d/entity/objects/HeartObj.java
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
package de.miaurizius.jgame2d.entity.objects;
|
||||||
|
|
||||||
|
import de.miaurizius.jgame2d.core.GamePanel;
|
||||||
|
import de.miaurizius.jgame2d.entity.Entity;
|
||||||
|
|
||||||
|
public class HeartObj extends Entity {
|
||||||
|
|
||||||
|
public HeartObj(GamePanel panel) {
|
||||||
|
super(panel);
|
||||||
|
name = "heart";
|
||||||
|
image = initEntitySprites("objects/heart_full");
|
||||||
|
image2 = initEntitySprites("objects/heart_half");
|
||||||
|
image3 = initEntitySprites("objects/heart_blank");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
14
src/de/miaurizius/jgame2d/entity/objects/KeyObj.java
Normal file
14
src/de/miaurizius/jgame2d/entity/objects/KeyObj.java
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
package de.miaurizius.jgame2d.entity.objects;
|
||||||
|
|
||||||
|
import de.miaurizius.jgame2d.core.GamePanel;
|
||||||
|
import de.miaurizius.jgame2d.entity.Entity;
|
||||||
|
|
||||||
|
public class KeyObj extends Entity {
|
||||||
|
|
||||||
|
public KeyObj(GamePanel panel) {
|
||||||
|
super(panel);
|
||||||
|
name = "key";
|
||||||
|
down1 = initEntitySprites("objects/key");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,10 +1,11 @@
|
|||||||
package de.miaurizius.jgame2d.object;
|
package de.miaurizius.jgame2d.entity.objects;
|
||||||
|
|
||||||
import de.miaurizius.jgame2d.core.GamePanel;
|
import de.miaurizius.jgame2d.core.GamePanel;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
public class SuperObject {
|
public class SuperObject {
|
||||||
|
|
||||||
public BufferedImage image, image2, image3;
|
public BufferedImage image, image2, image3;
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
package de.miaurizius.jgame2d.object;
|
|
||||||
|
|
||||||
import de.miaurizius.jgame2d.core.Boot;
|
|
||||||
import de.miaurizius.jgame2d.core.GamePanel;
|
|
||||||
import de.miaurizius.jgame2d.core.Utility;
|
|
||||||
|
|
||||||
import javax.imageio.ImageIO;
|
|
||||||
import java.io.FileInputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.logging.Level;
|
|
||||||
|
|
||||||
public class BootsObj extends SuperObject {
|
|
||||||
|
|
||||||
GamePanel panel;
|
|
||||||
|
|
||||||
public BootsObj(GamePanel panel) {
|
|
||||||
this.panel = panel;
|
|
||||||
name = "boots";
|
|
||||||
try {
|
|
||||||
image = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/boots.png")), panel.tileSize, panel.tileSize);
|
|
||||||
} catch(IOException e) {
|
|
||||||
Boot.logger.log(Level.SEVERE, "Could not load image", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
package de.miaurizius.jgame2d.object;
|
|
||||||
|
|
||||||
import de.miaurizius.jgame2d.core.Boot;
|
|
||||||
import de.miaurizius.jgame2d.core.GamePanel;
|
|
||||||
import de.miaurizius.jgame2d.core.Utility;
|
|
||||||
|
|
||||||
import javax.imageio.ImageIO;
|
|
||||||
import java.io.FileInputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.logging.Level;
|
|
||||||
|
|
||||||
public class ChestObj extends SuperObject {
|
|
||||||
|
|
||||||
GamePanel panel;
|
|
||||||
|
|
||||||
public ChestObj(GamePanel panel) {
|
|
||||||
this.panel = panel;
|
|
||||||
name = "chest";
|
|
||||||
try {
|
|
||||||
image = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/chest.png")), panel.tileSize, panel.tileSize);
|
|
||||||
} catch(IOException e) {
|
|
||||||
Boot.logger.log(Level.SEVERE, "Could not load image", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
package de.miaurizius.jgame2d.object;
|
|
||||||
|
|
||||||
import de.miaurizius.jgame2d.core.Boot;
|
|
||||||
import de.miaurizius.jgame2d.core.GamePanel;
|
|
||||||
import de.miaurizius.jgame2d.core.Utility;
|
|
||||||
|
|
||||||
import javax.imageio.ImageIO;
|
|
||||||
import java.io.FileInputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.logging.Level;
|
|
||||||
|
|
||||||
public class DoorObj extends SuperObject {
|
|
||||||
|
|
||||||
GamePanel panel;
|
|
||||||
|
|
||||||
public DoorObj(GamePanel panel) {
|
|
||||||
this.panel = panel;
|
|
||||||
name = "door";
|
|
||||||
try {
|
|
||||||
image = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/door.png")), panel.tileSize, panel.tileSize);
|
|
||||||
} catch(IOException e) {
|
|
||||||
Boot.logger.log(Level.SEVERE, "Could not load image", e);
|
|
||||||
}
|
|
||||||
collision = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
package de.miaurizius.jgame2d.object;
|
|
||||||
|
|
||||||
import de.miaurizius.jgame2d.core.Boot;
|
|
||||||
import de.miaurizius.jgame2d.core.GamePanel;
|
|
||||||
import de.miaurizius.jgame2d.core.Utility;
|
|
||||||
|
|
||||||
import javax.imageio.ImageIO;
|
|
||||||
import java.io.FileInputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.logging.Level;
|
|
||||||
|
|
||||||
public class HeartObj extends SuperObject {
|
|
||||||
|
|
||||||
GamePanel panel;
|
|
||||||
|
|
||||||
public HeartObj(GamePanel panel) {
|
|
||||||
this.panel = panel;
|
|
||||||
name = "heart";
|
|
||||||
try {
|
|
||||||
image = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/heart_full.png")), panel.tileSize, panel.tileSize);
|
|
||||||
image2 = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/heart_half.png")), panel.tileSize, panel.tileSize);
|
|
||||||
image3 = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/heart_blank.png")), panel.tileSize, panel.tileSize);
|
|
||||||
} catch(IOException e) {
|
|
||||||
Boot.logger.log(Level.SEVERE, "Could not load image", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
package de.miaurizius.jgame2d.object;
|
|
||||||
|
|
||||||
import de.miaurizius.jgame2d.core.Boot;
|
|
||||||
import de.miaurizius.jgame2d.core.GamePanel;
|
|
||||||
import de.miaurizius.jgame2d.core.Utility;
|
|
||||||
|
|
||||||
import javax.imageio.ImageIO;
|
|
||||||
import java.io.FileInputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.logging.Level;
|
|
||||||
|
|
||||||
public class KeyObj extends SuperObject {
|
|
||||||
|
|
||||||
GamePanel panel;
|
|
||||||
|
|
||||||
public KeyObj(GamePanel panel) {
|
|
||||||
this.panel = panel;
|
|
||||||
name = "key";
|
|
||||||
try {
|
|
||||||
image = Utility.scaleImage(ImageIO.read(new FileInputStream("assets/objects/key.png")), panel.tileSize, panel.tileSize);
|
|
||||||
} catch(IOException e) {
|
|
||||||
Boot.logger.log(Level.SEVERE, "Could not load image", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user