Dice roller

Developer
Size
4,109 Kb
Views
26,312

How do I make an dice roller?

What is a dice roller? How do you make a dice roller? This script and codes were developed by Dave on 17 September 2022, Saturday.

Dice roller Previews

Dice roller - Script Codes HTML Codes

<!DOCTYPE html>
<html >
<head> <meta charset="UTF-8"> <title>Dice roller</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/meyer-reset/2.0/reset.min.css"> <link rel="stylesheet" href="css/style.css">
</head>
<body> <div id="wrapper">
<div id="background"> <header> <img id="battle" src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/124215/Battle Dice.png" alt="Battle dice logo"> </header> <div id="scroll"> <div class="js-test-roll-area"></div> <form class="js-dice-roll"> <fieldset> <legend>Number of dice</legend> <div> <button class="js-die" data-type="amount" value="0" type="button">0</button> <button class="js-die" data-type="amount" value="1" type="button">1</button> <button class="js-die" data-type="amount" value="2" type="button">2</button> <button class="js-die" data-type="amount" value="3" type="button">3</button> <button class="js-die" data-type="amount" value="4" type="button">4</button> <button class="js-die" data-type="amount" value="5" type="button">5</button> <button class="js-die" data-type="amount" value="6" type="button">6</button> <button class="js-die" data-type="amount" value="7" type="button">7</button> <button class="js-die" data-type="amount" value="8" type="button">8</button> <button class="js-die" data-type="amount" value="9" type="button">9</button> </fieldset> <fieldset> <legend>Type of dice</legend> <div> <button class="js-die" value="4" type="button">d4</button> <button class="js-die" value="6" type="button">d6</button> <button class="js-die" value="8" type="button">d8</button> <button class="js-die" value="10" type="button">d10</button> <button class="js-die" value="12" type="button">d12</button> <button class="js-die" value="20" type="button">d20</button> <button class="js-die" value="100" type="button">d100</button> </fieldset> <button type="button" class="js-die" value="clear">Clear</button><button>Roll</button> </form> </div> <div id="footer"><p>&copy 2017 Dice To The Face</p></div> </div> <script src="js/index.js"></script>
</body>
</html>

Dice roller - Script Codes CSS Codes

button { cursor: pointer;
}
fieldset { border: 0;
}
#wrapper { background: -webkit-linear-gradient(grey, black); background: linear-gradient(grey, black); margin: 0 auto; text-align: center; width: 100%; height: 100%;
}
#scroll { height: 100%; max-width: 650px; background-color: #efefef; border-radius: 10px; margin: 0 auto;
}
#battle { height: 200px; margin: -40px 0 0 -20px;
}
#footer { background-color: #efefef; padding: 10px; margin: 10px;
}

Dice roller - Script Codes JS Codes

"use strict";
// Utils
var findAll = function findAll(selector) { var context = arguments.length <= 1 || arguments[1] === undefined ? document : arguments[1]; return context.querySelectorAll(selector);
};
var find = function find(selector) { var context = arguments.length <= 1 || arguments[1] === undefined ? document : arguments[1]; return context.querySelector(selector);
};
var each = function each(array, func) { for (var i = 0; i < array.length; i++) { func(array[i], i); }
};
// App
var canvas = find(".js-test-roll-area");
var getRandom = function getRandom(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min;
};
var roll = function roll(d) { return getRandom(1, d);
};
var sum = function sum(array) { return array.reduce(function (a, b) { return a + b; });
};
var rollDie = function rollDie(e) { e.preventDefault(); var total = []; var form = e.target; var quantity = form.elements["number-of-dice"].value; var type = form.elements["type-of-dice"].value; for (var i = 0; i < quantity; i++) { total.push(roll(type)); } canvas.innerHTML = "Roll: " + total.join(" + ") + " || Total: " + sum(total);
};
var diceToRoll = [];
var currentNumber = { quantity: "", sides: ""
};
var reset = function reset() { currentNumber = { quantity: "", sides: "" };
};
var displayText = "";
var appendToRoll = function appendToRoll(e) { var value = e.target.value; var type = e.target.dataset.type; if (value === "clear") { displayText = ""; diceToRoll = []; reset(); } else if (type === "amount") { displayText += currentNumber.quantity === "" && diceToRoll.length ? " + " + value : value; currentNumber.quantity += value; } else { currentNumber.sides += value; displayText += " d" + value; diceToRoll.push(currentNumber); reset(); } canvas.innerHTML = displayText;
};
var buttons = findAll(".js-die");
each(buttons, function (el) { return el.addEventListener("click", appendToRoll);
});
var form = find(".js-dice-roll");
form.addEventListener("submit", rollDice);
Dice roller - Script Codes
Dice roller - Script Codes
Home Page Home
Developer Dave
Username DaveOrDead
Uploaded September 17, 2022
Rating 3
Size 4,109 Kb
Views 26,312
Do you need developer help for Dice roller?

Find the perfect freelance services for your business! Fiverr's mission is to change how the world works together. Fiverr connects businesses with freelancers offering digital services in 500+ categories. Find Developer!

Dave (DaveOrDead) Script Codes
Create amazing marketing copy with AI!

Jasper is the AI Content Generator that helps you and your team break through creative blocks to create amazing, original content 10X faster. Discover all the ways the Jasper AI Content Platform can help streamline your creative workflows. Start For Free!