public void drawLevel(Graphics g){
		for(int y = (int) ((Game.cameraLocation.y*scale)/tileHeight), yLoc = (int) -((Game.cameraLocation.y*scale)%tileHeight); y < height && yLoc < game.window.getHeight(); y++, yLoc += tileHeight){
			for(int x = (int) ((Game.cameraLocation.x*scale)/tileWidth), xLoc = (int) -((Game.cameraLocation.x*scale)%tileWidth); x < width && xLoc < game.window.getWidth(); x++, xLoc += tileWidth){
				if(x < 0 || y < 0) continue;
				if(terrain[x+y*width] != -1)
					tileset.renderTile(xLoc, yLoc, g, terrain[x+y*width]);
			}
		}
		for(Entity entity : entities.values()){
			entity.render(g, scale);
		}
	}