<div style="text-align:center">
<h1>
What Fucking Scene Should We Do?
</h1>

<div id="content" style="visibility:hidden;">
  A fucking <span id="sceneMood"></span> <span id="sceneType"></span> scene with <span id="sceneImplements"></span> and <span id="sceneThing"></span>.

  <p>
    Maybe we can also use <span id="maybe"></span>.
  </p>
</div>

<button id="generate" style="">
  Give me my fucking scene
</button>
</div>
function randomNumber(length) {
//  console.log('length ', length)
  return Math.floor(Math.random() * length);
}

function getRandomValue(array) {
//  console.log('here: ', array)
  return randomNumber(array.length);
}

function createScene() {
  var sceneImplementsIndex = 0;
  for (var key in parameters) {
    if (parameters.hasOwnProperty(key)) {
      var index = getRandomValue(parameters[key]);
      document.getElementById(key).innerHTML = parameters[key][index];
      if (key === "sceneImplements") {
        sceneImplementIndex = index;
      }
    }
  }
  
  var maybeIndex = getRandomValue(parameters.sceneImplements);
  var maybe = document.getElementById("maybe");
  if (maybeIndex !== sceneImplementsIndex) {
    maybe.innerHTML = parameters.sceneImplements[maybeIndex];
  } else {
    var isNotLastIndex = parameters.sceneImplements[maybeIndex + 1]
    maybe.innerHTML = parameters.sceneImplements[isNotLastIndex ? maybeIndex + 1 : 0];
  }
}

function makeVisible() {
  document.getElementById("content").style.visibility = "visible";
}

var parameters = {
  sceneMood: ["sensual", "silly", "sadistic", "rough"],
  sceneType: ["rope", "impact", "abduction", "fire", "rough body play", "fear", "objectification", "degradation", "humiliation", "bondage", "pet play", "shame"],
  sceneImplements: ["floggers", "whips", "clothespins", "canes", "paddles", "butt plugs", "candles", "feathers", "rabbit fur", "a Hitachi", "food", "plastic wrap", "hoods", "clothespins"],
  sceneThing: ["mindfucks", "sexiness", "balloon animals", "wax", "figging", "pressure points", "knives", "tickling", "bastinado", "gags"]
}

$("#generate").on("click", function() {
createScene();
makeVisible();});
Run Pen

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js