less copy protection, more size visualization
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

288 lines
10 KiB

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Macrovision</title>
  6. <link rel="stylesheet" href="reset.css">
  7. <link rel="stylesheet" href="macrovision.css">
  8. <script src="https://kit.fontawesome.com/10a16c6083.js" crossorigin="anonymous"></script>
  9. <script src="math.min.js"></script>
  10. <script src="presets/characters.js"></script>
  11. <script src="presets/real-buildings.js"></script>
  12. <script src="presets/real-terrain.js"></script>
  13. <script src="presets/landmarks.js"></script>
  14. <script src="presets/species.js"></script>
  15. <script src="presets/objects.js"></script>
  16. <script src="presets/fiction.js"></script>
  17. <script src="presets/food.js"></script>
  18. <script src="presets/naturals.js"></script>
  19. <script src="presets/vehicles.js"></script>
  20. <script src="presets/buildings.js"></script>
  21. <script src="presets/clothing.js"></script>
  22. <script src="presets/pokemon.js"></script>
  23. <script src="presets/scenes.js"></script>
  24. <script src="presets/creatures.js"></script>
  25. <script src="presets/plants.js"></script>
  26. <script src="presets/furniture.js"></script>
  27. <script src="media/attribution.js"></script>
  28. <script src="macrovision.js"></script>
  29. <meta name="viewport" content="width=device-width, initial-scale=0.75, maximum-scale=0.75, user-scalable=0" />
  30. <meta name="theme-color" content="#000000" />
  31. <meta name="description" content="How big are they anyway?" />
  32. <meta property="og:title" content="Macrovision" />
  33. <meta property="og:description" content="How big are they anyway?" />
  34. <meta property="og:image" content="https://crux.sexy/images/macrovision.png" />
  35. <link rel="icon" href="https://crux.sexy/images/macrovision.ico">
  36. <script async defer data-website-id="88057238-3ad6-483f-9c3e-8d1440450bcc" src="https://umami.crux.best/umami.js" data-domains="macrovision.crux.sexy,www.macrovision.crux.sexy"></script>
  37. </head>
  38. <body class="toggle-bottom-name toggle-top-name highlight-color">
  39. <script type="text/javascript">
  40. window.onerror = function(msg, url, line, col, error) {
  41. if (firsterror) {
  42. firsterror = false;
  43. alert("An error occured. If you're on a computer, hit F12 to open the developer tools, click the Console tab, and send the red text to chemicalcrux. If you're on mobile, screenshot this instead:\n\n" + msg + "\n" + url + "\n" + "line: " + line + "\n" + "col: " + col + "\nerror: " + error);
  44. umami.trackEvent(line + ":" + col + " " + msg, "error")
  45. }
  46. }
  47. window.onunhandledrejection = function(e) {
  48. if (firsterror) {
  49. firsterror = false;
  50. alert("An error occured. If you're on a computer, hit F12 to open the developer tools, click the Console tab, and send the red text to chemicalcrux. If you're on mobile, screenshot this instead:\n\n" + e.reason);
  51. umami.trackEvent(line + ":" + col + " " + msg, "error")
  52. }
  53. }
  54. </script>
  55. <input hidden id="file-upload-picker" type='file' multiple>
  56. <div class="popout-menu" id="menu-menu">
  57. </div>
  58. <div class="popout-menu" id="scene-menu">
  59. </div>
  60. <div class="popout-menu" id="settings-menu">
  61. </div>
  62. <div class="popout-menu" id="filters-menu">
  63. <span class="menubar-group" id="search">
  64. <input id="search-box" type="text" placeholder="Search by name">
  65. </span>
  66. </div>
  67. <div class="popout-menu" id="info-menu">
  68. <a class="info-holder" target="_blank" href="https://www.notion.so/Macrovision-5c7f9377424743358ddf6db5671f439e">
  69. <i class="fas fa-question-circle"></i>
  70. <div>Help</div>
  71. </a>
  72. <a class="info-holder" target="_blank" href="https://www.notion.so/Submission-Process-311ca662c3d04776b16d4b8fb6ccce61">
  73. <i class="fas fa-paper-plane"></i>
  74. <div>Submit Your Character</div>
  75. </a>
  76. <a class="info-holder" target="_blank" href="https://ko-fi.com/P5P5ACDA">
  77. <i class="fas fa-donate"></i>
  78. <div>Donate</div>
  79. </a>
  80. </div>
  81. <div id="menubar">
  82. <span class="menubar-group">
  83. <button id="toggle-menu">
  84. <div>Menu</div>
  85. <i class="fas fa-bars"></i>
  86. </button>
  87. <button id="toggle-scene">
  88. <div>Scene</div>
  89. <i class="fas fa-map"></i>
  90. </button>
  91. <button id="toggle-settings">
  92. <div>Settings</div>
  93. <i class="fas fa-cogs"></i>
  94. </button>
  95. <button id="toggle-filters">
  96. <div>Filters</div>
  97. <i class="fas fa-search"></i>
  98. </button>
  99. <button id="toggle-info">
  100. <div>Help</div>
  101. <i class="fas fa-question-circle"></i>
  102. </button>
  103. </span>
  104. <span class="menubar-group" id="spawners">
  105. </span>
  106. <span class="menubar-group">
  107. <button id="copy-screenshot">
  108. <div>Screenshot</div>
  109. <i class="fas fa-camera"></i>
  110. </button>
  111. <button id="save-screenshot">
  112. <div>Save</div>
  113. <i class="fas fa-download"></i>
  114. </button>
  115. <button id="open-screenshot">
  116. <div>Open Tab</div>
  117. <i class="fas fa-external-link-alt"></i>
  118. </button>
  119. </span>
  120. </div>
  121. <div id="main-area">
  122. <div id="options" class="">
  123. <a class="submit-button" target="_blank" href="https://www.notion.so/Submission-Process-311ca662c3d04776b16d4b8fb6ccce61">
  124. <div>Submit Your Character!</div>
  125. </a>
  126. <h3 class="options-header">World Info</h3>
  127. <div id="options-world">
  128. <div class="options-label">
  129. World height
  130. </div>
  131. <div class="options-row">
  132. <input class="options-field-numeric" id="options-height-value" value="10">
  133. <select class="options-field-unit" id="options-height-unit">
  134. </select>
  135. </div>
  136. <div class="options-row">
  137. <button class="options-button" id="options-world-fit">Fit to entities</button>
  138. </div>
  139. <div class="options-label">
  140. Center
  141. </div>
  142. <div class="options-two-buttons" id="options-reset-pos">
  143. <button id="options-reset-pos-x"><i class="fas fa-arrows-alt-h"></i></button>
  144. <button id="options-reset-pos-y"><i class="fas fa-arrows-alt-v"></i></button>
  145. </div>
  146. </div>
  147. <div class="options-label">
  148. Selection:
  149. </div>
  150. <div class="options-row">
  151. <select id="options-selected-entity" class="options-selector">
  152. <option id="options-selected-entity-none">None</option>
  153. </select>
  154. </div>
  155. <div class="options-row">
  156. <button id="delete-entity" style="display: none">
  157. <i class="fas fa-trash-alt symbol-button"></i>
  158. <span class="sr-only">Delete Entity</span>
  159. </button>
  160. </div>
  161. <h3 class="options-header" id="entity-category-header">Entity</h3>
  162. <div class="options-category" id="entity-category">
  163. <span id="options-entity">
  164. </span>
  165. <div class="options-label" id="options-label-form">
  166. Form
  167. </div>
  168. <select class="options-selector" id="entity-form"></select>
  169. <div class="options-label">
  170. View
  171. </div>
  172. <select class="options-selector" id="entity-view"></select>
  173. <div class="options-label">
  174. Ordering
  175. </div>
  176. <div class="options-two-buttons" id="options-ordering">
  177. <button id="options-order-back"><i class="fas fa-sort-down"></i></button>
  178. <div id="options-order-display"></div>
  179. <button id="options-order-forward"><i class="fas fa-sort-up"></i></button>
  180. </div>
  181. <div class="options-row">
  182. <button class="options-button" id="options-flip">Flip</button>
  183. </div>
  184. <div class="options-label">
  185. Rotation
  186. </div>
  187. <div class="options-two-buttons" id="options-rotation">
  188. <button id="options-rotate-left"><i class="fas fa-undo"></i></button>
  189. <button id="options-rotate-right"><i class="fas fa-redo"></i></button>
  190. </div>
  191. <div class="options-label">
  192. Brightness
  193. </div>
  194. <div class="options-two-buttons" id="options-brightness">
  195. <button id="options-brightness-down"><i class="fas fa-moon"></i></button>
  196. <div id="options-brightness-display"></div>
  197. <button id="options-brightness-up"><i class="fas fa-sun"></i></button>
  198. </div>
  199. <div class="options-label">
  200. Sizes
  201. </div>
  202. <div class="options-block" id="options-entity-defaults">
  203. </div>
  204. </div>
  205. <h3 class="options-header" id="view-category-header">View</h3>
  206. <div class="options-category" id="view-category">
  207. <span id="options-view">
  208. </span>
  209. </div>
  210. <h3 class="options-header" id="attribution-category-header">Attribution</h3>
  211. <div id="options-attribution">
  212. <div class="options-label">
  213. Authors
  214. </div>
  215. <div id="options-attribution-authors">
  216. </div>
  217. <div class="options-label">
  218. Owners
  219. </div>
  220. <div id="options-attribution-owners">
  221. </div>
  222. <div class="options-label">
  223. Citations
  224. </div>
  225. <div id="options-attribution-citations">
  226. </div>
  227. <div class="options-label">
  228. Source
  229. </div>
  230. <div id="options-attribution-source">
  231. </div>
  232. </div>
  233. </div>
  234. <div id="world">
  235. <div class="extra-info">
  236. </div>
  237. <button class="scroll-button" id="zoom-in">
  238. <i class="fas fa-search-plus"></i>
  239. </button>
  240. <button class="scroll-button" id="zoom-out">
  241. <i class="fas fa-search-minus"></i>
  242. </button>
  243. <button class="scroll-button" id="scroll-left">
  244. <i class="fas fa-arrow-left"></i>
  245. </button>
  246. <button class="scroll-button" id="scroll-right">
  247. <i class="fas fa-arrow-right"></i>
  248. </button>
  249. <button class="scroll-button" id="scroll-up">
  250. <i class="fas fa-arrow-up"></i>
  251. </button>
  252. <button class="scroll-button" id="scroll-down">
  253. <i class="fas fa-arrow-down"></i>
  254. </button>
  255. <button class="scroll-button" disabled id="shrink">
  256. <i class="fas fa-compress-arrows-alt"></i>
  257. </button>
  258. <button class="scroll-button" disabled id="grow">
  259. <i class="fas fa-expand-arrows-alt"></i>
  260. </button>
  261. <button class="scroll-button" id="ruler">
  262. <i class="fas fa-ruler"></i>
  263. </button>
  264. <button class="scroll-button" disabled id="fit">
  265. <i class="fas fa-search"></i>
  266. </button>
  267. <canvas id="rulers">
  268. </canvas>
  269. <div id="entities">
  270. </div>
  271. <canvas id="display">
  272. </canvas>
  273. <div id="ground" class="bottom-cover"></div>
  274. </div>
  275. </div>
  276. <img id="webkitBugTest" src="./media/test-circle.svg" style="position:absolute; top: -1000px; width: 500px; height: 500px" />
  277. </body>
  278. </html>