Advertisement
deadove

klaus commission

Jan 29th, 2020
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 38.15 KB | None | 0 0
  1. <head>
  2.  
  3. <style>
  4. body {
  5. background-color: #010101;
  6. color: #a1a1a1;
  7. padding: 5% 25% 0%;
  8. }
  9.  
  10. .main {
  11. text-align: center;
  12. background-color: #0a0a0a;
  13. padding: 2% 5% 0%;
  14. width: 100%;
  15. height: 90%;
  16. overflow: auto;
  17. border-radius: 30px;
  18. }
  19.  
  20. input {
  21. margin: 1%;
  22. padding: 1%;
  23. width: 80%;
  24. border: 1px solid #3b365c;
  25. border-radius: 10px;
  26. color: #fff;
  27. background: #222f40;
  28. vertical-align: top;
  29. }
  30.  
  31. .output {
  32. margin-top: 1%;
  33. border: 1px solid #515151;
  34. border-radius: 30px;
  35. height: 30%;
  36. overflow: auto;
  37. text-align: left;
  38. padding: 4%
  39. }
  40.  
  41. button {
  42. margin: 3%;
  43. margin-bottom: none;
  44. color: #a5f1f1;
  45. background: #222f40;
  46. border: none;
  47. border-radius: 15px;
  48. font-size: 24px;
  49. padding: 1% 3%;
  50. text-shadow: 0px 0px 10px #a5f1f1;
  51. }
  52.  
  53. b {
  54. color: #dddddd;
  55. }
  56.  
  57. i {
  58. color: #7d7d7d;
  59. }
  60.  
  61. hr {
  62. border: none;
  63. border-top: 1px solid #91f3ff;
  64. opacity: 0.2;
  65. }
  66.  
  67. a, a.hover {
  68. color: #fff;
  69. }
  70.  
  71. ::placeholder {
  72. color: #fff;
  73. opacity: 0.5;
  74. }
  75. </style>
  76.  
  77. <script>
  78. // -----------------------
  79.  
  80. // ------- numbers -------
  81.  
  82. // -----------------------
  83.  
  84. let rNum = 0;
  85. let mNum = 0;
  86. let cNum = 0;
  87. let lNum = 0;
  88.  
  89.  
  90.  
  91. // -----------------------
  92.  
  93. // -------- genos --------
  94.  
  95. // -----------------------
  96.  
  97. let aGeno = 'XX/OO/BB/McMc/RdRd';
  98. let bGeno = 'XY/O-/BB/McMc/RdRd';
  99. let kGeno = '';
  100. let kPheno = '';
  101.  
  102.  
  103.  
  104. // -----------------------
  105.  
  106. // ----- baby genes ------
  107.  
  108. // -----------------------
  109.  
  110. // first gene
  111. let XX1 = '';
  112. let OO1 = '';
  113. let BB1 = '';
  114. let DD1 = '';
  115. let DM1 = '';
  116. let AA1 = '';
  117. let TA1 = '';
  118. let SP1 = '';
  119. let MC1 = '';
  120. let II1 = '';
  121. let WB1 = '';
  122. let CC1 = '';
  123. let WD1 = '';
  124. let WS1 = '';
  125. let RD1 = '';
  126. let WF1 = '';
  127.  
  128. // second gene
  129. let XX2 = '';
  130. let OO2 = '';
  131. let BB2 = '';
  132. let DD2 = '';
  133. let DM2 = '';
  134. let AA2 = '';
  135. let TA2 = '';
  136. let SP2 = '';
  137. let MC2 = '';
  138. let II2 = '';
  139. let WB2 = '';
  140. let CC2 = '';
  141. let WD2 = '';
  142. let WS2 = '';
  143. let RD2 = '';
  144. let WF2 = '';
  145.  
  146.  
  147. // -----------------------
  148.  
  149. // -------- pheno --------
  150.  
  151. // -----------------------
  152.  
  153. let Base = '';
  154. let Gend = '';
  155.  
  156. let DDP = '';
  157. let DMP = '';
  158. let AAP = '';
  159. let IIP = '';
  160. let CCP = '';
  161. let WDP = '';
  162. let WSP = '';
  163. let FFP = '';
  164.  
  165. let BBC = '';
  166. let DDC = '';
  167. let DMC = '';
  168. let AAC = '';
  169. let TAC = '';
  170. let SPC = '';
  171. let MCC = '';
  172. let IIC = '';
  173. let CCC = '';
  174.  
  175.  
  176.  
  177. // -----------------------
  178.  
  179. // ------- babies --------
  180.  
  181. // -----------------------
  182.  
  183. let kA = '';
  184. let kB = '';
  185. let kC = '';
  186. let kD = '';
  187.  
  188.  
  189. // ---------------------
  190.  
  191. // ----- rolling -----
  192.  
  193. // ---------------------
  194.  
  195.  
  196. function babyRoll() {
  197.  
  198. rnum = Math.floor(Math.random() * 100);
  199. if (rnum <= 50) {
  200. XX1 = 'X';
  201. XX2 = 'X/';
  202. } else {
  203. XX1 = 'X';
  204. XX2 = 'Y/';
  205. };
  206.  
  207. // ----------------------------------------------
  208.  
  209. if (aGeno.includes('OO')) {
  210. OO1 = 'O';
  211. } else if (aGeno.includes('Oo')) {
  212. rNum = Math.floor(Math.random() * 2);
  213. switch (rNum) {
  214. case 0:
  215. OO1 = 'O';
  216. break;
  217. case 1:
  218. OO1 = 'o';
  219. break;
  220. }
  221. } else if (aGeno.includes('oo')) {
  222. OO1 = 'o';
  223. } else {
  224. OO1 = 'o';
  225. };
  226.  
  227. // ----------------------------------------------
  228.  
  229. if (bGeno.includes('O') && XX2 == 'X/') {
  230. OO2 = 'O';
  231. } else if (bGeno.includes('o') && XX2 == 'X/') {
  232. OO2 = 'o';
  233. } else if (XX2 == 'Y/') {
  234. OO2 = '-';
  235. } else {
  236. OO2 = '-';
  237. };
  238.  
  239. // ----------------------------------------------
  240.  
  241. if (aGeno.includes('BB')) {
  242. BB1 = '/B';
  243. } else if (aGeno.includes('Bb')) {
  244. rNum = Math.floor(Math.random() * 2);
  245. switch (rNum) {
  246. case 0:
  247. BB1 = '/B';
  248. break;
  249. case 1:
  250. BB1 = '/b';
  251. break;
  252. }
  253. } else if (aGeno.includes('Bb1')) {
  254. rNum = Math.floor(Math.random() * 2);
  255. switch (rNum) {
  256. case 0:
  257. BB1 = '/B';
  258. break;
  259. case 1:
  260. BB1 = '/b1';
  261. break;
  262. }
  263. } else if (aGeno.includes('bb')) {
  264. B1 = '/b';
  265. } else if (aGeno.includes('bb1')) {
  266. rNum = Math.floor(Math.random() * 2);
  267. switch (rNum) {
  268. case 0:
  269. BB1 = '/b';
  270. break;
  271. case 1:
  272. BB1 = '/b1';
  273. break;
  274. }
  275. } else if (aGeno.includes('b1b1')) {
  276. BB1 = '/b1';
  277. } else {
  278. BB1 = '/B';
  279. };
  280.  
  281. // ----------------------------------------------
  282.  
  283. if (bGeno.includes('BB')) {
  284. BB2 = 'B';
  285. } else if (bGeno.includes('Bb')) {
  286. rNum = Math.floor(Math.random() * 2);
  287. switch (rNum) {
  288. case 0:
  289. BB2 = 'B';
  290. break;
  291. case 1:
  292. BB2 = 'b';
  293. break;
  294. }
  295. } else if (bGeno.includes('Bb1')) {
  296. rNum = Math.floor(Math.random() * 2);
  297. switch (rNum) {
  298. case 0:
  299. BB2 = 'B';
  300. break;
  301. case 1:
  302. BB2 = 'b1';
  303. break;
  304. }
  305. } else if (bGeno.includes('bb')) {
  306. BB2 = 'b';
  307. } else if (bGeno.includes('bb1')) {
  308. rNum = Math.floor(Math.random() * 2);
  309. switch (rNum) {
  310. case 0:
  311. BB2 = 'b';
  312. break;
  313. case 1:
  314. BB2 = 'b1';
  315. break;
  316. }
  317. } else if (bGeno.includes('b1b1')) {
  318. BB2 = 'b1';
  319. } else {
  320. BB2 = 'B';
  321. };
  322.  
  323. // ----------------------------------------------
  324.  
  325. if (aGeno.includes('DD')) {
  326. DD1 = '/D';
  327. } else if (aGeno.includes('Dd')) {
  328. rNum = Math.floor(Math.random() * 2);
  329. switch (rNum) {
  330. case 0:
  331. DD1 = '/D';
  332. break;
  333. case 1:
  334. DD1 = '/d';
  335. break;
  336. }
  337. } else if (aGeno.includes('dd')) {
  338. DD1 = '/d';
  339. } else {
  340. DD1 = '/D';
  341. };
  342.  
  343. // ----------------------------------------------
  344.  
  345. if (aGeno.includes('DmDm')) {
  346. DM1 = '/Dm';
  347. } else if (aGeno.includes('Dmdm')) {
  348. rNum = Math.floor(Math.random() * 2);
  349. switch (rNum) {
  350. case 0:
  351. DM1 = '/Dm';
  352. break;
  353. case 1:
  354. DM1 = '/dm';
  355. break;
  356. }
  357. } else if (aGeno.includes('dmdm')) {
  358. DM1 = '/dm';
  359. } else {
  360. DM1 = '/dm';
  361. };
  362.  
  363. // ----------------------------------------------
  364.  
  365. if (aGeno.includes('ApbApb')) {
  366. AA1 = '/Apb';
  367. } else if (aGeno.includes('ApbA')) {
  368. rNum = Math.floor(Math.random() * 2);
  369. switch (rNum) {
  370. case 0:
  371. AA1 = '/Apb';
  372. break;
  373. case 1:
  374. AA1 = '/A';
  375. break;
  376. }
  377. } else if (aGeno.includes('Apba')) {
  378. rNum = Math.floor(Math.random() * 2);
  379. switch (rNum) {
  380. case 0:
  381. AA1 = '/Apb';
  382. break;
  383. case 1:
  384. AA1 = '/a';
  385. break;
  386. }
  387. } else if (aGeno.includes('AA')) {
  388. AA1 = '/A';
  389. } else if (aGeno.includes('Aa')) {
  390. rNum = Math.floor(Math.random() * 2);
  391. switch (rNum) {
  392. case 0:
  393. AA1 = '/A';
  394. break;
  395. case 1:
  396. AA1 = '/a';
  397. break;
  398. }
  399. } else if (aGeno.includes('aa')) {
  400. AA1 = '/a';
  401. } else {
  402. AA1 = '/a';
  403. };
  404.  
  405. // ----------------------------------------------
  406.  
  407. if (aGeno.includes('TaTa')) {
  408. TA1 = '/Ta';
  409. } else if (aGeno.includes('Tata')) {
  410. rNum = Math.floor(Math.random() * 2);
  411. switch (rNum) {
  412. case 0:
  413. TA1 = '/Ta';
  414. break;
  415. case 1:
  416. TA1 = '/ta';
  417. break;
  418. }
  419. } else if (aGeno.includes('tata')) {
  420. TA1 = '/ta';
  421. } else {
  422. TA1 = '/ta';
  423. };
  424.  
  425. // ----------------------------------------------
  426.  
  427. if (aGeno.includes('SpSp')) {
  428. SP1 = '/Sp';
  429. } else if (aGeno.includes('Spsp')) {
  430. rNum = Math.floor(Math.random() * 2);
  431. switch (rNum) {
  432. case 0:
  433. SP1 = '/Sp';
  434. break;
  435. case 1:
  436. SP1 = '/sp';
  437. break;
  438. }
  439. } else if (aGeno.includes('spsp')) {
  440. SP1 = '/sp';
  441. } else {
  442. SP1 = '/sp';
  443. };
  444.  
  445. // ----------------------------------------------
  446.  
  447. if (aGeno.includes('McMc')) {
  448. MC1 = '/Mc';
  449. } else if (aGeno.includes('Mcmc')) {
  450. rNum = Math.floor(Math.random() * 2);
  451. switch (rNum) {
  452. case 0:
  453. MC1 = '/Mc';
  454. break;
  455. case 1:
  456. MC1 = '/mc';
  457. break;
  458. }
  459. } else if (aGeno.includes('mcmc')) {
  460. MC1 = '/mc';
  461. } else {
  462. MC1 = '/mc';
  463. };
  464.  
  465. // ----------------------------------------------
  466.  
  467. if (aGeno.includes('II')) {
  468. II1 = '/I';
  469. } else if (aGeno.includes('Ii')) {
  470. rNum = Math.floor(Math.random() * 2);
  471. switch (rNum) {
  472. case 0:
  473. II1 = '/I';
  474. break;
  475. case 1:
  476. II1 = '/i';
  477. break;
  478. }
  479. } else if (aGeno.includes('ii')) {
  480. II1 = '/i';
  481. } else {
  482. II1 = '/i';
  483. };
  484.  
  485. // ----------------------------------------------
  486.  
  487. if (aGeno.includes('WbWb')) {
  488. WB1 = '/Wb';
  489. } else if (aGeno.includes('Wbwb')) {
  490. rNum = Math.floor(Math.random() * 2);
  491. switch (rNum) {
  492. case 0:
  493. WB1 = '/Wb';
  494. break;
  495. case 1:
  496. WB1 = '/wb';
  497. break;
  498. }
  499. } else if (aGeno.includes('wbwb')) {
  500. WB1 = '/wb';
  501. } else {
  502. WB1 = '/wb';
  503. };
  504.  
  505. // ----------------------------------------------
  506.  
  507. if (aGeno.includes('CC')) {
  508. CC1 = '/C';
  509. } else if (aGeno.includes('Ccs')) {
  510. rNum = Math.floor(Math.random() * 2);
  511. switch (rNum) {
  512. case 0:
  513. CC1 = '/C';
  514. break;
  515. case 1:
  516. CC1 = '/cs';
  517. break;
  518. }
  519. } else if (aGeno.includes('Ccb')) {
  520. rNum = Math.floor(Math.random() * 2);
  521. switch (rNum) {
  522. case 0:
  523. CC1 = '/C';
  524. break;
  525. case 1:
  526. CC1 = '/cb';
  527. break;
  528. }
  529. } else if (aGeno.includes('Cca')) {
  530. rNum = Math.floor(Math.random() * 2);
  531. switch (rNum) {
  532. case 0:
  533. CC1 = '/C';
  534. break;
  535. case 1:
  536. CC1 = '/ca';
  537. break;
  538. }
  539. } else if (aGeno.includes('Cc')) {
  540. rNum = Math.floor(Math.random() * 2);
  541. switch (rNum) {
  542. case 0:
  543. CC1 = '/C';
  544. break;
  545. case 1:
  546. CC1 = '/c';
  547. break;
  548. }
  549. } else if (aGeno.includes('cscs')) {
  550. CC1 = '/cs';
  551. } else if (aGeno.includes('cscb')) {
  552. rNum = Math.floor(Math.random() * 2);
  553. switch (rNum) {
  554. case 0:
  555. CC1 = '/cs';
  556. break;
  557. case 1:
  558. CC1 = '/cb';
  559. break;
  560. }
  561. } else if (aGeno.includes('csca')) {
  562. rNum = Math.floor(Math.random() * 2);
  563. switch (rNum) {
  564. case 0:
  565. CC1 = '/cs';
  566. break;
  567. case 1:
  568. CC1 = '/ca';
  569. break;
  570. }
  571. } else if (aGeno.includes('csc')) {
  572. rNum = Math.floor(Math.random() * 2);
  573. switch (rNum) {
  574. case 0:
  575. CC1 = '/cs';
  576. break;
  577. case 1:
  578. CC1 = '/c';
  579. break;
  580. }
  581. } else if (aGeno.includes('cbcb')) {
  582. CC1 = '/cb';
  583. } else if (aGeno.includes('cbca')) {
  584. rNum = Math.floor(Math.random() * 2);
  585. switch (rNum) {
  586. case 0:
  587. CC1 = '/cb';
  588. break;
  589. case 1:
  590. CC1 = '/ca';
  591. break;
  592. }
  593. } else if (aGeno.includes('cbc')) {
  594. rNum = Math.floor(Math.random() * 2);
  595. switch (rNum) {
  596. case 0:
  597. CC1 = '/cb';
  598. break;
  599. case 1:
  600. CC1 = '/c';
  601. break;
  602. }
  603. } else if (aGeno.includes('caca')) {
  604. CC1 = '/ca';
  605. } else if (aGeno.includes('cac')) {
  606. rNum = Math.floor(Math.random() * 2);
  607. switch (rNum) {
  608. case 0:
  609. CC1 = '/ca';
  610. break;
  611. case 1:
  612. CC1 = '/c';
  613. break;
  614. }
  615. } else if (aGeno.includes('cc')) {
  616. CC1 = '/c';
  617. } else {
  618. CC1 = '/C';
  619. };
  620.  
  621. // ----------------------------------------------
  622.  
  623. if (aGeno.includes('WdWd')) {
  624. WD1 = '/Wd';
  625. } else if (aGeno.includes('Wdwd')) {
  626. rNum = Math.floor(Math.random() * 2);
  627. switch (rNum) {
  628. case 0:
  629. WD1 = '/Wd';
  630. break;
  631. case 1:
  632. WD1 = '/wd';
  633. break;
  634. }
  635. } else if (aGeno.includes('wdwd')) {
  636. WD1 = '/wd';
  637. } else {
  638. WD1 = '/wd';
  639. };
  640.  
  641. // ----------------------------------------------
  642.  
  643. if (aGeno.includes('WsWs')) {
  644. WS1 = '/Ws';
  645. } else if (aGeno.includes('Wsws')) {
  646. rNum = Math.floor(Math.random() * 2);
  647. switch (rNum) {
  648. case 0:
  649. WS1 = '/Ws';
  650. break;
  651. case 1:
  652. WS1 = '/ws';
  653. break;
  654. }
  655. } else if (aGeno.includes('wsws')) {
  656. WS1 = '/ws';
  657. } else {
  658. WS1 = '/ws';
  659. };
  660.  
  661. // ----------------------------------------------
  662.  
  663. if (aGeno.includes('RdRd')) {
  664. RD1 = '/Rd';
  665. } else if (aGeno.includes('RdMg')) {
  666. rNum = Math.floor(Math.random() * 2);
  667. switch (rNum) {
  668. case 0:
  669. RD1 = '/Rd';
  670. break;
  671. case 1:
  672. RD1 = '/Mg';
  673. break;
  674. }
  675. } else if (aGeno.includes('RdYw')) {
  676. rNum = Math.floor(Math.random() * 2);
  677. switch (rNum) {
  678. case 0:
  679. RD1 = '/Rd';
  680. break;
  681. case 1:
  682. RD1 = '/Yw';
  683. break;
  684. }
  685. } else if (aGeno.includes('MgYw')) {
  686. rNum = Math.floor(Math.random() * 2);
  687. switch (rNum) {
  688. case 0:
  689. RD1 = '/Yw';
  690. break;
  691. case 1:
  692. RD1 = '/Mg';
  693. break;
  694. }
  695. } else if (aGeno.includes('MgMg')) {
  696. RD1 = '/Mg';
  697. } else if (aGeno.includes('YwYw')) {
  698. RD1 = '/Yw';
  699. } else {
  700. RD1 = '/Rd';
  701. };
  702.  
  703.  
  704. // ----------------------------------------------
  705.  
  706. if (aGeno.includes('WfWf')) {
  707. WF1 = '/Wf';
  708. } else if (aGeno.includes('Wfwf')) {
  709. rNum = Math.floor(Math.random() * 2);
  710. switch (rNum) {
  711. case 0:
  712. WF1 = '/Wf';
  713. break;
  714. case 1:
  715. WF1 = '/wf';
  716. break;
  717. }
  718. } else if (aGeno.includes('wfwf')) {
  719. WF1 = '/wf';
  720. } else {
  721. WF1 = '/wf';
  722. };
  723.  
  724. // ----------------------------------------------
  725.  
  726. if (bGeno.includes('DD')) {
  727. DD2 = 'D';
  728. } else if (bGeno.includes('Dd')) {
  729. rNum = Math.floor(Math.random() * 2);
  730. switch (rNum) {
  731. case 0:
  732. DD2 = 'D';
  733. break;
  734. case 1:
  735. DD2 = 'd';
  736. break;
  737. }
  738. } else if (bGeno.includes('dd')) {
  739. DD2 = 'd';
  740. } else {
  741. DD2 = 'D';
  742. };
  743.  
  744. // ----------------------------------------------
  745.  
  746. if (bGeno.includes('DmDm')) {
  747. DM2 = 'Dm';
  748. } else if (bGeno.includes('Dmdm')) {
  749. rNum = Math.floor(Math.random() * 2);
  750. switch (rNum) {
  751. case 0:
  752. DM2 = 'Dm';
  753. break;
  754. case 1:
  755. DM2 = 'dm';
  756. break;
  757. }
  758. } else if (bGeno.includes('dmdm')) {
  759. DM2 = 'dm';
  760. } else {
  761. DM2 = 'dm';
  762. };
  763.  
  764. // ----------------------------------------------
  765.  
  766. if (bGeno.includes('ApbApb')) {
  767. AA2 = 'Apb';
  768. } else if (bGeno.includes('ApbA')) {
  769. rNum = Math.floor(Math.random() * 2);
  770. switch (rNum) {
  771. case 0:
  772. AA2 = 'Apb';
  773. break;
  774. case 1:
  775. AA2 = 'A';
  776. break;
  777. }
  778. } else if (bGeno.includes('Apba')) {
  779. rNum = Math.floor(Math.random() * 2);
  780. switch (rNum) {
  781. case 0:
  782. AA2 = 'Apb';
  783. break;
  784. case 1:
  785. AA2 = 'a';
  786. break;
  787. }
  788. } else if (bGeno.includes('AA')) {
  789. AA2 = 'A';
  790. } else if (bGeno.includes('Aa')) {
  791. rNum = Math.floor(Math.random() * 2);
  792. switch (rNum) {
  793. case 0:
  794. AA2 = 'A';
  795. break;
  796. case 1:
  797. AA2 = 'a';
  798. break;
  799. }
  800. } else if (bGeno.includes('aa')) {
  801. AA2 = 'a';
  802. } else {
  803. AA2 = 'a';
  804. };
  805.  
  806. // ----------------------------------------------
  807.  
  808. if (bGeno.includes('TaTa')) {
  809. TA2 = 'Ta';
  810. } else if (bGeno.includes('Tata')) {
  811. rNum = Math.floor(Math.random() * 2);
  812. switch (rNum) {
  813. case 0:
  814. TA2 = 'Ta';
  815. break;
  816. case 1:
  817. TA2 = 'ta';
  818. break;
  819. }
  820. } else if (bGeno.includes('tata')) {
  821. TA2 = 'ta';
  822. } else {
  823. TA2 = 'ta';
  824. };
  825.  
  826. // ----------------------------------------------
  827.  
  828. if (bGeno.includes('SpSp')) {
  829. SP2 = 'Sp';
  830. } else if (bGeno.includes('Spsp')) {
  831. rNum = Math.floor(Math.random() * 2);
  832. switch (rNum) {
  833. case 0:
  834. SP2 = 'Sp';
  835. break;
  836. case 1:
  837. SP2 = 'sp';
  838. break;
  839. }
  840. } else if (bGeno.includes('spsp')) {
  841. SP2 = 'sp';
  842. } else {
  843. SP2 = 'sp';
  844. };
  845.  
  846. // ----------------------------------------------
  847.  
  848. if (bGeno.includes('McMc')) {
  849. MC2 = 'Mc';
  850. } else if (bGeno.includes('Mcmc')) {
  851. rNum = Math.floor(Math.random() * 2);
  852. switch (rNum) {
  853. case 0:
  854. MC2 = 'Mc';
  855. break;
  856. case 1:
  857. MC2 = 'mc';
  858. break;
  859. }
  860. } else if (bGeno.includes('mcmc')) {
  861. MC2 = 'mc';
  862. } else {
  863. MC2 = 'mc';
  864. };
  865.  
  866. // ----------------------------------------------
  867.  
  868. if (bGeno.includes('II')) {
  869. II2 = 'I';
  870. } else if (bGeno.includes('Ii')) {
  871. rNum = Math.floor(Math.random() * 2);
  872. switch (rNum) {
  873. case 0:
  874. II2 = 'I';
  875. break;
  876. case 1:
  877. II2 = 'i';
  878. break;
  879. }
  880. } else if (bGeno.includes('ii')) {
  881. II2 = 'i';
  882. } else {
  883. II2 = 'i';
  884. };
  885.  
  886. // ----------------------------------------------
  887.  
  888. if (bGeno.includes('WbWb')) {
  889. WB2 = 'Wb';
  890. } else if (bGeno.includes('Wbwb')) {
  891. rNum = Math.floor(Math.random() * 2);
  892. switch (rNum) {
  893. case 0:
  894. WB2 = 'Wb';
  895. break;
  896. case 1:
  897. WB2 = 'wb';
  898. break;
  899. }
  900. } else if (bGeno.includes('wbwb')) {
  901. WB2 = 'wb';
  902. } else {
  903. WB2 = 'wb';
  904. };
  905.  
  906. // ----------------------------------------------
  907.  
  908. if (bGeno.includes('CC')) {
  909. CC2 = 'C';
  910. } else if (bGeno.includes('Ccs')) {
  911. rNum = Math.floor(Math.random() * 2);
  912. switch (rNum) {
  913. case 0:
  914. CC2 = 'C';
  915. break;
  916. case 1:
  917. CC2 = 'cs';
  918. break;
  919. }
  920. } else if (bGeno.includes('Ccb')) {
  921. rNum = Math.floor(Math.random() * 2);
  922. switch (rNum) {
  923. case 0:
  924. CC2 = 'C';
  925. break;
  926. case 1:
  927. CC2 = 'cb';
  928. break;
  929. }
  930. } else if (bGeno.includes('Cca')) {
  931. rNum = Math.floor(Math.random() * 2);
  932. switch (rNum) {
  933. case 0:
  934. CC2 = 'C';
  935. break;
  936. case 1:
  937. CC2 = 'ca';
  938. break;
  939. }
  940. } else if (bGeno.includes('Cc')) {
  941. rNum = Math.floor(Math.random() * 2);
  942. switch (rNum) {
  943. case 0:
  944. CC2 = 'C';
  945. break;
  946. case 1:
  947. CC2 = 'c';
  948. break;
  949. }
  950. } else if (bGeno.includes('cscs')) {
  951. CC2 = 'cs';
  952. } else if (bGeno.includes('cscb')) {
  953. rNum = Math.floor(Math.random() * 2);
  954. switch (rNum) {
  955. case 0:
  956. CC2 = 'cs';
  957. break;
  958. case 1:
  959. CC2 = 'cb';
  960. break;
  961. }
  962. } else if (bGeno.includes('csca')) {
  963. rNum = Math.floor(Math.random() * 2);
  964. switch (rNum) {
  965. case 0:
  966. CC2 = 'cs';
  967. break;
  968. case 1:
  969. CC2 = 'ca';
  970. break;
  971. }
  972. } else if (bGeno.includes('csc')) {
  973. rNum = Math.floor(Math.random() * 2);
  974. switch (rNum) {
  975. case 0:
  976. CC2 = 'cs';
  977. break;
  978. case 1:
  979. CC2 = 'c';
  980. break;
  981. }
  982. } else if (bGeno.includes('cbcb')) {
  983. CC2 = 'cb';
  984. } else if (bGeno.includes('cbca')) {
  985. rNum = Math.floor(Math.random() * 2);
  986. switch (rNum) {
  987. case 0:
  988. CC2 = 'cb';
  989. break;
  990. case 1:
  991. CC2 = 'ca';
  992. break;
  993. }
  994. } else if (bGeno.includes('cbc')) {
  995. rNum = Math.floor(Math.random() * 2);
  996. switch (rNum) {
  997. case 0:
  998. CC2 = 'cb';
  999. break;
  1000. case 1:
  1001. CC2 = 'c';
  1002. break;
  1003. }
  1004. } else if (bGeno.includes('caca')) {
  1005. CC2 = 'ca';
  1006. } else if (bGeno.includes('cac')) {
  1007. rNum = Math.floor(Math.random() * 2);
  1008. switch (rNum) {
  1009. case 0:
  1010. CC2 = 'ca';
  1011. break;
  1012. case 1:
  1013. CC2 = 'c';
  1014. break;
  1015. }
  1016. } else if (bGeno.includes('cc')) {
  1017. CC2 = 'c';
  1018. } else {
  1019. CC2 = 'C';
  1020. };
  1021.  
  1022. // ----------------------------------------------
  1023.  
  1024. if (bGeno.includes('WdWd')) {
  1025. WD2 = 'Wd';
  1026. } else if (bGeno.includes('Wdwd')) {
  1027. rNum = Math.floor(Math.random() * 2);
  1028. switch (rNum) {
  1029. case 0:
  1030. WD2 = 'Wd';
  1031. break;
  1032. case 1:
  1033. WD2 = 'wd';
  1034. break;
  1035. }
  1036. } else if (bGeno.includes('wdwd')) {
  1037. WD2 = 'wd';
  1038. } else {
  1039. WD2 = 'wd';
  1040. };
  1041.  
  1042. // ----------------------------------------------
  1043.  
  1044. if (bGeno.includes('WsWs')) {
  1045. WS2 = 'Ws';
  1046. } else if (bGeno.includes('Wsws')) {
  1047. rNum = Math.floor(Math.random() * 2);
  1048. switch (rNum) {
  1049. case 0:
  1050. WS2 = 'Ws';
  1051. break;
  1052. case 1:
  1053. WS2 = 'ws';
  1054. break;
  1055. }
  1056. } else if (bGeno.includes('wsws')) {
  1057. WS2 = 'ws';
  1058. } else {
  1059. WS2 = 'ws';
  1060. };
  1061.  
  1062. // ----------------------------------------------
  1063.  
  1064. if (bGeno.includes('RdRd')) {
  1065. RD2 = 'Rd';
  1066. } else if (bGeno.includes('RdMg')) {
  1067. rNum = Math.floor(Math.random() * 2);
  1068. switch (rNum) {
  1069. case 0:
  1070. RD2 = 'Rd';
  1071. break;
  1072. case 1:
  1073. RD2 = 'Mg';
  1074. break;
  1075. }
  1076. } else if (bGeno.includes('RdYw')) {
  1077. rNum = Math.floor(Math.random() * 2);
  1078. switch (rNum) {
  1079. case 0:
  1080. RD2 = 'Rd';
  1081. break;
  1082. case 1:
  1083. RD2 = 'Yw';
  1084. break;
  1085. }
  1086. } else if (bGeno.includes('MgYw')) {
  1087. rNum = Math.floor(Math.random() * 2);
  1088. switch (rNum) {
  1089. case 0:
  1090. RD2 = 'Yw';
  1091. break;
  1092. case 1:
  1093. RD2 = 'Mg';
  1094. break;
  1095. }
  1096. } else if (bGeno.includes('MgMg')) {
  1097. RD2 = 'Mg';
  1098. } else if (bGeno.includes('YwYw')) {
  1099. RD2 = 'Yw';
  1100. } else {
  1101. RD2 = 'Rd';
  1102. };
  1103.  
  1104. // ----------------------------------------------
  1105.  
  1106. if (bGeno.includes('WfWf')) {
  1107. WF2 = 'Wf';
  1108. } else if (bGeno.includes('Wfwf')) {
  1109. rNum = Math.floor(Math.random() * 2);
  1110. switch (rNum) {
  1111. case 0:
  1112. WF2 = 'Wf';
  1113. break;
  1114. case 1:
  1115. WF2 = 'wf';
  1116. break;
  1117. }
  1118. } else if (bGeno.includes('wfwf')) {
  1119. WF2 = 'wf';
  1120. } else {
  1121. WF2 = 'wf';
  1122. };
  1123.  
  1124. // ----------------------------------------------
  1125.  
  1126.  
  1127. // -------------------------------
  1128.  
  1129. // - remove nonfuntional genes -
  1130.  
  1131. // -------------------------------
  1132.  
  1133.  
  1134. if (DD1 + DD2 == '/DD') {
  1135. DD1 = '';
  1136. DD2 = '';
  1137. };
  1138.  
  1139. if (DM1 + DM2 == '/dmdm') {
  1140. DM1 = '';
  1141. DM2 = '';
  1142. };
  1143.  
  1144. if (TA1 + TA2 == '/tata') {
  1145. TA1 = '';
  1146. TA2 = '';
  1147. };
  1148.  
  1149. if (SP1 + SP2 == '/spsp') {
  1150. SP1 = '';
  1151. SP2 = '';
  1152. };
  1153.  
  1154. if (II1 + II2 == '/ii') {
  1155. II1 = '';
  1156. II2 = '';
  1157. };
  1158.  
  1159. if (WB1 + WB2 == '/wbwb') {
  1160. WB1 = '';
  1161. WB2 = '';
  1162. };
  1163.  
  1164. if (CC1 + CC2 == '/CC') {
  1165. CC1 = '';
  1166. CC2 = '';
  1167. };
  1168.  
  1169. if (WD1 + WD2 == '/wdwd') {
  1170. WD1 = '';
  1171. WD2 = '';
  1172. };
  1173.  
  1174. if (WS1 + WS2 == '/wsws') {
  1175. WS1 = '';
  1176. WS2 = '';
  1177. };
  1178.  
  1179. if (WF1 + WF2 == '/wfwf') {
  1180. WF1 = '';
  1181. WF2 = '';
  1182. };
  1183.  
  1184.  
  1185. // ----------------------------
  1186.  
  1187. // ----- correct xX to Xx -----
  1188.  
  1189. // ----------------------------
  1190.  
  1191. if (OO1 + OO2 == 'oO') {
  1192. OO1 = 'O'
  1193. OO2 = 'o'
  1194. };
  1195.  
  1196. if (BB1 + BB2 == '/bB') {
  1197. BB1 = '/B';
  1198. BB2 = 'b';
  1199. };
  1200.  
  1201. if (BB1 + BB2 == '/b1B') {
  1202. BB1 = '/B';
  1203. BB2 = 'b1';
  1204. };
  1205.  
  1206. if (BB1 + BB2 == '/b1b') {
  1207. BB1 = '/b';
  1208. BB2 = 'b1';
  1209. };
  1210.  
  1211. if (DD1 + DD2 == '/dD') {
  1212. DD1 = '/D';
  1213. DD2 = 'd';
  1214. };
  1215.  
  1216. if (DM1 + DM2 == '/dmDm') {
  1217. DM1 = '/Dm';
  1218. DM2 = 'dm';
  1219. };
  1220.  
  1221. if (AA1 + AA2 == '/AApb') {
  1222. AA1 = '/Apb';
  1223. AA2 = 'A';
  1224. };
  1225.  
  1226. if (AA1 + AA2 == '/aApb') {
  1227. AA1 = '/Apb';
  1228. AA2 = 'a';
  1229. };
  1230.  
  1231. if (AA1 + AA2 == '/aA') {
  1232. AA1 = '/A';
  1233. AA2 = 'a';
  1234. };
  1235.  
  1236. if (TA1 + TA2 == '/taTa') {
  1237. TA1 = '/Ta';
  1238. TA2 = 'ta';
  1239. };
  1240.  
  1241. if (SP1 + SP2 == '/spSp') {
  1242. SP1 = '/Sp';
  1243. SP2 = 'sp';
  1244. };
  1245.  
  1246. if (MC1 + MC2 == '/mcMc') {
  1247. MC1 = '/Mc';
  1248. MC2 = 'mc';
  1249. };
  1250.  
  1251. if (II1 + II2 == '/iI') {
  1252. II1 = '/I';
  1253. II2 = 'i';
  1254. };
  1255.  
  1256. if (WB1 + WB2 == '/wbWb') {
  1257. WB1 = '/Wb';
  1258. WB2 = 'wb';
  1259. };
  1260.  
  1261. if (CC1 + CC2 == '/csC') {
  1262. CC1 = '/C';
  1263. CC2 = 'cs';
  1264. };
  1265.  
  1266. if (CC1 + CC2 == '/cbC') {
  1267. CC1 = '/C';
  1268. CC2 = 'cb';
  1269. };
  1270.  
  1271. if (CC1 + CC2 == '/caC') {
  1272. CC1 = '/C';
  1273. CC2 = 'ca';
  1274. };
  1275.  
  1276. if (CC1 + CC2 == '/cC') {
  1277. CC1 = '/C';
  1278. CC2 = 'c';
  1279. };
  1280.  
  1281. if (CC1 + CC2 == '/cbcs') {
  1282. CC1 = '/cs';
  1283. CC2 = 'cb';
  1284. };
  1285.  
  1286. if (CC1 + CC2 == '/cacs') {
  1287. CC1 = '/cs';
  1288. CC2 = 'ca';
  1289. };
  1290.  
  1291. if (CC1 + CC2 == '/ccs') {
  1292. CC1 = '/cs';
  1293. CC2 = 'c';
  1294. };
  1295.  
  1296. if (CC1 + CC2 == '/cacb') {
  1297. CC1 = '/cb';
  1298. CC2 = 'ca';
  1299. };
  1300.  
  1301. if (CC1 + CC2 == '/ccb') {
  1302. CC1 = '/cb';
  1303. CC2 = 'c';
  1304. };
  1305.  
  1306. if (CC1 + CC2 == '/cca') {
  1307. CC1 = '/ca';
  1308. CC2 = 'c';
  1309. };
  1310.  
  1311. if (WD1 + WD2 == '/wdWd') {
  1312. WD1 = '/Wd';
  1313. WD2 = 'wd';
  1314. };
  1315.  
  1316. if (WS1 + WS2 == '/wsWs') {
  1317. WS1 = '/Ws';
  1318. WS2 = 'ws';
  1319. };
  1320.  
  1321. if (WF1 + WF2 == '/wfWf') {
  1322. WF1 = '/Wf';
  1323. WF2 = 'wf';
  1324. };
  1325. };
  1326.  
  1327.  
  1328.  
  1329. // ---------------------------
  1330.  
  1331. // --------- pheno -----------
  1332.  
  1333. // ---------------------------
  1334.  
  1335. function phenoBuild() {
  1336. if (XX2 == 'Y/') {
  1337. Gend = 'Male';
  1338. } else if (XX2 == 'X/') {
  1339. Gend = 'Female';
  1340. } else {
  1341. Gend = 'Invalid';
  1342. };
  1343.  
  1344. if (OO1 + OO2 + BB1 + BB2 == 'OO/BB' || OO1 + OO2 + BB1 + BB2 == 'O-/BB') {
  1345.  
  1346. Base = 'Red';
  1347. BBC = '<br>Black'
  1348.  
  1349. } else if (OO1 + OO2 + BB1 + BB2 == 'OO/Bb' || OO1 + OO2 + BB1 + BB2 == 'O-/Bb') {
  1350.  
  1351. Base = 'Red';
  1352. BBC = '<br>Black<br>Chocolate'
  1353.  
  1354. } else if (OO1 + OO2 + BB1 + BB2 == 'OO/Bb1' || OO1 + OO2 + BB1 + BB2 == 'O-/Bb1') {
  1355.  
  1356. Base = 'Red';
  1357. BBC = '<br>Black<br>Cinnamon'
  1358.  
  1359. } else if (OO1 + OO2 + BB1 + BB2 == 'OO/bb' || OO1 + OO2 + BB1 + BB2 == 'O-/bb') {
  1360.  
  1361. Base = 'Red';
  1362. BBC = '<br>Chocolate'
  1363.  
  1364. } else if (OO1 + OO2 + BB1 + BB2 == 'OO/bb1' || OO1 + OO2 + BB1 + BB2 == 'O-/bb1') {
  1365.  
  1366. Base = 'Red';
  1367. BBC = '<br>Chocolate<br>Cinnamon'
  1368.  
  1369. } else if (OO1 + OO2 + BB1 + BB2 == 'OO/b1b1' || OO1 + OO2 + BB1 + BB2 == 'O-/b1') {
  1370.  
  1371. Base = 'Red';
  1372. BBC = '<br>Cinnamon'
  1373.  
  1374. } else if (OO1 + OO2 == 'Oo') {
  1375.  
  1376. Base = 'Tortie';
  1377.  
  1378. } else if (BB1 + BB2 == '/BB') {
  1379.  
  1380. Base = 'Black';
  1381. BBC = '';
  1382.  
  1383. } else if (BB1 + BB2 == '/Bb') {
  1384.  
  1385. Base = 'Black';
  1386. BBC = '<br>Chocolate'
  1387.  
  1388. } else if (BB1 + BB2 == '/Bb1') {
  1389.  
  1390. Base = 'Black';
  1391. BBC = '<br>Cinnamon'
  1392.  
  1393. } else if (BB1 + BB2 == '/bb') {
  1394.  
  1395. Base = 'Chocolate';
  1396. BBC = '';
  1397.  
  1398. } else if (BB1 + BB2 == '/bb1') {
  1399.  
  1400. Base = 'Chocolate';
  1401. BBC = '<br>Cinnamon'
  1402.  
  1403. } else if (BB1 == '/b1') {
  1404.  
  1405. Base = 'Cinnamon'
  1406. BBC = '';
  1407.  
  1408. } else {
  1409.  
  1410. Base = '';
  1411. };
  1412.  
  1413. if (DD1 + DM1 == '/D') {
  1414. DDP = '';
  1415. DDC = '<br>Dilution';
  1416. DMP = '';
  1417. DMC = '';
  1418. } else if (DD1 + DM1 == '/d') {
  1419. DDP = '<br>Dilution';
  1420. DDC = '';
  1421. DMP = '';
  1422. DMC = '';
  1423. } else if (DD1 + DM1 == '/D/Dm' || DD1 + DM1 == '/Dm') {
  1424. DDP = '';
  1425. DDC = '';
  1426. DMP = '';
  1427. DMC = '<br>Caramel';
  1428. } else if (DD1 + DM1 == '/d/Dm') {
  1429. DDP = '<br>Dilution';
  1430. DDC = '';
  1431. DMP = '<br>Caramel';
  1432. DMC = '';
  1433. } else {
  1434. DDP = '';
  1435. DDC = '';
  1436. DMP = '';
  1437. DMC = '';
  1438. };
  1439.  
  1440. if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Ta/Sp/Mc'){
  1441. AAP = '<br>Rosetted tabby'
  1442. AAC = '';
  1443. TAC = '';
  1444. SPC = '<br>Spotted tabby'
  1445. MCC = '<br>Mackerel tabby'
  1446. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Ta/Sp/Mc') {
  1447. AAP = '<br>Rosetted tabby'
  1448. AAC = '<br>Domestic tabby';
  1449. TAC = '';
  1450. SPC = '<br>Spotted tabby'
  1451. MCC = '<br>Mackerel tabby'
  1452. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Ta/Mc'){
  1453. AAP = '<br>Rosetted tabby'
  1454. AAC = '';
  1455. TAC = '';
  1456. SPC = ''
  1457. MCC = '<br>Mackerel tabby'
  1458. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Ta/Mc') {
  1459. AAP = '<br>Rosetted tabby'
  1460. AAC = '<br>Domestic tabby';
  1461. TAC = '';
  1462. SPC = ''
  1463. MCC = '<br>Mackerel tabby'
  1464. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Ta/Sp/mc'){
  1465. AAP = '<br>Rosetted tabby'
  1466. AAC = '';
  1467. TAC = '';
  1468. SPC = '<br>Spotted tabby'
  1469. MCC = '<br>Classic tabby'
  1470. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Ta/Sp/mc') {
  1471. AAP = '<br>Rosetted tabby'
  1472. AAC = '<br>Domestic tabby';
  1473. TAC = '';
  1474. SPC = '<br>Spotted tabby'
  1475. MCC = '<br>Classic tabby'
  1476. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Ta/mc'){
  1477. AAP = '<br>Rosetted tabby'
  1478. AAC = '';
  1479. TAC = '';
  1480. SPC = ''
  1481. MCC = '<br>Classic tabby'
  1482. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Ta/mc') {
  1483. AAP = '<br>Rosetted tabby'
  1484. AAC = '<br>Domestic tabby';
  1485. TAC = '';
  1486. SPC = '';
  1487. MCC = '<br>Classic tabby';
  1488. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Sp/Mc'){
  1489. AAP = '<br>Rosetted tabby'
  1490. AAC = '';
  1491. TAC = '';
  1492. SPC = '';
  1493. MCC = '<br>Mackerel tabby';
  1494. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Sp/Mc') {
  1495. AAP = '<br>Rosetted tabby'
  1496. AAC = '<br>Domestic tabby';
  1497. TAC = '';
  1498. SPC = '';
  1499. MCC = '<br>Mackerel tabby'
  1500. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Sp/mc'){
  1501. AAP = '<br>Rosetted tabby'
  1502. AAC = '';
  1503. TAC = '';
  1504. SPC = '';
  1505. MCC = '<br>Classic tabby'
  1506. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Sp/mc') {
  1507. AAP = '<br>Rosetted tabby'
  1508. AAC = '<br>Domestic tabby';
  1509. TAC = '';
  1510. SPC = '';
  1511. MCC = '<br>Classic tabby'
  1512. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Ta/Sp/Mc'){
  1513. AAP = '<br>Rosetted tabby'
  1514. AAC = '';
  1515. TAC = '';
  1516. SPC = '<br>Spotted tabby'
  1517. MCC = '<br>Mackerel tabby'
  1518. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Ta/Sp/Mc') {
  1519. AAP = '<br>Rosetted tabby'
  1520. AAC = '<br>Domestic tabby';
  1521. TAC = '';
  1522. SPC = '<br>Spotted tabby'
  1523. MCC = '<br>Mackerel tabby'
  1524. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Ta/Mc'){
  1525. AAP = '<br>Rosetted tabby'
  1526. AAC = '';
  1527. TAC = '';
  1528. SPC = ''
  1529. MCC = '<br>Mackerel tabby'
  1530. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Ta/Mc') {
  1531. AAP = '<br>Rosetted tabby'
  1532. AAC = '<br>Domestic tabby';
  1533. TAC = '';
  1534. SPC = ''
  1535. MCC = '<br>Mackerel tabby'
  1536. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Ta/Sp/mc'){
  1537. AAP = '<br>Rosetted tabby'
  1538. AAC = '';
  1539. TAC = '';
  1540. SPC = '<br>Spotted tabby'
  1541. MCC = '<br>Classic tabby'
  1542. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Ta/Sp/mc') {
  1543. AAP = '<br>Rosetted tabby'
  1544. AAC = '<br>Domestic tabby';
  1545. TAC = '';
  1546. SPC = '<br>Spotted tabby'
  1547. MCC = '<br>Classic tabby'
  1548. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/Apba/Ta/mc'){
  1549. AAP = '<br>Charcoal rosetted tabby'
  1550. AAC = '';
  1551. TAC = '';
  1552. SPC = ''
  1553. MCC = '<br>Classic tabby'
  1554. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/Apba/Sp/Mc'){
  1555. AAP = '<br>Charcoal rosetted tabby'
  1556. AAC = '';
  1557. TAC = '';
  1558. SPC = '';
  1559. MCC = '<br>Mackerel tabby';
  1560. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/Apba/Sp/mc'){
  1561. AAP = '<br>Charcoal rosetted tabby'
  1562. AAC = '';
  1563. TAC = '';
  1564. SPC = '';
  1565. MCC = '<br>Classic tabby'
  1566. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/Mc' || AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/Mc'){
  1567. AAP = '<br>Candleflame tabby'
  1568. AAC = '';
  1569. TAC = '';
  1570. SPC = '';
  1571. MCC = ''
  1572. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbApb/mc' || AA1 + AA2 + TA1 + SP1 + MC1 == '/ApbA/mc'){
  1573. AAP = '<br>Marble tabby'
  1574. AAC = '';
  1575. TAC = '';
  1576. SPC = '';
  1577. MCC = '';
  1578. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/Apba/Mc'){
  1579. AAP = '<br>Charcoal candleflame tabby'
  1580. AAC = '';
  1581. TAC = '';
  1582. SPC = '';
  1583. MCC = '';
  1584. } else if (AA1 + AA2 + TA1 + SP1 + MC1 == '/Apba/mc'){
  1585. AAP = '<br>Charcoal marble tabby'
  1586. AAC = '';
  1587. TAC = '';
  1588. SPC = '';
  1589. MCC = '';
  1590. } else if (AA1 + TA1 + SP1 + MC1 == '/A/Ta/Sp/Mc') {
  1591. AAP = '<br>Ticked tabby'
  1592. AAC = '';
  1593. TAC = '';
  1594. SPC = '<br>Spotted tabby';
  1595. MCC = '<br> Mackerel tabby';
  1596. } else if (AA1 + TA1 + SP1 + MC1 == '/A/Ta/Mc') {
  1597. AAP = '<br>Ticked tabby'
  1598. AAC = '';
  1599. TAC = '';
  1600. SPC = '';
  1601. MCC = '<br> Mackerel tabby';
  1602. } else if (AA1 + TA1 + SP1 + MC1 == '/A/Ta/Sp/mc') {
  1603. AAP = '<br>Ticked tabby'
  1604. AAC = '';
  1605. TAC = '';
  1606. SPC = '<br>Spotted tabby';
  1607. MCC = '<br>Classic tabby';
  1608. } else if (AA1 + TA1 + SP1 + MC1 == '/A/Ta/mc') {
  1609. AAP = '<br>Ticked tabby'
  1610. AAC = '';
  1611. TAC = '';
  1612. SPC = '';
  1613. MCC = '<br>Classic tabby';
  1614. } else if (AA1 + TA1 + SP1 + MC1 == '/A/Sp/Mc') {
  1615. AAP = '<br>Spotted tabby'
  1616. AAC = '';
  1617. TAC = '';
  1618. SPC = '';
  1619. MCC = '<br>Mackerel tabby';
  1620. } else if (AA1 + TA1 + SP1 + MC1 == '/A/Sp/mc') {
  1621. AAP = '<br>Spotted tabby'
  1622. AAC = '';
  1623. TAC = '';
  1624. SPC = '';
  1625. MCC = '<br>Classic tabby';
  1626. } else if (AA1 + TA1 + SP1 + MC1 == '/A/Mc') {
  1627. AAP = '<br>Mackerel tabby'
  1628. AAC = '';
  1629. TAC = '';
  1630. SPC = '';
  1631. MCC = '';
  1632. } else if (AA1 + TA1 + SP1 + MC1 == '/A/mc') {
  1633. AAP = '<br>Classic tabby'
  1634. AAC = '';
  1635. TAC = '';
  1636. SPC = '';
  1637. MCC = '';
  1638. } else if (AA1 + TA1 + SP1 + MC1 == '/a/Ta/Sp/Mc') {
  1639. AAP = '';
  1640. AAC = '';
  1641. TAC = '<br>Ticked tabby';
  1642. SPC = '<br>Spotted tabby';
  1643. MCC = '<br>Mackerel tabby';
  1644. } else if (AA1 + TA1 + SP1 + MC1 == '/a/Ta/Sp/mc') {
  1645. AAP = '';
  1646. AAC = '';
  1647. TAC = '<br>Ticked tabby';
  1648. SPC = '<br>Spotted tabby';
  1649. MCC = '<br>Classic tabby';
  1650. } else if (AA1 + TA1 + SP1 + MC1 == '/a/Ta/Mc') {
  1651. AAP = '';
  1652. AAC = '';
  1653. TAC = '<br>Ticked tabby';
  1654. SPC = '';
  1655. MCC = '<br>Mackerel tabby';
  1656. } else if (AA1 + TA1 + SP1 + MC1 == '/a/Ta/mc') {
  1657. AAP = '';
  1658. AAC = '';
  1659. TAC = '<br>Ticked tabby';
  1660. SPC = '';
  1661. MCC = '<br>Classic tabby';
  1662. } else if (AA1 + TA1 + SP1 + MC1 == '/a/Sp/Mc') {
  1663. AAP = '';
  1664. AAC = '';
  1665. TAC = '';
  1666. SPC = '<br>Spotted tabby';
  1667. MCC = '<br>Mackerel tabby';
  1668. } else if (AA1 + TA1 + SP1 + MC1 == '/a/Sp/mc') {
  1669. AAP = '';
  1670. AAC = '';
  1671. TAC = '';
  1672. SPC = '<br>Spotted tabby';
  1673. MCC = '<br>Classic tabby';
  1674. } else if (AA1 + TA1 + SP1 + MC1 == '/a/Mc') {
  1675. AAP = '';
  1676. AAC = '';
  1677. TAC = '';
  1678. SPC = '';
  1679. MCC = '<br>Mackerel tabby';
  1680. } else if (AA1 + TA1 + SP1 + MC1 == '/a/mc') {
  1681. AAP = '';
  1682. AAC = '';
  1683. TAC = '';
  1684. SPC = '';
  1685. MCC = '<br>Classic tabby';
  1686. } else {
  1687. AAP = '';
  1688. AAC = '';
  1689. TAC = '';
  1690. SPC = '';
  1691. MCC = '';
  1692. };
  1693.  
  1694. if (II1 + WB1 + WB2 == '/I/WbWb') {
  1695. IIP = '<br>Chinchilla';
  1696. IIC = '';
  1697. } else if (II1 + WB1 + WB2 == '/I/Wbwb') {
  1698. IIP = '<br>Shaded';
  1699. IIC = '';
  1700. } else if (II1 + WB1 + WB2 == '/I' && AA1 == '/a') {
  1701. IIP = '<br>Smoke';
  1702. IIC = '';
  1703. } else if (II1 + WB1 + WB2 == '/I' && AA1 == '/A') {
  1704. IIP = '';
  1705. IIC = '<br>Smoke';
  1706. } else if (II1 + WB1 == '/Wb') {
  1707. IIP = '<br>Golden';
  1708. IIC = '';
  1709. } else {
  1710. IIP = '';
  1711. IIC = '';
  1712. };
  1713.  
  1714. if (CC1 + CC2 == '/CC') {
  1715. CCP = '';
  1716. CCC = '';
  1717.  
  1718. } else if (CC1 + CC2 == '/Ccs') {
  1719. CCP = '';
  1720. CCC = '<br>Colorpoint';
  1721.  
  1722. } else if (CC1 + CC2 == '/Ccb') {
  1723.  
  1724. CCP = ''
  1725. CCC = '<br>Sepia point';
  1726.  
  1727. } else if (CC1 + CC2 == '/Cca') {
  1728.  
  1729. CCP = ''
  1730. CCC = '<br>Blue-eyed Albino';
  1731.  
  1732. } else if (CC1 + CC2 == '/Cc') {
  1733.  
  1734. CCP = ''
  1735. CCC = '<br>Red-eyed Albino';
  1736.  
  1737. } else if (CC1 + CC2 == '/cscs') {
  1738. CCP = '<br>Colorpoint';
  1739. CCC = '';
  1740.  
  1741. } else if (CC1 + CC2 == '/cscb') {
  1742.  
  1743. CCP = '<br>Mink Point'
  1744. CCC = '';
  1745.  
  1746. } else if (CC1 + CC2 == '/csca') {
  1747.  
  1748. CCP = '<br>Colorpoint'
  1749. CCC = '<br>Blue-eyed Albino';
  1750.  
  1751. } else if (CC1 + CC2 == '/csc') {
  1752.  
  1753. CCP = '<br>Colorpoint'
  1754. CCC = '<br>Red-eyed Albino';
  1755.  
  1756. } else if (CC1 + CC2 == '/cbcb') {
  1757.  
  1758. CCP = '<br>Sepia point'
  1759. CCC = '';
  1760.  
  1761. } else if (CC1 + CC2 == '/cbca') {
  1762.  
  1763. CCP = '<br>Sepia point'
  1764. CCC = '<br>Blue-eyed Albino';
  1765.  
  1766. } else if (CC1 + CC2 == '/cbc') {
  1767.  
  1768. CCP = '<br>Sepia point'
  1769. CCC = '<br>Red-eyed Albino';
  1770.  
  1771. } else if (CC1 + CC2 == '/caca') {
  1772.  
  1773. CCP = '<br>Blue-eyed Albino'
  1774. CCC = '';
  1775.  
  1776. } else if (CC1 + CC2 == '/cac') {
  1777.  
  1778. CCP = '<br>Blue-eyed Albino'
  1779. CCC = '<br>Red-eyed Albino';
  1780.  
  1781. } else if (CC1 + CC2 == '/cc') {
  1782.  
  1783. CCP = '<br>Red-eyed Albino'
  1784. CCC = '';
  1785.  
  1786. } else {
  1787.  
  1788. CCP = '';
  1789. CCC = '';
  1790.  
  1791. };
  1792.  
  1793. if (WD1 == '/Wd') {
  1794. WDP = '<br>Dominant White'
  1795. } else {
  1796. WDP = '';
  1797. };
  1798.  
  1799. if (WS1 == '/Ws') {
  1800. WSP = '<br>White Spotting'
  1801. } else {
  1802. WSP = '';
  1803. };
  1804.  
  1805. if (RD1 + RD2 + WF1 == '/RdRd') {
  1806. FFP = 'Red';
  1807. } else if (RD1 + RD2 + WF1 == '/RdMg') {
  1808. FFP = 'Purple';
  1809. } else if (RD1 + RD2 + WF1 == '/RdYw') {
  1810. FFP = 'Orange';
  1811. } else if (RD1 + RD2 + WF1 == '/MgMg') {
  1812. FFP = 'Magenta';
  1813. } else if (RD1 + RD2 + WF1 == '/MgYw') {
  1814. FFP = 'Violet';
  1815. } else if (RD1 + RD2 + WF1 == '/YwYw') {
  1816. FFP = 'Yellow';
  1817. } else if (RD1 + RD2 + WF1 == '/RdRd/Wf') {
  1818. FFP = 'Pink';
  1819. } else if (RD1 + RD2 + WF1 == '/RdMg/Wf') {
  1820. FFP = 'Lavender';
  1821. } else if (RD1 + RD2 + WF1 == '/RdYw/Wf') {
  1822. FFP = 'Cream';
  1823. } else if (RD1 + RD2 + WF1 == '/MgMg/Wf') {
  1824. FFP = 'Blue';
  1825. } else if (RD1 + RD2 + WF1 == '/MgYw/Wf') {
  1826. FFP = 'Periwinkle';
  1827. } else if (RD1 + RD2 + WF1 == '/YwYw/Wf') {
  1828. FFP = 'Pale Yellow';
  1829. } else if (WF2 == 'Wf') {
  1830. FFP = 'White';
  1831. } else {
  1832. FFP = 'Invalid';
  1833. };
  1834. };
  1835.  
  1836.  
  1837. // --------------------------
  1838.  
  1839. // ----- kit roll -----
  1840.  
  1841. // --------------------------
  1842.  
  1843. function kitRoll() {
  1844. babyRoll()
  1845. phenoBuild()
  1846. kGeno = '<i>' + XX1 + XX2 + OO1 + OO2 + BB1 + BB2 + DD1 + DD2 + DM1 + DM2 + AA1 + AA2 + TA1 + TA2 + SP1 + SP2 + MC1 + MC2 + II1 + II2 + WB1 + WB2 + CC1 + CC2 + WD1 + WD2 + WS1 + WS2 + RD1 + RD2 + WF1 + WF2 + '</i><br>';
  1847. kPheno = '<b>Base:</b> ' + Base + '<br><b>Gender:</b> ' + Gend + '<br><b>Flower:</b> ' + FFP + '<br><b>Presented Genes:</b>' + DDP + DMP + AAP + IIP + CCP + WDP + WSP + '<br><b>Carried Genes:</b>' + BBC + DDC + DMC + AAC + TAC + SPC + MCC + IIC + CCC;
  1848. };
  1849.  
  1850.  
  1851.  
  1852. // -------------------------
  1853.  
  1854. // ------ litter roll ------
  1855.  
  1856. // -------------------------
  1857.  
  1858. function litter() {
  1859. lNum = (Math.floor(Math.random() * 100))
  1860.  
  1861. if (lNum >= 0 && lNum <= 25) {
  1862. kitRoll();
  1863. k1 = kGeno + kPheno;
  1864. document.getElementById("output").innerHTML = (k1)
  1865. } else if (lNum >= 26 && lNum <= 50) {
  1866. kitRoll();
  1867. k1 = kGeno + kPheno;
  1868. kitRoll();
  1869. k2 = kGeno + kPheno;
  1870. document.getElementById("output").innerHTML = (k1 + '<hr class="new">' + k2)
  1871. } else if (lNum >= 51 && lNum <= 75) {
  1872. kitRoll();
  1873. k1 = kGeno + kPheno;
  1874. kitRoll();
  1875. k2 = kGeno + kPheno;
  1876. kitRoll();
  1877. k3 = kGeno + kPheno;
  1878. document.getElementById("output").innerHTML = (k1 + '<hr class="new">' + k2 + '<hr class="new">' + k3)
  1879. } else if (lNum >= 76 && lNum <= 100) {
  1880. kitRoll();
  1881. k1 = kGeno + kPheno;
  1882. kitRoll();
  1883. k2 = kGeno + kPheno;
  1884. kitRoll();
  1885. k3 = kGeno + kPheno;
  1886. kitRoll();
  1887. k4 = kGeno + kPheno;
  1888. document.getElementById("output").innerHTML = (k1 + '<hr class="new">' + k2 + '<hr class="new">' + k3 + '<hr class="new">' + k4)
  1889. }
  1890. };
  1891.  
  1892.  
  1893. // ---------------------
  1894.  
  1895. // interface
  1896.  
  1897. // ---------------------
  1898.  
  1899. function callaGeno() {
  1900. aGeno = document.getElementById("aGeno").value;
  1901. if (aGeno == '') {
  1902. aGeno = 'invalid';
  1903. }
  1904. };
  1905.  
  1906. function callbGeno() {
  1907. bGeno = document.getElementById("bGeno").value;
  1908. if (bGeno == '') {
  1909. bGeno = 'invalid';
  1910. }
  1911. };
  1912. </script>
  1913. </head>
  1914.  
  1915. <body>
  1916. <div class="main">
  1917. <input type="text" name="aGeno" id="aGeno" onchange="callaGeno()" placeholder="Mother Geno"></input>
  1918. <br>
  1919. <input type="text" name="bGeno" id="bGeno" onchange="callbGeno()" placeholder="Father Geno"></input>
  1920. <br>
  1921. To use this breeding roller, enter the parents genos in the input boxes above, and then click this button!
  1922. <br>
  1923. <button onclick="litter()">Kits!</button>
  1924. <br>
  1925. <br>
  1926. <div class="output" name="output" id="output">
  1927. <br>
  1928. <br>
  1929. </div>
  1930.  
  1931. <br>
  1932. <br>
  1933. <span style="font-size:12px; opacity: 0.5;">This is a breeding roller made by <a href="https://www.chickensmoothie.com/Forum/memberlist.php?mode=viewprofile&u=438648">.lucifer</a> on CS for <a href="https://www.chickensmoothie.com/Forum/memberlist.php?mode=viewprofile&u=942927">klaus.</a> to use with their ARPG, Wraiths. Please do not copy, reuse, or reference this script/coding for your own projects. Thank you.</span>
  1934. </div>
  1935. </body>
  1936. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement