mirror of
https://github.com/jneug/zeichenmaschine.git
synced 2026-04-14 14:43:33 +02:00
60 lines
1.3 KiB
Java
60 lines
1.3 KiB
Java
|
|
import schule.ngb.zm.Layer;
|
|
|
|
import java.awt.Graphics2D;
|
|
import java.awt.Image;
|
|
|
|
public class Background extends Layer {
|
|
|
|
private static final int TILE_SIZE = 64;
|
|
|
|
private int tile_width;
|
|
|
|
private Image[] floor, plants;
|
|
|
|
private Image water;
|
|
|
|
public Background() {
|
|
super();
|
|
}
|
|
|
|
public Background( int width, int height ) {
|
|
super(width, height);
|
|
}
|
|
|
|
@Override
|
|
public void setSize( int width, int height ) {
|
|
super.setSize(width, height);
|
|
generateBackground();
|
|
}
|
|
|
|
public void generateBackground() {
|
|
tile_width = (int)(ceil(getWidth()/(double)TILE_SIZE));
|
|
floor = new Image[tile_width];
|
|
plants = new Image[tile_width];
|
|
|
|
for ( int i = 0; i < tile_width; i++ ) {
|
|
floor[i] = loadImage("tiles/floor"+random(1,8)+".png");
|
|
if( random(1,10) < 4 ) {
|
|
plants[i] = loadImage("tiles/plant"+random(1,14)+".png");
|
|
}
|
|
}
|
|
|
|
water = loadImage("tiles/water.png");
|
|
|
|
for ( int i = 0; i < getHeight(); i += TILE_SIZE ) {
|
|
for ( int j = 0; j < getWidth(); j += TILE_SIZE ) {
|
|
drawing.drawImage(water, j, i, null);
|
|
}
|
|
}
|
|
|
|
for ( int i = 0; i < tile_width; i++ ) {
|
|
if( plants[i] != null ) {
|
|
drawing.drawImage(plants[i], i*TILE_SIZE, getHeight() - (2*TILE_SIZE) + 10,TILE_SIZE,TILE_SIZE, null);
|
|
}
|
|
drawing.drawImage(floor[i], i*TILE_SIZE, getHeight() - TILE_SIZE,TILE_SIZE,TILE_SIZE, null);
|
|
}
|
|
}
|
|
|
|
}
|