less copy protection, more size visualization
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 
 

418 行
11 KiB

  1. function makeFen() {
  2. const views = {
  3. body: {
  4. attributes: {
  5. height: {
  6. name: "Height",
  7. power: 1,
  8. type: "length",
  9. base: math.unit(2.2428, "meter")
  10. },
  11. weight: {
  12. name: "Weight",
  13. power: 3,
  14. type: "mass",
  15. base: math.unit(124.738, "kg")
  16. }
  17. },
  18. image: {
  19. source: "./media/characters/fen/back.svg",
  20. },
  21. name: "Body"
  22. },
  23. paw: {
  24. attributes: {
  25. height: {
  26. name: "Length",
  27. power: 1,
  28. type: "length",
  29. base: math.unit(20, "centimeter")
  30. },
  31. width: {
  32. name: "Length",
  33. power: 1,
  34. type: "length",
  35. base: math.unit(20, "centimeter")
  36. },
  37. area: {
  38. name: "Area",
  39. power: 2,
  40. type: "area",
  41. base: math.unit(0.04, "meter^2")
  42. }
  43. },
  44. image: {
  45. source: "./media/characters/generic/paw.svg"
  46. },
  47. name: "Paw"
  48. }
  49. };
  50. const entity = makeEntity("Fen", "Fen", views);
  51. entity.views.body.height = math.unit(1, "km");
  52. return entity;
  53. }
  54. function makeSofia() {
  55. const views = {
  56. front: {
  57. attributes: {
  58. height: {
  59. name: "Height",
  60. power: 1,
  61. type: "length",
  62. base: math.unit(183, "cm")
  63. },
  64. weight: {
  65. name: "Weight",
  66. power: 3,
  67. type: "mass",
  68. base: math.unit(80, "kg")
  69. }
  70. },
  71. image: {
  72. source: "./media/characters/sofia/front.svg"
  73. },
  74. name: "Front"
  75. },
  76. back: {
  77. attributes: {
  78. height: {
  79. name: "Height",
  80. power: 1,
  81. type: "length",
  82. base: math.unit(183, "cm")
  83. },
  84. weight: {
  85. name: "Weight",
  86. power: 3,
  87. type: "mass",
  88. base: math.unit(80, "kg")
  89. }
  90. },
  91. image: {
  92. source: "./media/characters/sofia/back.svg"
  93. },
  94. name: "Back"
  95. }
  96. };
  97. const entity = makeEntity("Sofia", "ZakuraTech", views);
  98. entity.views.front.height = math.unit(96, "feet");
  99. return entity;
  100. }
  101. function makeMarch() {
  102. const views = {
  103. front: {
  104. attributes: {
  105. height: {
  106. name: "Height",
  107. power: 1,
  108. type: "length",
  109. base: math.unit(7, "feet")
  110. },
  111. weight: {
  112. name: "Weight",
  113. power: 3,
  114. type: "mass",
  115. base: math.unit(100, "kg")
  116. }
  117. },
  118. image: {
  119. source: "./media/characters/march/front.svg"
  120. },
  121. name: "Front"
  122. }
  123. };
  124. const entity = makeEntity("March", "March-Dragon", views);
  125. entity.views.front.height = math.unit(2.98, "km");
  126. return entity;
  127. }
  128. function makeNoir() {
  129. const views = {
  130. front: {
  131. attributes: {
  132. height: {
  133. name: "Height",
  134. power: 1,
  135. type: "length",
  136. base: math.unit(6, "feet")
  137. },
  138. weight: {
  139. name: "Weight",
  140. power: 3,
  141. type: "mass",
  142. base: math.unit(60, "kg")
  143. }
  144. },
  145. image: {
  146. source: "./media/characters/noir/front.svg",
  147. bottom: 0.01
  148. },
  149. name: "Front"
  150. }
  151. };
  152. const entity = makeEntity("Noir", "March-Dragon", views);
  153. entity.views.front.height = math.unit(2.5, "km");
  154. return entity;
  155. }
  156. function makeOkuri() {
  157. const views = {
  158. front: {
  159. attributes: {
  160. height: {
  161. name: "Height",
  162. power: 1,
  163. type: "length",
  164. base: math.unit(7, "feet")
  165. },
  166. weight: {
  167. name: "Weight",
  168. power: 3,
  169. type: "mass",
  170. base: math.unit(100, "kg")
  171. }
  172. },
  173. image: {
  174. source: "./media/characters/okuri/front.svg"
  175. },
  176. name: "Front"
  177. },
  178. back: {
  179. attributes: {
  180. height: {
  181. name: "Height",
  182. power: 1,
  183. type: "length",
  184. base: math.unit(7, "feet")
  185. },
  186. weight: {
  187. name: "Weight",
  188. power: 3,
  189. type: "mass",
  190. base: math.unit(100, "kg")
  191. }
  192. },
  193. image: {
  194. source: "./media/characters/okuri/back.svg"
  195. },
  196. name: "Back"
  197. }
  198. };
  199. const entity = makeEntity("Okuri", "OrionMechadragon", views);
  200. entity.views.front.height = math.unit(100, "miles");
  201. return entity;
  202. }
  203. function makeManny() {
  204. const views = {
  205. front: {
  206. attributes: {
  207. height: {
  208. name: "Height",
  209. power: 1,
  210. type: "length",
  211. base: math.unit(7, "feet")
  212. },
  213. weight: {
  214. name: "Weight",
  215. power: 3,
  216. type: "mass",
  217. base: math.unit(100, "kg")
  218. }
  219. },
  220. image: {
  221. source: "./media/characters/manny/front.svg"
  222. },
  223. name: "Front"
  224. },
  225. back: {
  226. attributes: {
  227. height: {
  228. name: "Height",
  229. power: 1,
  230. type: "length",
  231. base: math.unit(7, "feet")
  232. },
  233. weight: {
  234. name: "Weight",
  235. power: 3,
  236. type: "mass",
  237. base: math.unit(100, "kg")
  238. }
  239. },
  240. image: {
  241. source: "./media/characters/manny/back.svg"
  242. },
  243. name: "Back"
  244. }
  245. };
  246. const entity = makeEntity("Manny", "Dialuca01", views);
  247. entity.views.front.height = math.unit(78, "feet");
  248. return entity;
  249. }
  250. function makeAdake() {
  251. const views = {
  252. front: {
  253. attributes: {
  254. height: {
  255. name: "Height",
  256. power: 1,
  257. type: "length",
  258. base: math.unit(7, "feet")
  259. },
  260. weight: {
  261. name: "Weight",
  262. power: 3,
  263. type: "mass",
  264. base: math.unit(100, "kg")
  265. }
  266. },
  267. image: {
  268. source: "./media/characters/adake/front-1.svg"
  269. },
  270. name: "Front"
  271. },
  272. frontAlt: {
  273. attributes: {
  274. height: {
  275. name: "Height",
  276. power: 1,
  277. type: "length",
  278. base: math.unit(7, "feet")
  279. },
  280. weight: {
  281. name: "Weight",
  282. power: 3,
  283. type: "mass",
  284. base: math.unit(100, "kg")
  285. }
  286. },
  287. image: {
  288. source: "./media/characters/adake/front-2.svg",
  289. bottom: 0.005
  290. },
  291. name: "Front (Alt)"
  292. },
  293. back: {
  294. attributes: {
  295. height: {
  296. name: "Height",
  297. power: 1,
  298. type: "length",
  299. base: math.unit(7, "feet")
  300. },
  301. weight: {
  302. name: "Weight",
  303. power: 3,
  304. type: "mass",
  305. base: math.unit(100, "kg")
  306. }
  307. },
  308. image: {
  309. source: "./media/characters/adake/back.svg",
  310. },
  311. name: "Back"
  312. },
  313. kneel: {
  314. attributes: {
  315. height: {
  316. name: "Height",
  317. power: 1,
  318. type: "length",
  319. base: math.unit(5.385, "feet")
  320. },
  321. weight: {
  322. name: "Weight",
  323. power: 3,
  324. type: "mass",
  325. base: math.unit(100, "kg")
  326. }
  327. },
  328. image: {
  329. source: "./media/characters/adake/kneel.svg",
  330. bottom: 0.05
  331. },
  332. name: "Kneeling"
  333. },
  334. };
  335. const entity = makeEntity("Adake", "Dialuca01", views);
  336. entity.views.front.height = math.unit(78, "feet");
  337. return entity;
  338. }
  339. function makeMan() {
  340. const views = {
  341. body: {
  342. attributes: {
  343. height: {
  344. name: "Height",
  345. power: 1,
  346. type: "length",
  347. base: math.unit(2, "meter")
  348. },
  349. weight: {
  350. name: "Weight",
  351. power: 3,
  352. type: "mass",
  353. base: math.unit(80, "kg")
  354. }
  355. },
  356. image: {
  357. source: "./man.svg"
  358. },
  359. name: "Body"
  360. }
  361. };
  362. return makeEntity("Man", "Fen", views);
  363. }
  364. function makeCharacters() {
  365. const results = [];
  366. results.push({
  367. name: "Fen",
  368. constructor: makeFen
  369. });
  370. results.push({
  371. name: "Sofia",
  372. constructor: makeSofia
  373. });
  374. results.push({
  375. name: "March",
  376. constructor: makeMarch
  377. });
  378. results.push({
  379. name: "Noir",
  380. constructor: makeNoir
  381. });
  382. results.push({
  383. name: "Okuri",
  384. constructor: makeOkuri
  385. });
  386. results.push({
  387. name: "Manny",
  388. constructor: makeManny
  389. });
  390. results.push({
  391. name: "Adake",
  392. constructor: makeAdake
  393. });
  394. results.push({
  395. name: "Normal man",
  396. constructor: makeMan
  397. });
  398. return results;
  399. }