public void openMapFile(File file) {
		try {
			zoomLevel = 1;
			scene = Scene.loadScene(file, true);
			map = scene.getMap();
			map.tileWidth = tilewidth;
			map.tileHeight = tileheight;
			map.zoomWidth = tilewidth;
			map.zoomHeight = tileheight;
			map.hasBackground = true;
			setGraphicsBank(scene.getTileset());
			System.out.println("Scene caused tileset " + gfx.getFile()
					+ " to be loaded");

			mapPanel.setMap(map);

			setIgnoreEffectChanges(true);
			r.setValue((int) (scene.effect_rScale * 100));
			g.setValue((int) (scene.effect_gScale * 100));
			b.setValue((int) (scene.effect_bScale * 100));
			h.setValue((int) (scene.effect_hue * 360));
			setIgnoreEffectChanges(false);
			s.setValue((int) (scene.effect_sat * 100));

			openFile = file; /* TODO: bad variable name */
			mainFrame.validate();
			mapPanel.validate();
			mainFrame.repaint();
		} catch (IOException e) {
			System.out.println("Invalid Map File. " + e);
		}
	}