public CaveGenerator(int width, int height, String name, double fillPercentage, int smoothness, Quinoa quinoa) { header = new RegionHeader(name); region = new Region(width, height); header.setRegion(region); entrance = new RegionExit(width / 2, height / 2, 0, 0, "", ExitDecorator.UP_STAIR); exit = new RegionExit(width / 2, (height / 2) + 1, 0, 0, "", ExitDecorator.DOWN_STAIR); header.getExits().Add(entrance); header.getExits().Add(exit); region.setLightingModel(LightingModel.CAVE); this.quinoa = quinoa; this.fillPercentage = fillPercentage; this.smoothness = smoothness; chambers = new List<Chamber>(); //fill with solid rock for (int x = 0; x < width; x++) { for (int y = 0; y < height; y++) { region.setTerrain(x, y, new Terrain()); region.getTerrain(x, y).setCode(TerrainCode.ROCK); } } }
public void followExit(RegionExit exit) { removePlayerFromRegion(); quinoa.getMap().changeCurrentRegion(exit.getDestinationRegionID()); spawnMonsters(); if(quinoa.getCurrentRegionHeader().regionIsLoaded()) { foreach(Monster tempMon in quinoa.getCurrentRegionHeader().getRegion().getMonsters()) { MonsterActionManager.updateRole(tempMon, quinoa); } } insertPlayerInRegion(exit.getDx(),exit.getDy()); }