diff --git a/HeatUp/src/de/heatup/objects/DynamicObject.java b/HeatUp/src/de/heatup/objects/DynamicObject.java new file mode 100644 index 0000000..2d98933 --- /dev/null +++ b/HeatUp/src/de/heatup/objects/DynamicObject.java @@ -0,0 +1,40 @@ +package de.heatup.objects; + +import java.awt.Graphics; +import java.awt.Graphics2D; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; +import javax.imageio.ImageIO; +import javax.swing.JComponent; + +/* + * Draft for dynamic objects + */ +public class DynamicObject extends JComponent{ + private static final long serialVersionUID = 1L; + //private Image image; + private BufferedImage bf1; + + public DynamicObject() { + + } + + public void paintComponent(Graphics g) { + Graphics2D g2d = (Graphics2D)g; + //this.image = Toolkit.getDefaultToolkit().getImage("src/de/heatup/resources/images/little_green_guy.png"); + try { + this.bf1 = ImageIO.read(new File("src/de/heatup/resources/images/little_green_guy.png")); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + //g2d.rotate(0.3, 10, 10); + //g2d.scale(1.0, 1.0); + //g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON); + g2d.drawImage(bf1, 0, 0, this); + //g2d.setStroke(new BasicStroke(1.0f)); + g2d.finalize(); + } +} diff --git a/HeatUp/src/de/heatup/objects/StaticObject.java b/HeatUp/src/de/heatup/objects/StaticObject.java new file mode 100644 index 0000000..09f52cc --- /dev/null +++ b/HeatUp/src/de/heatup/objects/StaticObject.java @@ -0,0 +1,46 @@ +package de.heatup.objects; + +import java.awt.Graphics; +import java.awt.Graphics2D; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; + +import javax.imageio.ImageIO; +import javax.swing.JComponent; + +/* + * Draft for static objects + */ +public class StaticObject extends JComponent { + + private static final long serialVersionUID = 1L; + //private Image image; + private BufferedImage bf1; + private Graphics2D g2d; + + public StaticObject() { + + } + + public void paintComponent(Graphics g) { + this.g2d = (Graphics2D)g; + //this.image = Toolkit.getDefaultToolkit().getImage("src/de/heatup/resources/images/little_green_guy.png"); + try { + this.bf1 = ImageIO.read(new File("src/de/heatup/resources/images/little_green_guy.png")); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + System.out.println(this.bf1.getWidth() + " " + this.bf1.getHeight()); + //g2d.rotate(0.2, 10, 10); + //g2d.scale(1.5, 1.5); + g2d.drawImage(bf1, 0, 0, this); + g2d.finalize(); + } + + public void reloadImage() { + + } +} + diff --git a/HeatUp/src/de/heatup/objects/logic.java b/HeatUp/src/de/heatup/objects/logic.java new file mode 100644 index 0000000..7dbe38f --- /dev/null +++ b/HeatUp/src/de/heatup/objects/logic.java @@ -0,0 +1,91 @@ +package de.heatup.objects; + +import java.util.Random; + + +/* + * Static class for opponent movement still quick n' dirty + */ +public class logic { + + public static void startMovement(final DynamicObject dynObj) { + Thread t = new Thread(new Runnable() { + @Override + public void run() { + int movex=0, movey=0; + int move = 0; + int dir; + int mx, my; + Random rand = new Random(); + while (true) { + if ( move == 0 ) { + + dir = rand.nextInt(20)+1; +// System.out.println("Entscheidung: " + dir); + if ( dir < 5 || dir > 15) { + movex = rand.nextInt(800)+1; + move = 2; + if (movex > 100) { move = -2; } + movey = 0; +// System.out.println("X " + move + " " + movex); + + } else { + movey = rand.nextInt(600)+1; + move = 1; + if (movey > 100) { move = -1; } + movex = 0; +// System.out.println("X " + move + " " + movex); + } + } + + if ( dynObj.getX() <= 0 && move == -2 ) { + move = move * -1; + } + if ( dynObj.getX() >= 752 && move == 2 ) { + move = move * -1; + } + if ( dynObj.getY() <= 0 && move == -1 ) { + move = move * -1; + } + if ( dynObj.getY() >= 552 && move == 1 ) { + move = move * -1; + } + +// System.out.println("Move " + move + " Movex " + movex + " Movey " + movey); + + if ( move == -2 && movex >= 0) { + movex -= 4; + mx=-4; + my=0; + } else if ( move == 2 && movex >= 0) { + movex -= 4; + mx=4; + my=0; + } else if (move == -1 && movey >= 0) { + movey -= 4; + my=-4; + mx=0; + } else if (move == 1 && movey >= 0) { + movey -= 4; + my=4; + mx=0; + } else { + move = 0; + mx=0; + my=0; + } + dynObj.setBounds(dynObj.getX()+mx, dynObj.getY()+my, 36, 64); + //System.out.println("x: " + dynObj.getX() + " y:" + dynObj.getY()); + dynObj.repaint(); + try { + Thread.sleep(10); + } catch (InterruptedException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + } + }); + t.start(); + } +} diff --git a/HeatUp/src/de/heatup/resources/images/little_black_guy.png b/HeatUp/src/de/heatup/resources/images/little_black_guy.png new file mode 100644 index 0000000..1debcce Binary files /dev/null and b/HeatUp/src/de/heatup/resources/images/little_black_guy.png differ diff --git a/HeatUp/src/de/heatup/resources/images/little_blue_guy.png b/HeatUp/src/de/heatup/resources/images/little_blue_guy.png new file mode 100644 index 0000000..5ff5d8e Binary files /dev/null and b/HeatUp/src/de/heatup/resources/images/little_blue_guy.png differ diff --git a/HeatUp/src/de/heatup/resources/images/little_green_guy.png b/HeatUp/src/de/heatup/resources/images/little_green_guy.png new file mode 100644 index 0000000..0a579e2 Binary files /dev/null and b/HeatUp/src/de/heatup/resources/images/little_green_guy.png differ