feat: Create the character creator button
This commit is contained in:
30
index.html
30
index.html
@@ -190,6 +190,12 @@
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Character sheet */
|
||||||
|
|
||||||
|
#cont-character-sheet {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
.pool-container {
|
.pool-container {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
border-width: 2px;
|
border-width: 2px;
|
||||||
@@ -253,7 +259,8 @@
|
|||||||
<span id="warn-no-local-storage" title="Local Storage is not available. You can import/export data, but the app won’t save it between sessions!">!</span>
|
<span id="warn-no-local-storage" title="Local Storage is not available. You can import/export data, but the app won’t save it between sessions!">!</span>
|
||||||
</h1>
|
</h1>
|
||||||
<div id="cont-no-loaded" class="box">
|
<div id="cont-no-loaded" class="box">
|
||||||
No character is loaded.
|
No character is loaded.<br>
|
||||||
|
<button id="btn-no-char-create-character">Create one</button>
|
||||||
</div>
|
</div>
|
||||||
<div id="cont-character-sheet">
|
<div id="cont-character-sheet">
|
||||||
<div class="box">
|
<div class="box">
|
||||||
@@ -347,6 +354,11 @@
|
|||||||
<script>
|
<script>
|
||||||
const poolTypes = ["might", "speed", "intellect"];
|
const poolTypes = ["might", "speed", "intellect"];
|
||||||
|
|
||||||
|
const containerNoCharacter = document.getElementById("cont-no-loaded");
|
||||||
|
const containerCharacter = document.getElementById("cont-character-sheet");
|
||||||
|
|
||||||
|
const btnNoCharCreateCharacter = document.getElementById("btn-no-char-create-character");
|
||||||
|
|
||||||
const inpCampaignName = document.getElementById("inp-campaign-name");
|
const inpCampaignName = document.getElementById("inp-campaign-name");
|
||||||
const inpCharacterName = document.getElementById("inp-character-name");
|
const inpCharacterName = document.getElementById("inp-character-name");
|
||||||
const inpMaxEffort = document.getElementById("inp-max-effort");
|
const inpMaxEffort = document.getElementById("inp-max-effort");
|
||||||
@@ -367,6 +379,9 @@
|
|||||||
intellect: document.getElementById("inp-pool-edge-intellect"),
|
intellect: document.getElementById("inp-pool-edge-intellect"),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var characterRoster = {};
|
||||||
|
var currentCharacter = null;
|
||||||
|
|
||||||
const checkLocalStorage = () => {
|
const checkLocalStorage = () => {
|
||||||
let storage;
|
let storage;
|
||||||
try {
|
try {
|
||||||
@@ -396,6 +411,17 @@
|
|||||||
input.disabled = !toUnlock;
|
input.disabled = !toUnlock;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const loadCharacter = (characterID) => {
|
||||||
|
containerNoCharacter.style.display = "none";
|
||||||
|
containerCharacter.style.display = "initial";
|
||||||
|
|
||||||
|
clearSheet();
|
||||||
|
};
|
||||||
|
|
||||||
|
const createCharacter = () => {
|
||||||
|
loadCharacter();
|
||||||
|
};
|
||||||
|
|
||||||
const clearSheet = () => {
|
const clearSheet = () => {
|
||||||
inpCampaignName.value = "";
|
inpCampaignName.value = "";
|
||||||
inpCharacterName.value = "";
|
inpCharacterName.value = "";
|
||||||
@@ -421,6 +447,8 @@
|
|||||||
.querySelectorAll(".input-unlocker")
|
.querySelectorAll(".input-unlocker")
|
||||||
.forEach((elem) => {elem.addEventListener("change", toggleInputLockedHandler)});
|
.forEach((elem) => {elem.addEventListener("change", toggleInputLockedHandler)});
|
||||||
|
|
||||||
|
btnNoCharCreateCharacter.addEventListener("click", createCharacter);
|
||||||
|
|
||||||
clearSheet();
|
clearSheet();
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
Reference in New Issue
Block a user