You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

112 lines
4.7 KiB
JavaScript

var nm1 = ["", "", "", "", "bj", "br", "cr", "d", "dr", "f", "fr", "g", "gj", "gr", "h", "hj", "j", "k", "kn", "kr", "l", "m", "r", "s", "sj", "st", "sv", "t", "th", "tr", "v", "y"];
var nm2 = ["ei", "ai", "ua", "a", "a", "e", "e", "i", "o", "u", "a", "a", "e", "e", "i", "o", "u", "a", "a", "e", "e", "i", "o", "u"];
var nm3 = ["d", "fn", "g", "gn", "gv", "gw", "k", "kk", "kj", "l", "lbj", "lg", "lm", "m", "md", "mm", "mmd", "mdj", "n", "nr", "r", "rg", "rl", "rnj", "rnv", "rr", "rt", "s", "ss", "tj", "th", "thl", "tt", "v"];
var nm4 = ["a", "e", "i", "o", "u", "a", "e", "i", "o", "u", "y"];
var nm5 = ["", "", "", "", "ch", "dr", "f", "g", "gg", "k", "l", "ld", "lf", "ll", "m", "n", "nd", "r", "rg", "rn", "rr", "rt", "s", "t", "tr"];
var nm8 = ["", "", "", "", "b", "br", "c", "fr", "g", "h", "hj", "hl", "hr", "j", "k", "m", "r", "s", "sk", "sv", "t", "th", "thr", "v", "y"];
var nm9 = ["ae", "eu", "oa", "ou", "a", "a", "e", "i", "o", "o", "u", "u", "a", "a", "e", "i", "o", "o", "u", "u"];
var nm10 = ["d", "dm", "dr", "h", "g", "gd", "gdr", "gn", "gr", "grd", "grdr", "l", "ld", "ln", "lr", "lv", "n", "nd", "nn", "r", "rl", "rn", "rv", "sl", "st", "str", "th", "tt", "v", "y"];
var nm11 = ["a", "a", "a", "e", "i"];
var nm12 = ["d", "dr", "f", "l", "ld", "n", "th", "v"];
var nm13 = ["a", "e", "i", "y"];
var nm14 = ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "d", "f", "l", "n", "r", "s"];
var nm15 = ["Craite", "Dimun", "Faroe", "Hindar", "Kaer Karreg", "Skellig", "Tordarroch", "Undvik", "Allenker", "Kaer Hemdall", "Kaer Trolde"];
var br = "";
function nameGen(type) {
var tp = type;
$('#placeholder').css('textTransform', 'capitalize');
var element = document.createElement("div");
element.setAttribute("id", "result");
for (i = 0; i < 10; i++) {
if (tp === 1) {
nameFem();
while (nMs === "") {
nameFem();
}
} else {
nameMas();
while (nMs === "") {
nameMas();
}
}
nTp = Math.random() * 3 | 0;
if (nTp === 0) {
rnd = Math.random() * nm15.length | 0;
nMs = nMs + " of " + nm15[rnd];
} else if (nTp === 1) {
nTmp = nMs;
nameMas();
while (nMs === "") {
nameMas();
}
if (tp === 1) {
if (nTmp.charAt(nTmp.length - 1) === "s") {
nMs = nMs + " " + nTmp + "dottir";
} else {
nMs = nMs + " " + nTmp + "sdottir";
}
} else {
nMs = nMs + " " + nTmp + "son";
}
}
br = document.createElement('br');
element.appendChild(document.createTextNode(nMs));
element.appendChild(br);
}
if (document.getElementById("result")) {
document.getElementById("placeholder").removeChild(document.getElementById("result"));
}
document.getElementById("placeholder").appendChild(element);
}
function nameMas() {
nTp = Math.random() * 6 | 0;
rnd = Math.random() * nm1.length | 0;
rnd2 = Math.random() * nm2.length | 0;
rnd3 = Math.random() * nm5.length | 0;
if (nTp < 2) {
while (nm1[rnd] === "") {
rnd = Math.random() * nm1.length | 0;
}
while (nm1[rnd] === nm5[rnd3] || nm5[rnd3] === "") {
rnd3 = Math.random() * nm5.length | 0;
}
nMs = nm1[rnd] + nm2[rnd2] + nm5[rnd3];
} else {
rnd4 = Math.random() * nm3.length | 0;
rnd5 = Math.random() * nm4.length | 0;
while (nm3[rnd4] === nm1[rnd] || nm3[rnd4] === nm5[rnd3]) {
rnd4 = Math.random() * nm3.length | 0;
}
nMs = nm1[rnd] + nm2[rnd2] + nm3[rnd4] + nm4[rnd5] + nm5[rnd3];
}
testSwear(nMs);
}
function nameFem() {
nTp = Math.random() * 5 | 0;
rnd = Math.random() * nm8.length | 0;
rnd2 = Math.random() * nm9.length | 0;
rnd5 = Math.random() * nm14.length | 0;
rnd3 = Math.random() * nm10.length | 0;
rnd4 = Math.random() * nm13.length | 0;
while (nm10[rnd3] === nm8[rnd] || nm10[rnd3] === nm14[rnd5]) {
rnd3 = Math.random() * nm10.length | 0;
}
if (nTp < 4) {
nMs = nm8[rnd] + nm9[rnd2] + nm10[rnd3] + nm13[rnd4] + nm14[rnd5];
} else {
rnd6 = Math.random() * nm11.length | 0;
rnd7 = Math.random() * nm12.length | 0;
while (nm10[rnd3] === nm12[rnd7] || nm12[rnd7] === nm14[rnd5]) {
rnd7 = Math.random() * nm12.length | 0;
}
while (rnd6 === 0 && rnd4 < 4) {
rnd6 = Math.random() * nm11.length | 0;
}
nMs = nm8[rnd] + nm9[rnd2] + nm10[rnd3] + nm11[rnd6] + nm12[rnd7] + nm13[rnd4] + nm14[rnd5];
}
testSwear(nMs);
}