claude-doom-statusbar 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (645) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +116 -0
  3. package/assets/images/hud.png +0 -0
  4. package/assets/images/mugshot/STFST01-blockart-08.png +0 -0
  5. package/assets/images/mugshot/STFST01-orig-08.png +0 -0
  6. package/assets/images/mugshot/alpha/STFDEAD0.png +0 -0
  7. package/assets/images/mugshot/alpha/STFEVL0.png +0 -0
  8. package/assets/images/mugshot/alpha/STFEVL1.png +0 -0
  9. package/assets/images/mugshot/alpha/STFEVL2.png +0 -0
  10. package/assets/images/mugshot/alpha/STFEVL3.png +0 -0
  11. package/assets/images/mugshot/alpha/STFEVL4.png +0 -0
  12. package/assets/images/mugshot/alpha/STFGOD0.png +0 -0
  13. package/assets/images/mugshot/alpha/STFKILL0.png +0 -0
  14. package/assets/images/mugshot/alpha/STFKILL1.png +0 -0
  15. package/assets/images/mugshot/alpha/STFKILL2.png +0 -0
  16. package/assets/images/mugshot/alpha/STFKILL3.png +0 -0
  17. package/assets/images/mugshot/alpha/STFKILL4.png +0 -0
  18. package/assets/images/mugshot/alpha/STFOUCH0.png +0 -0
  19. package/assets/images/mugshot/alpha/STFOUCH1.png +0 -0
  20. package/assets/images/mugshot/alpha/STFOUCH2.png +0 -0
  21. package/assets/images/mugshot/alpha/STFOUCH3.png +0 -0
  22. package/assets/images/mugshot/alpha/STFOUCH4.png +0 -0
  23. package/assets/images/mugshot/alpha/STFST00.png +0 -0
  24. package/assets/images/mugshot/alpha/STFST01.png +0 -0
  25. package/assets/images/mugshot/alpha/STFST02.png +0 -0
  26. package/assets/images/mugshot/alpha/STFST10.png +0 -0
  27. package/assets/images/mugshot/alpha/STFST11.png +0 -0
  28. package/assets/images/mugshot/alpha/STFST12.png +0 -0
  29. package/assets/images/mugshot/alpha/STFST20.png +0 -0
  30. package/assets/images/mugshot/alpha/STFST21.png +0 -0
  31. package/assets/images/mugshot/alpha/STFST22.png +0 -0
  32. package/assets/images/mugshot/alpha/STFST30.png +0 -0
  33. package/assets/images/mugshot/alpha/STFST31.png +0 -0
  34. package/assets/images/mugshot/alpha/STFST32.png +0 -0
  35. package/assets/images/mugshot/alpha/STFST40.png +0 -0
  36. package/assets/images/mugshot/alpha/STFST41.png +0 -0
  37. package/assets/images/mugshot/alpha/STFST42.png +0 -0
  38. package/assets/images/mugshot/alpha/STFTL00.png +0 -0
  39. package/assets/images/mugshot/alpha/STFTL10.png +0 -0
  40. package/assets/images/mugshot/alpha/STFTL20.png +0 -0
  41. package/assets/images/mugshot/alpha/STFTL30.png +0 -0
  42. package/assets/images/mugshot/alpha/STFTL40.png +0 -0
  43. package/assets/images/mugshot/alpha/STFTR00.png +0 -0
  44. package/assets/images/mugshot/alpha/STFTR10.png +0 -0
  45. package/assets/images/mugshot/alpha/STFTR20.png +0 -0
  46. package/assets/images/mugshot/alpha/STFTR30.png +0 -0
  47. package/assets/images/mugshot/alpha/STFTR40.png +0 -0
  48. package/assets/images/mugshot/ans/10/STFDEAD0.ans +10 -0
  49. package/assets/images/mugshot/ans/10/STFEVL0.ans +10 -0
  50. package/assets/images/mugshot/ans/10/STFEVL1.ans +10 -0
  51. package/assets/images/mugshot/ans/10/STFEVL2.ans +10 -0
  52. package/assets/images/mugshot/ans/10/STFEVL3.ans +10 -0
  53. package/assets/images/mugshot/ans/10/STFEVL4.ans +10 -0
  54. package/assets/images/mugshot/ans/10/STFGOD0.ans +10 -0
  55. package/assets/images/mugshot/ans/10/STFKILL0.ans +10 -0
  56. package/assets/images/mugshot/ans/10/STFKILL1.ans +10 -0
  57. package/assets/images/mugshot/ans/10/STFKILL2.ans +10 -0
  58. package/assets/images/mugshot/ans/10/STFKILL3.ans +10 -0
  59. package/assets/images/mugshot/ans/10/STFKILL4.ans +10 -0
  60. package/assets/images/mugshot/ans/10/STFOUCH0.ans +10 -0
  61. package/assets/images/mugshot/ans/10/STFOUCH1.ans +10 -0
  62. package/assets/images/mugshot/ans/10/STFOUCH2.ans +10 -0
  63. package/assets/images/mugshot/ans/10/STFOUCH3.ans +10 -0
  64. package/assets/images/mugshot/ans/10/STFOUCH4.ans +10 -0
  65. package/assets/images/mugshot/ans/10/STFST00.ans +10 -0
  66. package/assets/images/mugshot/ans/10/STFST01.ans +10 -0
  67. package/assets/images/mugshot/ans/10/STFST02.ans +10 -0
  68. package/assets/images/mugshot/ans/10/STFST10.ans +10 -0
  69. package/assets/images/mugshot/ans/10/STFST11.ans +10 -0
  70. package/assets/images/mugshot/ans/10/STFST12.ans +10 -0
  71. package/assets/images/mugshot/ans/10/STFST20.ans +10 -0
  72. package/assets/images/mugshot/ans/10/STFST21.ans +10 -0
  73. package/assets/images/mugshot/ans/10/STFST22.ans +10 -0
  74. package/assets/images/mugshot/ans/10/STFST30.ans +10 -0
  75. package/assets/images/mugshot/ans/10/STFST31.ans +10 -0
  76. package/assets/images/mugshot/ans/10/STFST32.ans +10 -0
  77. package/assets/images/mugshot/ans/10/STFST40.ans +10 -0
  78. package/assets/images/mugshot/ans/10/STFST41.ans +10 -0
  79. package/assets/images/mugshot/ans/10/STFST42.ans +10 -0
  80. package/assets/images/mugshot/ans/10/STFTL00.ans +10 -0
  81. package/assets/images/mugshot/ans/10/STFTL10.ans +10 -0
  82. package/assets/images/mugshot/ans/10/STFTL20.ans +10 -0
  83. package/assets/images/mugshot/ans/10/STFTL30.ans +10 -0
  84. package/assets/images/mugshot/ans/10/STFTL40.ans +10 -0
  85. package/assets/images/mugshot/ans/10/STFTR00.ans +10 -0
  86. package/assets/images/mugshot/ans/10/STFTR10.ans +10 -0
  87. package/assets/images/mugshot/ans/10/STFTR20.ans +10 -0
  88. package/assets/images/mugshot/ans/10/STFTR30.ans +10 -0
  89. package/assets/images/mugshot/ans/10/STFTR40.ans +10 -0
  90. package/assets/images/mugshot/ans/11/STFDEAD0.ans +11 -0
  91. package/assets/images/mugshot/ans/11/STFEVL0.ans +11 -0
  92. package/assets/images/mugshot/ans/11/STFEVL1.ans +11 -0
  93. package/assets/images/mugshot/ans/11/STFEVL2.ans +11 -0
  94. package/assets/images/mugshot/ans/11/STFEVL3.ans +11 -0
  95. package/assets/images/mugshot/ans/11/STFEVL4.ans +11 -0
  96. package/assets/images/mugshot/ans/11/STFGOD0.ans +11 -0
  97. package/assets/images/mugshot/ans/11/STFKILL0.ans +11 -0
  98. package/assets/images/mugshot/ans/11/STFKILL1.ans +11 -0
  99. package/assets/images/mugshot/ans/11/STFKILL2.ans +11 -0
  100. package/assets/images/mugshot/ans/11/STFKILL3.ans +11 -0
  101. package/assets/images/mugshot/ans/11/STFKILL4.ans +11 -0
  102. package/assets/images/mugshot/ans/11/STFOUCH0.ans +11 -0
  103. package/assets/images/mugshot/ans/11/STFOUCH1.ans +11 -0
  104. package/assets/images/mugshot/ans/11/STFOUCH2.ans +11 -0
  105. package/assets/images/mugshot/ans/11/STFOUCH3.ans +11 -0
  106. package/assets/images/mugshot/ans/11/STFOUCH4.ans +11 -0
  107. package/assets/images/mugshot/ans/11/STFST00.ans +11 -0
  108. package/assets/images/mugshot/ans/11/STFST01.ans +11 -0
  109. package/assets/images/mugshot/ans/11/STFST02.ans +11 -0
  110. package/assets/images/mugshot/ans/11/STFST10.ans +11 -0
  111. package/assets/images/mugshot/ans/11/STFST11.ans +11 -0
  112. package/assets/images/mugshot/ans/11/STFST12.ans +11 -0
  113. package/assets/images/mugshot/ans/11/STFST20.ans +11 -0
  114. package/assets/images/mugshot/ans/11/STFST21.ans +11 -0
  115. package/assets/images/mugshot/ans/11/STFST22.ans +11 -0
  116. package/assets/images/mugshot/ans/11/STFST30.ans +11 -0
  117. package/assets/images/mugshot/ans/11/STFST31.ans +11 -0
  118. package/assets/images/mugshot/ans/11/STFST32.ans +11 -0
  119. package/assets/images/mugshot/ans/11/STFST40.ans +11 -0
  120. package/assets/images/mugshot/ans/11/STFST41.ans +11 -0
  121. package/assets/images/mugshot/ans/11/STFST42.ans +11 -0
  122. package/assets/images/mugshot/ans/11/STFTL00.ans +11 -0
  123. package/assets/images/mugshot/ans/11/STFTL10.ans +11 -0
  124. package/assets/images/mugshot/ans/11/STFTL20.ans +11 -0
  125. package/assets/images/mugshot/ans/11/STFTL30.ans +11 -0
  126. package/assets/images/mugshot/ans/11/STFTL40.ans +11 -0
  127. package/assets/images/mugshot/ans/11/STFTR00.ans +11 -0
  128. package/assets/images/mugshot/ans/11/STFTR10.ans +11 -0
  129. package/assets/images/mugshot/ans/11/STFTR20.ans +11 -0
  130. package/assets/images/mugshot/ans/11/STFTR30.ans +11 -0
  131. package/assets/images/mugshot/ans/11/STFTR40.ans +11 -0
  132. package/assets/images/mugshot/ans/12/STFDEAD0.ans +12 -0
  133. package/assets/images/mugshot/ans/12/STFEVL0.ans +12 -0
  134. package/assets/images/mugshot/ans/12/STFEVL1.ans +12 -0
  135. package/assets/images/mugshot/ans/12/STFEVL2.ans +12 -0
  136. package/assets/images/mugshot/ans/12/STFEVL3.ans +12 -0
  137. package/assets/images/mugshot/ans/12/STFEVL4.ans +12 -0
  138. package/assets/images/mugshot/ans/12/STFGOD0.ans +12 -0
  139. package/assets/images/mugshot/ans/12/STFKILL0.ans +12 -0
  140. package/assets/images/mugshot/ans/12/STFKILL1.ans +12 -0
  141. package/assets/images/mugshot/ans/12/STFKILL2.ans +12 -0
  142. package/assets/images/mugshot/ans/12/STFKILL3.ans +12 -0
  143. package/assets/images/mugshot/ans/12/STFKILL4.ans +12 -0
  144. package/assets/images/mugshot/ans/12/STFOUCH0.ans +12 -0
  145. package/assets/images/mugshot/ans/12/STFOUCH1.ans +12 -0
  146. package/assets/images/mugshot/ans/12/STFOUCH2.ans +12 -0
  147. package/assets/images/mugshot/ans/12/STFOUCH3.ans +12 -0
  148. package/assets/images/mugshot/ans/12/STFOUCH4.ans +12 -0
  149. package/assets/images/mugshot/ans/12/STFST00.ans +12 -0
  150. package/assets/images/mugshot/ans/12/STFST01.ans +12 -0
  151. package/assets/images/mugshot/ans/12/STFST02.ans +12 -0
  152. package/assets/images/mugshot/ans/12/STFST10.ans +12 -0
  153. package/assets/images/mugshot/ans/12/STFST11.ans +12 -0
  154. package/assets/images/mugshot/ans/12/STFST12.ans +12 -0
  155. package/assets/images/mugshot/ans/12/STFST20.ans +12 -0
  156. package/assets/images/mugshot/ans/12/STFST21.ans +12 -0
  157. package/assets/images/mugshot/ans/12/STFST22.ans +12 -0
  158. package/assets/images/mugshot/ans/12/STFST30.ans +12 -0
  159. package/assets/images/mugshot/ans/12/STFST31.ans +12 -0
  160. package/assets/images/mugshot/ans/12/STFST32.ans +12 -0
  161. package/assets/images/mugshot/ans/12/STFST40.ans +12 -0
  162. package/assets/images/mugshot/ans/12/STFST41.ans +12 -0
  163. package/assets/images/mugshot/ans/12/STFST42.ans +12 -0
  164. package/assets/images/mugshot/ans/12/STFTL00.ans +12 -0
  165. package/assets/images/mugshot/ans/12/STFTL10.ans +12 -0
  166. package/assets/images/mugshot/ans/12/STFTL20.ans +12 -0
  167. package/assets/images/mugshot/ans/12/STFTL30.ans +12 -0
  168. package/assets/images/mugshot/ans/12/STFTL40.ans +12 -0
  169. package/assets/images/mugshot/ans/12/STFTR00.ans +12 -0
  170. package/assets/images/mugshot/ans/12/STFTR10.ans +12 -0
  171. package/assets/images/mugshot/ans/12/STFTR20.ans +12 -0
  172. package/assets/images/mugshot/ans/12/STFTR30.ans +12 -0
  173. package/assets/images/mugshot/ans/12/STFTR40.ans +12 -0
  174. package/assets/images/mugshot/ans/13/STFDEAD0.ans +13 -0
  175. package/assets/images/mugshot/ans/13/STFEVL0.ans +13 -0
  176. package/assets/images/mugshot/ans/13/STFEVL1.ans +13 -0
  177. package/assets/images/mugshot/ans/13/STFEVL2.ans +13 -0
  178. package/assets/images/mugshot/ans/13/STFEVL3.ans +13 -0
  179. package/assets/images/mugshot/ans/13/STFEVL4.ans +13 -0
  180. package/assets/images/mugshot/ans/13/STFGOD0.ans +13 -0
  181. package/assets/images/mugshot/ans/13/STFKILL0.ans +13 -0
  182. package/assets/images/mugshot/ans/13/STFKILL1.ans +13 -0
  183. package/assets/images/mugshot/ans/13/STFKILL2.ans +13 -0
  184. package/assets/images/mugshot/ans/13/STFKILL3.ans +13 -0
  185. package/assets/images/mugshot/ans/13/STFKILL4.ans +13 -0
  186. package/assets/images/mugshot/ans/13/STFOUCH0.ans +13 -0
  187. package/assets/images/mugshot/ans/13/STFOUCH1.ans +13 -0
  188. package/assets/images/mugshot/ans/13/STFOUCH2.ans +13 -0
  189. package/assets/images/mugshot/ans/13/STFOUCH3.ans +13 -0
  190. package/assets/images/mugshot/ans/13/STFOUCH4.ans +13 -0
  191. package/assets/images/mugshot/ans/13/STFST00.ans +13 -0
  192. package/assets/images/mugshot/ans/13/STFST01.ans +13 -0
  193. package/assets/images/mugshot/ans/13/STFST02.ans +13 -0
  194. package/assets/images/mugshot/ans/13/STFST10.ans +13 -0
  195. package/assets/images/mugshot/ans/13/STFST11.ans +13 -0
  196. package/assets/images/mugshot/ans/13/STFST12.ans +13 -0
  197. package/assets/images/mugshot/ans/13/STFST20.ans +13 -0
  198. package/assets/images/mugshot/ans/13/STFST21.ans +13 -0
  199. package/assets/images/mugshot/ans/13/STFST22.ans +13 -0
  200. package/assets/images/mugshot/ans/13/STFST30.ans +13 -0
  201. package/assets/images/mugshot/ans/13/STFST31.ans +13 -0
  202. package/assets/images/mugshot/ans/13/STFST32.ans +13 -0
  203. package/assets/images/mugshot/ans/13/STFST40.ans +13 -0
  204. package/assets/images/mugshot/ans/13/STFST41.ans +13 -0
  205. package/assets/images/mugshot/ans/13/STFST42.ans +13 -0
  206. package/assets/images/mugshot/ans/13/STFTL00.ans +13 -0
  207. package/assets/images/mugshot/ans/13/STFTL10.ans +13 -0
  208. package/assets/images/mugshot/ans/13/STFTL20.ans +13 -0
  209. package/assets/images/mugshot/ans/13/STFTL30.ans +13 -0
  210. package/assets/images/mugshot/ans/13/STFTL40.ans +13 -0
  211. package/assets/images/mugshot/ans/13/STFTR00.ans +13 -0
  212. package/assets/images/mugshot/ans/13/STFTR10.ans +13 -0
  213. package/assets/images/mugshot/ans/13/STFTR20.ans +13 -0
  214. package/assets/images/mugshot/ans/13/STFTR30.ans +13 -0
  215. package/assets/images/mugshot/ans/13/STFTR40.ans +13 -0
  216. package/assets/images/mugshot/ans/14/STFDEAD0.ans +14 -0
  217. package/assets/images/mugshot/ans/14/STFEVL0.ans +14 -0
  218. package/assets/images/mugshot/ans/14/STFEVL1.ans +14 -0
  219. package/assets/images/mugshot/ans/14/STFEVL2.ans +14 -0
  220. package/assets/images/mugshot/ans/14/STFEVL3.ans +14 -0
  221. package/assets/images/mugshot/ans/14/STFEVL4.ans +14 -0
  222. package/assets/images/mugshot/ans/14/STFGOD0.ans +14 -0
  223. package/assets/images/mugshot/ans/14/STFKILL0.ans +14 -0
  224. package/assets/images/mugshot/ans/14/STFKILL1.ans +14 -0
  225. package/assets/images/mugshot/ans/14/STFKILL2.ans +14 -0
  226. package/assets/images/mugshot/ans/14/STFKILL3.ans +14 -0
  227. package/assets/images/mugshot/ans/14/STFKILL4.ans +14 -0
  228. package/assets/images/mugshot/ans/14/STFOUCH0.ans +14 -0
  229. package/assets/images/mugshot/ans/14/STFOUCH1.ans +14 -0
  230. package/assets/images/mugshot/ans/14/STFOUCH2.ans +14 -0
  231. package/assets/images/mugshot/ans/14/STFOUCH3.ans +14 -0
  232. package/assets/images/mugshot/ans/14/STFOUCH4.ans +14 -0
  233. package/assets/images/mugshot/ans/14/STFST00.ans +14 -0
  234. package/assets/images/mugshot/ans/14/STFST01.ans +14 -0
  235. package/assets/images/mugshot/ans/14/STFST02.ans +14 -0
  236. package/assets/images/mugshot/ans/14/STFST10.ans +14 -0
  237. package/assets/images/mugshot/ans/14/STFST11.ans +14 -0
  238. package/assets/images/mugshot/ans/14/STFST12.ans +14 -0
  239. package/assets/images/mugshot/ans/14/STFST20.ans +14 -0
  240. package/assets/images/mugshot/ans/14/STFST21.ans +14 -0
  241. package/assets/images/mugshot/ans/14/STFST22.ans +14 -0
  242. package/assets/images/mugshot/ans/14/STFST30.ans +14 -0
  243. package/assets/images/mugshot/ans/14/STFST31.ans +14 -0
  244. package/assets/images/mugshot/ans/14/STFST32.ans +14 -0
  245. package/assets/images/mugshot/ans/14/STFST40.ans +14 -0
  246. package/assets/images/mugshot/ans/14/STFST41.ans +14 -0
  247. package/assets/images/mugshot/ans/14/STFST42.ans +14 -0
  248. package/assets/images/mugshot/ans/14/STFTL00.ans +14 -0
  249. package/assets/images/mugshot/ans/14/STFTL10.ans +14 -0
  250. package/assets/images/mugshot/ans/14/STFTL20.ans +14 -0
  251. package/assets/images/mugshot/ans/14/STFTL30.ans +14 -0
  252. package/assets/images/mugshot/ans/14/STFTL40.ans +14 -0
  253. package/assets/images/mugshot/ans/14/STFTR00.ans +14 -0
  254. package/assets/images/mugshot/ans/14/STFTR10.ans +14 -0
  255. package/assets/images/mugshot/ans/14/STFTR20.ans +14 -0
  256. package/assets/images/mugshot/ans/14/STFTR30.ans +14 -0
  257. package/assets/images/mugshot/ans/14/STFTR40.ans +14 -0
  258. package/assets/images/mugshot/ans/15/STFDEAD0.ans +15 -0
  259. package/assets/images/mugshot/ans/15/STFEVL0.ans +15 -0
  260. package/assets/images/mugshot/ans/15/STFEVL1.ans +15 -0
  261. package/assets/images/mugshot/ans/15/STFEVL2.ans +15 -0
  262. package/assets/images/mugshot/ans/15/STFEVL3.ans +15 -0
  263. package/assets/images/mugshot/ans/15/STFEVL4.ans +15 -0
  264. package/assets/images/mugshot/ans/15/STFGOD0.ans +15 -0
  265. package/assets/images/mugshot/ans/15/STFKILL0.ans +15 -0
  266. package/assets/images/mugshot/ans/15/STFKILL1.ans +15 -0
  267. package/assets/images/mugshot/ans/15/STFKILL2.ans +15 -0
  268. package/assets/images/mugshot/ans/15/STFKILL3.ans +15 -0
  269. package/assets/images/mugshot/ans/15/STFKILL4.ans +15 -0
  270. package/assets/images/mugshot/ans/15/STFOUCH0.ans +15 -0
  271. package/assets/images/mugshot/ans/15/STFOUCH1.ans +15 -0
  272. package/assets/images/mugshot/ans/15/STFOUCH2.ans +15 -0
  273. package/assets/images/mugshot/ans/15/STFOUCH3.ans +15 -0
  274. package/assets/images/mugshot/ans/15/STFOUCH4.ans +15 -0
  275. package/assets/images/mugshot/ans/15/STFST00.ans +15 -0
  276. package/assets/images/mugshot/ans/15/STFST01.ans +15 -0
  277. package/assets/images/mugshot/ans/15/STFST02.ans +15 -0
  278. package/assets/images/mugshot/ans/15/STFST10.ans +15 -0
  279. package/assets/images/mugshot/ans/15/STFST11.ans +15 -0
  280. package/assets/images/mugshot/ans/15/STFST12.ans +15 -0
  281. package/assets/images/mugshot/ans/15/STFST20.ans +15 -0
  282. package/assets/images/mugshot/ans/15/STFST21.ans +15 -0
  283. package/assets/images/mugshot/ans/15/STFST22.ans +15 -0
  284. package/assets/images/mugshot/ans/15/STFST30.ans +15 -0
  285. package/assets/images/mugshot/ans/15/STFST31.ans +15 -0
  286. package/assets/images/mugshot/ans/15/STFST32.ans +15 -0
  287. package/assets/images/mugshot/ans/15/STFST40.ans +15 -0
  288. package/assets/images/mugshot/ans/15/STFST41.ans +15 -0
  289. package/assets/images/mugshot/ans/15/STFST42.ans +15 -0
  290. package/assets/images/mugshot/ans/15/STFTL00.ans +15 -0
  291. package/assets/images/mugshot/ans/15/STFTL10.ans +15 -0
  292. package/assets/images/mugshot/ans/15/STFTL20.ans +15 -0
  293. package/assets/images/mugshot/ans/15/STFTL30.ans +15 -0
  294. package/assets/images/mugshot/ans/15/STFTL40.ans +15 -0
  295. package/assets/images/mugshot/ans/15/STFTR00.ans +15 -0
  296. package/assets/images/mugshot/ans/15/STFTR10.ans +15 -0
  297. package/assets/images/mugshot/ans/15/STFTR20.ans +15 -0
  298. package/assets/images/mugshot/ans/15/STFTR30.ans +15 -0
  299. package/assets/images/mugshot/ans/15/STFTR40.ans +15 -0
  300. package/assets/images/mugshot/ans/16/STFDEAD0.ans +16 -0
  301. package/assets/images/mugshot/ans/16/STFEVL0.ans +15 -0
  302. package/assets/images/mugshot/ans/16/STFEVL1.ans +15 -0
  303. package/assets/images/mugshot/ans/16/STFEVL2.ans +15 -0
  304. package/assets/images/mugshot/ans/16/STFEVL3.ans +15 -0
  305. package/assets/images/mugshot/ans/16/STFEVL4.ans +15 -0
  306. package/assets/images/mugshot/ans/16/STFGOD0.ans +15 -0
  307. package/assets/images/mugshot/ans/16/STFKILL0.ans +15 -0
  308. package/assets/images/mugshot/ans/16/STFKILL1.ans +15 -0
  309. package/assets/images/mugshot/ans/16/STFKILL2.ans +15 -0
  310. package/assets/images/mugshot/ans/16/STFKILL3.ans +15 -0
  311. package/assets/images/mugshot/ans/16/STFKILL4.ans +15 -0
  312. package/assets/images/mugshot/ans/16/STFOUCH0.ans +16 -0
  313. package/assets/images/mugshot/ans/16/STFOUCH1.ans +16 -0
  314. package/assets/images/mugshot/ans/16/STFOUCH2.ans +16 -0
  315. package/assets/images/mugshot/ans/16/STFOUCH3.ans +16 -0
  316. package/assets/images/mugshot/ans/16/STFOUCH4.ans +16 -0
  317. package/assets/images/mugshot/ans/16/STFST00.ans +15 -0
  318. package/assets/images/mugshot/ans/16/STFST01.ans +15 -0
  319. package/assets/images/mugshot/ans/16/STFST02.ans +15 -0
  320. package/assets/images/mugshot/ans/16/STFST10.ans +15 -0
  321. package/assets/images/mugshot/ans/16/STFST11.ans +15 -0
  322. package/assets/images/mugshot/ans/16/STFST12.ans +15 -0
  323. package/assets/images/mugshot/ans/16/STFST20.ans +15 -0
  324. package/assets/images/mugshot/ans/16/STFST21.ans +15 -0
  325. package/assets/images/mugshot/ans/16/STFST22.ans +15 -0
  326. package/assets/images/mugshot/ans/16/STFST30.ans +16 -0
  327. package/assets/images/mugshot/ans/16/STFST31.ans +16 -0
  328. package/assets/images/mugshot/ans/16/STFST32.ans +16 -0
  329. package/assets/images/mugshot/ans/16/STFST40.ans +16 -0
  330. package/assets/images/mugshot/ans/16/STFST41.ans +16 -0
  331. package/assets/images/mugshot/ans/16/STFST42.ans +16 -0
  332. package/assets/images/mugshot/ans/16/STFTL00.ans +15 -0
  333. package/assets/images/mugshot/ans/16/STFTL10.ans +15 -0
  334. package/assets/images/mugshot/ans/16/STFTL20.ans +15 -0
  335. package/assets/images/mugshot/ans/16/STFTL30.ans +16 -0
  336. package/assets/images/mugshot/ans/16/STFTL40.ans +16 -0
  337. package/assets/images/mugshot/ans/16/STFTR00.ans +15 -0
  338. package/assets/images/mugshot/ans/16/STFTR10.ans +15 -0
  339. package/assets/images/mugshot/ans/16/STFTR20.ans +15 -0
  340. package/assets/images/mugshot/ans/16/STFTR30.ans +15 -0
  341. package/assets/images/mugshot/ans/16/STFTR40.ans +15 -0
  342. package/assets/images/mugshot/ans/4/STFDEAD0.ans +4 -0
  343. package/assets/images/mugshot/ans/4/STFEVL0.ans +4 -0
  344. package/assets/images/mugshot/ans/4/STFEVL1.ans +4 -0
  345. package/assets/images/mugshot/ans/4/STFEVL2.ans +4 -0
  346. package/assets/images/mugshot/ans/4/STFEVL3.ans +4 -0
  347. package/assets/images/mugshot/ans/4/STFEVL4.ans +4 -0
  348. package/assets/images/mugshot/ans/4/STFGOD0.ans +4 -0
  349. package/assets/images/mugshot/ans/4/STFKILL0.ans +4 -0
  350. package/assets/images/mugshot/ans/4/STFKILL1.ans +4 -0
  351. package/assets/images/mugshot/ans/4/STFKILL2.ans +4 -0
  352. package/assets/images/mugshot/ans/4/STFKILL3.ans +4 -0
  353. package/assets/images/mugshot/ans/4/STFKILL4.ans +4 -0
  354. package/assets/images/mugshot/ans/4/STFOUCH0.ans +4 -0
  355. package/assets/images/mugshot/ans/4/STFOUCH1.ans +4 -0
  356. package/assets/images/mugshot/ans/4/STFOUCH2.ans +4 -0
  357. package/assets/images/mugshot/ans/4/STFOUCH3.ans +4 -0
  358. package/assets/images/mugshot/ans/4/STFOUCH4.ans +4 -0
  359. package/assets/images/mugshot/ans/4/STFST00.ans +4 -0
  360. package/assets/images/mugshot/ans/4/STFST01.ans +4 -0
  361. package/assets/images/mugshot/ans/4/STFST02.ans +4 -0
  362. package/assets/images/mugshot/ans/4/STFST10.ans +4 -0
  363. package/assets/images/mugshot/ans/4/STFST11.ans +4 -0
  364. package/assets/images/mugshot/ans/4/STFST12.ans +4 -0
  365. package/assets/images/mugshot/ans/4/STFST20.ans +4 -0
  366. package/assets/images/mugshot/ans/4/STFST21.ans +4 -0
  367. package/assets/images/mugshot/ans/4/STFST22.ans +4 -0
  368. package/assets/images/mugshot/ans/4/STFST30.ans +4 -0
  369. package/assets/images/mugshot/ans/4/STFST31.ans +4 -0
  370. package/assets/images/mugshot/ans/4/STFST32.ans +4 -0
  371. package/assets/images/mugshot/ans/4/STFST40.ans +4 -0
  372. package/assets/images/mugshot/ans/4/STFST41.ans +4 -0
  373. package/assets/images/mugshot/ans/4/STFST42.ans +4 -0
  374. package/assets/images/mugshot/ans/4/STFTL00.ans +4 -0
  375. package/assets/images/mugshot/ans/4/STFTL10.ans +4 -0
  376. package/assets/images/mugshot/ans/4/STFTL20.ans +4 -0
  377. package/assets/images/mugshot/ans/4/STFTL30.ans +4 -0
  378. package/assets/images/mugshot/ans/4/STFTL40.ans +4 -0
  379. package/assets/images/mugshot/ans/4/STFTR00.ans +4 -0
  380. package/assets/images/mugshot/ans/4/STFTR10.ans +4 -0
  381. package/assets/images/mugshot/ans/4/STFTR20.ans +4 -0
  382. package/assets/images/mugshot/ans/4/STFTR30.ans +4 -0
  383. package/assets/images/mugshot/ans/4/STFTR40.ans +4 -0
  384. package/assets/images/mugshot/ans/5/STFDEAD0.ans +5 -0
  385. package/assets/images/mugshot/ans/5/STFEVL0.ans +5 -0
  386. package/assets/images/mugshot/ans/5/STFEVL1.ans +5 -0
  387. package/assets/images/mugshot/ans/5/STFEVL2.ans +5 -0
  388. package/assets/images/mugshot/ans/5/STFEVL3.ans +5 -0
  389. package/assets/images/mugshot/ans/5/STFEVL4.ans +5 -0
  390. package/assets/images/mugshot/ans/5/STFGOD0.ans +5 -0
  391. package/assets/images/mugshot/ans/5/STFKILL0.ans +5 -0
  392. package/assets/images/mugshot/ans/5/STFKILL1.ans +5 -0
  393. package/assets/images/mugshot/ans/5/STFKILL2.ans +5 -0
  394. package/assets/images/mugshot/ans/5/STFKILL3.ans +5 -0
  395. package/assets/images/mugshot/ans/5/STFKILL4.ans +5 -0
  396. package/assets/images/mugshot/ans/5/STFOUCH0.ans +5 -0
  397. package/assets/images/mugshot/ans/5/STFOUCH1.ans +5 -0
  398. package/assets/images/mugshot/ans/5/STFOUCH2.ans +5 -0
  399. package/assets/images/mugshot/ans/5/STFOUCH3.ans +5 -0
  400. package/assets/images/mugshot/ans/5/STFOUCH4.ans +5 -0
  401. package/assets/images/mugshot/ans/5/STFST00.ans +5 -0
  402. package/assets/images/mugshot/ans/5/STFST01.ans +5 -0
  403. package/assets/images/mugshot/ans/5/STFST02.ans +5 -0
  404. package/assets/images/mugshot/ans/5/STFST10.ans +5 -0
  405. package/assets/images/mugshot/ans/5/STFST11.ans +5 -0
  406. package/assets/images/mugshot/ans/5/STFST12.ans +5 -0
  407. package/assets/images/mugshot/ans/5/STFST20.ans +5 -0
  408. package/assets/images/mugshot/ans/5/STFST21.ans +5 -0
  409. package/assets/images/mugshot/ans/5/STFST22.ans +5 -0
  410. package/assets/images/mugshot/ans/5/STFST30.ans +5 -0
  411. package/assets/images/mugshot/ans/5/STFST31.ans +5 -0
  412. package/assets/images/mugshot/ans/5/STFST32.ans +5 -0
  413. package/assets/images/mugshot/ans/5/STFST40.ans +5 -0
  414. package/assets/images/mugshot/ans/5/STFST41.ans +5 -0
  415. package/assets/images/mugshot/ans/5/STFST42.ans +5 -0
  416. package/assets/images/mugshot/ans/5/STFTL00.ans +5 -0
  417. package/assets/images/mugshot/ans/5/STFTL10.ans +5 -0
  418. package/assets/images/mugshot/ans/5/STFTL20.ans +5 -0
  419. package/assets/images/mugshot/ans/5/STFTL30.ans +5 -0
  420. package/assets/images/mugshot/ans/5/STFTL40.ans +5 -0
  421. package/assets/images/mugshot/ans/5/STFTR00.ans +5 -0
  422. package/assets/images/mugshot/ans/5/STFTR10.ans +5 -0
  423. package/assets/images/mugshot/ans/5/STFTR20.ans +5 -0
  424. package/assets/images/mugshot/ans/5/STFTR30.ans +5 -0
  425. package/assets/images/mugshot/ans/5/STFTR40.ans +5 -0
  426. package/assets/images/mugshot/ans/6/STFDEAD0.ans +6 -0
  427. package/assets/images/mugshot/ans/6/STFEVL0.ans +6 -0
  428. package/assets/images/mugshot/ans/6/STFEVL1.ans +6 -0
  429. package/assets/images/mugshot/ans/6/STFEVL2.ans +6 -0
  430. package/assets/images/mugshot/ans/6/STFEVL3.ans +6 -0
  431. package/assets/images/mugshot/ans/6/STFEVL4.ans +6 -0
  432. package/assets/images/mugshot/ans/6/STFGOD0.ans +6 -0
  433. package/assets/images/mugshot/ans/6/STFKILL0.ans +6 -0
  434. package/assets/images/mugshot/ans/6/STFKILL1.ans +6 -0
  435. package/assets/images/mugshot/ans/6/STFKILL2.ans +6 -0
  436. package/assets/images/mugshot/ans/6/STFKILL3.ans +6 -0
  437. package/assets/images/mugshot/ans/6/STFKILL4.ans +6 -0
  438. package/assets/images/mugshot/ans/6/STFOUCH0.ans +6 -0
  439. package/assets/images/mugshot/ans/6/STFOUCH1.ans +6 -0
  440. package/assets/images/mugshot/ans/6/STFOUCH2.ans +6 -0
  441. package/assets/images/mugshot/ans/6/STFOUCH3.ans +6 -0
  442. package/assets/images/mugshot/ans/6/STFOUCH4.ans +6 -0
  443. package/assets/images/mugshot/ans/6/STFST00.ans +6 -0
  444. package/assets/images/mugshot/ans/6/STFST01.ans +6 -0
  445. package/assets/images/mugshot/ans/6/STFST02.ans +6 -0
  446. package/assets/images/mugshot/ans/6/STFST10.ans +6 -0
  447. package/assets/images/mugshot/ans/6/STFST11.ans +6 -0
  448. package/assets/images/mugshot/ans/6/STFST12.ans +6 -0
  449. package/assets/images/mugshot/ans/6/STFST20.ans +6 -0
  450. package/assets/images/mugshot/ans/6/STFST21.ans +6 -0
  451. package/assets/images/mugshot/ans/6/STFST22.ans +6 -0
  452. package/assets/images/mugshot/ans/6/STFST30.ans +6 -0
  453. package/assets/images/mugshot/ans/6/STFST31.ans +6 -0
  454. package/assets/images/mugshot/ans/6/STFST32.ans +6 -0
  455. package/assets/images/mugshot/ans/6/STFST40.ans +6 -0
  456. package/assets/images/mugshot/ans/6/STFST41.ans +6 -0
  457. package/assets/images/mugshot/ans/6/STFST42.ans +6 -0
  458. package/assets/images/mugshot/ans/6/STFTL00.ans +6 -0
  459. package/assets/images/mugshot/ans/6/STFTL10.ans +6 -0
  460. package/assets/images/mugshot/ans/6/STFTL20.ans +6 -0
  461. package/assets/images/mugshot/ans/6/STFTL30.ans +6 -0
  462. package/assets/images/mugshot/ans/6/STFTL40.ans +6 -0
  463. package/assets/images/mugshot/ans/6/STFTR00.ans +6 -0
  464. package/assets/images/mugshot/ans/6/STFTR10.ans +6 -0
  465. package/assets/images/mugshot/ans/6/STFTR20.ans +6 -0
  466. package/assets/images/mugshot/ans/6/STFTR30.ans +6 -0
  467. package/assets/images/mugshot/ans/6/STFTR40.ans +6 -0
  468. package/assets/images/mugshot/ans/7/STFDEAD0.ans +7 -0
  469. package/assets/images/mugshot/ans/7/STFEVL0.ans +7 -0
  470. package/assets/images/mugshot/ans/7/STFEVL1.ans +7 -0
  471. package/assets/images/mugshot/ans/7/STFEVL2.ans +7 -0
  472. package/assets/images/mugshot/ans/7/STFEVL3.ans +7 -0
  473. package/assets/images/mugshot/ans/7/STFEVL4.ans +7 -0
  474. package/assets/images/mugshot/ans/7/STFGOD0.ans +7 -0
  475. package/assets/images/mugshot/ans/7/STFKILL0.ans +7 -0
  476. package/assets/images/mugshot/ans/7/STFKILL1.ans +7 -0
  477. package/assets/images/mugshot/ans/7/STFKILL2.ans +7 -0
  478. package/assets/images/mugshot/ans/7/STFKILL3.ans +7 -0
  479. package/assets/images/mugshot/ans/7/STFKILL4.ans +7 -0
  480. package/assets/images/mugshot/ans/7/STFOUCH0.ans +7 -0
  481. package/assets/images/mugshot/ans/7/STFOUCH1.ans +7 -0
  482. package/assets/images/mugshot/ans/7/STFOUCH2.ans +7 -0
  483. package/assets/images/mugshot/ans/7/STFOUCH3.ans +7 -0
  484. package/assets/images/mugshot/ans/7/STFOUCH4.ans +7 -0
  485. package/assets/images/mugshot/ans/7/STFST00.ans +7 -0
  486. package/assets/images/mugshot/ans/7/STFST01.ans +7 -0
  487. package/assets/images/mugshot/ans/7/STFST02.ans +7 -0
  488. package/assets/images/mugshot/ans/7/STFST10.ans +7 -0
  489. package/assets/images/mugshot/ans/7/STFST11.ans +7 -0
  490. package/assets/images/mugshot/ans/7/STFST12.ans +7 -0
  491. package/assets/images/mugshot/ans/7/STFST20.ans +7 -0
  492. package/assets/images/mugshot/ans/7/STFST21.ans +7 -0
  493. package/assets/images/mugshot/ans/7/STFST22.ans +7 -0
  494. package/assets/images/mugshot/ans/7/STFST30.ans +7 -0
  495. package/assets/images/mugshot/ans/7/STFST31.ans +7 -0
  496. package/assets/images/mugshot/ans/7/STFST32.ans +7 -0
  497. package/assets/images/mugshot/ans/7/STFST40.ans +7 -0
  498. package/assets/images/mugshot/ans/7/STFST41.ans +7 -0
  499. package/assets/images/mugshot/ans/7/STFST42.ans +7 -0
  500. package/assets/images/mugshot/ans/7/STFTL00.ans +7 -0
  501. package/assets/images/mugshot/ans/7/STFTL10.ans +7 -0
  502. package/assets/images/mugshot/ans/7/STFTL20.ans +7 -0
  503. package/assets/images/mugshot/ans/7/STFTL30.ans +7 -0
  504. package/assets/images/mugshot/ans/7/STFTL40.ans +7 -0
  505. package/assets/images/mugshot/ans/7/STFTR00.ans +7 -0
  506. package/assets/images/mugshot/ans/7/STFTR10.ans +7 -0
  507. package/assets/images/mugshot/ans/7/STFTR20.ans +7 -0
  508. package/assets/images/mugshot/ans/7/STFTR30.ans +7 -0
  509. package/assets/images/mugshot/ans/7/STFTR40.ans +7 -0
  510. package/assets/images/mugshot/ans/8/STFDEAD0.ans +8 -0
  511. package/assets/images/mugshot/ans/8/STFEVL0.ans +8 -0
  512. package/assets/images/mugshot/ans/8/STFEVL1.ans +8 -0
  513. package/assets/images/mugshot/ans/8/STFEVL2.ans +8 -0
  514. package/assets/images/mugshot/ans/8/STFEVL3.ans +8 -0
  515. package/assets/images/mugshot/ans/8/STFEVL4.ans +8 -0
  516. package/assets/images/mugshot/ans/8/STFGOD0.ans +8 -0
  517. package/assets/images/mugshot/ans/8/STFKILL0.ans +8 -0
  518. package/assets/images/mugshot/ans/8/STFKILL1.ans +8 -0
  519. package/assets/images/mugshot/ans/8/STFKILL2.ans +8 -0
  520. package/assets/images/mugshot/ans/8/STFKILL3.ans +8 -0
  521. package/assets/images/mugshot/ans/8/STFKILL4.ans +8 -0
  522. package/assets/images/mugshot/ans/8/STFOUCH0.ans +8 -0
  523. package/assets/images/mugshot/ans/8/STFOUCH1.ans +8 -0
  524. package/assets/images/mugshot/ans/8/STFOUCH2.ans +8 -0
  525. package/assets/images/mugshot/ans/8/STFOUCH3.ans +8 -0
  526. package/assets/images/mugshot/ans/8/STFOUCH4.ans +8 -0
  527. package/assets/images/mugshot/ans/8/STFST00.ans +8 -0
  528. package/assets/images/mugshot/ans/8/STFST01.ans +8 -0
  529. package/assets/images/mugshot/ans/8/STFST02.ans +8 -0
  530. package/assets/images/mugshot/ans/8/STFST10.ans +8 -0
  531. package/assets/images/mugshot/ans/8/STFST11.ans +8 -0
  532. package/assets/images/mugshot/ans/8/STFST12.ans +8 -0
  533. package/assets/images/mugshot/ans/8/STFST20.ans +8 -0
  534. package/assets/images/mugshot/ans/8/STFST21.ans +8 -0
  535. package/assets/images/mugshot/ans/8/STFST22.ans +8 -0
  536. package/assets/images/mugshot/ans/8/STFST30.ans +8 -0
  537. package/assets/images/mugshot/ans/8/STFST31.ans +8 -0
  538. package/assets/images/mugshot/ans/8/STFST32.ans +8 -0
  539. package/assets/images/mugshot/ans/8/STFST40.ans +8 -0
  540. package/assets/images/mugshot/ans/8/STFST41.ans +8 -0
  541. package/assets/images/mugshot/ans/8/STFST42.ans +8 -0
  542. package/assets/images/mugshot/ans/8/STFTL00.ans +8 -0
  543. package/assets/images/mugshot/ans/8/STFTL10.ans +8 -0
  544. package/assets/images/mugshot/ans/8/STFTL20.ans +8 -0
  545. package/assets/images/mugshot/ans/8/STFTL30.ans +8 -0
  546. package/assets/images/mugshot/ans/8/STFTL40.ans +8 -0
  547. package/assets/images/mugshot/ans/8/STFTR00.ans +8 -0
  548. package/assets/images/mugshot/ans/8/STFTR10.ans +8 -0
  549. package/assets/images/mugshot/ans/8/STFTR20.ans +8 -0
  550. package/assets/images/mugshot/ans/8/STFTR30.ans +8 -0
  551. package/assets/images/mugshot/ans/8/STFTR40.ans +8 -0
  552. package/assets/images/mugshot/ans/9/STFDEAD0.ans +9 -0
  553. package/assets/images/mugshot/ans/9/STFEVL0.ans +9 -0
  554. package/assets/images/mugshot/ans/9/STFEVL1.ans +9 -0
  555. package/assets/images/mugshot/ans/9/STFEVL2.ans +9 -0
  556. package/assets/images/mugshot/ans/9/STFEVL3.ans +9 -0
  557. package/assets/images/mugshot/ans/9/STFEVL4.ans +9 -0
  558. package/assets/images/mugshot/ans/9/STFGOD0.ans +9 -0
  559. package/assets/images/mugshot/ans/9/STFKILL0.ans +9 -0
  560. package/assets/images/mugshot/ans/9/STFKILL1.ans +9 -0
  561. package/assets/images/mugshot/ans/9/STFKILL2.ans +9 -0
  562. package/assets/images/mugshot/ans/9/STFKILL3.ans +9 -0
  563. package/assets/images/mugshot/ans/9/STFKILL4.ans +9 -0
  564. package/assets/images/mugshot/ans/9/STFOUCH0.ans +9 -0
  565. package/assets/images/mugshot/ans/9/STFOUCH1.ans +9 -0
  566. package/assets/images/mugshot/ans/9/STFOUCH2.ans +9 -0
  567. package/assets/images/mugshot/ans/9/STFOUCH3.ans +9 -0
  568. package/assets/images/mugshot/ans/9/STFOUCH4.ans +9 -0
  569. package/assets/images/mugshot/ans/9/STFST00.ans +9 -0
  570. package/assets/images/mugshot/ans/9/STFST01.ans +9 -0
  571. package/assets/images/mugshot/ans/9/STFST02.ans +9 -0
  572. package/assets/images/mugshot/ans/9/STFST10.ans +9 -0
  573. package/assets/images/mugshot/ans/9/STFST11.ans +9 -0
  574. package/assets/images/mugshot/ans/9/STFST12.ans +9 -0
  575. package/assets/images/mugshot/ans/9/STFST20.ans +9 -0
  576. package/assets/images/mugshot/ans/9/STFST21.ans +9 -0
  577. package/assets/images/mugshot/ans/9/STFST22.ans +9 -0
  578. package/assets/images/mugshot/ans/9/STFST30.ans +9 -0
  579. package/assets/images/mugshot/ans/9/STFST31.ans +9 -0
  580. package/assets/images/mugshot/ans/9/STFST32.ans +9 -0
  581. package/assets/images/mugshot/ans/9/STFST40.ans +9 -0
  582. package/assets/images/mugshot/ans/9/STFST41.ans +9 -0
  583. package/assets/images/mugshot/ans/9/STFST42.ans +9 -0
  584. package/assets/images/mugshot/ans/9/STFTL00.ans +9 -0
  585. package/assets/images/mugshot/ans/9/STFTL10.ans +9 -0
  586. package/assets/images/mugshot/ans/9/STFTL20.ans +9 -0
  587. package/assets/images/mugshot/ans/9/STFTL30.ans +9 -0
  588. package/assets/images/mugshot/ans/9/STFTL40.ans +9 -0
  589. package/assets/images/mugshot/ans/9/STFTR00.ans +9 -0
  590. package/assets/images/mugshot/ans/9/STFTR10.ans +9 -0
  591. package/assets/images/mugshot/ans/9/STFTR20.ans +9 -0
  592. package/assets/images/mugshot/ans/9/STFTR30.ans +9 -0
  593. package/assets/images/mugshot/ans/9/STFTR40.ans +9 -0
  594. package/assets/images/mugshot/wad/STFDEAD0.png +0 -0
  595. package/assets/images/mugshot/wad/STFEVL0.png +0 -0
  596. package/assets/images/mugshot/wad/STFEVL1.png +0 -0
  597. package/assets/images/mugshot/wad/STFEVL2.png +0 -0
  598. package/assets/images/mugshot/wad/STFEVL3.png +0 -0
  599. package/assets/images/mugshot/wad/STFEVL4.png +0 -0
  600. package/assets/images/mugshot/wad/STFGOD0.png +0 -0
  601. package/assets/images/mugshot/wad/STFKILL0.png +0 -0
  602. package/assets/images/mugshot/wad/STFKILL1.png +0 -0
  603. package/assets/images/mugshot/wad/STFKILL2.png +0 -0
  604. package/assets/images/mugshot/wad/STFKILL3.png +0 -0
  605. package/assets/images/mugshot/wad/STFKILL4.png +0 -0
  606. package/assets/images/mugshot/wad/STFOUCH0.png +0 -0
  607. package/assets/images/mugshot/wad/STFOUCH1.png +0 -0
  608. package/assets/images/mugshot/wad/STFOUCH2.png +0 -0
  609. package/assets/images/mugshot/wad/STFOUCH3.png +0 -0
  610. package/assets/images/mugshot/wad/STFOUCH4.png +0 -0
  611. package/assets/images/mugshot/wad/STFST00.png +0 -0
  612. package/assets/images/mugshot/wad/STFST01.png +0 -0
  613. package/assets/images/mugshot/wad/STFST02.png +0 -0
  614. package/assets/images/mugshot/wad/STFST10.png +0 -0
  615. package/assets/images/mugshot/wad/STFST11.png +0 -0
  616. package/assets/images/mugshot/wad/STFST12.png +0 -0
  617. package/assets/images/mugshot/wad/STFST20.png +0 -0
  618. package/assets/images/mugshot/wad/STFST21.png +0 -0
  619. package/assets/images/mugshot/wad/STFST22.png +0 -0
  620. package/assets/images/mugshot/wad/STFST30.png +0 -0
  621. package/assets/images/mugshot/wad/STFST31.png +0 -0
  622. package/assets/images/mugshot/wad/STFST32.png +0 -0
  623. package/assets/images/mugshot/wad/STFST40.png +0 -0
  624. package/assets/images/mugshot/wad/STFST41.png +0 -0
  625. package/assets/images/mugshot/wad/STFST42.png +0 -0
  626. package/assets/images/mugshot/wad/STFTL00.png +0 -0
  627. package/assets/images/mugshot/wad/STFTL10.png +0 -0
  628. package/assets/images/mugshot/wad/STFTL20.png +0 -0
  629. package/assets/images/mugshot/wad/STFTL30.png +0 -0
  630. package/assets/images/mugshot/wad/STFTL40.png +0 -0
  631. package/assets/images/mugshot/wad/STFTR00.png +0 -0
  632. package/assets/images/mugshot/wad/STFTR10.png +0 -0
  633. package/assets/images/mugshot/wad/STFTR20.png +0 -0
  634. package/assets/images/mugshot/wad/STFTR30.png +0 -0
  635. package/assets/images/mugshot/wad/STFTR40.png +0 -0
  636. package/bin/cli.js +163 -0
  637. package/package.json +39 -0
  638. package/presets/default.toml +30 -0
  639. package/presets/full.toml +80 -0
  640. package/presets/minimal.toml +19 -0
  641. package/src/ansi.js +20 -0
  642. package/src/face.js +126 -0
  643. package/src/hook.js +136 -0
  644. package/src/render.js +463 -0
  645. package/src/statusline.js +318 -0
@@ -0,0 +1,318 @@
1
+ #!/usr/bin/env node
2
+ // Claude Code statusLine — the live DOOM HUD wired to real session data.
3
+ // Port of statusline.py. Reads the statusline JSON on stdin, fills metric values
4
+ // (+ git via shell, system metrics, the hook state file, the advisor transcript),
5
+ // picks the mugshot, and renders a preset.
6
+ //
7
+ // settings.json:
8
+ // "statusLine": { "type": "command",
9
+ // "command": "node /abs/path/src/statusline.js", "refreshInterval": 1 }
10
+ // Config: $DOOMBAR_PRESET (default presets/default.toml) State: $MUGSHOT_STATE
11
+
12
+ import {
13
+ readFileSync, writeFileSync, openSync, fstatSync, readSync, closeSync, statfsSync,
14
+ } from "node:fs";
15
+ import os from "node:os";
16
+ import path from "node:path";
17
+ import { fileURLToPath, pathToFileURL } from "node:url";
18
+ import { spawnSync } from "node:child_process";
19
+ import { parse as parseToml } from "smol-toml";
20
+ import { pyround, sgrFg } from "./ansi.js";
21
+ import { buildBar, setValues, OK, TEXT, CRIT } from "./render.js";
22
+
23
+ const HERE = path.dirname(fileURLToPath(import.meta.url));
24
+ const REPO = path.dirname(HERE);
25
+ const TMP = os.tmpdir();
26
+
27
+ const DECAY = 1.5; // seconds a reaction holds before relaxing to idle
28
+ const IDLE_CYCLE = 2; // seconds per idle glance
29
+ const GOD_FLASH = 3.0; // seconds the mugshot stays god after an advisor consult lands
30
+ const GEIGER_WINDOW = 30.0; // must match the hook's window
31
+ const GEIGER_BINS = 14;
32
+
33
+ const has = (o, k) => Object.prototype.hasOwnProperty.call(o || {}, k);
34
+
35
+ function git(cwd, ...args) {
36
+ try {
37
+ const r = spawnSync("git", ["-C", cwd, ...args], { encoding: "utf8", timeout: 1000 });
38
+ return r.status === 0 ? r.stdout.trim() : null;
39
+ } catch {
40
+ return null;
41
+ }
42
+ }
43
+
44
+ function _dur(secsF) {
45
+ let secs = Math.max(0, Math.trunc(secsF));
46
+ const d = Math.floor(secs / 86400); secs %= 86400;
47
+ const h = Math.floor(secs / 3600); secs %= 3600;
48
+ const m = Math.floor(secs / 60);
49
+ const s = secs % 60;
50
+ if (d) return `${d}d${h}h`;
51
+ if (h) return `${h}h${String(m).padStart(2, "0")}m`;
52
+ if (m) return `${m}m`;
53
+ return `${s}s`;
54
+ }
55
+
56
+ function _link(text, url) {
57
+ return url ? `\x1b]8;;${url}\x1b\\${text}\x1b]8;;\x1b\\` : text;
58
+ }
59
+
60
+ function _prettyModel(mid) {
61
+ mid = mid.replace(/\[.*?\]$/, "").replace("claude-", "");
62
+ const parts = mid.split("-");
63
+ return parts.length ? `${parts[0][0].toUpperCase()}${parts[0].slice(1)} ${parts.slice(1).join(".")}`.trim() : mid;
64
+ }
65
+
66
+ function advisorInfo(p) {
67
+ let chunk;
68
+ try {
69
+ const fd = openSync(p, "r");
70
+ const size = fstatSync(fd).size;
71
+ const start = Math.max(0, size - 65536);
72
+ const buf = Buffer.alloc(size - start);
73
+ readSync(fd, buf, 0, buf.length, start);
74
+ closeSync(fd);
75
+ chunk = buf.toString("utf8");
76
+ } catch {
77
+ return [null, null];
78
+ }
79
+ let model = null, resTs = null;
80
+ for (const ln of chunk.split("\n")) {
81
+ if (!ln.includes("advisorModel") && !ln.includes("advisor_tool_result")) continue;
82
+ let o;
83
+ try { o = JSON.parse(ln); } catch { continue; }
84
+ if (o.advisorModel) model = o.advisorModel; // last wins
85
+ const c = (o.message || {}).content;
86
+ if (Array.isArray(c) && c.some((b) => b.type === "advisor_tool_result")) resTs = o.timestamp || resTs;
87
+ }
88
+ return [model ? _prettyModel(model) : null, resTs];
89
+ }
90
+
91
+ function godFlash(data, advTs, now) {
92
+ const sid = String(data.session_id || "default").replace(/[^A-Za-z0-9_-]/g, "_").slice(0, 48);
93
+ const cache = path.join(TMP, `mugshot_adv_${sid}.json`);
94
+ let c = {};
95
+ try { c = JSON.parse(readFileSync(cache, "utf8")); } catch { c = {}; }
96
+ if (advTs && advTs !== c.seen) {
97
+ if ("seen" in c) c.god_until = now + GOD_FLASH; // not the first scan -> a fresh consult
98
+ c.seen = advTs;
99
+ try { writeFileSync(cache, JSON.stringify(c)); } catch { /* ignore */ }
100
+ }
101
+ return c.god_until || 0;
102
+ }
103
+
104
+ const f = sgrFg;
105
+
106
+ export function buildValues(data) {
107
+ const v = {};
108
+ const cw = data.context_window || {};
109
+ if ("used_percentage" in cw) v["context.hp"] = pyround(cw.used_percentage);
110
+ const rl = data.rate_limits || {};
111
+ if (rl.five_hour) v["ratelimit.5h"] = pyround(rl.five_hour.used_percentage);
112
+ if (rl.seven_day) v["ratelimit.7d"] = pyround(rl.seven_day.used_percentage);
113
+ if (rl.five_hour && rl.five_hour.resets_at) v["usage.reset5h"] = _dur(rl.five_hour.resets_at - Date.now() / 1000);
114
+ if (rl.seven_day && rl.seven_day.resets_at) v["usage.reset7d"] = _dur(rl.seven_day.resets_at - Date.now() / 1000);
115
+ const cost = data.cost || {};
116
+ if ("total_cost_usd" in cost) v["cost.total"] = "$" + cost.total_cost_usd.toFixed(2);
117
+ if ("total_duration_ms" in cost) v["sys.session"] = _dur(cost.total_duration_ms / 1000);
118
+ if ("total_lines_added" in cost || "total_lines_removed" in cost) {
119
+ const a = cost.total_lines_added || 0, r = cost.total_lines_removed || 0;
120
+ v["loc.churn"] = `${f(OK)}+${a}${f(TEXT)} / ${f(CRIT)}-${r}`;
121
+ }
122
+
123
+ const m = data.model || {};
124
+ if (m.display_name) v["model.name"] = m.display_name.split(" (")[0];
125
+ const eff = (data.effort || {}).level;
126
+ if (eff) {
127
+ const icon = { low: "🌒", medium: "🌓", high: "🌔", xhigh: "🌕", max: "🌞" };
128
+ v["model.effort"] = icon[eff] || "🌓";
129
+ }
130
+ const cwm = (data.context_window || {}).context_window_size;
131
+ if (cwm) v["model.window"] = cwm >= 1000000 ? `${Math.floor(cwm / 1000000)}M` : `${Math.floor(cwm / 1000)}K`;
132
+ const th = data.thinking || {};
133
+ const mode = [];
134
+ if ("enabled" in th) mode.push(`💭 ${th.enabled ? "on" : "off"}`);
135
+ if ("fast_mode" in data) mode.push(`🚀 ${data.fast_mode ? "on" : "off"}`);
136
+ if (mode.length) v["model.mode"] = mode.join(" ");
137
+ const style = (data.output_style || {}).name;
138
+ if (style) v["model.style"] = style;
139
+
140
+ const repo = (data.workspace || {}).repo || {};
141
+ let repoUrl = "";
142
+ if (repo.host && repo.owner && repo.name) repoUrl = `https://${repo.host}/${repo.owner}/${repo.name}`;
143
+
144
+ const cwd = data.cwd || (data.workspace || {}).current_dir;
145
+ if (cwd) {
146
+ const name = path.basename(cwd.replace(/[/\\]+$/, "")) || cwd;
147
+ try { v["loc.cwd"] = _link(name, pathToFileURL(cwd).href); } catch { v["loc.cwd"] = name; }
148
+ const br = git(cwd, "branch", "--show-current");
149
+ if (br) v["git.branch"] = repoUrl ? _link(br, `${repoUrl}/tree/${br}`) : br;
150
+ const lr = git(cwd, "rev-list", "--count", "--left-right", "@{u}...HEAD");
151
+ if (lr && lr.includes("\t")) {
152
+ const [behind, ahead] = lr.split("\t");
153
+ v["git.behind"] = `↓${behind}`; v["git.ahead"] = `↑${ahead}`;
154
+ }
155
+ const st = git(cwd, "status", "--porcelain");
156
+ if (st !== null) v["git.status"] = String(st.split("\n").filter((l) => l.trim()).length);
157
+ }
158
+
159
+ const pr = data.pr || {};
160
+ if (pr.number || pr.url) {
161
+ const label = pr.number ? `#${pr.number}` : pr.review_state || "PR";
162
+ v["pr.state"] = _link(label, pr.url);
163
+ }
164
+ return v;
165
+ }
166
+
167
+ function _pick(bucket) {
168
+ let x = Math.imul(bucket, 0x9e3779b1) >>> 0;
169
+ x = (x ^ (x >>> 15)) >>> 0;
170
+ x = Math.imul(x, 0x85ebca77) >>> 0;
171
+ x = (x ^ (x >>> 13)) >>> 0;
172
+ return x % 3;
173
+ }
174
+
175
+ function statePath(data) {
176
+ if (process.env.MUGSHOT_STATE) return process.env.MUGSHOT_STATE;
177
+ const sid = String(data.session_id || "default").replace(/[^A-Za-z0-9_-]/g, "_").slice(0, 48);
178
+ return path.join(TMP, `mugshot_${sid}.json`);
179
+ }
180
+
181
+ function readState(data) {
182
+ try { return JSON.parse(readFileSync(statePath(data), "utf8")); } catch { return {}; }
183
+ }
184
+
185
+ function ramPercent() {
186
+ try { return pyround((1 - os.freemem() / os.totalmem()) * 100); } catch { return null; }
187
+ }
188
+
189
+ function cpuPercent() {
190
+ let total = 0, idle = 0;
191
+ try {
192
+ for (const c of os.cpus()) { for (const k in c.times) total += c.times[k]; idle += c.times.idle; }
193
+ } catch { return null; }
194
+ const cache = path.join(TMP, "mugshot_cpu.json");
195
+ let prev = null;
196
+ try { prev = JSON.parse(readFileSync(cache, "utf8")); } catch { /* none */ }
197
+ try { writeFileSync(cache, JSON.stringify({ total, idle })); } catch { /* ignore */ }
198
+ if (!prev) return null;
199
+ const dt = total - prev.total, di = idle - prev.idle;
200
+ return dt > 0 ? pyround(Math.max(0, Math.min(100, 100 * (1 - di / dt)))) : null;
201
+ }
202
+
203
+ function sysValues(cwd) {
204
+ const v = {};
205
+ const ram = ramPercent();
206
+ if (ram !== null) v["sys.ram"] = ram;
207
+ const cpu = cpuPercent();
208
+ if (cpu !== null) v["sys.cpu"] = `${cpu}%`;
209
+ try {
210
+ const stat = statfsSync(cwd || process.cwd());
211
+ v["sys.disk"] = pyround(((stat.blocks - stat.bfree) / stat.blocks) * 100);
212
+ } catch { /* ignore */ }
213
+ const d = new Date();
214
+ v["sys.clock"] = `${String(d.getHours()).padStart(2, "0")}:${String(d.getMinutes()).padStart(2, "0")}`;
215
+ return v;
216
+ }
217
+
218
+ const PERM = { plan: "📋 plan", auto: "⏩ auto", acceptEdits: "⏩ auto", bypassPermissions: "⏩ bypass" };
219
+ const OK_RGB = [96, 200, 104]; // matches render.js OK (done, green)
220
+ const CRIT_RGB = [224, 84, 64]; // matches render.js CRIT (deleted, red)
221
+ const TASK_MARK = { completed: ["✓", OK_RGB], deleted: ["✗", CRIT_RGB], in_progress: ["▶", null], pending: ["🎯", null] };
222
+ const TASK_ORDER = { completed: 0, deleted: 1, in_progress: 2, pending: 3 }; // settled first, then open
223
+
224
+ export function activityValues(st, now) {
225
+ const v = {};
226
+ if (PERM[st.mode]) v["model.permission"] = PERM[st.mode];
227
+ if ("spans" in st) {
228
+ const binw = GEIGER_WINDOW / GEIGER_BINS;
229
+ const start0 = now - GEIGER_WINDOW;
230
+ const series = new Array(GEIGER_BINS).fill(0);
231
+ for (const [s0, e0] of st.spans) {
232
+ let e = e0 === null ? now : e0;
233
+ const s = Math.max(s0, start0);
234
+ e = Math.min(e, now);
235
+ if (e <= s) continue;
236
+ const i0 = Math.max(0, Math.floor((s - start0) / binw));
237
+ const i1 = Math.min(GEIGER_BINS - 1, Math.floor((e - start0) / binw - 1e-9));
238
+ for (let i = i0; i <= i1; i++) {
239
+ const bs = start0 + i * binw;
240
+ series[i] += Math.min(e, bs + binw) - Math.max(s, bs);
241
+ }
242
+ }
243
+ v["act.geiger"] = series.map((c) => Math.min(1.0, c / binw));
244
+ }
245
+ // AGENTS + TASKS boxes (and their ACTIVITY counts) are always shown, even empty.
246
+ const squad = st.squad || {};
247
+ v["act.agents"] = String(Object.keys(squad).length);
248
+ const agents = Object.values(squad).sort((a, b) => a.start - b.start);
249
+ v["act.subagents"] = agents.map((a) => {
250
+ let label = a.desc || a.type || "agent";
251
+ if ([...label].length > 20) label = [...label].slice(0, 19).join("") + "…";
252
+ return [label, _dur(now - a.start)];
253
+ });
254
+
255
+ const tasks = st.tasks && typeof st.tasks === "object" ? Object.values(st.tasks) : [];
256
+ const live = tasks.filter((t) => t.status !== "deleted");
257
+ const done = live.filter((t) => t.status === "completed").length;
258
+ v["act.tasks"] = `${done}/${live.length}`;
259
+ const ordered = tasks
260
+ .map((t) => ({ ...t }))
261
+ .sort((a, b) => (TASK_ORDER[a.status] - TASK_ORDER[b.status]) || (a.ts - b.ts));
262
+ v["act.tasklist"] = ordered.map((t) => {
263
+ const [mark, markRgb] = TASK_MARK[t.status] || ["🎯", null];
264
+ return { mark, markRgb, text: t.title };
265
+ });
266
+
267
+ if ("errors" in st) v["act.errors"] = String(st.errors);
268
+ return v;
269
+ }
270
+
271
+ function main() {
272
+ let data = {};
273
+ try { data = JSON.parse(readFileSync(0, "utf8")); } catch { data = {}; }
274
+
275
+ const preset = process.env.DOOMBAR_PRESET || path.join(REPO, "presets", "default.toml");
276
+ const cfg = parseToml(readFileSync(preset, "utf8"));
277
+
278
+ const now = Date.now() / 1000;
279
+ const st = readState(data);
280
+ const cwd = data.cwd || (data.workspace || {}).current_dir;
281
+ const values = { ...buildValues(data), ...activityValues(st, now), ...sysValues(cwd) };
282
+ const [advModel, advTs] = advisorInfo(data.transcript_path || "");
283
+ if (advModel) values["advisor.model"] = advModel;
284
+ const god_until = godFlash(data, advTs, now);
285
+ setValues(values);
286
+
287
+ let exhausted;
288
+ if ("ratelimit.5h" in values || "ratelimit.7d" in values) {
289
+ const rem = Math.min(
290
+ 100 - (values["ratelimit.5h"] || 0),
291
+ "ratelimit.7d" in values ? 100 - values["ratelimit.7d"] : 100,
292
+ );
293
+ exhausted = rem <= 0;
294
+ } else {
295
+ exhausted = (values["context.hp"] || 0) >= 99;
296
+ }
297
+
298
+ const spriteFor = (hp) => {
299
+ if (exhausted) return "STFDEAD0";
300
+ if (now < god_until) return "STFGOD0";
301
+ if (st.expr && now - (st.ts || 0) < DECAY) {
302
+ const map = {
303
+ ouch: `STFOUCH${hp}`, kill: `STFKILL${hp}`, evl: `STFEVL${hp}`,
304
+ tl: `STFTL${hp}0`, tr: `STFTR${hp}0`,
305
+ };
306
+ return map[st.expr] || `STFST${hp}1`;
307
+ }
308
+ return `STFST${hp}${_pick(Math.floor(now / IDLE_CYCLE))}`;
309
+ };
310
+
311
+ const target = parseInt(process.env.COLUMNS || "100", 10);
312
+ const res = buildBar(cfg, target, spriteFor);
313
+ process.stdout.write(res.lines.join("\n") + "\n");
314
+ }
315
+
316
+ if (process.argv[1] && fileURLToPath(import.meta.url) === path.resolve(process.argv[1])) {
317
+ main();
318
+ }