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.
 
 
 

427 lines
5.7 KiB

  1. @import "../../../css/colors.less";
  2. @pad: 8px;
  3. @btnSize: 64px;
  4. .uiMessages {
  5. position: absolute;
  6. left: 10px;
  7. bottom: 10px;
  8. width: 480px;
  9. pointer-events: none;
  10. display: flex;
  11. flex-direction: column;
  12. .filters {
  13. display: none;
  14. width: 100%;
  15. flex-wrap: wrap;
  16. .filter {
  17. height: 100%;
  18. background-color: @blackC;
  19. float: left;
  20. color: @blackA;
  21. margin-right: 10px;
  22. margin-bottom: 10px;
  23. padding: 5px 10px;
  24. cursor: pointer;
  25. &:hover {
  26. background-color: @blackB;
  27. color: @grayD;
  28. }
  29. &.active {
  30. background-color: @blackB;
  31. color: @blueB;
  32. &:hover {
  33. background-color: @blackA;
  34. color: @grayB;
  35. }
  36. }
  37. }
  38. }
  39. .list {
  40. overflow-y: hidden;
  41. width: 100%;
  42. max-height: 320px;
  43. .list-message {
  44. display: none;
  45. width: 100%;
  46. padding: 5px 10px;
  47. color: white;
  48. filter: drop-shadow(0px -2px 0px @blackD)
  49. drop-shadow(0px 2px 0px @blackD)
  50. drop-shadow(2px 0px 0px @blackD)
  51. drop-shadow(-2px 0px 0px @blackD);
  52. -moz-filter: drop-shadow(0px -2px 0px @blackD)
  53. drop-shadow(0px 2px 0px @blackD)
  54. drop-shadow(2px 0px 0px @blackD)
  55. drop-shadow(-2px 0px 0px @blackD);
  56. word-wrap: break-word;
  57. line-height: 18px;
  58. &.q {
  59. color: @grayB;
  60. }
  61. &.q0 {
  62. color: @white;
  63. }
  64. &.q1 {
  65. color: @greenB;
  66. }
  67. a,
  68. &.q2 {
  69. color: @blueB;
  70. }
  71. &.q3 {
  72. color: @purpleA;
  73. }
  74. &.q4 {
  75. color: @orangeA;
  76. }
  77. &.color-green {
  78. color: @greenA;
  79. }
  80. &.color-red {
  81. color: @redB;
  82. }
  83. &.color-cyan {
  84. color: @blueA;
  85. }
  86. &.color-tealC {
  87. color: @tealC;
  88. }
  89. }
  90. &.rep .rep {
  91. display: block;
  92. }
  93. &.chat .chat {
  94. display: block;
  95. }
  96. &.info .info {
  97. display: block;
  98. }
  99. &.loot .loot {
  100. display: block;
  101. }
  102. }
  103. .bottom {
  104. display: none;
  105. .channelPicker {
  106. min-width: 100px;
  107. color: 1;
  108. display: flex;
  109. justify-content: center;
  110. align-items: center;
  111. color: @white;
  112. background-color: @blueC;
  113. cursor: pointer;
  114. padding: 0px 10px;
  115. &:after {
  116. content: '▾';
  117. margin-left: 10px;
  118. }
  119. &:hover {
  120. background-color: @blueD;
  121. }
  122. }
  123. .el {
  124. flex: 1;
  125. width: 100%;
  126. color: @white;
  127. &.textbox.message {
  128. display: none;
  129. background-color: @blackB;
  130. text-align: left;
  131. padding: 5px 10px;
  132. }
  133. }
  134. &.time {
  135. display: flex;
  136. align-items: center;
  137. padding-left: 10px;
  138. background-color: transparent;
  139. height: 35px;
  140. color: @white;
  141. text-align: left;
  142. filter: drop-shadow(0px -2px 0px @blackD)
  143. drop-shadow(0px 2px 0px @blackD)
  144. drop-shadow(2px 0px 0px @blackD)
  145. drop-shadow(-2px 0px 0px @blackD);
  146. -moz-filter: drop-shadow(0px -2px 0px @blackD)
  147. drop-shadow(0px 2px 0px @blackD)
  148. drop-shadow(2px 0px 0px @blackD)
  149. drop-shadow(-2px 0px 0px @blackD);
  150. }
  151. &.channelOptions {
  152. display: none;
  153. flex-direction: column;
  154. position: absolute;
  155. left: 0px;
  156. bottom: 0px;
  157. min-width: 100px;
  158. .option {
  159. height: 35px;
  160. display: flex;
  161. justify-content: center;
  162. align-items: center;
  163. color: @grayB;
  164. background-color: @blackA;
  165. cursor: pointer;
  166. padding: 0px 10px;
  167. &:after {
  168. content: attr(shortcut);
  169. margin-left: 10px;
  170. color: @grayC;
  171. }
  172. &:hover,
  173. &.selected {
  174. background-color: @grayD;
  175. color: @white;
  176. }
  177. }
  178. }
  179. }
  180. &.typing {
  181. pointer-events: all;
  182. .filters {
  183. pointer-events: all;
  184. display: flex;
  185. }
  186. .list {
  187. overflow-y: auto;
  188. background-color: @blackC;
  189. .list-message {
  190. filter: none;
  191. }
  192. }
  193. .bottom {
  194. display: flex;
  195. .el.textbox {
  196. &.message:not(.input) {
  197. display: block;
  198. }
  199. }
  200. }
  201. .time {
  202. display: none;
  203. }
  204. .channelOptions {
  205. display: none;
  206. &.active {
  207. display: flex;
  208. }
  209. }
  210. }
  211. &.active {
  212. .list-message {
  213. opacity: 1 !important;
  214. }
  215. }
  216. &.picking {
  217. &:before {
  218. position: absolute;
  219. content: '';
  220. left: 0px;
  221. top: 0px;
  222. width: 100%;
  223. height: 100%;
  224. background-color: @blackD;
  225. opacity: 0.7;
  226. }
  227. }
  228. }
  229. .mobile .uiMessages {
  230. padding: 0px;
  231. pointer-events: all;
  232. .btnClose.active {
  233. float: right;
  234. margin-right: 0px;
  235. padding: 5px 20px;
  236. color: @redA;
  237. }
  238. input {
  239. display: none;
  240. }
  241. .filters {
  242. margin-bottom: 0px;
  243. flex-shrink: 0;
  244. background-color: @blackC;
  245. }
  246. .list {
  247. height: 100%;
  248. max-height: 100%;
  249. }
  250. &.typing {
  251. left: 0px;
  252. top: 0px;
  253. width: 100vw;
  254. height: 100vh;
  255. background-color: fade(@blackC, 90%);
  256. display: flex;
  257. flex-direction: column;
  258. z-index: 999999998;
  259. .main {
  260. display: flex;
  261. flex-direction: column;
  262. flex-grow: 1;
  263. min-height: 0px;
  264. }
  265. .channelPicker {
  266. display: none;
  267. }
  268. .channelOptions {
  269. z-index: 999999999;
  270. }
  271. .bottom {
  272. .input {
  273. display: block;
  274. height: 26px;
  275. flex-shrink: 0;
  276. }
  277. }
  278. .el.textbox.message:not(.input),.time {
  279. display: none;
  280. }
  281. .keyboard {
  282. display: flex;
  283. flex-direction: row;
  284. flex-wrap: wrap;
  285. background-color: @blackC;
  286. justify-content: center;
  287. align-items: center;
  288. height: 140px;
  289. flex-shrink: 0;
  290. .key {
  291. flex: 1;
  292. background-color: @blackA;
  293. color: @white;
  294. padding: 8px 10px;
  295. text-align: center;
  296. &.special {
  297. color: @orangeA;
  298. }
  299. &.hidden {
  300. color: @blackC;
  301. }
  302. &.space {
  303. flex: 5;
  304. }
  305. }
  306. .newline {
  307. width: 100%;
  308. }
  309. .gap {
  310. width: 5%;
  311. flex-shrink: 0;
  312. }
  313. }
  314. }
  315. &:not(.typing) {
  316. top: 10px;
  317. right: 84px;
  318. left: auto;
  319. bottom: auto;
  320. width: @btnSize;
  321. height: @btnSize;
  322. background-color: fade(@blackC, 90%);
  323. &:after {
  324. content: '';
  325. position: absolute;
  326. left: 0px;
  327. top: 0px;
  328. background: url('../../../images/uiIcons.png');
  329. background-position: -0px -128px;
  330. width: @btnSize;
  331. height: @btnSize;
  332. }
  333. > * {
  334. display: none;
  335. }
  336. }
  337. }