2Random Wordlist

Generates a random 2 word wordlist

Version au 25/07/2020. Voir la dernière version.

Vous devrez installer une extension telle que Tampermonkey, Greasemonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Userscripts pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey pour installer ce script.

Vous devrez installer une extension de gestionnaire de script utilisateur pour installer ce script.

(J'ai déjà un gestionnaire de scripts utilisateur, laissez-moi l'installer !)

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

(J'ai déjà un gestionnaire de style utilisateur, laissez-moi l'installer!)

// ==UserScript==
// @name         2Random Wordlist
// @namespace    https://greasyfork.org/en/users/668074
// @version      0.5
// @description  Generates a random 2 word wordlist
// @author       Two
// @match        https://sketchful.io/
// @grant        none
// ==/UserScript==

(function () {
      'use strict';
      var newHTML = document.getElementById("gameSettings")
      newHTML.insertAdjacentHTML("afterbegin", `<style>#gravatar
            {
            overflow: hidden;
            }
      textarea {
            resize: none;
      }
            #circle
            {

            float: right;
            height: 39px;
            width: 55px;
            border-radius: 20px;
            }

            #square
            {

            float: left;
            display:none;
            height: 0;
            width: 0;
            opacity: 0;

            /* hover OFF */
            -webkit-transition: opacity 1s 0 ease-in-out, height 0s 1s ease, width 0s 1s ease;
            -moz-transition: opacity 1s 0 ease-in-out, height 0s 1s ease, width 0s 1s ease;
            -o-transition: opacity 1s 0 ease-in-out, height 0s 1s ease, width 0s 1s ease;
            -ms-transition: opacity 1s 0 ease-in-out, height 0s 1s ease, width 0s 1s ease;
            transition: opacity 1s 0 ease-in-out, height 0s 1s ease, width 0s 1s ease;
            }

            #square:hover,
            #circle:hover + #square
            {
            display: initial;
            height: 150px;
            width: 400px;
            opacity: 1;
            float:right;
            /* hover ON */
            -webkit-transition: opacity 1s 0 ease-in-out, height 0 0 ease, width 0 0 ease;
            -moz-transition: opacity 1s 0 ease-in-out, height 0 0 ease, width 0 0 ease;
            -o-transition: opacity 1s 0 ease-in-out, height 0 0 ease, width 0 0 ease;
            -ms-transition: opacity 1s 0 ease-in-out, height 0 0 ease, width 0 0 ease;
            transition: opacity 1s 0 ease-in-out, height 0 0 ease, width 0 0 ease;
            }</style><div id="gravatar">
            <img src="https://cdn0.iconfinder.com/data/icons/navigation-set-arrows-part-one/32/ChevronRight-512.png" id="circle">
            <div id="square">
            <div id="lengtho">
            <a>Length of list</a>

            </div>
                  <div id="nw">
            <a>No. of words</a>

            </div>
      <div id="copy">

      </div>

            </div>
      </div>` )
      let def = document.createElement('button');
      def.innerHTML = "Default Wordlist"
      def.setAttribute("class", "btn btn-sm btn-secondary")
      def.onclick = function () {
            document.getElementsByClassName("rList")[0].value = `alligator, alpaca, angler fish, ant, anteater, antelope, armadillo, eagle, owl, bat, dragon, beaver, bee, beetle, Bigfoot, bird, bison, boar, bull, bulldog, butterfly, camel, cat, caterpillar, catfish, centipede, chameleon, cheetah, chicken, chihuahua, clown fish, cockroach, cow, crab, crocodile, crow, deer, dinosaur, dog, dolphin, donkey, dragonfly, duck, eagle, eel, elephant, firefly, flamingo, fly, fox, frog, gazelle, gecko, anteater, tortoise, giraffe, goat, hamster, goldfish, goose, grasshopper, shark, hamster, hedgehog, hippo, horse, hummingbird, hyena, jaguar, jellyfish, kangaroo, whale, crab, King Kong, penguin, vulture, kitten, koala, Kraken, lamb, leopard, lion, lizard, llama, lynx, meerkat, mole, monkey, moose, mosquito, moth, chicken, zebra, mouse, narwhal, octopus, orca, ostrich, otter, owl, panda, panther, parrot, peacock, pelican, penguin, pig, pigeon, piranha, platypus, polar bear, pony, poodle, porcupine, fish, puma, puppy, rabbit, raccoon, ram, rat, rattlesnake, panda, reindeer, rhinoceros, rooster, scorpion, sea lion, seagull, seal, shark, sheep, shiba, skunk, sloth, snail, snake, turtle, spider, monkey, spinosaurus, squid, squirrel, stegosaurus, stingray, stork, sun, swan, swordfish, tadpole, tiger, beetle, fish, tortoise, toucan, triceratops, turkey, turtle, t-rex, unicorn, vulture, walrus, warthog, wasp, scorpion, snake, whale, shark, wolf, woodpecker, worm, yeti, zebra, apple, avocado, bacon, bagel, baguette, beans, potato, banana, sauce, bean, beer, beet, bell pepper, biscuit, blackberry, blueberry, bread, broccoli, brownie, bubblegum, burrito, butter, cabbage, cake, necklace, carrot, cauliflower, celery, cereal, cheese, cheeseburger, cheesecake, cherry, burger, chicken nugget, chili, chocolate, bunny, cake, egg, milk, coffee, cookie, corn, dog, cat, cotton candy, stick, cranberry, croissant, cucumber, cupcake, curry, donut, egg, drink, burger, french fries, toast, frog, garlic, grape, grapefruit, gravy, grilled cheese, chicken, guacamole, gummy bear, gummy, ham, hamburger, brown, honey, hot chocolate, hot dog, hot sauce, ice cream, ice cube, tea, jalapeno, jam, jawbreaker, jelly, kebab, ketchup, kiwi, lasagna, lemon, lemonade, lettuce, lime, liquorish, lollipop, cheese, macaroni, maple syrup, margarine, martini, mashed potatoes, mayonnaise, meatball, meatloaf, melon, milk, milkshake, brain, mushroom, mustard, nacho, noodle, olive, omelet, onion, ring, orange juice, oyster, pancake, papaya, peach, pear, peas, pepper, pepperoni, pickle, pie, pineapple, pizza, plum, pomegranate, popcorn, potato, chips, cracker, pretzel, prune, pudding, pumpkin, radish, raisin, sauce, raspberry, ravioli, relish, rice, salsa, salt, sandwich, sausage, shrimp, smoothie, soda, soup, spaghetti, sprout, star fruit, steak, strawberry, waffle, sugar, sushi, taco, tea, toast, tomato, turnip, watermelon, whipped cream, whiskey, wine, yogurt, angry, barn, blood, blush, boxing glove, brick, bruise, bullseye, butcher, candy cane, lantern, china, clown, seaweed, snake, crowbar, devil, bus, fruit, dynamite, error, explosion, fire, fire alarm, fire extinguisher, fire hydrant, fire truck, flare, flare gun, finger, can, heart, hell, stamp, jello, ladybug, laser, lava, lava lamp, lighthouse, lips, lipstick, lobster, battery, leaf, mars, meat, nosebleed, picnic blanket, pimple, pokeball, poppy, button, red, sea, ribbon, roadblock, rose, ruby, santa, scar, shotgun, starfish, stoned, stop sign, sunburn, Superman, target, tongue, traffic cone, vein, light, sign, wax, Angry Birds, Cola, Deadpool, Elmo, Flash, Iron Man, KFC, Knuckles, Lightning Mcqueen, Mario, Mr Krabs, Red Riding Hood, Rudolf, Spiderman, Youtube, acorn, almond, bark, barrel, glove, basket, bear, belt, bench, bongo, bookshelf, boomerang, box, branch, bronze, broom, brown, brunette, cabin, canoe, caramel, cello, fountain, chocolate pudding, cinnamon, coconut, cola, cork, crust, dig, dirt, wood, drum, earthquake, fall, fence, flute, football, freckles, guitar, hay, hazelnut, hockey, cart, lasso, leather, log, wand, mine, mud, paper bag, peanut, peanut butter, pine cone, pirate, plank, poop, rope, seed, sewer, slug, soil, sombrero, soy sauce, ribs, stew, stool, table, tan, tea bag, teddy bear, tobacco, stump, trench, trough, twig, ukulele, violin, volcano, Bigfoot, Chewbacca, Great Wall, Oreo, Shaggy, coyote, ballerina, ballet, belly, brain, bubble gum, cheek, cherry blossom, eggplant, elbow, eraser, eyelid, hand, lavender, perfume, piggy bank, pink, pinky, purple, heart, gold, salmon, skin, toe, tutu, Barney, bird, Cupid, Kirby, pony, Patrick, Peppa Pig, Piglet, Pink Panther, Porky Pig, Princess Bubblegum, Spyro, Toadette, Waluigi, Mario, Wario, aquarium, birdbath, blizzard, blowhole, blue, whale, blueberry, bluetooth, buoy, dam, jacket, diamond, diver, drool, fishbowl, fisherman, net, flood, frozen, genie, geyser, glacier, glass, ice, ice age, fishing, sculpture, icicle, igloo, ink, jeans, jet ski, surfer, lake, lightning, ocean, dart, policeman, pond, puddle, raindrop, river, saliva, sapphire, stone, sky, snorkel, spit, splash, submarine, sweat, swimming pool, taser, tear, toothpaste, tsunami, water, balloon, bottle, cannon, gun, jet pack, park, show, slide, volleyball, waterfall, wave, whirlpool, Avatar, BMW, Blastoise, Cinderella, Cookie Monster, Discord, Donald Duck, Dory, Dropbox, Earth, Elsa, Facebook, Greece, Gumball, Herobrine, king, Stitch, Meeseeks, Sonic, Microsoft, Neptune, platypus, Playstation, Sans, Skype, Smurf, Sonic, Squidward, Twitter, Vault Boy, acid, algae, alien, backyard, bacteria, booger, bush, cactus, tree, clover, cocoon, soap, dollar, download, emerald, sign, flower, football, forest, battery, truck, garden, gnome, grass, green, green bean, green tea, greenhouse, grenade, health bar, insect, jungle, lawn, leaf, leprechaun, lily pad, mint, mold, moss, ninja turtle, nuclear waste, palm tree, park, pine tree, pistachio, plankton, plant, poison ivy, potion, radar, rainforest, rake, recycling, road, salad, seaweed, slime, soldier, spinach, spring, swamp, tank, tennis ball, tree, valley, vine, vomit, weed, willow, bottle, x-ray, zombie, Android, Bulbasaur, Creeper, Frankenstein, Godzilla, Green Arrow, beret, card, Green Lantern, Grinch, Hulk, Joker, Kermit, Link, Loch Ness Monster, Luigi, Master Chief, Mike Wazowski, Pepe, Peter Pan, Pickle Rick, Shrek, Statue of Liberty, mask, Yoda, Yoshi, beach, bell, blonde, bulldozer, champagne, chick, coin, crane, crown, dandelion, desert, dune, earwax, emoji, eye, sand, fries, chain, egg, goose, halo, hard hat, highlighter, hive, honeycomb, hourglass, lightbulb, mango, medal, pasta, pencil, pollen, potato, pyramid, quicksand, boots, raincoat, duck, castle, sandbox, school bus, eggs, star, sponge, star, starfruit, sunflower, sunshine, tape measure, taxi, nail, treasure, trophy, tumbleweed, vanilla, ring, wheat, yellow, yolk, bee, Pikachu, Flappy Bird, Johnny Bravo, Lamborghini, Lego, Mcdonalds, Minion, Pac-Man, Spongebob, Simpson, Tweety, Wario, Winnie The Pooh, Wolverine, amber, apricot, baboon, tarantula, basketball, burger, campfire, corn, cheese, clownfish, copper, ember, flame, flamethrower, punch, life buoy, magma, cheese, prisoner, pie, safety vest, wave, spider, squash, sun, sunrise, potato, syrup, torch, orange, Charizard, Charmander, Donald Trump, nachos, Garfield, Grand Canyon, pumpkin, Nemo, Oompa Loompa, Puss in Boots, rock star, lion, Tails, big, small, happy, sad, cry, tear, cute, short, queen, prince, princess, king, Barack Obama, Daffy Duck, golden`
            doWork();
      }
      document.getElementById("copy").appendChild(def)
      let copy1 = document.createElement('button');
      copy1.innerHTML = "Copy"
      copy1.setAttribute("class", "btn btn-sm btn-secondary")
      copy1.onclick = function () {
            copy();
      }
      let space2 = document.createElement('span');
      space2.innerHTML = `&nbsp;&nbsp;&nbsp;`
      document.getElementById("copy").appendChild(space2)
      document.getElementById("copy").appendChild(copy1)
      let check1 = document.createElement('input');
      check1.setAttribute("class", "check")
      check1.setAttribute("type", "checkbox")
      check1.onchange = function () {

            doWork();
      }
      let space1 = document.createElement('span');
      space1.innerHTML = `&nbsp;&nbsp;&nbsp;`
      document.getElementById("copy").appendChild(space1)
      document.getElementById("copy").appendChild(check1)
      document.getElementById("copy").append(" Remove Duplicates?")
      let nw1 = document.createElement("input")
      nw1.setAttribute("placeholder", "Default: 2")
      nw1.setAttribute("class", "nw")
      nw1.setAttribute("type", "number")
      nw1.onchange = function () {
            doWork()
      }
      document.getElementById("nw").appendChild(nw1)
      let lengtho1 = document.createElement("input")
      lengtho1.setAttribute("placeholder", "Default: 1000")
      lengtho1.setAttribute("class", "lengtho")
      lengtho1.setAttribute("type", "number")

      lengtho1.onchange = function () {
            doWork()
      }
      document.getElementById("lengtho").appendChild(lengtho1)




      let result1 = document.createElement("textarea")
      result1.setAttribute("placeholder", "Result will show up here")
      result1.setAttribute("class", "result")
      result1.setAttribute("readonly", "")
      result1.setAttribute("rows", "2")

      let rlist1 = document.createElement("textarea")
      rlist1.setAttribute("placeholder", "List of words to be randomized.")
      rlist1.setAttribute("class", "rList")
      rlist1.setAttribute("rows", "2")
      rlist1.onchange = function () {
            doWork()
      }
      document.getElementById("square").appendChild(rlist1)
      document.getElementById("square").appendChild(result1)





      function doWork() {
            var tries = 0
            var lengtho = document.getElementsByClassName("lengtho")[0].value || 1000
            var l = document.getElementsByClassName("rList")[0].value
            if (!l) return;

            document.getElementsByClassName("result")[0].value = "Loading..."
            l = shorten(l, 20000)
            l = l.split(",")
            l = l.map(f => f.replace(" ", ""))
            if (l.length == 1) {
                  document.getElementsByClassName("result")[0].value = l[0] + " " + l[0]
                  return;
            }
            function getRandomWords(no_words) {
                  var now = document.getElementsByClassName("nw")[0].value || 2
                  var temparr = []
                  for (var e = 0; e < now; e++) {
                        temparr.push(no_words[Math.floor(Math.random() * no_words.length)])
                  }
                  return temparr.join(" ")
            }

            function shorten(str, maxLen, separator = ', ') {
                  if (str.length <= maxLen) return str;
                  return str.substr(0, str.lastIndexOf(separator, maxLen));
            }
            getWord()
            var wordarr = []
            function arraysEqual(_arr1, _arr2) {

                  if (!Array.isArray(_arr1) || !Array.isArray(_arr2) || _arr1.length !== _arr2.length)
                        return false;

                  var arr1 = _arr1.concat().sort();
                  var arr2 = _arr2.concat().sort();

                  for (var i = 0; i < arr1.length; i++) {

                        if (arr1[i] !== arr2[i])
                              return false;

                  }

                  return true;

            }
            function onlyUnique(value, index, self) {
                  return self.indexOf(value) === index;
            }
            function getWord() {
                  var wordd = getRandomWords(l)
                  if (!wordarr) wordarr = []
                  if (document.getElementsByClassName("check")[0].checked) {

                        wordarr.push(wordd)

                  } else {
                        wordarr.push(wordd)
                  }
            }

            for (var i = 0; i < lengtho; i++) {
                  getWord()
            }
            if (document.getElementsByClassName("check")[0].checked) {

                  wordarr = wordarr.filter(onlyUnique)
            }
            var res = document.getElementsByClassName("result")[0]
            res.value = wordarr.toString()
      }
      function copy() {
            var result = document.getElementsByClassName('result')[0]
            result.select();
            document.execCommand('copy');

      }
})();