CharakterCreator: Unterschied zwischen den Versionen
Aus Dunkelherzen Wiki
DRP (Diskussion | Beiträge) Die Seite wurde neu angelegt: „== Charakter Creator == <div id="charakter-creator"> <label>Name: <input type="text" id="name"></label><br><br> <label>Rasse: <select id="rasse" onchange="updateAttributes()"> <option value="">-- Wähle --</option> <option value="elf">Elf</option> <option value="ork">Ork</option> <option value="mensch">Mensch</option> </select> </label><br> <label>Subrasse: <select id="subrasse" onchange="updateAttributes()">…“ |
DRP (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
<html> | |||
< | <style> | ||
< | .creator-form { | ||
max-width: 600px; | |||
margin: auto; | |||
font-family: sans-serif; | |||
} | |||
.creator-form label { | |||
font-weight: bold; | |||
display: block; | |||
margin-top: 10px; | |||
} | |||
.creator-form input, | |||
.creator-form select { | |||
width: 100%; | |||
padding: 5px; | |||
margin-bottom: 10px; | |||
} | |||
.creator-form button { | |||
margin-top: 15px; | |||
padding: 10px; | |||
width: 100%; | |||
} | |||
.output { | |||
margin-top: 20px; | |||
padding: 10px; | |||
background: #f8f8f8; | |||
border: 1px solid #ccc; | |||
white-space: pre-wrap; | |||
} | |||
</style> | |||
<div class="creator-form"> | |||
<h2>Charakter Creator</h2> | |||
<label | <label for="name">Name:</label> | ||
<input type="text" id="name" placeholder="Name des Charakters"> | |||
<label> | <label for="klasse">Klasse:</label> | ||
<select id="klasse"> | |||
<option value="">Wähle...</option> | |||
<option value="Krieger">Krieger (+2 Stärke)</option> | |||
<option value="Magier">Magier (+2 Intelligenz)</option> | |||
</select> | |||
<label> | <label for="rasse">Rasse:</label> | ||
<select id="rasse"> | |||
<option value="">Wähle...</option> | |||
<option value="Mensch">Mensch (+1 Charisma)</option> | |||
<option value="Elf">Elf (+1 Geschick)</option> | |||
</select> | |||
< | <button onclick="berechneWerte()">Werte berechnen</button> | ||
<button onclick="exportiereDaten()">Charakterdaten exportieren</button> | |||
< | <div class="output" id="ausgabe"></div> | ||
</div> | </div> | ||
<script> | <script> | ||
const | function berechneWerte() { | ||
const name = document.getElementById("name").value; | |||
const klasse = document.getElementById("klasse").value; | |||
const rasse = document.getElementById("rasse").value; | |||
// Grundwerte | |||
let werte = { | |||
Stärke: 5, | |||
Intelligenz: 5, | |||
}; | Charisma: 5, | ||
Geschick: 5 | |||
}; | |||
// Klassenboni | |||
if (klasse === "Krieger") werte["Stärke"] += 2; | |||
if (klasse === "Magier") werte["Intelligenz"] += 2; | |||
// Rassenboni | |||
if (rasse === "Mensch") werte["Charisma"] += 1; | |||
if (rasse === "Elf") werte["Geschick"] += 1; | |||
const daten = { | |||
Name: name, | |||
Klasse: klasse, | |||
Rasse: rasse, | |||
Attribute: werte | |||
}; | |||
document.getElementById("ausgabe").textContent = JSON.stringify(daten, null, 2); | |||
} | } | ||
function | function exportiereDaten() { | ||
const ausgabe = document.getElementById("ausgabe").textContent; | |||
if (!ausgabe) { | |||
alert("Bitte erst Daten berechnen!"); | |||
return; | |||
} | |||
const blob = new Blob([ausgabe], { type: "application/json" }); | |||
const url = URL.createObjectURL(blob); | |||
const a = document.createElement("a"); | |||
a.href = url; | |||
a.download = "charakter.json"; | |||
a.click(); | |||
URL.revokeObjectURL(url); | |||
} | } | ||
</script> | </script> | ||
</html> | |||
Version vom 25. Juli 2025, 17:30 Uhr
