X-Git-Url: https://git.yukkurigames.com/?p=ogre.git;a=blobdiff_plain;f=ogre.js;fp=ogre.js;h=9bc32115a6b3c3ee5a510a8135daa3606a8e0142;hp=c670e93ace173117ba2a88c7929ad762c181262a;hb=6305404cdf2be33bc1d29b4f1250035a7380ce5d;hpb=42d76ec9269b0ae0252cfb6420902a63fd16a73f diff --git a/ogre.js b/ogre.js index c670e93..9bc3211 100644 --- a/ogre.js +++ b/ogre.js @@ -57,64 +57,8 @@ var CHECK = "☒"; var FIRST_EMPTY = /☐/; var LAST_TICKED = /☒([^☒]*)$/; -function choice (a) { - return a[(Math.random() * a.length) | 0]; -} - -function cap (s) { - return s && s[0].toUpperCase() + s.slice(1); -} - -function letters (n) { - var r = ""; - n = n || 1; - while (n-- > 0) - r += choice("abcdefghijklmnopqrstuvwxyz"); - return r; -} - -function range (a, b) { - return a + (Math.random() * (b - a)) | 0; -} - -function numerals (n) { - var r = ""; - n = n || 1; - while (n-- > 0) - r += choice("0123456789"); - return r; -} - -function pid () { - return letters(range(1, 4)).toUpperCase() - + choice(["‑", "", ".", "/"]) - + numerals(range(1, 4)); -} - -function roman () { - return choice(["I", "II", "III", "IV", "V", "VI", - "VII", "VIII", "IX", "X", "XI", "XII", - "XIV"]); -} - -function oid () { - return choice([letters(1).toUpperCase() + choice("-./") + numerals(2)]); -} - function randomName (scheme) { - switch (scheme) { - case "id": - return choice([pid() + " " + cap(choice(NOUNS))], - [cap(choice(NOUNS)) + " " + pid()]); - case "air": - return choice([ - oid() + " " + cap(choice(ADJECTIVES)) + " " + cap(choice(BIRDS)), - cap(choice(ADJECTIVES)) + " " + cap(choice(BIRDS)) + " " + roman()]); - default: - return choice([ - oid() + " " + cap(choice(ADJECTIVES)) + " " + cap(choice(NOUNS)), - cap(choice(ADJECTIVES)) + " " + cap(choice(NOUNS)) + " " + roman()]); - } + return G.expand(scheme); } var STATS = ["attack", "range", "defense", "aside"];