Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ardarsen.isookoban;
- import ardarsen.isookoban.tiles.*;
- //deze 3 classes moet je geimporteerd hebben om het te laten werken.
- import nl.han.ica.oopg.engine.GameEngine;
- import nl.han.ica.oopg.objects.Sprite;
- import nl.han.ica.oopg.tile.TileMap;
- import nl.han.ica.oopg.tile.TileType;
- //import nl.han.ica.oopg.objects.TextObject;
- import nl.han.ica.oopg.view.View;
- import processing.core.PVector;
- public class IsOokOban extends GameEngine {
- public static String ASSETS_URL = "src/main/java/ardarsen/isookoban/assets/";
- public static int TILE_SIZE = 32;
- //private TileType[] tileTypes = new TileType[6];
- protected Level level;
- public static void main(String[] args) {
- IsOokOban soko = new IsOokOban();
- soko.runSketch();
- }
- @Override
- public void setupGame() {
- int worldWidth = 500;
- int worldHeight = 500;
- //TextObject to = new TextObject("Hello, World!", 40);
- //to.setForeColor(255, 255, 255, 255);
- //addGameObject(to, 100, 100);
- //-1 = no tile, 0 = floor, 1 = wall, 2 = pressure plate floor, 3 = hole, 4 = ice, 5 = filled hole
- int tilesMap[][] = {
- { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
- { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
- { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
- { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
- { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
- { 1, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1},
- { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
- { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
- { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
- { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1},
- { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}
- };
- initializeTileMap(tilesMap);
- Position[] boxLocations = {
- new Position(2, 2),
- new Position(3, 2)
- };
- Position playerStartPosition = new Position(1, 2);
- this.level = new Level(this, playerStartPosition, boxLocations);
- View view = new View(worldWidth, worldHeight);
- setView(view);
- size(worldWidth, worldHeight);
- }
- private void initializeTileMap(int tilesMap[][]) {
- Sprite floorSprite = new Sprite(IsOokOban.ASSETS_URL.concat("groundTile.png"));
- Sprite wallSprite = new Sprite(IsOokOban.ASSETS_URL.concat("wallTile.png"));
- Sprite pressurePlateSprite = new Sprite(IsOokOban.ASSETS_URL.concat("pressurePlate.png"));
- Sprite holeSprite = new Sprite(IsOokOban.ASSETS_URL.concat("hole.png"));
- Sprite iceSprite = new Sprite(IsOokOban.ASSETS_URL.concat("iceTile.png"));
- Sprite filledHoleSprite = new Sprite(IsOokOban.ASSETS_URL.concat("groundTile.png"));
- TileType<FloorTile> floorTileType = new TileType<>(FloorTile.class, floorSprite);
- TileType<WallTile> wallTileType = new TileType<>(WallTile.class, wallSprite);
- TileType<PressurePlateTile> pressurePlateTileType = new TileType<>(PressurePlateTile.class, pressurePlateSprite);
- TileType<HoleTile> holeTileType = new TileType<>(HoleTile.class, holeSprite);
- TileType<IceTile> iceTileType = new TileType<>(IceTile.class, iceSprite);
- TileType<FilledHoleTile> filledHoleTileType = new TileType<>(FilledHoleTile.class, filledHoleSprite);
- TileType[] tileTypes = new TileType[6];
- tileTypes[0] = floorTileType;
- tileTypes[1] = wallTileType;
- tileTypes[2] = pressurePlateTileType;
- tileTypes[3] = holeTileType;
- tileTypes[4] = iceTileType;
- tileTypes[5] = filledHoleTileType;
- this.setTileMap(new TileMap(IsOokOban.TILE_SIZE, tileTypes, tilesMap));
- }
- /*
- public TileType[] getTileTypes() {
- return this.tileTypes;
- }
- */
- /*
- public int tileTypeIndex(TileType tileTypeToCheck) {
- for (int i = 0; i < tileTypes.length; ++i) {
- if (tileTypes[i].getClass() == tileTypeToCheck.getClass()) return i;
- }
- return -1;
- }
- */
- @Override
- public void update() {
- if (this.level.levelComplete()) {
- System.out.println("level complete");
- }
- }
- }
- // CLASS 2 {tile}
- package ardarsen.isookoban.tiles;
- import ardarsen.isookoban.IsOokOban;
- import nl.han.ica.oopg.objects.Sprite;
- import nl.han.ica.oopg.tile.Tile;
- public class FloorTile extends Tile implements ITile {
- public FloorTile(Sprite sprite) {
- super(sprite);
- }
- @Override
- public boolean canBeWalkedOn() {
- return true;
- }
- @Override
- public boolean canSupportBox() {
- // TODO Auto-generated method stub
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement