invader.rcss 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710
  1. @spritesheet theme
  2. {
  3. src: invader.tga;
  4. /**
  5. The following specifies a list of sprite names and associated rectangles into the image given above.
  6. Any sprite given here can be specified in a decorator. Their names must be globally unique.
  7. Rectangles are specified as: x y width height.
  8. */
  9. title-bar-l: 147px 0px 82px 85px;
  10. title-bar-c: 229px 0px 1px 85px;
  11. title-bar-r: 231px 0px 15px 85px;
  12. /* huditems are vertically flipped titlebars */
  13. huditem-l: 147px 55px 82px -55px;
  14. huditem-c: 229px 55px 1px -55px;
  15. huditem-r: 231px 55px 15px -55px;
  16. icon-help: 128px 152px 51px 39px;
  17. icon-invader: 179px 152px 51px 39px;
  18. icon-game: 230px 152px 51px 39px;
  19. icon-hiscore: 281px 152px 51px 39px;
  20. icon-waves: 332px 152px 51px 39px;
  21. icon-flag: 336px 191px 51px 39px;
  22. icon-lives: 383px 152px 51px 39px;
  23. icon-score: 434px 152px 51px 39px;
  24. window-tl: 0px 0px 133px 140px;
  25. window-t: 134px 0px 1px 140px;
  26. window-tr: 136px 0px 10px 140px;
  27. window-l: 0px 139px 10px 1px;
  28. window-c: 11px 139px 1px 1px;
  29. window-r: 10px 139px -10px 1px; /* mirrored left */
  30. window-bl: 0px 140px 11px 11px;
  31. window-b: 11px 140px 1px 11px;
  32. window-br: 136px 140px 10px 11px;
  33. button: 247px 0px 159px 45px;
  34. button-hover: 247px 45px 159px 45px;
  35. button-active: 247px 90px 159px 45px;
  36. button-inner: 259px 19px 135px 1px;
  37. button-inner-hover: 259px 64px 135px 1px;
  38. button-inner-active: 259px 109px 135px 1px;
  39. text-l: 162px 192px 14px 31px;
  40. text-c: 176px 192px 1px 31px;
  41. textarea: 162px 192px 145px 31px;
  42. textarea-inner: 173px 206px 127px 10px;
  43. selectbox-tl: 281px 275px 11px 9px;
  44. selectbox-t: 292px 275px 1px 9px;
  45. selectbox-tr: 294px 275px 11px 9px;
  46. selectbox-l: 281px 283px 11px 1px;
  47. selectbox-c: 292px 283px 1px 1px;
  48. selectbox-bl: 281px 285px 11px 11px;
  49. selectbox-b: 292px 285px 1px 11px;
  50. selectbox-br: 294px 285px 11px 11px;
  51. selectvalue: 162px 192px 145px 37px;
  52. selectvalue-hover: 162px 230px 145px 37px;
  53. selectarrow: 307px 192px 30px 37px;
  54. selectarrow-hover: 307px 230px 30px 37px;
  55. selectarrow-active: 307px 268px 30px 37px;
  56. radio: 407px 0px 30px 30px;
  57. radio-hover: 437px 0px 30px 30px;
  58. radio-active: 467px 0px 30px 30px;
  59. radio-checked: 407px 30px 30px 30px;
  60. radio-checked-hover: 437px 30px 30px 30px;
  61. radio-checked-active: 467px 30px 30px 30px;
  62. checkbox: 407px 60px 30px 30px;
  63. checkbox-hover: 437px 60px 30px 30px;
  64. checkbox-active: 467px 60px 30px 30px;
  65. checkbox-checked: 407px 90px 30px 30px;
  66. checkbox-checked-hover: 437px 90px 30px 30px;
  67. checkbox-checked-active: 467px 90px 30px 30px;
  68. datagridheader-l: 127px 192px 16px 31px;
  69. datagridheader-c: 143px 192px 2px 31px;
  70. datagridheader-r: 145px 192px 15px 31px;
  71. datagridexpand: 3px 232px 17px 17px;
  72. datagridexpand-hover: 21px 232px 17px 17px;
  73. datagridexpand-active: 39px 232px 17px 17px;
  74. datagridexpand-collapsed: 3px 250px 17px 17px;
  75. datagridexpand-collapsed-hover: 21px 250px 17px 17px;
  76. datagridexpand-collapsed-active: 39px 250px 17px 17px;
  77. slidertrack-t: 70px 199px 27px 2px;
  78. slidertrack-c: 70px 201px 27px 1px;
  79. slidertrack-b: 70px 202px 27px 2px;
  80. sliderbar-t: 56px 152px 23px 23px;
  81. sliderbar-c: 56px 175px 23px 1px;
  82. sliderbar-b: 56px 176px 23px 22px;
  83. sliderbar-hover-t: 80px 152px 23px 23px;
  84. sliderbar-hover-c: 80px 175px 23px 1px;
  85. sliderbar-hover-b: 80px 176px 23px 22px;
  86. sliderbar-active-t: 104px 152px 23px 23px;
  87. sliderbar-active-c: 104px 175px 23px 1px;
  88. sliderbar-active-b: 104px 176px 23px 22px;
  89. sliderarrowdec: 0px 152px 27px 24px;
  90. sliderarrowdec-hover: 0px 177px 27px 24px;
  91. sliderarrowdec-active: 0px 202px 27px 24px;
  92. sliderarrowinc: 28px 152px 27px 24px;
  93. sliderarrowinc-hover: 28px 177px 27px 24px;
  94. sliderarrowinc-active: 28px 202px 27px 24px;
  95. range-track: 219px 194px 3px 32px;
  96. range-track-inner: 220px 204px 1px 14px;
  97. range-bar: 127px 191px 34px 32px;
  98. range-dec: 3px 232px 17px 17px;
  99. range-dec-hover: 21px 232px 17px 17px;
  100. range-dec-active: 39px 232px 17px 17px;
  101. range-inc: 3px 250px 17px 17px;
  102. range-inc-hover: 21px 250px 17px 17px;
  103. range-inc-active: 39px 250px 17px 17px;
  104. progress-l: 103px 267px 13px 34px;
  105. progress-c: 116px 267px 54px 34px;
  106. progress-r: 170px 267px 13px 34px;
  107. progress-fill-l: 110px 302px 6px 34px;
  108. progress-fill-c: 140px 302px 6px 34px;
  109. progress-fill-r: 170px 302px 6px 34px;
  110. gauge: 0px 271px 100px 86px;
  111. gauge-fill: 0px 356px 100px 86px;
  112. }
  113. body
  114. {
  115. font-family: Delicious;
  116. font-weight: normal;
  117. font-style: normal;
  118. font-size: 15px;
  119. color: white;
  120. }
  121. body.window
  122. {
  123. padding-top: 43px;
  124. padding-bottom: 20px;
  125. min-width: 250px;
  126. max-width: 800px;
  127. min-height: 135px;
  128. max-height: 700px;
  129. }
  130. div#title_bar
  131. {
  132. z-index: 1;
  133. position: absolute;
  134. top: 0px;
  135. left: 0px;
  136. text-align: left;
  137. }
  138. div#title_bar div#icon
  139. {
  140. position: absolute;
  141. left: 20px;
  142. top: 2px;
  143. width: 51px;
  144. height: 39px;
  145. }
  146. div#title_bar span
  147. {
  148. padding-left: 85px;
  149. padding-right: 25px;
  150. padding-top: 17px;
  151. padding-bottom: 51px;
  152. font-size: 22px;
  153. font-weight: bold;
  154. font-effect: glow(1px black);
  155. decorator: tiled-horizontal( title-bar-l, title-bar-c, title-bar-r );
  156. }
  157. div#window
  158. {
  159. width: auto;
  160. padding: 10px 15px;
  161. decorator: tiled-box(
  162. window-tl, window-t, window-tr,
  163. window-l, window-c, window-r,
  164. window-bl, window-b, window-br
  165. );
  166. }
  167. div#content
  168. {
  169. z-index: 2;
  170. width: auto;
  171. height: 100%;
  172. overflow: hidden auto;
  173. text-align: center;
  174. }
  175. p
  176. {
  177. text-align: left;
  178. margin-bottom: 1em;
  179. }
  180. h1
  181. {
  182. margin-left: 0.4em;
  183. margin-bottom: 0.4em;
  184. text-align: left;
  185. font-size: 16px;
  186. font-weight: bold;
  187. font-effect: shadow(1px 1px black);
  188. }
  189. input,
  190. select,
  191. dataselect
  192. {
  193. margin-left: 20px;
  194. }
  195. input.submit
  196. {
  197. margin-left: 0px;
  198. }
  199. button,
  200. input.submit
  201. {
  202. display: inline-block;
  203. width: 159px;
  204. height: 37px;
  205. padding-top: 8px;
  206. vertical-align: -18px;
  207. font-size: 18px;
  208. text-align: center;
  209. tab-index: auto;
  210. decorator: image(button);
  211. }
  212. button:focus,
  213. input.submit:focus
  214. {
  215. font-weight: bold;
  216. font-effect: shadow(1px 1px black);
  217. }
  218. button:hover,
  219. input.submit:hover
  220. {
  221. decorator: image(button-hover);
  222. }
  223. button:active,
  224. input.submit:active
  225. {
  226. decorator: image(button-active);
  227. }
  228. input.submit:disabled
  229. {
  230. decorator: image(button);
  231. image-color: rgba(50, 150, 150, 120);
  232. cursor: unavailable;
  233. }
  234. input.text, input.password
  235. {
  236. height: 31px;
  237. padding: 10px 10px 0px;
  238. decorator: tiled-horizontal( text-l, text-c, auto ); /* Right becomes mirrored left */
  239. cursor: text;
  240. }
  241. textarea
  242. {
  243. padding: 14px 12px 10px;
  244. decorator: ninepatch( textarea, textarea-inner );
  245. cursor: text;
  246. }
  247. input.text,
  248. input.password,
  249. select,
  250. dataselect,
  251. textarea
  252. {
  253. color: #333;
  254. font-size: 13px;
  255. }
  256. datagrid input.text
  257. {
  258. width: 100%;
  259. height: 18px;
  260. margin: 0;
  261. padding: 0 5px;
  262. border-width: 1px;
  263. border-color: black;
  264. background-color: white;
  265. font-size: 15px;
  266. decorator: none;
  267. }
  268. select,
  269. dataselect
  270. {
  271. width: 175px;
  272. height: 37px;
  273. }
  274. select selectvalue,
  275. dataselect selectvalue
  276. {
  277. width: auto;
  278. margin-right: 30px;
  279. height: 27px;
  280. padding: 10px 10px 0px 10px;
  281. decorator: image( selectvalue );
  282. }
  283. select selectvalue:hover,
  284. dataselect selectvalue:hover
  285. {
  286. decorator: image( selectvalue-hover );
  287. }
  288. select selectarrow,
  289. dataselect selectarrow
  290. {
  291. width: 30px;
  292. height: 37px;
  293. decorator: image( selectarrow );
  294. }
  295. select selectarrow:hover,
  296. dataselect selectarrow:hover
  297. {
  298. decorator: image( selectarrow-hover );
  299. }
  300. select selectarrow:active,
  301. select selectarrow:checked,
  302. dataselect selectarrow:active,
  303. dataselect selectarrow:checked
  304. {
  305. decorator: image( selectarrow-active );
  306. }
  307. select selectbox,
  308. dataselect selectbox
  309. {
  310. margin-left: 1px;
  311. margin-top: -7px;
  312. width: 162px;
  313. padding: 1px 4px 4px 4px;
  314. }
  315. select selectbox,
  316. dataselect selectbox,
  317. datagrid datagridbody
  318. {
  319. decorator: tiled-box(
  320. selectbox-tl, selectbox-t, selectbox-tr,
  321. selectbox-l, selectbox-c, auto, /* auto mirrors left */
  322. selectbox-bl, selectbox-b, selectbox-br
  323. );
  324. }
  325. select selectbox option,
  326. dataselect selectbox option
  327. {
  328. width: auto;
  329. padding: 3px 0 3px 6px;
  330. background: #DDDD;
  331. }
  332. select selectbox option:nth-child(even),
  333. dataselect selectbox option:nth-child(even),
  334. datagrid datagridrow:nth-child(even)
  335. {
  336. background: #FFFFFFA0;
  337. }
  338. select selectbox option:checked,
  339. dataselect selectbox option:checked
  340. {
  341. font-weight: bold;
  342. }
  343. select selectbox option:hover,
  344. dataselect selectbox option:hover
  345. {
  346. background: #FF5D5D;
  347. }
  348. input.radio,
  349. input.checkbox
  350. {
  351. width: 30px;
  352. height: 30px;
  353. vertical-align: -11px;
  354. }
  355. input.radio
  356. {
  357. decorator: image(radio);
  358. }
  359. input.radio:hover
  360. {
  361. decorator: image(radio-hover);
  362. }
  363. input.radio:active
  364. {
  365. decorator: image(radio-active);
  366. }
  367. input.radio:checked
  368. {
  369. decorator: image(radio-checked);
  370. }
  371. input.radio:checked:hover
  372. {
  373. decorator: image(radio-checked-hover);
  374. }
  375. input.radio:checked:active
  376. {
  377. decorator: image(radio-checked-active);
  378. }
  379. input.checkbox
  380. {
  381. decorator: image(checkbox);
  382. }
  383. input.checkbox:hover
  384. {
  385. decorator: image(checkbox-hover);
  386. }
  387. input.checkbox:active
  388. {
  389. decorator: image(checkbox-active);
  390. }
  391. input.checkbox:checked
  392. {
  393. decorator: image(checkbox-checked);
  394. }
  395. input.checkbox:checked:hover
  396. {
  397. decorator: image(checkbox-checked-hover);
  398. }
  399. input.checkbox:checked:active
  400. {
  401. decorator: image(checkbox-checked-active);
  402. }
  403. input.range {
  404. width: 200px;
  405. height: 32px;
  406. vertical-align: -12px;
  407. }
  408. input.range slidertrack {
  409. margin-top: 3px;
  410. height: 22px;
  411. image-color: #ecc;
  412. decorator: ninepatch( range-track, range-track-inner );
  413. }
  414. input.range sliderbar {
  415. margin-left: -8px;
  416. margin-right: -7px;
  417. margin-top: -3px;
  418. width: 34px;
  419. height: 23px;
  420. decorator: image( range-bar );
  421. }
  422. input.range:hover sliderbar {
  423. image-color: #cc0;
  424. }
  425. input.range sliderbar:active {
  426. image-color: #c80;
  427. }
  428. input.range sliderarrowdec, input.range sliderarrowinc {
  429. width: 17px;
  430. height: 17px;
  431. margin-top: 6px;
  432. }
  433. input.range sliderarrowdec { decorator: image( range-dec ); }
  434. input.range sliderarrowinc { decorator: image( range-inc ); }
  435. input.range sliderarrowdec:hover { decorator: image( range-dec-hover ); }
  436. input.range sliderarrowinc:hover { decorator: image( range-inc-hover ); }
  437. input.range sliderarrowdec:active { decorator: image( range-dec-active ); }
  438. input.range sliderarrowinc:active { decorator: image( range-inc-active ); }
  439. datagrid datagridheader
  440. {
  441. width: auto;
  442. height: 25px;
  443. padding: 5px 10px 0px 10px;
  444. decorator: tiled-horizontal( datagridheader-l, datagridheader-c, datagridheader-r );
  445. }
  446. datagrid datagridbody
  447. {
  448. color: black;
  449. margin-left: 4px;
  450. margin-right: 3px;
  451. padding: 0px 4px 4px 4px;
  452. }
  453. datagridexpand
  454. {
  455. display: block;
  456. margin: 1px 0px 1px 5px;
  457. height: 17px;
  458. width: 17px;
  459. decorator: image( datagridexpand );
  460. }
  461. datagridexpand:hover
  462. {
  463. decorator: image( datagridexpand-hover );
  464. }
  465. datagridexpand:active
  466. {
  467. decorator: image( datagridexpand-active );
  468. }
  469. datagridexpand.collapsed
  470. {
  471. decorator: image( datagridexpand-collapsed );
  472. }
  473. datagridexpand.collapsed:hover
  474. {
  475. decorator: image( datagridexpand-collapsed-hover );
  476. }
  477. datagridexpand.collapsed:active
  478. {
  479. decorator: image( datagridexpand-collapsed-active );
  480. }
  481. scrollbarvertical
  482. {
  483. margin-top: -6px;
  484. margin-bottom: -6px;
  485. margin-right: -11px;
  486. width: 27px;
  487. }
  488. scrollbarvertical slidertrack
  489. {
  490. decorator: tiled-vertical( slidertrack-t, slidertrack-c, slidertrack-b );
  491. }
  492. scrollbarvertical slidertrack:active
  493. {
  494. image-color: #aaa;
  495. }
  496. scrollbarvertical sliderbar
  497. {
  498. margin-left: 4px;
  499. width: 23px;
  500. min-height: 46px;
  501. decorator: tiled-vertical( sliderbar-t, sliderbar-c, sliderbar-b );
  502. }
  503. scrollbarvertical sliderbar:hover
  504. {
  505. decorator: tiled-vertical( sliderbar-hover-t, sliderbar-hover-c, sliderbar-hover-b );
  506. }
  507. scrollbarvertical sliderbar:active
  508. {
  509. decorator: tiled-vertical( sliderbar-active-t, sliderbar-active-c, sliderbar-active-b );
  510. }
  511. scrollbarvertical sliderarrowdec,
  512. scrollbarvertical sliderarrowinc
  513. {
  514. width: 27px;
  515. height: 24px;
  516. }
  517. scrollbarvertical sliderarrowdec
  518. {
  519. decorator: image( sliderarrowdec );
  520. }
  521. scrollbarvertical sliderarrowdec:hover
  522. {
  523. decorator: image( sliderarrowdec-hover );
  524. }
  525. scrollbarvertical sliderarrowdec:active
  526. {
  527. decorator: image( sliderarrowdec-active );
  528. }
  529. scrollbarvertical sliderarrowinc
  530. {
  531. decorator: image( sliderarrowinc );
  532. }
  533. scrollbarvertical sliderarrowinc:hover
  534. {
  535. decorator: image( sliderarrowinc-hover );
  536. }
  537. scrollbarvertical sliderarrowinc:active
  538. {
  539. decorator: image( sliderarrowinc-active );
  540. }
  541. scrollbarhorizontal
  542. {
  543. width: 0px;
  544. height: 0px;
  545. }
  546. textarea scrollbarvertical
  547. {
  548. cursor: arrow;
  549. margin: 10px 0px 4px 0;
  550. width: 12px;
  551. }
  552. textarea scrollbarvertical slidertrack
  553. {
  554. decorator: none;
  555. }
  556. textarea scrollbarvertical sliderbar
  557. {
  558. margin-left: 2px;
  559. width: 10px;
  560. min-height: 16px;
  561. }
  562. textarea scrollbarvertical sliderarrowdec,
  563. textarea scrollbarvertical sliderarrowinc
  564. {
  565. width: 0px;
  566. height: 0px;
  567. }
  568. textarea scrollbarhorizontal
  569. {
  570. cursor: arrow;
  571. margin-left: 7px;
  572. height: 12px;
  573. }
  574. textarea scrollbarhorizontal sliderbar
  575. {
  576. background-color: #BC0000CC;
  577. height: 8px;
  578. min-width: 10px;
  579. }
  580. textarea scrollbarhorizontal sliderbar:hover
  581. {
  582. background-color: #B82500CC;
  583. }
  584. textarea scrollbarhorizontal sliderbar:active
  585. {
  586. background-color: #770000CC;
  587. }