Skip to content

Commit 8323f7b

Browse files
committed
Improvements: entities and console printing
Properly named NPC's so that can be printed Improved removing entities when leaving levels and prints to console as message. Improved console printing.
1 parent 004129b commit 8323f7b

File tree

9 files changed

+51
-9
lines changed

9 files changed

+51
-9
lines changed

src/com/redomar/game/Game.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ public void init() {
141141
// socketClient.sendData("ping".getBytes());
142142
loginPacket.writeData(getSocketClient());
143143

144-
game.setVendor(new Vendor(getLevel(), "g", 215, 215, 304, 543));
144+
game.setVendor(new Vendor(getLevel(), "Vendor", 215, 215, 304, 543));
145145
getLevel().addEntity(getVendor());
146146
}
147147

@@ -166,7 +166,7 @@ public void setMap(String Map_str) {
166166

167167
public static void npcSpawn() {
168168
if (isNpc() == true) {
169-
game.setDummy(new Dummy(Game.getLevel(), "h", 100, 150, 500, 543));
169+
game.setDummy(new Dummy(Game.getLevel(), "Dummy", 100, 150, 500, 543));
170170
game.level.addEntity(Game.getDummy());
171171
}
172172
}
@@ -300,14 +300,17 @@ public void render() {
300300
}
301301

302302
if (changeLevel == true) {
303+
print.print("Teleported into new world", PrintTypes.GAME);
303304
if (getMap() == 1) {
304305
setMap("/levels/water_level.png");
305-
setMap(2);
306+
getLevel().removeEntity(getDummy()); setNpc(false);
306307
getLevel().removeEntity(getVendor());
308+
setMap(2);
307309
} else if (getMap() == 2) {
308310
setMap("/levels/custom_level.png");
309-
setMap(1);
311+
getLevel().removeEntity(getDummy()); setNpc(false);
310312
getLevel().addEntity(getVendor());
313+
setMap(1);
311314
}
312315
changeLevel = false;
313316
}

src/com/redomar/game/InputHandler.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,6 @@ public void toggleKey(int keyCode, boolean isPressed) {
9595
// }
9696
if (Game.getMap() == 2) {
9797
Game.setChangeLevel(true);
98-
Game.getLevel().removeEntity(Game.getDummy());
9998
Game.setNpc(false);
10099
}
101100
}

src/com/redomar/game/entities/Dummy.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public class Dummy extends Mob {
2626

2727
public Dummy(LevelHandler level, String name, int x, int y, int shirtCol,
2828
int faceCol) {
29-
super(level, "h", x, y, speed, collisionBoders);
29+
super(level, name, x, y, speed, collisionBoders);
3030
this.faceCol = faceCol;
3131
this.shirtCol = shirtCol;
3232
this.colour = Colours.get(-1, 111, shirtCol, faceCol);

src/com/redomar/game/entities/Entity.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
public abstract class Entity {
77

88
protected double x, y;
9+
protected String name;
910
protected LevelHandler level;
1011

1112
public Entity(LevelHandler level) {
@@ -35,4 +36,12 @@ public double getY() {
3536
public void setY(int y) {
3637
this.y = y;
3738
}
39+
40+
public String getName() {
41+
return name;
42+
}
43+
44+
public void setName(String name) {
45+
this.name = name;
46+
}
3847
}

src/com/redomar/game/entities/Mob.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313

1414
public abstract class Mob extends Entity {
1515

16-
protected String name;
1716
protected Random random = new Random();
1817
protected double speed;
1918
protected int numSteps = 0;

src/com/redomar/game/entities/Vendor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public class Vendor extends Mob {
2727

2828
public Vendor(LevelHandler level, String name, int x, int y, int shirtCol,
2929
int faceCol) {
30-
super(level, "h", x, y, speed, collisionBoders);
30+
super(level, name, x, y, speed, collisionBoders);
3131
this.faceCol = faceCol;
3232
this.shirtCol = shirtCol;
3333
this.colour = Colours.get(-1, 111, shirtCol, faceCol);

src/com/redomar/game/level/LevelHandler.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
import com.redomar.game.level.tiles.Tile;
2020
import com.redomar.game.lib.utils.Vector2i;
2121
import com.redomar.game.net.packets.Packet01Disconnect;
22+
import com.redomar.game.script.PrintTypes;
23+
import com.redomar.game.script.Printing;
2224

2325
public class LevelHandler {
2426

@@ -29,6 +31,7 @@ public class LevelHandler {
2931
private List<Entity> entities_p = new ArrayList<Entity>();
3032
private String imagePath;
3133
private BufferedImage image;
34+
private Printing print;
3235

3336
private Comparator<Node> nodeSorter = new Comparator<Node>() {
3437

@@ -51,6 +54,8 @@ public LevelHandler(String imagePath) {
5154
this.height = 64;
5255
this.generateLevel();
5356
}
57+
58+
print = new Printing();
5459
}
5560

5661
private void loadLevelFromFile() {
@@ -179,6 +184,12 @@ public Tile getTile(int x, int y) {
179184

180185
public void addEntity(Entity entity) {
181186
this.getEntities().add(entity);
187+
print.print("Added "+entity.getName()+" Entity", PrintTypes.LEVEL);
188+
try {
189+
Thread.sleep(100);
190+
} catch (InterruptedException e) {
191+
e.printStackTrace();
192+
}
182193
}
183194

184195
public void addProjectileEntities(Entity entity) {
@@ -187,6 +198,12 @@ public void addProjectileEntities(Entity entity) {
187198

188199
public void removeEntity(Entity entity) {
189200
this.getEntities().remove(entity);
201+
print.print("Removed "+entity.getName()+" Entity", PrintTypes.LEVEL);
202+
try {
203+
Thread.sleep(100);
204+
} catch (InterruptedException e) {
205+
e.printStackTrace();
206+
}
190207
}
191208

192209
public void removeProjectileEntities(Entity entity) {

src/com/redomar/game/script/PrintTypes.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
public enum PrintTypes {
44

55
GAME,
6+
LEVEL,
67
MUSIC,
78
ERROR,
89
NETWORK,

src/com/redomar/game/script/Printing.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ public class Printing {
88
private PrintTypes type;
99
private Time time = new Time();
1010
private String message;
11+
private boolean redMode = false;
1112

1213
public Printing() {
1314

@@ -16,13 +17,18 @@ public Printing() {
1617
public void print(String message, PrintTypes type) {
1718
this.type = type;
1819
setMessage(message);
20+
readMessageType(type);
1921
printOut();
2022
}
2123

2224
private void printOut(){
2325
String msgTime = "[" + time.getTime() + "]";
2426
String msgType = "[" + type.toString() + "]";
25-
System.out.println(msgType + msgTime + getMessage());
27+
if(redMode == true){
28+
System.err.println(msgType + msgTime + getMessage());
29+
}else{
30+
System.out.println(msgType + msgTime + getMessage());
31+
}
2632
}
2733

2834
public String getMessage() {
@@ -32,4 +38,12 @@ public String getMessage() {
3238
public void setMessage(String message) {
3339
this.message = message;
3440
}
41+
42+
private void readMessageType(PrintTypes type){
43+
if(type == PrintTypes.LEVEL){
44+
this.redMode = true;
45+
} else {
46+
this.redMode = false;
47+
}
48+
}
3549
}

0 commit comments

Comments
 (0)