Create subfolders for shot images and item images.

This commit is contained in:
Jan Philipp Timme 2014-11-06 19:40:51 +01:00
parent 8f4bad07a5
commit c3fb13e3eb
22 changed files with 42 additions and 23 deletions

View File

Before

Width:  |  Height:  |  Size: 318 B

After

Width:  |  Height:  |  Size: 318 B

View File

Before

Width:  |  Height:  |  Size: 308 B

After

Width:  |  Height:  |  Size: 308 B

View File

Before

Width:  |  Height:  |  Size: 310 B

After

Width:  |  Height:  |  Size: 310 B

View File

Before

Width:  |  Height:  |  Size: 310 B

After

Width:  |  Height:  |  Size: 310 B

View File

Before

Width:  |  Height:  |  Size: 375 B

After

Width:  |  Height:  |  Size: 375 B

View File

Before

Width:  |  Height:  |  Size: 251 B

After

Width:  |  Height:  |  Size: 251 B

View File

Before

Width:  |  Height:  |  Size: 243 B

After

Width:  |  Height:  |  Size: 243 B

View File

Before

Width:  |  Height:  |  Size: 253 B

After

Width:  |  Height:  |  Size: 253 B

View File

Before

Width:  |  Height:  |  Size: 240 B

After

Width:  |  Height:  |  Size: 240 B

View File

@ -6,7 +6,7 @@ public class TestItem1 extends Items{
public TestItem1(int x, int y) {
super(x, y);
this.setImage("images/Item.png");
this.setImage("images/items/item.png");
}
@Override

View File

@ -8,7 +8,7 @@ public class TestItem2 extends Items{
public TestItem2(int x, int y) {
super(x, y);
this.setImage("images/Item2.png");
this.setImage("images/items/item2.png");
}
@Override

View File

@ -8,7 +8,7 @@ public class TestItem3 extends Items{
public TestItem3(int x, int y) {
super(x, y);
this.setImage("images/Item3.png");
this.setImage("images/items/item3.png");
}
@Override

View File

@ -8,7 +8,7 @@ public class TestItem4 extends Items{
public TestItem4(int x, int y) {
super(x, y);
this.setImage("images/Item4.png");
this.setImage("images/items/item4.png");
}
@Override

View File

@ -17,6 +17,7 @@ public class Player extends ShootingEntity implements KeyboardListener {
public Player(int x, int y) {
super(x, y);
this.setImage("images/ship.png");
this.setPrimaryShotImage("images/shots/laser_blue.png");
this.setShootDelay(20);
this.setShootSpawn(50, 16);
this.setShootDirection(Shot.RIGHT);

View File

@ -13,7 +13,7 @@ public abstract class ShootingEntity extends LivingEntity {
private int shootDirection;
private int damageValue = 5;
private int shootSpeed;
private String primaryShotImage = "images/shot02.png";
private String primaryShotImage;
public ShootingEntity(int x, int y) {
super(x, y);
@ -34,18 +34,15 @@ public abstract class ShootingEntity extends LivingEntity {
}
}
/**
* Override this method in the actual enemy class to change the type of shot the entity creates.
*/
public void createShot() {
new Shot(
this.x + this.shootSpawnX,
this.y + this.shootSpawnY,
this.shootDirection,
this.shootSpeed,
this.damageValue,
this.primaryShotImage
);
this.x + this.shootSpawnX,
this.y + this.shootSpawnY,
this.shootDirection,
this.shootSpeed,
this.damageValue,
this.primaryShotImage
);
}
public void setCanShoot(boolean canShoot) {

View File

@ -12,7 +12,6 @@ public abstract class Enemy extends ShootingEntity {
this.name = "EnemyOne";
this.willShoot = r.nextBoolean();
this.setShootDirection(Shot.LEFT);
this.setPrimaryShotImage("images/shot03.png");
}
protected String name;

View File

@ -16,6 +16,7 @@ public class EnemyFour extends Enemy{
public EnemyFour(int x, int y, ArrayList<Point> points) {
super(x, y);
this.setImage("images/enemy01.png");
this.setPrimaryShotImage("images/shots/laser_yellow.png");
this.setShootSpeed(4);
this.setShootDelay(42);
this.setShootSpawn(-10, 10);

View File

@ -5,6 +5,7 @@ public class EnemyOne extends Enemy {
public EnemyOne(int x, int y) {
super(x, y);
this.setImage("images/nyancat.png");
this.setPrimaryShotImage("images/shots/laser_red.png");
this.setShootSpeed(2);
this.setShootDelay(42);
this.setShootSpawn(-8, 10);

View File

@ -20,6 +20,7 @@ public class EnemyThree extends Enemy{
super(x, y);
random = new Random();
this.setImage("images/enemy02.png");
this.setPrimaryShotImage("images/shots/laser_red.png");
this.setShootSpeed(4);
this.setShootDelay(42);
this.setShootSpawn(-10, 10);

View File

@ -10,6 +10,7 @@ public class EnemyTwo extends Enemy{
super(x, y);
Random random = new Random();
this.setImage("images/enemy02.png");
this.setPrimaryShotImage("images/shots/laser_green.png");
this.setShootSpeed(4);
this.setShootDelay(42);
this.setShootSpawn(-10, 10);

View File

@ -44,17 +44,29 @@ public class CodeEnvironment {
}
/**
* Return a list of files based on a given folder.
* Return a relative path list of files based on a given folder.
*/
private static String[] getFileListFromFolder(File folder) {
ArrayList<String> fileList = new ArrayList<String>();
String rootPath = folder.getAbsolutePath() + File.separator;
String[] folderContents = CodeEnvironment.getAbsoluteFileListFromFolder(folder);
for(String element : folderContents) {
fileList.add(element.replace(rootPath, ""));
}
return fileList.toArray(new String[fileList.size()]);
}
/**
* Recursively generate an absolute path list of elements within a folder.
*/
private static String[] getAbsoluteFileListFromFolder(File folder) {
ArrayList<String> fileList = new ArrayList<String>();
File[] folderContents = folder.listFiles();
for(File f : folderContents) {
if(f.isDirectory()) {
String[] filesInDirectory = CodeEnvironment.getFileListFromFolder(f);
String[] filesInDirectory = CodeEnvironment.getAbsoluteFileListFromFolder(f);
for(String entry : filesInDirectory) {
fileList.add(entry.replace(rootPath, ""));
fileList.add(entry);
}
} else {
fileList.add(f.toString());
@ -64,7 +76,7 @@ public class CodeEnvironment {
}
/**
* Returns a list of files that are contained within the current jar.
* Returns a relative path list of files that are contained within the current jar.
*/
private static String[] getFileListFromJar(URL jar) {
List<String> list = new ArrayList<String>();

View File

@ -45,11 +45,17 @@ public class Loader {
* Return the loaded BufferedImage by its relative filename.
*/
public static BufferedImage getBufferedImageByFilename(String filename) {
BufferedImage image = null;
if(CodeEnvironment.isJar()) {
return Loader.images.get(filename);
image = Loader.images.get(filename);
} else {
return Loader.images.get(filename.replace("/", File.separator));
image = Loader.images.get(filename.replace("/", File.separator));
}
if(image == null) {
System.err.println("Could not get BufferedImage by filename: '" + filename + "'");
}
return image;
}
/**
@ -95,7 +101,7 @@ public class Loader {
try {
BufferedImage image = ImageIO.read(Loader.class.getClassLoader().getResourceAsStream(filename));
Loader.images.put(filename, image);
} catch (IOException e) {
} catch (Exception e) {
System.err.println("Unable to load BufferedImage: " + filename);
e.printStackTrace();
}