@Override public int height() { return super.height()+1; }
@Override public int height() { return super.height()+1; }
public int square() { return width() * height(); }
public int square() { return width() * height(); }
public static void fill( Level level, Rect rect, int value ) { fill( level, rect.left, rect.top, rect.width(), rect.height(), value ); }
public static void fill( Level level, Rect rect, int value ) { fill( level, rect.left, rect.top, rect.width(), rect.height(), value ); }
public static boolean[][] generate(Rect r){ return generate(r.width()+1, r.height()+1); }
public static void fillEllipse(Level level, Rect rect, int m, int value ) { fillEllipse( level, rect.left + m, rect.top + m, rect.width() - m*2, rect.height() - m*2, value ); }
public static void fill( Level level, Rect rect, int m, int value ) { fill( level, rect.left + m, rect.top + m, rect.width() - m*2, rect.height() - m*2, value ); }
public static void fill( Level level, Rect rect, int l, int t, int r, int b, int value ) { fill( level, rect.left + l, rect.top + t, rect.width() - (l + r), rect.height() - (t + b), value ); }
public static void fillEllipse(Level level, Rect rect, int value ) { fillEllipse( level, rect.left, rect.top, rect.width(), rect.height(), value ); }
public static void fill( Level level, Rect rect, int value ) { fill( level, rect.left, rect.top, rect.width() + 1, rect.height() + 1, value ); }
public static void fill( Level level, Rect rect, int m, int value ) { fill( level, rect.left + m, rect.top + m, rect.width() + 1 - m*2, rect.height() + 1 - m*2, value ); }
public static void fill( Level level, Rect rect, int l, int t, int r, int b, int value ) { fill( level, rect.left + l, rect.top + t, rect.width() + 1 - (l + r), rect.height() + 1 - (t + b), value ); }
public static void fillEllipse(Level level, Rect rect, int m, int value ) { fillEllipse( level, rect.left + m, rect.top + m, rect.width() - m*2, rect.height() - m*2, value ); }
@Override public void paint(Level level) { Painter.fill( level, this, Terrain.WALL ); Painter.fill( level, this, 1, Terrain.CHASM ); ArrayList<Rect> platforms = new ArrayList<>(); splitPlatforms( new Rect(left+2, top+2, right-2, bottom-2), platforms); for (Rect platform : platforms){ Painter.fill( level, platform.left, platform.top, platform.width()+1, platform.height()+1, Terrain.EMPTY_SP); } for (Door door : connected.values()) { door.set( Door.Type.REGULAR ); Painter.drawInside(level, this, door, 2, Terrain.EMPTY_SP); } }
@Override public void paint(Level level) { Painter.fill( level, this, Terrain.WALL ); Painter.fill( level, this, 1, Terrain.CHASM ); ArrayList<Rect> platforms = new ArrayList<>(); splitPlatforms( new Rect(left+2, top+2, right-2, bottom-2), platforms); for (Rect platform : platforms){ Painter.fill( level, platform.left, platform.top, platform.width()+1, platform.height()+1, Terrain.EMPTY_SP); } for (Door door : connected.values()) { door.set( Door.Type.REGULAR ); Painter.drawInside(level, this, door, 2, Terrain.EMPTY_SP); } }