darkEyeDwarf.js (4723B)
1 var nm1 = ["", "", "", "b", "br", "d", "f", "g", "gh", "gr", "h", "j", "k", "l", "m", "n", "r", "t", "th", "tr", "x"]; 2 var nm2 = ["ei", "a", "a", "e", "e", "i", "o", "o", "u", "a", "a", "e", "e", "i", "o", "o", "u", "a", "a", "e", "e", "i", "o", "o", "u", "a", "a", "e", "e", "i", "o", "o", "u", "a", "a", "e", "e", "i", "o", "o", "u"]; 3 var nm3 = ["b", "br", "d", "g", "gr", "lb", "lbr", "ld", "ldr", "lg", "lgr", "m", "mb", "mbr", "mr", "nd", "ndr", "ngr", "r", "rb", "rc", "rd", "rg", "rgr", "rs", "rt", "rw", "sb", "sd", "sdr"]; 4 var nm4 = ["a", "e", "o", "u"]; 5 var nm5 = ["b", "d", "g", "l", "m", "n", "r"]; 6 var nm6 = ["a", "a", "e", "i", "i", "o", "o", "u"]; 7 var nm7 = ["", "", "k", "l", "lf", "lm", "m", "mm", "n", "r", "s", "sh", "x"]; 8 var nm8 = ["", "", "", "b", "br", "d", "g", "gr", "h", "j", "n", "r", "s", "t", "th", "x"]; 9 var nm9 = ["a", "e", "i", "o", "u"]; 10 var nm10 = ["b", "br", "d", "g", "gh", "gl", "gr", "ld", "lg", "lgr", "m", "mb", "mbr", "nbr", "nd", "ndl", "ndr", "ng", "ngr", "r", "rb", "rd", "rg", "rgl", "rm", "rn", "rs", "rsh", "rtr", "rx", "s", "sh", "shk", "t", "tr"]; 11 var nm11 = ["au", "a", "a", "e", "e", "i", "o", "o", "u", "a", "a", "e", "e", "i", "o", "o", "u", "a", "a", "e", "e", "i", "o", "o", "u", "a", "a", "e", "e", "i", "o", "o", "u", "a", "a", "e", "e", "i", "o", "o", "u", "a", "a", "e", "e", "i", "o", "o", "u"]; 12 var nm12 = ["k", "l", "ll", "ln", "m", "r", "sh", "x"]; 13 var nm13 = ["a", "a", "a", "a", "e", "e", "i"]; 14 var br = ""; 15 16 function nameGen(type) { 17 var tp = type; 18 var element = document.createElement("div"); 19 element.setAttribute("id", "result"); 20 for (i = 0; i < 10; i++) { 21 if (tp === 1) { 22 nameFem(); 23 while (nMs === "") { 24 nameFem(); 25 } 26 names = nMs.charAt(0).toUpperCase() + nMs.slice(1); 27 nameFem(); 28 while (nMs === "") { 29 nameFem(); 30 } 31 names = names + " daughter of " + nMs.charAt(0).toUpperCase() + nMs.slice(1); 32 } else { 33 nameMas(); 34 while (nMs === "") { 35 nameMas(); 36 } 37 names = nMs.charAt(0).toUpperCase() + nMs.slice(1); 38 nameMas(); 39 while (nMs === "") { 40 nameMas(); 41 } 42 names = names + " son of " + nMs.charAt(0).toUpperCase() + nMs.slice(1); 43 } 44 br = document.createElement('br'); 45 element.appendChild(document.createTextNode(names)); 46 element.appendChild(br); 47 } 48 if (document.getElementById("result")) { 49 document.getElementById("placeholder").removeChild(document.getElementById("result")); 50 } 51 document.getElementById("placeholder").appendChild(element); 52 } 53 54 function nameFem() { 55 nTp = Math.random() * 3 | 0; 56 rnd = Math.random() * nm8.length | 0; 57 rnd2 = Math.random() * nm9.length | 0; 58 rnd3 = Math.random() * nm10.length | 0; 59 rnd4 = Math.random() * nm13.length | 0; 60 if (nTp < 2) { 61 while (nm10[rnd3] === nm8[rnd]) { 62 rnd3 = Math.random() * nm10.length | 0; 63 } 64 nMs = nm8[rnd] + nm9[rnd2] + nm10[rnd3] + nm13[rnd4]; 65 } else { 66 rnd5 = Math.random() * nm11.length | 0; 67 rnd6 = Math.random() * nm12.length | 0; 68 while (nm12[rnd6] === nm10[rnd3] || nm10[rnd3] === nm8[rnd]) { 69 rnd3 = Math.random() * nm10.length | 0; 70 } 71 nMs = nm8[rnd] + nm9[rnd2] + nm10[rnd3] + nm11[rnd5] + nm12[rnd6] + nm13[rnd4]; 72 } 73 testSwear(nMs); 74 } 75 76 function nameMas() { 77 nTp = Math.random() * 5 | 0; 78 rnd = Math.random() * nm1.length | 0; 79 rnd2 = Math.random() * nm2.length | 0; 80 rnd3 = Math.random() * nm7.length | 0; 81 if (nTp === 0) { 82 while (nm1[rnd] === "") { 83 rnd = Math.random() * nm1.length | 0; 84 } 85 while (nm1[rnd] === nm7[rnd3] || nm7[rnd3] === "") { 86 rnd3 = Math.random() * nm7.length | 0; 87 } 88 nMs = nm1[rnd] + nm2[rnd2] + nm7[rnd3]; 89 } else { 90 rnd4 = Math.random() * nm3.length | 0; 91 rnd5 = Math.random() * nm4.length | 0; 92 if (nTp < 4) { 93 while (nm3[rnd4] === nm1[rnd] || nm3[rnd4] === nm7[rnd3]) { 94 rnd4 = Math.random() * nm3.length | 0; 95 } 96 nMs = nm1[rnd] + nm2[rnd2] + nm3[rnd4] + nm4[rnd5] + nm7[rnd3]; 97 } else { 98 rnd6 = Math.random() * nm5.length | 0; 99 rnd7 = Math.random() * nm6.length | 0; 100 while (nm3[rnd4] === nm5[rnd6] || nm5[rnd6] === nm7[rnd3]) { 101 rnd6 = Math.random() * nm5.length | 0; 102 } 103 nMs = nm1[rnd] + nm2[rnd2] + nm3[rnd4] + nm4[rnd5] + nm5[rnd6] + nm6[rnd7] + nm7[rnd3]; 104 } 105 } 106 testSwear(nMs); 107 }