88 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			88 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<!DOCTYPE html>
 | 
						|
<html lang="en">
 | 
						|
<head>
 | 
						|
    <meta charset="UTF-8">
 | 
						|
    <title>Gamma World Die Roller</title>
 | 
						|
    <link rel="stylesheet" type="text/css" href="styles.css">
 | 
						|
    <script>
 | 
						|
        window.onload = function() {
 | 
						|
            document.getElementById('diceForm').addEventListener('submit', function(event) {
 | 
						|
                event.preventDefault();  // Prevent the form from submitting the normal way
 | 
						|
 | 
						|
                const quantity = parseInt(document.getElementById('quantity').value, 10);
 | 
						|
                const geometry = parseInt(document.getElementById('geometry').value, 10);
 | 
						|
                const discard = document.getElementById('discard').checked;
 | 
						|
 | 
						|
                fetch('https://gammaworld.gmgauthier.com/roll/dice', {
 | 
						|
                    method: 'POST',
 | 
						|
                    headers: {
 | 
						|
                        'Content-Type': 'application/json',
 | 
						|
                    },
 | 
						|
                    body: JSON.stringify({
 | 
						|
                        quantity: quantity,
 | 
						|
                        geometry: geometry,
 | 
						|
                        discard_lowest: discard
 | 
						|
                    }),
 | 
						|
                })
 | 
						|
                    .then(response => response.json())
 | 
						|
                    .then(data => {
 | 
						|
                        const resultsDiv = document.getElementById('results');
 | 
						|
                        let html = '';
 | 
						|
                        if (data['dice-set']) {
 | 
						|
                            let diceSet = data['dice-set'];
 | 
						|
                            html += '<p><h3>Dice Set:</h3></p>';
 | 
						|
                            html += `<ul>
 | 
						|
                                       <li>Mnemonic: ${diceSet['mnemonic']}</li>
 | 
						|
                                       <li>Min Roll: ${diceSet['min-roll']}</li>
 | 
						|
                                       <li>Max Roll: ${diceSet['max-roll']}</li>
 | 
						|
                                      </ul>`;
 | 
						|
                        }
 | 
						|
                        if (data['rolls'] && quantity > 1) {
 | 
						|
                            html += `<p><h3>Rolls: </h3>${data['rolls'].join(', ')}</p>`;
 | 
						|
                        }
 | 
						|
                        if (data['result']) {
 | 
						|
                            html += `<p><h3>Result: </h3><h2>${data['result']}</h2></p>`;
 | 
						|
                        }
 | 
						|
                        resultsDiv.innerHTML = html;
 | 
						|
                    })
 | 
						|
                    .catch(error => {
 | 
						|
                        console.error('Error:', error);
 | 
						|
                    });
 | 
						|
            });
 | 
						|
        }
 | 
						|
    </script>
 | 
						|
</head>
 | 
						|
<body>
 | 
						|
 | 
						|
<h1>Gamma World Die Roller</h1>
 | 
						|
 | 
						|
<h2>Roll Dice</h2>
 | 
						|
 | 
						|
<div class="content-container">
 | 
						|
<form id="diceForm">
 | 
						|
    <div class="form-row">
 | 
						|
        <div class="form-field">
 | 
						|
            <label for="quantity">Quantity:</label>
 | 
						|
            <input type="number" name="quantity" id="quantity" min="1" max="100" value="4">
 | 
						|
        </div>
 | 
						|
        <div class="form-field">
 | 
						|
            <label for="geometry">Geometry:</label>
 | 
						|
            <input type="number" name="geometry" id="geometry" min="2" max="100" value="6">
 | 
						|
        </div>
 | 
						|
    </div>
 | 
						|
    <div class="form-row">
 | 
						|
        <div class="form-field">
 | 
						|
            <label for="discard">Discard Lowest Roll</label><input type="checkbox" name="discard" id="discard"/>
 | 
						|
        </div>
 | 
						|
        <div class="form-field">
 | 
						|
            <button type="submit">Roll</button>
 | 
						|
        </div>
 | 
						|
    </div>
 | 
						|
</form>
 | 
						|
</div>
 | 
						|
 | 
						|
<hr/>
 | 
						|
<div id="results"></div>
 | 
						|
 | 
						|
</body>
 | 
						|
</html> |