private void startButtonActionPerformed() {
		startPressed = true;
		final LogArtisanWorkshopOptions options = script.options;
		options.status = "Setup finished";

		//Context.get().getScriptHandler().log.info("Mode: " + tabbedPane.getTitleAt(tabbedPane.getSelectedIndex()));
		String s = tabbedPane.getTitleAt(tabbedPane.getSelectedIndex());
		if (s.equals("Burial Armour")) {
			options.mode = Mode.BURIAL_ARMOUR;
			options.ingotType = (IngotType) burialIngotType.getSelectedItem();
			options.ingotGrade = (IngotGrade) burialIngotGrade.getSelectedItem();
			options.respectRepairPipes = burialRespectPipes.isSelected();
			options.respectAncestors = respectKill.isSelected();
			options.followInstructions = followInstructions.isSelected();
		} else if (s.equals("Ceremonial Swords")) {
			options.mode = Mode.CEREMONIAL_SWORDS;
			options.ingotType = (IngotType) swordIngotType.getSelectedItem();
			options.ingotGrade = IngotGrade.FOUR;
			options.respectRepairPipes = swordRespectPipes.isSelected();
		} else if (s.equals("Track room")) {
			options.mode = Mode.REPAIR_TRACK;
			options.ingotType = (IngotType) trackIngotType.getSelectedItem();
			script.ctx.controller.offer(new Task<LogArtisanWorkshop>(script) {
				@Override
				public void run() {
					if (!ctx.backpack.select().isEmpty()) {
						EventQueue.invokeLater(new Runnable() {
							@Override
							public void run() {
								try {
									new ErrorDialog("Backpack not empty", "It is recommended to start the script with an empty backpack, if the script messes up restart with an empty backpack");
								} catch (Exception ignored) {
								}
							}
						});
					}
				}
			});
		} else {
			script.ctx.controller.stop();
		}

		script.createTree();

		dispose();
	}