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.
 
 
 

216 lines
8.0 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"><script src="https://kit.fontawesome.com/10a16c6083.js" crossorigin="anonymous"></script>
  8. <script src="math.min.js"></script>
  9. <script src="presets/buildings.js"></script>
  10. <script src="presets/landmarks.js"></script>
  11. <script src="presets/characters.js"></script>
  12. <script src="presets/objects.js"></script>
  13. <script src="presets/fiction.js"></script>
  14. <script src="presets/food.js"></script>
  15. <script src="presets/naturals.js"></script>
  16. <script src="presets/vehicles.js"></script>
  17. <script src="presets/cities.js"></script>
  18. <script src="presets/pokemon.js"></script>
  19. <script src="presets/scenes.js"></script>
  20. <script src="media/attribution.js"></script>
  21. <script src="macrovision.js"></script>
  22. <meta name="viewport" content="width=device-width, initial-scale=0.75, maximum-scale=0.75, user-scalable=0"/>
  23. <meta name="theme-color" content="#000000" />
  24. <meta name="description" content="How big are they anyway?" />
  25. <meta property="og:title" content="Macrovision" />
  26. <meta property="og:description" content="How big are they anyway?" />
  27. <meta property="og:image" content="https://crux.sexy/images/macrovision.png" />
  28. <link rel="icon" href="https://crux.sexy/images/macrovision.ico">
  29. </head>
  30. <body class="toggle-bottom-name toggle-top-name toggle-scale">
  31. <div id="help">
  32. <h1>Menu</h1>
  33. <div id="help-icons">
  34. </div>
  35. <h1>Navigation</h1>
  36. <p>
  37. <ul>
  38. <li>Drag to move entities</li>
  39. <li>Alt-drag to ignore snapping and bounds</li>
  40. </ul>
  41. </p>
  42. <p>
  43. <ul>
  44. <li>Scroll to zoom.</li>
  45. <li>Alt-scroll to zoom preserve positions on the screen.</li>
  46. <li>Shift-scroll with an entity selected to scale it.</li>
  47. <li>Shift-scroll without a selection to move horizontally.</li>
  48. </ul>
  49. </p>
  50. <h1>Adding/removing entities</h1>
  51. <p>
  52. <ul>
  53. <li>Remove the selected entity with the Delete key</li>
  54. <li>Alternatively, drag them off the top of the screen</li>
  55. </ul>
  56. </p>
  57. <button id="close-help">Close</button>
  58. </div>
  59. <div id="menubar">
  60. <span class="menubar-group" id="spawners">
  61. </span>
  62. <span class="menubar-group" id="scenes">
  63. <button id="load-scene">
  64. <i class="fas fa-cloud-upload-alt"></i>
  65. <span class="sr-only">Load Scene</span>
  66. </button>
  67. <select id="scene-choices">
  68. </select>
  69. </span>
  70. <span class="menubar-group">
  71. <button id="open-help">
  72. <i class="far fa-question-circle"></i>
  73. <span class="sr-only">Help</span>
  74. </button>
  75. </span>
  76. </div>
  77. <div id="main-area">
  78. <div id="options" class="">
  79. <a href="https://docs.google.com/forms/d/e/1FAIpQLScRC-okDZ3FtzDTkbqSrpj5_OGD-1Vl-VYizOK3QM6quus11g/viewform?usp=sf_link" class="options-banner">Submit your<br>character!</a>
  80. <h3 class="options-header">World options</h3>
  81. <span id="options-world">
  82. <div class="options-label">
  83. World height
  84. </div>
  85. <div class="options-row">
  86. <input class="options-field-numeric" type="number" id="options-height-value" min="1" value="10">
  87. <select class="options-field-unit" id="options-height-unit">
  88. </select>
  89. </div>
  90. <div class="options-row">
  91. <button class="options-button" id="options-world-scroll-left">Scroll left</button>
  92. </div>
  93. <div class="options-row">
  94. <button class="options-button" id="options-world-scroll-right">Scroll right</button>
  95. </div>
  96. <div class="options-row">
  97. <button class="options-button" id="options-world-fit">Fit to entities</button>
  98. </div>
  99. <div class="options-row">
  100. <input type="checkbox" id="options-show-extra">
  101. <label for="options-show-extra">Show extra options</label>
  102. </div>
  103. <div class="options-block options-block-optional">
  104. <div class="options-row">
  105. <input type="checkbox" id="options-world-autofit">
  106. <label for="options-world-autofit">Auto-size world</label>
  107. </div>
  108. <div class="options-row">
  109. <input type="checkbox" id="options-world-show-names">
  110. <label for="options-world-show-names">Names over entities</label>
  111. </div>
  112. <div class="options-row">
  113. <input type="checkbox" id="options-world-show-bottom-names" checked="true">
  114. <label for="options-world-show-bottom-names">Names at bottom</label>
  115. </div>
  116. <div class="options-row">
  117. <input type="checkbox" id="options-world-show-top-names" checked="true">
  118. <label for="options-world-show-top-names">Arrows for very large entities</label>
  119. </div>
  120. <div class="options-row">
  121. <input type="checkbox" id="options-world-show-height-bars">
  122. <label for="options-world-show-height-bars">Height bars</label>
  123. </div>
  124. <div class="options-row">
  125. <input type="checkbox" id="options-world-show-entity-glow">
  126. <label for="options-world-show-entity-glow">Glowing edges</label>
  127. </div>
  128. <div class="options-row">
  129. <input type="checkbox" id="options-world-show-scale-sliders">
  130. <label for="options-world-show-scale-sliders">Scale sliders</label>
  131. </div>
  132. <div class="options-row">
  133. <input type="checkbox" id="options-world-show-bottom-cover">
  134. <label for="options-world-show-bottom-cover">Opaque ground</label>
  135. </div>
  136. <div class="options-row">
  137. <input type="checkbox" id="options-world-show-scale" checked="true">
  138. <label for="options-world-show-scale">Scale</label>
  139. </div>
  140. </div>
  141. </span>
  142. <div class="options-label">
  143. Selected Entity
  144. </div>
  145. <div class="options-row">
  146. <select id="options-selected-entity" class="options-selector">
  147. <option id="options-selected-entity-none">None</option>
  148. </select>
  149. </div>
  150. <h3 class="options-header" id="entity-category-header">Entity options</h3>
  151. <div class="options-category" id="entity-category">
  152. <div class="options-label">
  153. Ordering
  154. </div>
  155. <div class="options-two-buttons" id="options-ordering">
  156. <button id="options-order-back">Toward back</button>
  157. <div id="options-order-display"></div>
  158. <button id="options-order-forward">Toward front</button>
  159. </div>
  160. <div class="options-label">
  161. View
  162. </div>
  163. <select class="options-selector" id="entity-view"></select>
  164. <div class="options-label">
  165. Sizes
  166. </div>
  167. <div class="options-block" id="options-entity-defaults">
  168. </div>
  169. <span id="options-entity">
  170. </span>
  171. </div>
  172. <h3 class="options-header" id="view-category-header">View options</h3>
  173. <div class="options-category" id="view-category">
  174. <span id="options-view">
  175. </span>
  176. </div>
  177. <h3 class="options-header" id="attribution-category-header" >Attribution</h3>
  178. <span id="options-attribution">
  179. <div class="options-label">
  180. Authors
  181. </div>
  182. <span id="options-attribution-authors">
  183. </span>
  184. <div class="options-label">
  185. Owners
  186. </div>
  187. <span id="options-attribution-owners">
  188. </span>
  189. <div class="options-label">
  190. Source
  191. </div>
  192. <span id="options-attribution-source">
  193. </span>
  194. </span>
  195. </div>
  196. <div id="world">
  197. <input type="range" step="0.001" min="0" max="2" value="1" class="floating-slider" id="slider-scale"/>
  198. <input type="range" step="0.001" min="0" max="2" value="1" class="floating-slider" id="slider-entity-scale"/>
  199. <div id="entities">
  200. </div>
  201. <canvas id="display">
  202. </canvas>
  203. <div class="bottom-cover"></div>
  204. </div>
  205. </div>
  206. </body>
  207. </html>