All pastes #192376 Raw Edit

Map

public java v1 · immutable
·published 2006-10-05 21:45 UTC
rendered paste body
import java.awt.Color;import java.awt.Graphics2D;import java.awt.Image;public class Map {	private static final int CLEAR = 0;	private static final int BLOCKED = 1;	private static final int CHEST = 2;	private static final int WIDTH = 20;	private static final int HEIGHT = 20;	public static final int TILE_SIZE = 25;	private int[][] data = new int[WIDTH][HEIGHT];	private Image wall;	private Image chest;	public Map(Image wall, Image chest) {this.wall = wall;this.chest = chest;		for (int y=0;y<HEIGHT;y++) {			data[0][y] = BLOCKED;			data[2][y] = BLOCKED;			data[7][y] = BLOCKED;			data[11][y] = BLOCKED;			data[WIDTH-1][y] = BLOCKED;		}		for (int x=0;x<WIDTH;x++) {				if ((x > 0) && (x < WIDTH-1)) {				data[x][10] = CLEAR;			}					if (x > 2) {				data[x][9] = BLOCKED;			}			data[x][0] = BLOCKED;			data[x][HEIGHT-1] = BLOCKED;		}				data[4][2] = CLEAR;		data[7][5] = CLEAR;		data[7][4] = CLEAR;		data[11][7] = CLEAR;		data[2][4] = CLEAR;		data[4][9] = CLEAR;		data[10][10] = CHEST;	}		public void paint(Graphics2D g) {		for (int x=0;x<WIDTH;x++) {			for (int y=0;y<HEIGHT;y++) {								if (data[x][y] == CHEST) {g.drawImage(chest, x*TILE_SIZE, y*TILE_SIZE, TILE_SIZE,TILE_SIZE, null);				}				if (data[x][y] == BLOCKED) {	g.drawImage(wall, x*TILE_SIZE, y*TILE_SIZE, TILE_SIZE,TILE_SIZE, null);				}							g.setColor(g.getColor().darker());				g.drawRect(x*TILE_SIZE,y*TILE_SIZE,TILE_SIZE,TILE_SIZE);			}		}	}		public boolean blocked(float x, float y) {		return data[(int) x][(int) y] == BLOCKED;	}}