hi
habe wieder ein problem.
ich weiss nicht wie ich es schaffe dass die bilddateinamen aus einem array ausgelesen werden und das bild dargestellt wird.
hier der code:
(es reicht sich das grosse array und die paint methode anzugucken, dann wisst ihr schon was ich mein.)
vielen dank schon mal, aragnatsch
habe wieder ein problem.
ich weiss nicht wie ich es schaffe dass die bilddateinamen aus einem array ausgelesen werden und das bild dargestellt wird.
hier der code:
(es reicht sich das grosse array und die paint methode anzugucken, dann wisst ihr schon was ich mein.)
Code:
import java.applet.*;
import java.awt.*;
public class castleislands extends Applet implements Runnable {
private static final long serialVersionUID = 1L;
private Image dbImage;
private Graphics dbg;
Image tile01;
Image tile02;
int x_pos = 10;
int y_pos = 100;
int radius = 15;
int xtilepos = -150;
int ytilepos = -75;
int xtile = 0;
int ytile = 0;
boolean walknorth = false;
boolean walksouth = false;
boolean walkeast = false;
boolean walkwest = false;
int[][] map = {
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 },
{ 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01 } };
public void init() {
setSize(800, 600);
tile01 = getImage(getCodeBase(), "01.gif");
tile02 = getImage(getCodeBase(), "02.gif");
}
public void start() {
Thread th = new Thread(this);
th.start();
}
public void run() {
while (true) {
try {
Thread.sleep(40);
} catch (InterruptedException ex) {
}
}
}
public boolean keyDown(Event e, int key) {
if (key == Event.LEFT) {
walkwest = true;
} else if (key == Event.RIGHT) {
walkeast = true;
} else if (key == Event.UP) {
walknorth = true;
} else if (key == Event.DOWN) {
walksouth = true;
} else if (key == 32) {
System.out.println("BUMM!");
} else {
System.out.println(key);
}
return true;
}
public boolean keyUp(Event e,int key) {
if (key == Event.LEFT) {
walkwest = false;
} else if (key == Event.RIGHT) {
walkeast = false;
} else if (key == Event.UP) {
walknorth = false;
} else if (key == Event.DOWN) {
walksouth = false;
}
return true;
}
public void paint(Graphics g) {
for (int i1 = 0; i1 < 30; i1++) {
for (int i2 = 0; i2 < 20; i2++) {
if (ytile % 2 == 0) {
g.drawImage(map[xtile][ytile], xtile * 100 + xtilepos, ytile * 25
+ ytilepos, this);
} else {
g.drawImage(map[xtile][ytile], xtile * 100 + xtilepos + 50, ytile * 25
+ ytilepos, this);
}
xtile++;
}
xtile = 0;
ytile++;
}
xtile = 0;
ytile = 0;
g.setColor(Color.red);
g.fillOval(385, 285, 2 * radius, 2 * radius);
}
public void update(Graphics g) {
if (dbImage == null) {
dbImage = createImage(this.getSize().width, this.getSize().height);
dbg = dbImage.getGraphics();
}
dbg.setColor(getBackground());
dbg.fillRect(0, 0, this.getSize().width, this.getSize().height);
dbg.setColor(getForeground());
paint(dbg);
g.drawImage(dbImage, 0, 0, this);
}
public void stop() {
}
public void destroy() {
}
}
vielen dank schon mal, aragnatsch