|  |  | @@ -1176,6 +1176,7 @@ document.addEventListener("DOMContentLoaded", () => { | 
		
	
		
			
			|  |  |  | prepareMenu(); | 
		
	
		
			
			|  |  |  | prepareEntities(); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | window.addEventListener("unload", () => saveScene("autosave")); | 
		
	
		
			
			|  |  |  | document.querySelector("#options-selected-entity").addEventListener("input", e => { | 
		
	
		
			
			|  |  |  | if (e.target.value == "none") { | 
		
	
		
			
			|  |  |  | deselect() | 
		
	
	
		
			
				|  |  | @@ -1353,8 +1354,14 @@ document.addEventListener("DOMContentLoaded", () => { | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | param = new URL(window.location.href).searchParams.get("scene"); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | if (param === null) | 
		
	
		
			
			|  |  |  | scenes["Default"](); | 
		
	
		
			
			|  |  |  | if (param === null) { | 
		
	
		
			
			|  |  |  | if (loadScene("autosave")) { | 
		
	
		
			
			|  |  |  | deleteScene("autosave"); | 
		
	
		
			
			|  |  |  | } else { | 
		
	
		
			
			|  |  |  | scenes["Default"](); | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  |  | 
		
	
		
			
			|  |  |  | else { | 
		
	
		
			
			|  |  |  | try { | 
		
	
		
			
			|  |  |  | const data = JSON.parse(b64DecodeUnicode(param)); | 
		
	
	
		
			
				|  |  | @@ -1739,26 +1746,38 @@ function setWorldHeight(oldHeight, newHeight) { | 
		
	
		
			
			|  |  |  | updateSizes(); | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function loadScene() { | 
		
	
		
			
			|  |  |  | function loadScene(name="default") { | 
		
	
		
			
			|  |  |  | try { | 
		
	
		
			
			|  |  |  | const data = JSON.parse(localStorage.getItem("macrovision-save")); | 
		
	
		
			
			|  |  |  | const data = JSON.parse(localStorage.getItem("macrovision-save-" + name)); | 
		
	
		
			
			|  |  |  | if (data === null) { | 
		
	
		
			
			|  |  |  | return false; | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | importScene(data); | 
		
	
		
			
			|  |  |  | return true; | 
		
	
		
			
			|  |  |  | } catch (err) { | 
		
	
		
			
			|  |  |  | alert("Something went wrong while loading (maybe you didn't have anything saved. Check the F12 console for the error.") | 
		
	
		
			
			|  |  |  | console.error(err); | 
		
	
		
			
			|  |  |  | return false; | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function saveScene() { | 
		
	
		
			
			|  |  |  | function saveScene(name="default") { | 
		
	
		
			
			|  |  |  | try { | 
		
	
		
			
			|  |  |  | const string = JSON.stringify(exportScene()); | 
		
	
		
			
			|  |  |  | localStorage.setItem("macrovision-save", string); | 
		
	
		
			
			|  |  |  | localStorage.setItem("macrovision-save-" + name, string); | 
		
	
		
			
			|  |  |  | } catch (err) { | 
		
	
		
			
			|  |  |  | alert("Something went wrong while saving (maybe I don't have localStorage permissions, or exporting failed). Check the F12 console for the error.") | 
		
	
		
			
			|  |  |  | console.error(err); | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function deleteScene(name="default") { | 
		
	
		
			
			|  |  |  | try { | 
		
	
		
			
			|  |  |  | localStorage.removeItem("macrovision-save-" + name) | 
		
	
		
			
			|  |  |  | } catch(err) { | 
		
	
		
			
			|  |  |  | console.error(err); | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | function exportScene() { | 
		
	
		
			
			|  |  |  | const results = {}; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
	
		
			
				|  |  | 
 |