base.css 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. @import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500;900&display=swap');
  2. body {
  3. width: 100%;
  4. height: 100%;
  5. position: absolute;
  6. background: #000000;
  7. margin: 0;
  8. padding: 0;
  9. overscroll-behavior: none;
  10. }
  11. .container {
  12. width: 100%;
  13. height: 100%;
  14. position: relative;
  15. }
  16. .ui {
  17. /* VIDEO HACK */
  18. /* visibility: hidden; */
  19. width: 100%;
  20. height: 100%;
  21. position: absolute;
  22. top: 0;
  23. left: 0;
  24. font-family: 'Montserrat', sans-serif;
  25. }
  26. .row {
  27. width: 100%;
  28. height: 100%;
  29. display: flex;
  30. flex-direction: row;
  31. justify-content: center;
  32. align-items: flex-end;
  33. }
  34. .column {
  35. height: 100%;
  36. display: flex;
  37. flex-direction: column;
  38. justify-content: center;
  39. align-items: center;
  40. }
  41. .left-ui {
  42. position: absolute;
  43. left: 100px;
  44. bottom: 50px;
  45. background: rgba(1.0, 1.0, 1.0, 0.0);
  46. width: 400px;
  47. height: 120px;
  48. padding: 10px 10px;
  49. border-radius: 10px;
  50. }
  51. .right-ui {
  52. position: absolute;
  53. right: 100px;
  54. bottom: 50px;
  55. background: rgba(1.0, 1.0, 1.0, 0.0);
  56. width: 400px;
  57. height: 100px;
  58. padding: 10px 10px;
  59. border-radius: 10px;
  60. }
  61. .top-right-ui {
  62. position: absolute;
  63. right: 100px;
  64. top: 50px;
  65. background: rgba(1.0, 1.0, 1.0, 0.0);
  66. width: 400px;
  67. height: 100px;
  68. padding: 10px 10px;
  69. border-radius: 10px;
  70. }
  71. .top-left-ui {
  72. position: absolute;
  73. top: 200px;
  74. background: rgba(1.0, 1.0, 1.0, 0.0);
  75. width: 400px;
  76. height: 100px;
  77. border-radius: 10px;
  78. }
  79. .ui-area {
  80. display: flex;
  81. height: 100%;
  82. width: 100%;
  83. flex-direction: column;
  84. justify-content: flex-end;
  85. }
  86. .ui-glow {
  87. border-radius: 5px;
  88. box-shadow:
  89. inset -20px -40px 40px rgba(7, 42, 136, 0.125),
  90. 0 0 0 2px rgba(98, 164, 245, 0.5),
  91. inset -40px -60px 60px rgba(5, 28, 90, 0.125),
  92. 7px 7px 20px rgba(0, 0, 0, 0.3);
  93. }
  94. .left-ui-area {
  95. transform: perspective(600px) rotateY(30deg) rotatez(-3deg);
  96. padding-right: 50px;
  97. }
  98. .right-ui-area {
  99. transform: perspective(600px) rotateY(-30deg) rotatez(3deg);
  100. }
  101. .top-right-ui-area {
  102. transform: perspective(600px) rotateY(-30deg) rotatez(-3deg);
  103. }
  104. .top-left-ui-area {
  105. text-align: center;
  106. }
  107. .objective-title-icon {
  108. filter: invert(1) drop-shadow(2px 2px 4px);
  109. }
  110. .objective-title {
  111. padding: 5px 10px;
  112. font-size: 1.5em;
  113. color: white;
  114. text-shadow:
  115. 0px -2px 2px gray,
  116. 0px 2px 2px gray,
  117. 0px 0px 8px rgb(0, 0, 0),
  118. 0px 0px 32px rgb(0, 0, 0);
  119. }
  120. .objective-text-background {
  121. min-width: 400px;
  122. padding: 10px 10px;
  123. background: linear-gradient(rgb(161, 202, 255), 10%, rgba(0, 0, 243, 0));
  124. align-items: center;
  125. }
  126. .objective-text {
  127. font-size: 1em;
  128. margin-left: 10px;
  129. margin-right: 10px;
  130. color: lightgray;
  131. text-shadow:
  132. 0px -2px 1px gray,
  133. 0px 2px 1px gray,
  134. 0px 0px 4px rgb(0, 0, 0);
  135. }
  136. .objective-text-icon {
  137. filter: invert(1) drop-shadow(2px 2px 4px);
  138. height: 24px;
  139. }
  140. .ammo-area {
  141. display: flex;
  142. justify-content: center;
  143. align-items: center;
  144. }
  145. .ammo-area > .ammo-icon {
  146. margin: 5px;
  147. }
  148. .ammo-icon {
  149. width: 48px;
  150. height: 48px;
  151. filter: invert(1) drop-shadow(2px 2px 4px);
  152. }
  153. .weapon-text {
  154. color: white;
  155. text-shadow:
  156. 0px -2px 1px gray,
  157. 0px 2px 1px gray,
  158. 2px 2px 4px rgb(0, 0, 0);
  159. font-size: 16px;
  160. }
  161. .weapon-pic-text {
  162. color: white;
  163. text-shadow:
  164. 0px -2px 1px gray,
  165. 0px 2px 1px gray,
  166. 2px 2px 4px rgb(0, 0, 0);
  167. font-size: 32px;
  168. }
  169. .weapon-icon {
  170. background-image: url('./resources/ui/paintball.png');
  171. background-repeat: no-repeat;
  172. background-size: contain;
  173. width: 110px;
  174. height: 40px;
  175. }
  176. .charge-area {
  177. margin: 10px;
  178. justify-content: right;
  179. }
  180. .charge-bar {
  181. height: 24px;
  182. width: 200px;
  183. margin-left: 5px;
  184. }
  185. .charge-bar-active {
  186. height: 100%;
  187. background-color: rgb(237, 50, 50);
  188. border-radius: 5px;
  189. box-shadow:
  190. 0 0 10px rgb(190, 230, 200),
  191. inset 0 0 10px rgb(196, 211, 227);
  192. }
  193. .charge-text {
  194. color: white;
  195. text-shadow:
  196. 0px -2px 1px gray,
  197. 0px 2px 1px gray,
  198. 2px 2px 4px rgb(0, 0, 0);
  199. font-size: 24px;
  200. }
  201. .weapon-text-icon {
  202. background-image: url('./resources/ui/currency_yuan_FILL0_wght700_GRAD0_opsz48.svg');
  203. background-repeat: no-repeat;
  204. background-size: cover;
  205. height: 24px;
  206. width: 24px;
  207. margin-left: 5px;
  208. filter: invert(1) drop-shadow(2px 2px 4px);
  209. }
  210. .weapon-pic-icon {
  211. background-image: url('./resources/ui/safety_check_FILL0_wght700_GRAD0_opsz48.svg');
  212. background-size: contain;
  213. height: 40px;
  214. width: 40px;
  215. margin-left: 5px;
  216. filter: invert(1) drop-shadow(2px 2px 4px);
  217. }
  218. .weapon-area {
  219. margin-left: 10px;
  220. }
  221. .weapon-top-row {
  222. min-height: 30px;
  223. margin-bottom: 5px;
  224. }
  225. .charge-icon {
  226. background-image: url('./resources/ui/flash_on_FILL0_wght700_GRAD0_opsz48.svg');
  227. background-size: contain;
  228. height: 24px;
  229. width: 24px;
  230. margin-left: 5px;
  231. }
  232. .charge-icon-main {
  233. filter: invert(1) drop-shadow(2px 2px 4px);
  234. }
  235. .health-area {
  236. margin: 10px;
  237. justify-content: right;
  238. }
  239. .health-bar {
  240. height: 48px;
  241. width: 200px;
  242. margin: 5px;
  243. }
  244. .health-text {
  245. color: white;
  246. text-shadow:
  247. 0px -2px 1px gray,
  248. 0px 2px 1px gray,
  249. 2px 2px 4px rgb(0, 0, 0);
  250. font-size: 40px;
  251. }
  252. .health-icon {
  253. background-image: url('./resources/ui/add_box_FILL0_wght700_GRAD0_opsz48.svg');
  254. background-size: contain;
  255. height: 48px;
  256. width: 48px;
  257. margin-left: 5px;
  258. }
  259. .health-icon-main {
  260. filter: invert(1) drop-shadow(2px 2px 4px);
  261. }
  262. .health-bar-active {
  263. height: 100%;
  264. background-color: rgb(89, 142, 241);
  265. border-radius: 5px;
  266. box-shadow:
  267. 0 0 10px rgb(118, 176, 237),
  268. inset 0 0 10px rgb(196, 211, 227);
  269. }
  270. .top-left-ui-area.fadeOut {
  271. opacity: 1.0;
  272. animation: fadeOut 2s ease-in-out forwards;
  273. }
  274. .top-left-ui-area.slideIn {
  275. animation: slideIn 1s ease-in-out forwards;
  276. }
  277. @keyframes fadeOut {
  278. 0% {
  279. opacity: 1.0;
  280. visibility: visible;
  281. }
  282. 100% {
  283. opacity: 0.0;
  284. visibility: hidden;
  285. }
  286. }
  287. @keyframes slideIn {
  288. 0% {
  289. transform: translateX(-150%);
  290. }
  291. 100% {
  292. transform: translateX(0%);
  293. }
  294. }