Anpassungen an der Animation

This commit is contained in:
andreas
2015-01-17 13:00:51 +01:00
parent b0fba017b8
commit 37dd57cf11
8 changed files with 181 additions and 79 deletions
+63 -24
View File
@@ -29,6 +29,14 @@ public class ImageLoader {
imageFileName="de/heatup/resources/images/grid_1.png"; imageFileName="de/heatup/resources/images/grid_1.png";
break; break;
case 'm':
imageFileName="de/heatup/resources/images/grid_3.png";
break;
case 'n':
imageFileName="de/heatup/resources/images/grid_2.png";
break;
// Opponent images w - z with animation. // Opponent images w - z with animation.
case 'w': case 'w':
imageFileName="de/heatup/resources/images/opponent_f1.png"; imageFileName="de/heatup/resources/images/opponent_f1.png";
@@ -53,35 +61,66 @@ public class ImageLoader {
imageFileName="de/heatup/resources/images/little_green_guy_verysmall.png"; imageFileName="de/heatup/resources/images/little_green_guy_verysmall.png";
break; break;
case '0':
//imageFileName="de/heatup/resources/images/hardware/rectangular_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_1.png";
break;
case '1':
//imageFileName="de/heatup/resources/images/hardware/square_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_2.png";
break;
case '2':
//imageFileName="de/heatup/resources/images/hardware/rectangular_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_2.png";
break;
case '3':
//imageFileName="de/heatup/resources/images/hardware/square_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_2.png";
break;
case '4':
//imageFileName="de/heatup/resources/images/hardware/rectangular_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_1.png";
break;
case '5':
//imageFileName="de/heatup/resources/images/hardware/square_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_2.png";
break;
case '6':
//imageFileName="de/heatup/resources/images/hardware/rectangular_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_1.png";
break;
case '7':
//imageFileName="de/heatup/resources/images/hardware/square_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_2.png";
break;
case '8':
//imageFileName="de/heatup/resources/images/hardware/rectangular_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_1.png";
break;
case '9':
//imageFileName="de/heatup/resources/images/hardware/square_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/plain_chip_2.png";
break;
// Default images if no other is found // Default images if no other is found
default: default:
imageFileName="de/heatup/resources/images/dummy_image.png"; imageFileName="de/heatup/resources/images/dummy_image.png";
break; break;
} }
if (isHardware(key)) { // if (isHardware(key)) {
Random rand = new Random(); // Random rand = new Random();
switch (rand.nextInt(2)) { // switch (rand.nextInt(2)) {
case 0: // case 0:
//imageFileName="de/heatup/resources/images/hardware/rectangular_chip.jpg"; // //imageFileName="de/heatup/resources/images/hardware/rectangular_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/chip_rc_1.png"; // imageFileName="de/heatup/resources/images/hardware/plain_chip_1.png";
break; // break;
case 1: // case 1:
//imageFileName="de/heatup/resources/images/hardware/square_chip.jpg"; // //imageFileName="de/heatup/resources/images/hardware/square_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/chip_sq_1.png"; // imageFileName="de/heatup/resources/images/hardware/plain_chip_2.png";
break; // break;
case 2: // default:
//imageFileName="de/heatup/resources/images/hardware/square_chip.jpg"; // break;
imageFileName="de/heatup/resources/images/hardware/chip_rc_2.png"; // }
break; // }
case 3:
//imageFileName="de/heatup/resources/images/hardware/square_chip.jpg";
imageFileName="de/heatup/resources/images/hardware/chip_sq_2.png";
break;
default:
break;
}
}
BufferedImage loadedBufferedImage = null; BufferedImage loadedBufferedImage = null;
try { try {
+23 -8
View File
@@ -7,6 +7,7 @@ import javax.imageio.ImageIO;
import de.heatup.mapengine.CollisionHandler; import de.heatup.mapengine.CollisionHandler;
import de.heatup.ui.Main; import de.heatup.ui.Main;
import de.heatup.ui.PanelBuilder;
//TODO: Magische Nummern entfernen //TODO: Magische Nummern entfernen
@@ -47,25 +48,39 @@ public class Opponent extends Player {
@Override public void tick() { @Override public void tick() {
if ( ! this.loaded ) {
loadBufferedImage_to(2,'w');
loadBufferedImage_to(3,'x');
loadBufferedImage_to(4,'y');
loadBufferedImage_to(5,'z');
System.out.println("Loaded..");
this.loaded = true;
}
// Part for Animation // Part for Animation
this.tickCounter++; this.tickCounter++;
if ( (this.tickCounter%10) == 0 ) { if ( (this.tickCounter%10) == 0 ) {
this.tickCounter = 0; this.tickCounter = 0;
if ( ticker == 0 ) { if ( ticker == 0 ) {
super.setStaticObjectType('w'); // super.setImgChar('w');
super.loadBufferedImage(); // super.loadBufferedImage();
setImage(this.bf2);
ticker = 1; ticker = 1;
} else if ( ticker == 1 ) { } else if ( ticker == 1 ) {
super.setStaticObjectType('x'); // super.setImgChar('x');
super.loadBufferedImage(); // super.loadBufferedImage();
setImage(this.bf3);
ticker = 2; ticker = 2;
} else if ( ticker == 2 ) { } else if ( ticker == 2 ) {
super.setStaticObjectType('y'); // super.setImgChar('y');
super.loadBufferedImage(); // super.loadBufferedImage();
setImage(this.bf4);
ticker = 3; ticker = 3;
} else if ( ticker == 3 ) { } else if ( ticker == 3 ) {
super.setStaticObjectType('z'); // super.setImgChar('z');
super.loadBufferedImage(); // super.loadBufferedImage();
setImage(this.bf5);
ticker = 0; ticker = 0;
} }
} }
+89 -41
View File
@@ -6,6 +6,7 @@ import java.awt.Graphics2D;
import java.awt.Point; import java.awt.Point;
import java.awt.RenderingHints; import java.awt.RenderingHints;
import java.awt.image.BufferedImage; import java.awt.image.BufferedImage;
import java.util.Random;
import javax.swing.JComponent; import javax.swing.JComponent;
@@ -15,6 +16,14 @@ import de.heatup.ui.PanelBuilder;
public class StaticObject extends JComponent { public class StaticObject extends JComponent {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
protected BufferedImage bf1; protected BufferedImage bf1;
// TEST
protected BufferedImage bf2;
protected BufferedImage bf3;
protected BufferedImage bf4;
protected BufferedImage bf5;
protected boolean loaded = false;
protected Random rand;
// TEST
protected Graphics2D g2d; protected Graphics2D g2d;
private boolean doRescale = false; private boolean doRescale = false;
private double rescaleFactorX = 0.0; private double rescaleFactorX = 0.0;
@@ -25,11 +34,16 @@ public class StaticObject extends JComponent {
private int staticObjectWidth; private int staticObjectWidth;
private int staticObjectHeight; private int staticObjectHeight;
private int imgcounter = 0; private int imgcounter = 0;
private char imgChar;
// For object animation
private int tickCounter = 0;
private int ticker = 0;
public StaticObject(char staticObjectType, Point location, int staticObjectWidth, int staticObjectHeight) { public StaticObject(char staticObjectType, Point location, int staticObjectWidth, int staticObjectHeight) {
this.staticObjectType = staticObjectType; this.staticObjectType = staticObjectType;
this.staticObjectWidth = staticObjectWidth; this.staticObjectWidth = staticObjectWidth;
this.staticObjectHeight = staticObjectHeight; this.staticObjectHeight = staticObjectHeight;
this.setImgChar(staticObjectType);
loadBufferedImage(); loadBufferedImage();
setAutoBounds(location.x, location.y, staticObjectWidth, staticObjectHeight); setAutoBounds(location.x, location.y, staticObjectWidth, staticObjectHeight);
} }
@@ -38,6 +52,10 @@ public class StaticObject extends JComponent {
this(staticObjectType, location, Config.singleTilePixels, Config.singleTilePixels); this(staticObjectType, location, Config.singleTilePixels, Config.singleTilePixels);
} }
public void setImgChar(char c) {
this.imgChar = c;
}
public char getStaticObjectType() { public char getStaticObjectType() {
return this.staticObjectType; return this.staticObjectType;
} }
@@ -55,49 +73,67 @@ public class StaticObject extends JComponent {
} }
this.imgcounter++; // Part for Animation
if ( staticObjectType == '0' && this.imgcounter > 0 && this.imgcounter < 5 ) { this.tickCounter++;
System.out.println("hit 0"); if ( (this.tickCounter%10) == 0 ) {
staticObjectType = '2'; this.tickCounter = 0;
loadBufferedImage();
}
if ( staticObjectType == '2' && this.imgcounter > 5 && this.imgcounter < 10 ) { if ( this.staticObjectType == '0' || this.staticObjectType == '1' || this.staticObjectType == '2' || this.staticObjectType == '3' || this.staticObjectType == '4' || this.staticObjectType == '5' || this.staticObjectType == '6' || this.staticObjectType == '7' || this.staticObjectType == '8' || this.staticObjectType == '9') {
System.out.println("hit 2"); if ( ! this.loaded ) {
staticObjectType = '0'; loadBufferedImage_to(2,'0');
loadBufferedImage(); loadBufferedImage_to(3,'1');
} this.loaded = true;
if ( staticObjectType == '2' && this.imgcounter > 10 ) { }
staticObjectType = '0';
this.imgcounter=0; if ( ticker == 0 ) {
} // setImgChar('0');
// loadBufferedImage();
setImage(this.bf2);
ticker = 1;
} else if ( ticker == 1 ) {
// setImgChar('2');
// loadBufferedImage();
setImage(this.bf3);
ticker = 0;
}
}
if ( this.staticObjectType == '-') {
if ( ! this.loaded ) {
loadBufferedImage_to(2,'-');
loadBufferedImage_to(3,'m');
loadBufferedImage_to(4,'n');
this.loaded = true;
rand = new Random();
}
// this.imgcounter++; ticker = rand.nextInt(3);
// if ( staticObjectType == 'p' && this.imgcounter > 0 && this.imgcounter < 5 ) {
// System.out.println("hit 1"); if ( ticker == 0 ) {
// staticObjectType = 'p'; // setImgChar('0');
// loadBufferedImage(); // loadBufferedImage();
// } if ( staticObjectType == 'p' && this.imgcounter > 5 && this.imgcounter < 10 ) { setImage(this.bf2);
// System.out.println("hit 2"); ticker = 1;
// staticObjectType = 'q';
// loadBufferedImage(); }
// } else if ( ticker == 1 ) {
// if ( staticObjectType == 'q' && this.imgcounter > 10 && this.imgcounter < 15 ) { // setImgChar('2');
// System.out.println("hit 3"); // loadBufferedImage();
// staticObjectType = 's'; setImage(this.bf3);
// loadBufferedImage(); ticker = 2;
// } }
// if ( staticObjectType == 's' && this.imgcounter > 15 && this.imgcounter < 20 ) { else if ( ticker == 2 ) {
// System.out.println("hit 4"); // setImgChar('2');
// staticObjectType = 't'; // loadBufferedImage();
// loadBufferedImage(); setImage(this.bf4);
// } ticker = 0;
// if ( staticObjectType == 't' && this.imgcounter > 50) { }
// System.out.println("hit 5"); }
// this.imgcounter = 0;
// staticObjectType = 'p'; }
// }
/* /*
* Skalieren der Bilder wenn größer als Bounds * Skalieren der Bilder wenn größer als Bounds
@@ -112,7 +148,19 @@ public class StaticObject extends JComponent {
protected void loadBufferedImage() { protected void loadBufferedImage() {
this.bf1 = PanelBuilder.getImageLoader().getBufferedImage(this.staticObjectType); this.bf1 = PanelBuilder.getImageLoader().getBufferedImage(this.imgChar);
}
protected void loadBufferedImage_to(int n, char imgChar) {
if ( n == 2 ) {
this.bf2 = PanelBuilder.getImageLoader().getBufferedImage(imgChar);
} else if ( n == 3 ) {
this.bf3 = PanelBuilder.getImageLoader().getBufferedImage(imgChar);
} else if ( n == 4 ) {
this.bf4 = PanelBuilder.getImageLoader().getBufferedImage(imgChar);
} else if ( n == 5 ) {
this.bf5 = PanelBuilder.getImageLoader().getBufferedImage(imgChar);
}
} }
public void setImage(BufferedImage image) { public void setImage(BufferedImage image) {
Binary file not shown.

After

Width:  |  Height:  |  Size: 1002 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

+2 -2
View File
@@ -36,7 +36,7 @@ public class Main extends JFrame implements Runnable {
private boolean running = false; private boolean running = false;
private static boolean pause = false; private static boolean pause = false;
private boolean fullscreen = false; private boolean fullscreen = true;
private Thread thread; private Thread thread;
@@ -304,7 +304,7 @@ public class Main extends JFrame implements Runnable {
private void render() { private void render() {
// player01.repaint(); // player01.repaint();
// outerPanel.repaint(); // outerPanel.repaint();
// gamePanel.repaint(); gamePanel.repaint();
// actionPanel.repaint(); // actionPanel.repaint();
// statusPanel.repaint(); // statusPanel.repaint();
// this.repaint(); // this.repaint();