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.
 
 
 

416 lines
6.7 KiB

  1. @import url('https://fonts.googleapis.com/css?family=Coda&display=swap');
  2. html {
  3. height: 100%;
  4. overflow-x: hidden;
  5. overflow-y: hidden;
  6. color: #eee;
  7. }
  8. body {
  9. background: #111;
  10. display: flex;
  11. flex-direction: column;
  12. align-items: center;
  13. justify-content: flex-start;
  14. height: 100%;
  15. width: 100%;
  16. font-family: 'Coda', cursive;
  17. }
  18. .entity-box {
  19. position: absolute;
  20. --height: 100px;
  21. max-height: var(--height);
  22. height: var(--height);
  23. text-align: center;
  24. -webkit-user-drag: none;
  25. -khtml-user-drag: none;
  26. -moz-user-drag: none;
  27. -o-user-drag: none;
  28. pointer-events: none;
  29. transition: left 0.2s cubic-bezier(.1,.41,.18,.99), top 0.2s cubic-bezier(.1,.41,.18,.99), height 0.2s cubic-bezier(.1,.41,.18,.99), max-height 0.2s cubic-bezier(.1,.41,.18,.99);
  30. }
  31. .entity-image {
  32. position: absolute;
  33. height: 100%;
  34. pointer-events: auto;
  35. -webkit-user-drag: none;
  36. -khtml-user-drag: none;
  37. -moz-user-drag: none;
  38. -o-user-drag: none;
  39. --offset: -100%;
  40. transform: translate(-50%, var(--offset));
  41. }
  42. .entity-name {
  43. display: none;
  44. position: absolute;
  45. top: -100%;
  46. left: 0%;
  47. transform: translate(-50%, -36px);
  48. font-size: 24px;
  49. pointer-events: none;
  50. max-width: 250px;
  51. width: 250px;
  52. }
  53. body.toggle-entity-name .entity-name {
  54. display: inline;
  55. }
  56. .entity-box.selected > img {
  57. filter: drop-shadow(0px 0px 5px gold);
  58. }
  59. .entity-box:not(.selected) > img{
  60. filter: drop-shadow(0px 0px 2px white);
  61. }
  62. #main-area {
  63. display: flex;
  64. min-width: 100vw;
  65. height: 90vh;
  66. flex-direction: row;
  67. }
  68. #options {
  69. min-width: 120pt;
  70. flex: 1 0 15vw;
  71. display: flex;
  72. justify-content: start;
  73. flex-direction: column;
  74. background: #444;
  75. overflow-x: hidden;
  76. overflow-y: scroll;
  77. height: 100%;
  78. scrollbar-color: #e1e1e1 #888;
  79. scrollbar-width: thin;
  80. }
  81. #options-attribution {
  82. display: none;
  83. }
  84. #options::-webkit-scrollbar {
  85. width: 3px;
  86. height: 2px;
  87. }
  88. #options::-webkit-scrollbar-button {
  89. width: 0px;
  90. height: 0px;
  91. }
  92. #options::-webkit-scrollbar-thumb {
  93. background: #e1e1e1;
  94. border: 0px none #ffffff;
  95. border-radius: 50px;
  96. }
  97. #options::-webkit-scrollbar-thumb:hover {
  98. background: #ffffff;
  99. }
  100. #options::-webkit-scrollbar-thumb:active {
  101. background: #000000;
  102. }
  103. #options::-webkit-scrollbar-track {
  104. background: #00000000;
  105. border: 0px none #ffffff;
  106. border-radius: 50px;
  107. }
  108. #options::-webkit-scrollbar-track:hover {
  109. background: #666666;
  110. }
  111. #options::-webkit-scrollbar-track:active {
  112. background: #333333;
  113. }
  114. #options::-webkit-scrollbar-corner {
  115. background: transparent;
  116. }
  117. .options-two-buttons {
  118. display: flex;
  119. justify-content: space-evenly;
  120. }
  121. .options-row {
  122. display: flex;
  123. text-align: center;
  124. width: 100%;
  125. }
  126. .options-block {
  127. display: flex;
  128. text-align: center;
  129. min-width: 100%;
  130. flex-direction: column;
  131. }
  132. @media (max-aspect-ratio: 1/1) {
  133. .options-row {
  134. flex-direction: column;
  135. }
  136. .options-row > .options-field-numeric {
  137. width: 100%;
  138. }
  139. .options-row > .options-field-unit {
  140. width: 100%;
  141. }
  142. }
  143. .options-header {
  144. text-align: center;
  145. font-size: 24pt;
  146. margin-top: 10px;
  147. margin-bottom: 10px;
  148. }
  149. .options-selector {
  150. font-size: 150%;
  151. width: 100%;
  152. }
  153. #entities {
  154. position: relative;
  155. user-select: none;
  156. }
  157. #world {
  158. position: relative;
  159. flex: 9 0 85vw;
  160. min-height: 85vh;
  161. max-height: 85vh;
  162. overflow: hidden;
  163. }
  164. #menubar {
  165. display: flex;
  166. flex-direction: row;
  167. justify-content: space-evenly;
  168. align-items: center;
  169. flex-wrap: wrap;
  170. min-height: 10vh;
  171. min-width: 100vw;
  172. background: #222;
  173. transition: 0.25s;
  174. }
  175. #menubar.hover-delete {
  176. background: #922;
  177. }
  178. .menubar-group {
  179. display: flex;
  180. flex-direction: row;
  181. justify-content: center;
  182. align-items: center;
  183. }
  184. .menubar-group button,
  185. .menubar-group select {
  186. height: 5vh;
  187. }
  188. .menu-item {
  189. font-size: 24px;
  190. color: #ccc;
  191. margin: 20px;
  192. }
  193. select.menu-item {
  194. color: #000;
  195. }
  196. #display {
  197. width: 100%;
  198. height: 100%;
  199. background: #333;
  200. }
  201. #options .options-label {
  202. flex: 0 1;
  203. width: 100%;
  204. font-size: 150%;
  205. }
  206. .options-label {
  207. text-align: center;
  208. }
  209. .options-row .options-field-numeric {
  210. flex: 1 1 60%;
  211. min-width: 0px;
  212. font-size: 150%;
  213. }
  214. .options-row .options-field-text {
  215. flex: 1 1 100%;
  216. min-width: 0px;
  217. font-size: 150%;
  218. }
  219. .options-row .options-field-unit {
  220. flex: 1 1 40%;
  221. min-width: 0px;
  222. font-size: 150%;
  223. }
  224. .options-row .options-button {
  225. flex: 1;
  226. width: 100%;
  227. font-size: 150%;
  228. }
  229. .options-block .options-button {
  230. flex: 1;
  231. width: 100%;
  232. font-size: 150%;
  233. }
  234. .options-row label {
  235. flex: 1;
  236. width: 100%;
  237. font-size: 150%;
  238. }
  239. body #test-canvas {
  240. position: fixed;
  241. top: 100vh;
  242. }
  243. .switch {
  244. height: 24pt;
  245. }
  246. .switch input {
  247. transform: scale(2);
  248. }
  249. .bottom-name {
  250. display: none;
  251. text-align: center;
  252. position: fixed;
  253. width: 150px;
  254. height: 50px;
  255. transform: translate(-50%, 0%);
  256. }
  257. body.toggle-bottom-name .bottom-name {
  258. display: inline;
  259. }
  260. #spawners > button {
  261. display: none;
  262. font-size: 24pt;
  263. }
  264. #spawners > select {
  265. display: none;
  266. font-size: 24pt;
  267. }
  268. #spawners > select#category-picker {
  269. display: inline;
  270. }
  271. #spawners > button.category-visible,
  272. #spawners > select.category-visible {
  273. display: inline;
  274. }
  275. #menubar button {
  276. font-size: 24pt;
  277. }
  278. #help {
  279. display: none;
  280. flex-direction: column;
  281. justify-content: space-evenly;
  282. align-items: center;
  283. position: absolute;
  284. width: 60vw;
  285. height: 60vh;
  286. margin: 0pt;
  287. padding-top: 20vh;
  288. padding-bottom: 20vh;
  289. padding-left: 20vw;
  290. padding-right: 20vw;
  291. transition: 1s;
  292. text-align: center;
  293. background: #333;
  294. opacity: 0;
  295. z-index: 9999999;
  296. }
  297. #help.visible {
  298. display: flex;
  299. opacity: 0.9;
  300. transition: 1s;
  301. }
  302. #help h1 {
  303. font-size: 150%;
  304. }
  305. #help p {
  306. font-size: 125%;
  307. }
  308. #help button {
  309. width: 20vw;
  310. height: 10vh;
  311. font-size: 9vh;
  312. }
  313. a {
  314. color: #999;
  315. }
  316. #options-attribution-authors {
  317. text-align: center;
  318. }
  319. #options-attribution-owners {
  320. text-align: center;
  321. }
  322. #options-attribution-source {
  323. text-align: center;
  324. }
  325. .floating-slider {
  326. position: absolute;
  327. z-index: 1000;
  328. width: 250px;
  329. height: 50px;
  330. }
  331. #slider-scale {
  332. top: 1%;
  333. left: 5%;
  334. }
  335. #slider-scale:before {
  336. content: "World scale";
  337. position: absolute;
  338. left: 50%;
  339. transform: translate(-50%, 0%);
  340. font-size: 20px;
  341. }
  342. #slider-entity-scale {
  343. top: 1%;
  344. right: 5%;
  345. }
  346. #slider-entity-scale:before {
  347. content: "Entity scale";
  348. position: absolute;
  349. left: 50%;
  350. transform: translate(-50%, 0%);
  351. font-size: 20px;
  352. }
  353. .no-transition {
  354. transition: 0s !important;
  355. }