less copy protection, more size visualization
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.
 
 
 

2064 line
52 KiB

  1. const characterMakers = [];
  2. math.createUnit("parsecs", {
  3. definition: "3.086e16 meters",
  4. prefixes: "long"
  5. })
  6. math.createUnit("lightyears", {
  7. definition: "9.461e15 meters",
  8. prefixes: "long"
  9. })
  10. function makeCharacter(name, author, viewInfo, defaultSizes, defaultSize) {
  11. views = {};
  12. console.log(viewInfo)
  13. Object.entries(viewInfo).forEach(([key, value]) => {
  14. console.log(key)
  15. views[key] = {
  16. attributes: {
  17. height: {
  18. name: "Height",
  19. power: 1,
  20. type: "length",
  21. base: value.height
  22. }
  23. },
  24. image: value.image,
  25. name: value.name
  26. }
  27. if (value.weight) {
  28. views[key].attributes.weight = {
  29. name: "Mass",
  30. power: 3,
  31. type: "mass",
  32. base: value.weight
  33. };
  34. }
  35. });
  36. const entity = makeEntity(name, "author", views);
  37. if (defaultSizes) {
  38. entity.defaults = defaultSizes;
  39. }
  40. if (defaultSize) {
  41. entity.views[entity.defaultView].height = defaultSize;
  42. }
  43. return entity;
  44. }
  45. characterMakers["Fen"] = () => {
  46. return makeCharacter(
  47. "Fen",
  48. "chemicalcrux",
  49. {
  50. body: {
  51. height: math.unit(2.2428, "meter"),
  52. weight: math.unit(124.738, "kg"),
  53. name: "Body",
  54. image: {
  55. source: "./media/characters/fen/back.svg"
  56. }
  57. }
  58. },
  59. [
  60. {
  61. name: "Normal",
  62. height: math.unit(2.2428, "meter")
  63. },
  64. {
  65. name: "Big",
  66. height: math.unit(12, "feet")
  67. },
  68. {
  69. name: "Macro",
  70. height: math.unit(100, "meter")
  71. },
  72. {
  73. name: "Macro+",
  74. height: math.unit(1000, "meter")
  75. },
  76. {
  77. name: "Megamacro",
  78. height: math.unit(10, "miles")
  79. }
  80. ],
  81. math.unit(100, "meter")
  82. )
  83. };
  84. function makeSofia() {
  85. const views = {
  86. front: {
  87. attributes: {
  88. height: {
  89. name: "Height",
  90. power: 1,
  91. type: "length",
  92. base: math.unit(183, "cm")
  93. },
  94. weight: {
  95. name: "Weight",
  96. power: 3,
  97. type: "mass",
  98. base: math.unit(80, "kg")
  99. }
  100. },
  101. image: {
  102. source: "./media/characters/sofia/front.svg"
  103. },
  104. name: "Front"
  105. },
  106. back: {
  107. attributes: {
  108. height: {
  109. name: "Height",
  110. power: 1,
  111. type: "length",
  112. base: math.unit(183, "cm")
  113. },
  114. weight: {
  115. name: "Weight",
  116. power: 3,
  117. type: "mass",
  118. base: math.unit(80, "kg")
  119. }
  120. },
  121. image: {
  122. source: "./media/characters/sofia/back.svg"
  123. },
  124. name: "Back"
  125. }
  126. };
  127. const entity = makeEntity("Sofia", "ZakuraTech", views);
  128. entity.views.front.height = math.unit(96, "feet");
  129. return entity;
  130. }
  131. function makeMarch() {
  132. const views = {
  133. front: {
  134. attributes: {
  135. height: {
  136. name: "Height",
  137. power: 1,
  138. type: "length",
  139. base: math.unit(7, "feet")
  140. },
  141. weight: {
  142. name: "Weight",
  143. power: 3,
  144. type: "mass",
  145. base: math.unit(100, "kg")
  146. }
  147. },
  148. image: {
  149. source: "./media/characters/march/front.svg"
  150. },
  151. name: "Front"
  152. },
  153. foot: {
  154. attributes: {
  155. height: {
  156. name: "Height",
  157. power: 1,
  158. type: "length",
  159. base: math.unit(0.9, "feet")
  160. }
  161. },
  162. image: {
  163. source: "./media/characters/march/foot.svg"
  164. },
  165. name: "Foot"
  166. }
  167. };
  168. const entity = makeEntity("March", "March-Dragon", views);
  169. entity.defaults.push({
  170. name: "Normal",
  171. height: math.unit(7.9, "feet")
  172. });
  173. entity.defaults.push({
  174. name: "Macro",
  175. height: math.unit(220, "meters")
  176. });
  177. entity.defaults.push({
  178. name: "Megamacro",
  179. height: math.unit(2.98, "km")
  180. });
  181. entity.defaults.push({
  182. name: "Gigamacro",
  183. height: math.unit(15963, "km")
  184. });
  185. entity.defaults.push({
  186. name: "Teramacro",
  187. height: math.unit(2980000000, "kilometers")
  188. });
  189. entity.defaults.push({
  190. name: "Examacro",
  191. height: math.unit(250, "parsecs")
  192. });
  193. entity.views.front.height = math.unit(2.98, "km");
  194. return entity;
  195. }
  196. function makeNoir() {
  197. const views = {
  198. front: {
  199. attributes: {
  200. height: {
  201. name: "Height",
  202. power: 1,
  203. type: "length",
  204. base: math.unit(6, "feet")
  205. },
  206. weight: {
  207. name: "Weight",
  208. power: 3,
  209. type: "mass",
  210. base: math.unit(60, "kg")
  211. }
  212. },
  213. image: {
  214. source: "./media/characters/noir/front.svg",
  215. bottom: 0.01
  216. },
  217. name: "Front"
  218. }
  219. };
  220. const entity = makeEntity("Noir", "March-Dragon", views);
  221. entity.defaults.push({
  222. name: "Normal",
  223. height: math.unit(6.6, "feet")
  224. });
  225. entity.defaults.push({
  226. name: "Macro",
  227. height: math.unit(500, "feet")
  228. });
  229. entity.defaults.push({
  230. name: "Megamacro",
  231. height: math.unit(2.5, "km")
  232. });
  233. entity.defaults.push({
  234. name: "Gigamacro",
  235. height: math.unit(22500, "km")
  236. });
  237. entity.defaults.push({
  238. name: "Teramacro",
  239. height: math.unit(2500000000, "kilometers")
  240. });
  241. entity.defaults.push({
  242. name: "Examacro",
  243. height: math.unit(200, "parsecs")
  244. });
  245. entity.views.front.height = math.unit(2.5, "km");
  246. return entity;
  247. }
  248. function makeOkuri() {
  249. const views = {
  250. front: {
  251. attributes: {
  252. height: {
  253. name: "Height",
  254. power: 1,
  255. type: "length",
  256. base: math.unit(7, "feet")
  257. },
  258. weight: {
  259. name: "Weight",
  260. power: 3,
  261. type: "mass",
  262. base: math.unit(100, "kg")
  263. }
  264. },
  265. image: {
  266. source: "./media/characters/okuri/front.svg"
  267. },
  268. name: "Front"
  269. },
  270. back: {
  271. attributes: {
  272. height: {
  273. name: "Height",
  274. power: 1,
  275. type: "length",
  276. base: math.unit(7, "feet")
  277. },
  278. weight: {
  279. name: "Weight",
  280. power: 3,
  281. type: "mass",
  282. base: math.unit(100, "kg")
  283. }
  284. },
  285. image: {
  286. source: "./media/characters/okuri/back.svg"
  287. },
  288. name: "Back"
  289. }
  290. };
  291. const entity = makeEntity("Okuri", "OrionMechadragon", views);
  292. entity.views.front.height = math.unit(100, "miles");
  293. return entity;
  294. }
  295. function makeManny() {
  296. const views = {
  297. front: {
  298. attributes: {
  299. height: {
  300. name: "Height",
  301. power: 1,
  302. type: "length",
  303. base: math.unit(7, "feet")
  304. },
  305. weight: {
  306. name: "Weight",
  307. power: 3,
  308. type: "mass",
  309. base: math.unit(100, "kg")
  310. }
  311. },
  312. image: {
  313. source: "./media/characters/manny/front.svg"
  314. },
  315. name: "Front"
  316. },
  317. back: {
  318. attributes: {
  319. height: {
  320. name: "Height",
  321. power: 1,
  322. type: "length",
  323. base: math.unit(7, "feet")
  324. },
  325. weight: {
  326. name: "Weight",
  327. power: 3,
  328. type: "mass",
  329. base: math.unit(100, "kg")
  330. }
  331. },
  332. image: {
  333. source: "./media/characters/manny/back.svg"
  334. },
  335. name: "Back"
  336. }
  337. };
  338. const entity = makeEntity("Manny", "Dialuca01", views);
  339. entity.views.front.height = math.unit(78, "feet");
  340. return entity;
  341. }
  342. function makeAdake() {
  343. const views = {
  344. front: {
  345. attributes: {
  346. height: {
  347. name: "Height",
  348. power: 1,
  349. type: "length",
  350. base: math.unit(7, "feet")
  351. },
  352. weight: {
  353. name: "Weight",
  354. power: 3,
  355. type: "mass",
  356. base: math.unit(100, "kg")
  357. }
  358. },
  359. image: {
  360. source: "./media/characters/adake/front-1.svg"
  361. },
  362. name: "Front"
  363. },
  364. frontAlt: {
  365. attributes: {
  366. height: {
  367. name: "Height",
  368. power: 1,
  369. type: "length",
  370. base: math.unit(7, "feet")
  371. },
  372. weight: {
  373. name: "Weight",
  374. power: 3,
  375. type: "mass",
  376. base: math.unit(100, "kg")
  377. }
  378. },
  379. image: {
  380. source: "./media/characters/adake/front-2.svg",
  381. bottom: 0.005
  382. },
  383. name: "Front (Alt)"
  384. },
  385. back: {
  386. attributes: {
  387. height: {
  388. name: "Height",
  389. power: 1,
  390. type: "length",
  391. base: math.unit(7, "feet")
  392. },
  393. weight: {
  394. name: "Weight",
  395. power: 3,
  396. type: "mass",
  397. base: math.unit(100, "kg")
  398. }
  399. },
  400. image: {
  401. source: "./media/characters/adake/back.svg",
  402. },
  403. name: "Back"
  404. },
  405. kneel: {
  406. attributes: {
  407. height: {
  408. name: "Height",
  409. power: 1,
  410. type: "length",
  411. base: math.unit(5.385, "feet")
  412. },
  413. weight: {
  414. name: "Weight",
  415. power: 3,
  416. type: "mass",
  417. base: math.unit(100, "kg")
  418. }
  419. },
  420. image: {
  421. source: "./media/characters/adake/kneel.svg",
  422. bottom: 0.05
  423. },
  424. name: "Kneeling"
  425. },
  426. };
  427. const entity = makeEntity("Adake", "Dialuca01", views);
  428. entity.views.front.height = math.unit(78, "feet");
  429. return entity;
  430. }
  431. function makeElijah() {
  432. const views = {
  433. side: {
  434. attributes: {
  435. height: {
  436. name: "Height",
  437. power: 1,
  438. type: "length",
  439. base: math.unit(7, "feet")
  440. },
  441. weight: {
  442. name: "Weight",
  443. power: 3,
  444. type: "mass",
  445. base: math.unit(50, "kg")
  446. }
  447. },
  448. image: {
  449. source: "./media/characters/elijah/side.svg",
  450. bottom: 0.01
  451. },
  452. name: "Side"
  453. },
  454. foot: {
  455. attributes: {
  456. height: {
  457. name: "Height",
  458. power: 1,
  459. type: "length",
  460. base: math.unit(2, "feet")
  461. }
  462. },
  463. image: {
  464. source: "./media/characters/elijah/foot.svg",
  465. },
  466. name: "Foot"
  467. }
  468. };
  469. const entity = makeEntity("Elijah", "Elijah", views);
  470. entity.defaults.push({
  471. name: "Normal",
  472. height: math.unit(1.65, "meters")
  473. });
  474. entity.defaults.push({
  475. name: "Macro",
  476. height: math.unit(55, "meters")
  477. });
  478. entity.defaults.push({
  479. name: "Macro+",
  480. height: math.unit(105, "meters")
  481. });
  482. entity.views.side.height = math.unit(55, "meters");
  483. return entity;
  484. }
  485. function makeRai() {
  486. const views = {
  487. front: {
  488. attributes: {
  489. height: {
  490. name: "Height",
  491. power: 1,
  492. type: "length",
  493. base: math.unit(7, "feet")
  494. },
  495. weight: {
  496. name: "Weight",
  497. power: 3,
  498. type: "mass",
  499. base: math.unit(80, "kg")
  500. }
  501. },
  502. image: {
  503. source: "./media/characters/rai/front.svg"
  504. },
  505. name: "Front"
  506. },
  507. side: {
  508. attributes: {
  509. height: {
  510. name: "Height",
  511. power: 1,
  512. type: "length",
  513. base: math.unit(7, "feet")
  514. },
  515. weight: {
  516. name: "Weight",
  517. power: 3,
  518. type: "mass",
  519. base: math.unit(80, "kg")
  520. }
  521. },
  522. image: {
  523. source: "./media/characters/rai/side.svg"
  524. },
  525. name: "Side"
  526. },
  527. back: {
  528. attributes: {
  529. height: {
  530. name: "Height",
  531. power: 1,
  532. type: "length",
  533. base: math.unit(7, "feet")
  534. },
  535. weight: {
  536. name: "Weight",
  537. power: 3,
  538. type: "mass",
  539. base: math.unit(80, "kg")
  540. }
  541. },
  542. image: {
  543. source: "./media/characters/rai/back.svg"
  544. },
  545. name: "Back"
  546. }
  547. };
  548. const entity = makeEntity("Rai", "shadowblade945", views);
  549. entity.views.front.height = math.unit(302, "feet");
  550. return entity;
  551. }
  552. function makeJazzy() {
  553. const views = {
  554. front: {
  555. attributes: {
  556. height: {
  557. name: "Height",
  558. power: 1,
  559. type: "length",
  560. base: math.unit(7, "feet")
  561. },
  562. weight: {
  563. name: "Weight",
  564. power: 3,
  565. type: "mass",
  566. base: math.unit(80, "kg")
  567. }
  568. },
  569. image: {
  570. source: "./media/characters/jazzy/front.svg",
  571. bottom: 0.01
  572. },
  573. name: "Front"
  574. },
  575. back: {
  576. attributes: {
  577. height: {
  578. name: "Height",
  579. power: 1,
  580. type: "length",
  581. base: math.unit(7, "feet")
  582. },
  583. weight: {
  584. name: "Weight",
  585. power: 3,
  586. type: "mass",
  587. base: math.unit(80, "kg")
  588. }
  589. },
  590. image: {
  591. source: "./media/characters/jazzy/back.svg"
  592. },
  593. name: "Back"
  594. }
  595. };
  596. const entity = makeEntity("Jazzy", "Jazzywolf", views);
  597. entity.views.front.height = math.unit(216, "feet");
  598. return entity;
  599. }
  600. function makeFlamm() {
  601. const views = {
  602. front: {
  603. attributes: {
  604. height: {
  605. name: "Height",
  606. power: 1,
  607. type: "length",
  608. base: math.unit(7, "feet")
  609. },
  610. weight: {
  611. name: "Weight",
  612. power: 3,
  613. type: "mass",
  614. base: math.unit(80, "kg")
  615. }
  616. },
  617. image: {
  618. source: "./media/characters/flamm/front.svg"
  619. },
  620. name: "Front"
  621. }
  622. };
  623. const entity = makeEntity("Flamm", "Flamm", views);
  624. entity.defaults.push({
  625. name: "Normal",
  626. height: math.unit(9.5, "feet")
  627. });
  628. entity.defaults.push({
  629. name: "Macro",
  630. height: math.unit(200, "feet")
  631. });
  632. entity.views.front.height = math.unit(200, "feet");
  633. return entity;
  634. }
  635. function makeZephiro() {
  636. const views = {
  637. front: {
  638. attributes: {
  639. height: {
  640. name: "Height",
  641. power: 1,
  642. type: "length",
  643. base: math.unit(7, "feet")
  644. },
  645. weight: {
  646. name: "Weight",
  647. power: 3,
  648. type: "mass",
  649. base: math.unit(80, "kg")
  650. }
  651. },
  652. image: {
  653. source: "./media/characters/zephiro/front.svg"
  654. },
  655. name: "Front"
  656. },
  657. side: {
  658. attributes: {
  659. height: {
  660. name: "Height",
  661. power: 1,
  662. type: "length",
  663. base: math.unit(7, "feet")
  664. },
  665. weight: {
  666. name: "Weight",
  667. power: 3,
  668. type: "mass",
  669. base: math.unit(80, "kg")
  670. }
  671. },
  672. image: {
  673. source: "./media/characters/zephiro/side.svg"
  674. },
  675. name: "Side"
  676. },
  677. back: {
  678. attributes: {
  679. height: {
  680. name: "Height",
  681. power: 1,
  682. type: "length",
  683. base: math.unit(7, "feet")
  684. },
  685. weight: {
  686. name: "Weight",
  687. power: 3,
  688. type: "mass",
  689. base: math.unit(80, "kg")
  690. }
  691. },
  692. image: {
  693. source: "./media/characters/zephiro/back.svg"
  694. },
  695. name: "Back"
  696. }
  697. };
  698. const entity = makeEntity("Zephiro", "Zephiro", views);
  699. entity.views.front.height = math.unit(118, "feet");
  700. entity.defaults.push({
  701. name: "Micro",
  702. height: math.unit(3, "inches")
  703. });
  704. entity.defaults.push({
  705. name: "Normal",
  706. height: math.unit(5 + 3/12, "feet")
  707. });
  708. entity.defaults.push({
  709. name: "Macro",
  710. height: math.unit(118, "feet")
  711. });
  712. return entity;
  713. }
  714. function makeFory() {
  715. const views = {
  716. front: {
  717. attributes: {
  718. height: {
  719. name: "Height",
  720. power: 1,
  721. type: "length",
  722. base: math.unit(7, "feet")
  723. },
  724. weight: {
  725. name: "Weight",
  726. power: 3,
  727. type: "mass",
  728. base: math.unit(90, "kg")
  729. }
  730. },
  731. image: {
  732. source: "./media/characters/fory/front.svg"
  733. },
  734. name: "Front"
  735. }
  736. };
  737. const entity = makeEntity("Fory", "Manny", views);
  738. entity.defaults.push({
  739. name: "Normal",
  740. height: math.unit(5, "feet")
  741. });
  742. entity.defaults.push({
  743. name: "Macro",
  744. height: math.unit(50, "feet")
  745. });
  746. entity.views.front.height = math.unit(50, "feet");
  747. return entity;
  748. }
  749. function makeKurrikage() {
  750. const views = {
  751. front: {
  752. attributes: {
  753. height: {
  754. name: "Height",
  755. power: 1,
  756. type: "length",
  757. base: math.unit(7, "feet")
  758. },
  759. weight: {
  760. name: "Weight",
  761. power: 3,
  762. type: "mass",
  763. base: math.unit(90, "kg")
  764. }
  765. },
  766. image: {
  767. source: "./media/characters/kurrikage/front.svg"
  768. },
  769. name: "Front"
  770. },
  771. back: {
  772. attributes: {
  773. height: {
  774. name: "Height",
  775. power: 1,
  776. type: "length",
  777. base: math.unit(7, "feet")
  778. },
  779. weight: {
  780. name: "Weight",
  781. power: 3,
  782. type: "mass",
  783. base: math.unit(90, "kg")
  784. }
  785. },
  786. image: {
  787. source: "./media/characters/kurrikage/back.svg"
  788. },
  789. name: "Back"
  790. },
  791. paw: {
  792. attributes: {
  793. height: {
  794. name: "Height",
  795. power: 1,
  796. type: "length",
  797. base: math.unit(1.5, "feet")
  798. }
  799. },
  800. image: {
  801. source: "./media/characters/kurrikage/paw.svg"
  802. },
  803. name: "Paw"
  804. },
  805. staff: {
  806. attributes: {
  807. height: {
  808. name: "Height",
  809. power: 1,
  810. type: "length",
  811. base: math.unit(6.7, "feet")
  812. }
  813. },
  814. image: {
  815. source: "./media/characters/kurrikage/staff.svg"
  816. },
  817. name: "Staff"
  818. },
  819. peek: {
  820. attributes: {
  821. height: {
  822. name: "Height",
  823. power: 1,
  824. type: "length",
  825. base: math.unit(1.05, "feet")
  826. }
  827. },
  828. image: {
  829. source: "./media/characters/kurrikage/peek.svg",
  830. bottom: 0.08
  831. },
  832. name: "Peeking"
  833. }
  834. };
  835. const entity = makeEntity("Kurrikage", "Kurrikage", views);
  836. entity.views.front.height = math.unit(12, "feet");
  837. return entity;
  838. }
  839. function makeShingo() {
  840. const views = {
  841. front: {
  842. attributes: {
  843. height: {
  844. name: "Height",
  845. power: 1,
  846. type: "length",
  847. base: math.unit(6, "feet")
  848. },
  849. weight: {
  850. name: "Weight",
  851. power: 3,
  852. type: "mass",
  853. base: math.unit(75, "kg")
  854. }
  855. },
  856. image: {
  857. source: "./media/characters/shingo/front.svg"
  858. },
  859. name: "Front"
  860. }
  861. };
  862. const entity = makeEntity("Shingo", "Threes", views);
  863. entity.defaults.push({
  864. name: "Micro",
  865. height: math.unit(4, "inches")
  866. });
  867. entity.defaults.push({
  868. name: "Normal",
  869. height: math.unit(6, "feet")
  870. });
  871. entity.defaults.push({
  872. name: "Macro",
  873. height: math.unit(108, "feet")
  874. });
  875. return entity;
  876. }
  877. function makeAigey() {
  878. const views = {
  879. side: {
  880. attributes: {
  881. height: {
  882. name: "Height",
  883. power: 1,
  884. type: "length",
  885. base: math.unit(6, "feet")
  886. },
  887. weight: {
  888. name: "Weight",
  889. power: 3,
  890. type: "mass",
  891. base: math.unit(75, "kg")
  892. }
  893. },
  894. image: {
  895. source: "./media/characters/aigey/side.svg"
  896. },
  897. name: "Side"
  898. }
  899. };
  900. const entity = makeEntity("Aigey", "Aigey", views);
  901. entity.defaults.push({
  902. name: "Macro",
  903. height: math.unit(200, "feet")
  904. });
  905. entity.defaults.push({
  906. name: "Megamacro",
  907. height: math.unit(100, "miles")
  908. });
  909. entity.views[entity.defaultView].height = math.unit(200, "feet");
  910. return entity;
  911. }
  912. function makeNatasha() {
  913. const views = {
  914. side: {
  915. attributes: {
  916. height: {
  917. name: "Height",
  918. power: 1,
  919. type: "length",
  920. base: math.unit(6, "feet")
  921. },
  922. weight: {
  923. name: "Weight",
  924. power: 3,
  925. type: "mass",
  926. base: math.unit(75, "kg")
  927. }
  928. },
  929. image: {
  930. source: "./media/characters/natasha/front.svg"
  931. },
  932. name: "Side"
  933. }
  934. };
  935. const entity = makeEntity("Natasha", "Natasha", views);
  936. entity.defaults.push({
  937. name: "Normal",
  938. height: math.unit(5 + 5/12, "feet")
  939. });
  940. entity.defaults.push({
  941. name: "Large",
  942. height: math.unit(12, "feet")
  943. });
  944. entity.defaults.push({
  945. name: "Macro",
  946. height: math.unit(100, "feet")
  947. });
  948. entity.defaults.push({
  949. name: "Macro+",
  950. height: math.unit(260, "feet")
  951. });
  952. entity.defaults.push({
  953. name: "Macro++",
  954. height: math.unit(1, "mile")
  955. });
  956. entity.views[entity.defaultView].height = math.unit(100, "feet");
  957. return entity;
  958. }
  959. function makeMalik() {
  960. const views = {
  961. front: {
  962. attributes: {
  963. height: {
  964. name: "Height",
  965. power: 1,
  966. type: "length",
  967. base: math.unit(6, "feet")
  968. },
  969. weight: {
  970. name: "Weight",
  971. power: 3,
  972. type: "mass",
  973. base: math.unit(75, "kg")
  974. }
  975. },
  976. image: {
  977. source: "./media/characters/malik/front.svg"
  978. },
  979. name: "Front"
  980. },
  981. side: {
  982. attributes: {
  983. height: {
  984. name: "Height",
  985. power: 1,
  986. type: "length",
  987. base: math.unit(6, "feet")
  988. },
  989. weight: {
  990. name: "Weight",
  991. power: 3,
  992. type: "mass",
  993. base: math.unit(75, "kg")
  994. }
  995. },
  996. image: {
  997. extra: 1.1539,
  998. source: "./media/characters/malik/side.svg"
  999. },
  1000. name: "Side"
  1001. },
  1002. back: {
  1003. attributes: {
  1004. height: {
  1005. name: "Height",
  1006. power: 1,
  1007. type: "length",
  1008. base: math.unit(6, "feet")
  1009. },
  1010. weight: {
  1011. name: "Weight",
  1012. power: 3,
  1013. type: "mass",
  1014. base: math.unit(75, "kg")
  1015. }
  1016. },
  1017. image: {
  1018. source: "./media/characters/malik/back.svg"
  1019. },
  1020. name: "Back"
  1021. },
  1022. };
  1023. const entity = makeEntity("Malik", "Fuzzypaws", views);
  1024. entity.defaults.push({
  1025. name: "Macro",
  1026. height: math.unit(156, "feet")
  1027. });
  1028. entity.defaults.push({
  1029. name: "Macro+",
  1030. height: math.unit(1188, "feet")
  1031. });
  1032. entity.views[entity.defaultView].height = math.unit(156, "feet");
  1033. return entity;
  1034. }
  1035. function makeSefer() {
  1036. const views = {
  1037. front: {
  1038. attributes: {
  1039. height: {
  1040. name: "Height",
  1041. power: 1,
  1042. type: "length",
  1043. base: math.unit(6, "feet")
  1044. },
  1045. weight: {
  1046. name: "Weight",
  1047. power: 3,
  1048. type: "mass",
  1049. base: math.unit(75, "kg")
  1050. }
  1051. },
  1052. image: {
  1053. source: "./media/characters/sefer/front.svg"
  1054. },
  1055. name: "Front"
  1056. },
  1057. back: {
  1058. attributes: {
  1059. height: {
  1060. name: "Height",
  1061. power: 1,
  1062. type: "length",
  1063. base: math.unit(6, "feet")
  1064. },
  1065. weight: {
  1066. name: "Weight",
  1067. power: 3,
  1068. type: "mass",
  1069. base: math.unit(75, "kg")
  1070. }
  1071. },
  1072. image: {
  1073. source: "./media/characters/sefer/back.svg"
  1074. },
  1075. name: "Back"
  1076. },
  1077. };
  1078. const entity = makeEntity("Sefer", "Fuzzypaws", views);
  1079. entity.views[entity.defaultView].height = math.unit(6, "feet");
  1080. return entity;
  1081. }
  1082. function makeMan() {
  1083. const views = {
  1084. body: {
  1085. attributes: {
  1086. height: {
  1087. name: "Height",
  1088. power: 1,
  1089. type: "length",
  1090. base: math.unit(2, "meter")
  1091. },
  1092. weight: {
  1093. name: "Weight",
  1094. power: 3,
  1095. type: "mass",
  1096. base: math.unit(80, "kg")
  1097. }
  1098. },
  1099. image: {
  1100. source: "./man.svg"
  1101. },
  1102. name: "Body"
  1103. }
  1104. };
  1105. return makeEntity("Man", "Fen", views);
  1106. }
  1107. characterMakers["North"] = () => {
  1108. return makeCharacter(
  1109. "North",
  1110. "chemicalcrux",
  1111. {
  1112. body: {
  1113. height: math.unit(2.2428, "meter"),
  1114. weight: math.unit(124.738, "kg"),
  1115. name: "Body",
  1116. image: {
  1117. extra: 1225/1050,
  1118. source: "./media/characters/north/front.svg"
  1119. }
  1120. }
  1121. },
  1122. [
  1123. {
  1124. name: "Micro",
  1125. height: math.unit(4, "inches")
  1126. },
  1127. {
  1128. name: "Macro",
  1129. height: math.unit(63, "meters")
  1130. },
  1131. {
  1132. name: "Megamacro",
  1133. height: math.unit(101, "miles")
  1134. }
  1135. ],
  1136. math.unit(101, "miles")
  1137. )
  1138. };
  1139. characterMakers["Talan"] = () => {
  1140. return makeCharacter(
  1141. "Talan",
  1142. "talanstrider",
  1143. {
  1144. body: {
  1145. height: math.unit(2, "meter"),
  1146. weight: math.unit(70, "kg"),
  1147. name: "Body",
  1148. image: {
  1149. bottom: 0.02,
  1150. source: "./media/characters/talan/front.svg"
  1151. }
  1152. }
  1153. },
  1154. [
  1155. {
  1156. name: "Normal",
  1157. height: math.unit(4, "meters")
  1158. },
  1159. {
  1160. name: "Macro",
  1161. height: math.unit(100, "meters")
  1162. },
  1163. {
  1164. name: "Megamacro",
  1165. height: math.unit(2, "miles")
  1166. },
  1167. {
  1168. name: "Gigamacro",
  1169. height: math.unit(5000, "miles")
  1170. },
  1171. {
  1172. name: "Teramacro",
  1173. height: math.unit(100, "parsecs")
  1174. }
  1175. ],
  1176. math.unit(2, "miles")
  1177. )
  1178. };
  1179. characterMakers["Gael'Rathus"] = () => {
  1180. return makeCharacter(
  1181. "Gael'Rathus",
  1182. "Kurrikage",
  1183. {
  1184. front: {
  1185. height: math.unit(2, "meter"),
  1186. weight: math.unit(90, "kg"),
  1187. name: "Front",
  1188. image: {
  1189. source: "./media/characters/gael'rathus/front.svg"
  1190. }
  1191. },
  1192. frontAlt: {
  1193. height: math.unit(2, "meter"),
  1194. weight: math.unit(90, "kg"),
  1195. name: "Front (alt)",
  1196. image: {
  1197. source: "./media/characters/gael'rathus/front-alt.svg"
  1198. }
  1199. },
  1200. frontAlt2: {
  1201. height: math.unit(2, "meter"),
  1202. weight: math.unit(90, "kg"),
  1203. name: "Front (alt 2)",
  1204. image: {
  1205. source: "./media/characters/gael'rathus/front-alt-2.svg"
  1206. }
  1207. }
  1208. },
  1209. [
  1210. {
  1211. name: "Normal",
  1212. height: math.unit(9, "feet")
  1213. },
  1214. {
  1215. name: "Large",
  1216. height: math.unit(25, "feet")
  1217. },
  1218. {
  1219. name: "Macro",
  1220. height: math.unit(0.25, "miles")
  1221. },
  1222. {
  1223. name: "Megamacro",
  1224. height: math.unit(10, "miles")
  1225. }
  1226. ],
  1227. math.unit(9, "feet")
  1228. )
  1229. };
  1230. characterMakers["Sosha"] = () => {
  1231. return makeCharacter(
  1232. "Sosha",
  1233. "Sdocat",
  1234. {
  1235. side: {
  1236. height: math.unit(2, "meter"),
  1237. weight: math.unit(140, "kg"),
  1238. name: "Side",
  1239. image: {
  1240. source: "./media/characters/sosha/side.svg"
  1241. }
  1242. },
  1243. },
  1244. [
  1245. {
  1246. name: "Normal",
  1247. height: math.unit(12, "feet")
  1248. }
  1249. ],
  1250. math.unit(12, "feet")
  1251. )
  1252. };
  1253. characterMakers["Kurribird"] = () => {
  1254. return makeCharacter(
  1255. "Kurribird",
  1256. "Kurrikage",
  1257. {
  1258. front: {
  1259. height: math.unit(2, "meter"),
  1260. weight: math.unit(50, "kg"),
  1261. name: "Front",
  1262. image: {
  1263. source: "./media/characters/kurribird/front.svg",
  1264. bottom: 0.015
  1265. }
  1266. },
  1267. frontAlt: {
  1268. height: math.unit(1.5, "meter"),
  1269. weight: math.unit(50, "kg"),
  1270. name: "Front (Alt)",
  1271. image: {
  1272. source: "./media/characters/kurribird/front-alt.svg",
  1273. extra: 1.45
  1274. }
  1275. },
  1276. },
  1277. [
  1278. {
  1279. name: "Normal",
  1280. height: math.unit(7, "feet")
  1281. },
  1282. {
  1283. name: "Big",
  1284. height: math.unit(15, "feet")
  1285. },
  1286. {
  1287. name: "Macro",
  1288. height: math.unit(1500, "feet")
  1289. },
  1290. {
  1291. name: "Megamacro",
  1292. height: math.unit(2, "miles")
  1293. }
  1294. ],
  1295. math.unit(12, "feet")
  1296. )
  1297. };
  1298. characterMakers["Elbial"] = () => {
  1299. return makeCharacter(
  1300. "Elbial",
  1301. "Neopuc",
  1302. {
  1303. front: {
  1304. height: math.unit(2, "meter"),
  1305. weight: math.unit(80, "kg"),
  1306. name: "Front",
  1307. image: {
  1308. source: "./media/characters/elbial/front.svg"
  1309. }
  1310. },
  1311. side: {
  1312. height: math.unit(2, "meter"),
  1313. weight: math.unit(80, "kg"),
  1314. name: "Side",
  1315. image: {
  1316. source: "./media/characters/elbial/side.svg"
  1317. }
  1318. },
  1319. back: {
  1320. height: math.unit(2, "meter"),
  1321. weight: math.unit(80, "kg"),
  1322. name: "Back",
  1323. image: {
  1324. source: "./media/characters/elbial/back.svg"
  1325. }
  1326. },
  1327. },
  1328. [
  1329. {
  1330. name: "Large",
  1331. height: math.unit(100, "feet")
  1332. },
  1333. {
  1334. name: "Macro",
  1335. height: math.unit(500, "feet")
  1336. },
  1337. {
  1338. name: "Megamacro",
  1339. height: math.unit(10, "miles")
  1340. },
  1341. {
  1342. name: "Gigamacro",
  1343. height: math.unit(25000, "miles")
  1344. },
  1345. {
  1346. name: "Full-Size",
  1347. height: math.unit(8000000, "gigaparsecs")
  1348. }
  1349. ],
  1350. math.unit(500, "feet")
  1351. )
  1352. };
  1353. characterMakers["Noah"] = () => {
  1354. return makeCharacter(
  1355. "Noah",
  1356. "Neopuc",
  1357. {
  1358. front: {
  1359. height: math.unit(2, "meter"),
  1360. weight: math.unit(60, "kg"),
  1361. name: "Front",
  1362. image: {
  1363. source: "./media/characters/noah/front.svg"
  1364. }
  1365. },
  1366. talons: {
  1367. height: math.unit(0.315, "meter"),
  1368. name: "Talons",
  1369. image: {
  1370. source: "./media/characters/noah/talons.svg"
  1371. }
  1372. }
  1373. },
  1374. [
  1375. {
  1376. name: "Large",
  1377. height: math.unit(50, "feet")
  1378. },
  1379. {
  1380. name: "Macro",
  1381. height: math.unit(750, "feet")
  1382. },
  1383. {
  1384. name: "Megamacro",
  1385. height: math.unit(50, "miles")
  1386. },
  1387. {
  1388. name: "Gigamacro",
  1389. height: math.unit(100000, "miles")
  1390. },
  1391. {
  1392. name: "Full-Size",
  1393. height: math.unit(3000000000, "miles")
  1394. }
  1395. ],
  1396. math.unit(750, "feet")
  1397. )
  1398. };
  1399. characterMakers["Natalya"] = () => {
  1400. return makeCharacter(
  1401. "Natalya",
  1402. "Neopuc",
  1403. {
  1404. front: {
  1405. height: math.unit(2, "meter"),
  1406. weight: math.unit(80, "kg"),
  1407. name: "Front",
  1408. image: {
  1409. source: "./media/characters/natalya/front.svg"
  1410. }
  1411. },
  1412. back: {
  1413. height: math.unit(2, "meter"),
  1414. weight: math.unit(80, "kg"),
  1415. name: "Back",
  1416. image: {
  1417. source: "./media/characters/natalya/back.svg"
  1418. }
  1419. }
  1420. },
  1421. [
  1422. {
  1423. name: "Normal",
  1424. height: math.unit(150, "feet")
  1425. },
  1426. {
  1427. name: "Megamacro",
  1428. height: math.unit(5, "miles")
  1429. },
  1430. {
  1431. name: "Full-Size",
  1432. height: math.unit(600, "kiloparsecs")
  1433. }
  1434. ],
  1435. math.unit(150, "feet")
  1436. )
  1437. };
  1438. characterMakers["Erestrebah"] = () => {
  1439. return makeCharacter(
  1440. "Erestrebah",
  1441. "Kurrikage",
  1442. {
  1443. front: {
  1444. height: math.unit(2, "meter"),
  1445. weight: math.unit(50, "kg"),
  1446. name: "Front",
  1447. image: {
  1448. source: "./media/characters/erestrebah/front.svg"
  1449. }
  1450. },
  1451. back: {
  1452. height: math.unit(2, "meter"),
  1453. weight: math.unit(50, "kg"),
  1454. name: "Back",
  1455. image: {
  1456. source: "./media/characters/erestrebah/back.svg",
  1457. extra: 1.2139
  1458. }
  1459. }
  1460. },
  1461. [
  1462. {
  1463. name: "Normal",
  1464. height: math.unit(10, "feet")
  1465. },
  1466. {
  1467. name: "Large",
  1468. height: math.unit(50, "feet")
  1469. },
  1470. {
  1471. name: "Macro",
  1472. height: math.unit(300, "feet")
  1473. },
  1474. {
  1475. name: "Macro+",
  1476. height: math.unit(750, "feet")
  1477. },
  1478. {
  1479. name: "Megamacro",
  1480. height: math.unit(3, "miles")
  1481. }
  1482. ],
  1483. math.unit(50, "feet")
  1484. )
  1485. };
  1486. characterMakers["Jennifer"] = () => {
  1487. return makeCharacter(
  1488. "Jennifer",
  1489. "Neopuc",
  1490. {
  1491. front: {
  1492. height: math.unit(2, "meter"),
  1493. weight: math.unit(80, "kg"),
  1494. name: "Front",
  1495. image: {
  1496. source: "./media/characters/jennifer/front.svg",
  1497. bottom: 0.11,
  1498. extra: 1.16
  1499. }
  1500. },
  1501. frontAlt: {
  1502. height: math.unit(2, "meter"),
  1503. weight: math.unit(80, "kg"),
  1504. name: "Front (Alt)",
  1505. image: {
  1506. source: "./media/characters/jennifer/front-alt.svg"
  1507. }
  1508. }
  1509. },
  1510. [
  1511. {
  1512. name: "Canon Height",
  1513. height: math.unit(120, "feet")
  1514. },
  1515. {
  1516. name: "Macro+",
  1517. height: math.unit(300, "feet")
  1518. },
  1519. {
  1520. name: "Megamacro",
  1521. height: math.unit(20000, "feet")
  1522. }
  1523. ],
  1524. math.unit(120, "feet")
  1525. )
  1526. };
  1527. characterMakers["Kalista"] = () => {
  1528. return makeCharacter(
  1529. "Kalista",
  1530. "Kalista",
  1531. {
  1532. front: {
  1533. height: math.unit(2, "meter"),
  1534. weight: math.unit(50, "kg"),
  1535. name: "Front",
  1536. image: {
  1537. source: "./media/characters/kalista/front.svg"
  1538. }
  1539. },
  1540. back: {
  1541. height: math.unit(2, "meter"),
  1542. weight: math.unit(50, "kg"),
  1543. name: "Back",
  1544. image: {
  1545. source: "./media/characters/kalista/back.svg"
  1546. }
  1547. }
  1548. },
  1549. [
  1550. {
  1551. name: "Uncomfortably Small",
  1552. height: math.unit(10, "feet")
  1553. },
  1554. {
  1555. name: "Small",
  1556. height: math.unit(30, "feet")
  1557. },
  1558. {
  1559. name: "Macro",
  1560. height: math.unit(100, "feet")
  1561. },
  1562. {
  1563. name: "Macro+",
  1564. height: math.unit(2000, "feet")
  1565. },
  1566. {
  1567. name: "True Form",
  1568. height: math.unit(8924, "miles")
  1569. }
  1570. ],
  1571. math.unit(100, "feet")
  1572. )
  1573. };
  1574. characterMakers["GiantGrowingVixen"] = () => {
  1575. return makeCharacter(
  1576. "GiantGrowingVixen",
  1577. "GiantGrowingVixen",
  1578. {
  1579. front: {
  1580. height: math.unit(2, "meter"),
  1581. weight: math.unit(120, "kg"),
  1582. name: "Front",
  1583. image: {
  1584. source: "./media/characters/ggv/front.svg"
  1585. }
  1586. },
  1587. side: {
  1588. height: math.unit(2, "meter"),
  1589. weight: math.unit(120, "kg"),
  1590. name: "Side",
  1591. image: {
  1592. source: "./media/characters/ggv/side.svg"
  1593. }
  1594. }
  1595. },
  1596. [
  1597. {
  1598. name: "Extremely Puny",
  1599. height: math.unit(9 + 5/12, "feet")
  1600. },
  1601. {
  1602. name: "Horribly Small",
  1603. height: math.unit(47.7, "miles")
  1604. },
  1605. {
  1606. name: "Reasonably Sized",
  1607. height: math.unit(25000, "parsecs")
  1608. }
  1609. ],
  1610. math.unit(47.7, "miles")
  1611. )
  1612. };
  1613. characterMakers["Napalm"] = () => {
  1614. return makeCharacter(
  1615. "Napalm",
  1616. "RathDaKrogan",
  1617. {
  1618. front: {
  1619. height: math.unit(2, "meter"),
  1620. weight: math.unit(75, "lb"),
  1621. name: "Front",
  1622. image: {
  1623. source: "./media/characters/napalm/front.svg"
  1624. }
  1625. },
  1626. back: {
  1627. height: math.unit(2, "meter"),
  1628. weight: math.unit(75, "lb"),
  1629. name: "Back",
  1630. image: {
  1631. source: "./media/characters/napalm/back.svg"
  1632. }
  1633. }
  1634. },
  1635. [
  1636. {
  1637. name: "Standard",
  1638. height: math.unit(55, "feet")
  1639. }
  1640. ],
  1641. math.unit(55, "feet")
  1642. )
  1643. };
  1644. characterMakers["Asana"] = () => {
  1645. return makeCharacter(
  1646. "Asana",
  1647. "Asana",
  1648. {
  1649. front: {
  1650. height: math.unit(7 + 5/6, "feet"),
  1651. weight: math.unit(325, "lb"),
  1652. name: "Front",
  1653. image: {
  1654. source: "./media/characters/asana/front.svg",
  1655. extra: 1128/1068
  1656. }
  1657. },
  1658. back: {
  1659. height: math.unit(7 + 5/6, "feet"),
  1660. weight: math.unit(325, "lb"),
  1661. name: "Back",
  1662. image: {
  1663. source: "./media/characters/asana/back.svg",
  1664. extra: 1128/1068
  1665. }
  1666. },
  1667. },
  1668. [
  1669. {
  1670. name: "Standard",
  1671. height: math.unit(7 + 5/6, "feet")
  1672. },
  1673. {
  1674. name: "Large",
  1675. height: math.unit(10, "meters")
  1676. },
  1677. {
  1678. name: "Macro",
  1679. height: math.unit(2500, "meters")
  1680. },
  1681. {
  1682. name: "Megamacro",
  1683. height: math.unit(5e6, "meters")
  1684. },
  1685. {
  1686. name: "Examacro",
  1687. height: math.unit(5e12, "lightyears")
  1688. }
  1689. ],
  1690. math.unit(7 + 5/6, "feet")
  1691. )
  1692. };
  1693. characterMakers["Ebony"] = () => {
  1694. return makeCharacter(
  1695. "Ebony",
  1696. "Lazerwolf",
  1697. {
  1698. front: {
  1699. height: math.unit(2, "meter"),
  1700. weight: math.unit(60, "kg"),
  1701. name: "Front",
  1702. image: {
  1703. source: "./media/characters/ebony/front.svg",
  1704. bottom: 0.03,
  1705. extra: 1045/810 + 0.03
  1706. }
  1707. },
  1708. side: {
  1709. height: math.unit(2, "meter"),
  1710. weight: math.unit(60, "kg"),
  1711. name: "Side",
  1712. image: {
  1713. source: "./media/characters/ebony/side.svg",
  1714. bottom: 0.03,
  1715. extra: 1045/810 + 0.03
  1716. }
  1717. },
  1718. back: {
  1719. height: math.unit(2, "meter"),
  1720. weight: math.unit(60, "kg"),
  1721. name: "Back",
  1722. image: {
  1723. source: "./media/characters/ebony/back.svg",
  1724. bottom: 0.01,
  1725. extra: 1045/810 + 0.01
  1726. }
  1727. },
  1728. },
  1729. [
  1730. {
  1731. name: "Standard",
  1732. height: math.unit(9/8 * (7 + 5/12), "feet")
  1733. },
  1734. {
  1735. name: "Macro",
  1736. height: math.unit(200, "feet")
  1737. },
  1738. {
  1739. name: "Gigamacro",
  1740. height: math.unit(13000, "km")
  1741. }
  1742. ],
  1743. math.unit(7 + 5/12, "feet")
  1744. )
  1745. };
  1746. characterMakers["Mountain"] = () => {
  1747. return makeCharacter(
  1748. "Mountain",
  1749. "Asana",
  1750. {
  1751. front: {
  1752. height: math.unit(6, "feet"),
  1753. weight: math.unit(175, "lb"),
  1754. name: "Front",
  1755. image: {
  1756. source: "./media/characters/mountain/front.svg"
  1757. }
  1758. },
  1759. back: {
  1760. height: math.unit(6, "feet"),
  1761. weight: math.unit(175, "lb"),
  1762. name: "Back",
  1763. image: {
  1764. source: "./media/characters/mountain/back.svg"
  1765. }
  1766. },
  1767. },
  1768. [
  1769. {
  1770. name: "Large",
  1771. height: math.unit(20, "meters")
  1772. },
  1773. {
  1774. name: "Macro",
  1775. height: math.unit(300, "meters")
  1776. },
  1777. {
  1778. name: "Gigamacro",
  1779. height: math.unit(10000, "km")
  1780. },
  1781. {
  1782. name: "Examacro",
  1783. height: math.unit(10e9, "lightyears")
  1784. }
  1785. ],
  1786. math.unit(10000, "km")
  1787. )
  1788. };
  1789. characterMakers["Rick"] = () => {
  1790. return makeCharacter(
  1791. "Rick",
  1792. "Victni",
  1793. {
  1794. front: {
  1795. height: math.unit(8, "feet"),
  1796. weight: math.unit(500, "lb"),
  1797. name: "Front",
  1798. image: {
  1799. source: "./media/characters/rick/front.svg"
  1800. }
  1801. }
  1802. },
  1803. [
  1804. {
  1805. name: "Normal",
  1806. height: math.unit(8, "feet")
  1807. },
  1808. {
  1809. name: "Macro",
  1810. height: math.unit(5, "km")
  1811. }
  1812. ],
  1813. math.unit(8, "feet")
  1814. )
  1815. };
  1816. characterMakers["Ona"] = () => {
  1817. return makeCharacter(
  1818. "Ona",
  1819. "Arrogance127",
  1820. {
  1821. front: {
  1822. height: math.unit(8, "feet"),
  1823. weight: math.unit(120, "lb"),
  1824. name: "Front",
  1825. image: {
  1826. source: "./media/characters/ona/front.svg"
  1827. }
  1828. },
  1829. frontAlt: {
  1830. height: math.unit(8, "feet"),
  1831. weight: math.unit(120, "lb"),
  1832. name: "Front (Alt)",
  1833. image: {
  1834. source: "./media/characters/ona/front-alt.svg"
  1835. }
  1836. },
  1837. back: {
  1838. height: math.unit(8, "feet"),
  1839. weight: math.unit(120, "lb"),
  1840. name: "Back",
  1841. image: {
  1842. source: "./media/characters/ona/back.svg"
  1843. }
  1844. },
  1845. foot: {
  1846. height: math.unit(1.1, "feet"),
  1847. name: "Foot",
  1848. image: {
  1849. source: "./media/characters/ona/foot.svg"
  1850. }
  1851. }
  1852. },
  1853. [
  1854. {
  1855. name: "Megamacro",
  1856. height: math.unit(70, "km")
  1857. }
  1858. ],
  1859. math.unit(70, "km")
  1860. )
  1861. };
  1862. function makeCharacters() {
  1863. const results = [];
  1864. results.push({
  1865. name: "Sofia",
  1866. constructor: makeSofia
  1867. });
  1868. results.push({
  1869. name: "March",
  1870. constructor: makeMarch
  1871. });
  1872. results.push({
  1873. name: "Noir",
  1874. constructor: makeNoir
  1875. });
  1876. results.push({
  1877. name: "Okuri",
  1878. constructor: makeOkuri
  1879. });
  1880. results.push({
  1881. name: "Manny",
  1882. constructor: makeManny
  1883. });
  1884. results.push({
  1885. name: "Adake",
  1886. constructor: makeAdake
  1887. });
  1888. results.push({
  1889. name: "Elijah",
  1890. constructor: makeElijah
  1891. });
  1892. results.push({
  1893. name: "Rai",
  1894. constructor: makeRai
  1895. });
  1896. results.push({
  1897. name: "Jazzy",
  1898. constructor: makeJazzy
  1899. });
  1900. results.push({
  1901. name: "Flamm",
  1902. constructor: makeFlamm
  1903. });
  1904. results.push({
  1905. name: "Zephiro",
  1906. constructor: makeZephiro
  1907. });
  1908. results.push({
  1909. name: "Fory",
  1910. constructor: makeFory
  1911. });
  1912. results.push({
  1913. name: "Kurrikage",
  1914. constructor: makeKurrikage
  1915. });
  1916. results.push({
  1917. name: "Shingo",
  1918. constructor: makeShingo
  1919. });
  1920. results.push({
  1921. name: "Aigey",
  1922. constructor: makeAigey
  1923. });
  1924. results.push({
  1925. name: "Natasha",
  1926. constructor: makeNatasha
  1927. });
  1928. results.push({
  1929. name: "Malik",
  1930. constructor: makeMalik
  1931. });
  1932. results.push({
  1933. name: "Sefer",
  1934. constructor: makeSefer
  1935. });
  1936. results.push({
  1937. name: "Normal man",
  1938. constructor: makeMan
  1939. });
  1940. Object.entries(characterMakers).forEach(([key, value]) => {
  1941. results.push({
  1942. name: key,
  1943. constructor: value
  1944. });
  1945. });
  1946. return results;
  1947. }