156 lines
8.2 KiB
HTML
156 lines
8.2 KiB
HTML
|
<section class="grid grid-3col">
|
|||
|
|
|||
|
<fieldset class="resource grid-span-3 flexcol">
|
|||
|
<div class="resource flexrow">
|
|||
|
<label for="system.age" class="resource-label">Age</label>
|
|||
|
<input type="text" name="system.age" value="{{system.age}}" data-dtype="String"/>
|
|||
|
</div>
|
|||
|
<div class="resource grid-span-2 flexrow">
|
|||
|
<label for="system.pronouns" class="resource-label">Pronouns</label>
|
|||
|
<input type="text" name="system.pronouns" value="{{system.pronouns}}" data-dtype="String"/>
|
|||
|
</div>
|
|||
|
<div class="resource grid-span-3 flexrow">
|
|||
|
<label for="system.fear" class="resource-label">Fear</label>
|
|||
|
<input type="text" name="system.fear" value="{{system.fear}}" data-dtype="String"/>
|
|||
|
</div>
|
|||
|
<div class="resource grid-span-3 flexrow" >
|
|||
|
<label for="system.motivation" class="resource-label">Motivation</label>
|
|||
|
<input type="text" name="system.motivation" value="{{system.motivation}}" data-dtype="String"/>
|
|||
|
</div>
|
|||
|
<div class="resource grid-span-3 flexrow" >
|
|||
|
<label for="system.description" class="resource-label">Description</label>
|
|||
|
<input type="text" name="system.description" value="{{system.description}}" data-dtype="String"/>
|
|||
|
</div>
|
|||
|
<div class="resource grid-span-3 flexrow">
|
|||
|
<label for="system.grade" class="resource-label">Grade</label>
|
|||
|
<input type="text" name="system.grade" value="{{system.grade}}" data-dtype="String"/>
|
|||
|
</div>
|
|||
|
</fieldset>
|
|||
|
<fieldset class="resource grid-span-3 flexcol">
|
|||
|
<legend>Your Broom</legend>
|
|||
|
|
|||
|
<!-- Broom Name Input with Dropdown -->
|
|||
|
<div class="resource flexrow">
|
|||
|
<label for="broom-name" class="resource-label">Name</label>
|
|||
|
<input list="broomOptions" id="broom-name" name="system.broom.name"
|
|||
|
value="{{system.broom.name}}" data-dtype="String" placeholder="Select or Enter Broom Name"
|
|||
|
oninput="updateBroomDetails()" onblur="updateBroomDetails()">
|
|||
|
<datalist id="broomOptions">
|
|||
|
<option value="The Blocker's Broom" data-look="Defensive" data-mechanical="Gain the Guardian Strength"></option>
|
|||
|
<option value="Bolting 4000" data-look="Fast" data-mechanical="+1 to Flight checks"></option>
|
|||
|
<option value="The Bruiser" data-look="Intense" data-mechanical="+1 to Fight checks"></option>
|
|||
|
<option value="Cunning Captain’s Cruiser" data-look="Natural Leader" data-mechanical="Treat Snap Decisions as Planned Actions unless facing fear"></option>
|
|||
|
<option value="Daredevil’s Duster" data-look="Flashy" data-mechanical="+3 to Charm checks when performing a stunt"></option>
|
|||
|
<option value="The Daring Dodger 3000" data-look="Ambitious" data-mechanical="Each Adversity Token adds +2 to your roll instead of +1"></option>
|
|||
|
<option value="Heartwood’s Helper" data-look="Outgoing" data-mechanical="Each successful check grants an ally one Adversity Token"></option>
|
|||
|
<option value="Mapmaker’s Friend" data-look="Level-Headed" data-mechanical="Cannot get lost if you know the area"></option>
|
|||
|
<option value="The Mastermind’s Sweeper" data-look="Confident" data-mechanical="+1 to Brains checks"></option>
|
|||
|
<option value="The Strong Sweep 2500" data-look="Strong" data-mechanical="+1 to Brawn checks"></option>
|
|||
|
<option value="The Suave Sweeper" data-look="Trustworthy" data-mechanical="+1 to Charm checks"></option>
|
|||
|
<option value="The Tough Break" data-look="Tough" data-mechanical="+1 to Grit checks"></option>
|
|||
|
<option value="Valiance 2400" data-look="Brave" data-mechanical="May ignore your fears"></option>
|
|||
|
<option value="Weasel’s Whisk" data-look="Sneaky" data-mechanical="Gain the Unassuming Strength"></option>
|
|||
|
</datalist>
|
|||
|
</div>
|
|||
|
|
|||
|
<!-- Broom Look -->
|
|||
|
<div class="resource flexrow">
|
|||
|
<label for="broom-look" class="resource-label">Look</label>
|
|||
|
<input type="text" id="broom-look" name="system.broom.look"
|
|||
|
value="{{system.broom.look}}" data-dtype="String"/>
|
|||
|
</div>
|
|||
|
|
|||
|
<!-- Mechanical Benefit as Textarea -->
|
|||
|
<div class="resource flexrow">
|
|||
|
<label for="broom-mechanical" class="resource-label">Mechanical Benefit</label>
|
|||
|
<textarea id="broom-mechanical" name="system.broom.mechanicalbenefit"
|
|||
|
data-dtype="String" rows="3" style="resize:none;"></textarea>
|
|||
|
</div>
|
|||
|
|
|||
|
</fieldset>
|
|||
|
|
|||
|
<script>
|
|||
|
function updateBroomDetails() {
|
|||
|
// Use a short delay to allow browser to properly handle the datalist input
|
|||
|
setTimeout(function() {
|
|||
|
const broomNameInput = document.getElementById("broom-name").value.trim();
|
|||
|
const broomOptions = document.querySelectorAll("#broomOptions option");
|
|||
|
|
|||
|
let selectedLook = "";
|
|||
|
let selectedMechanical = "";
|
|||
|
|
|||
|
// Loop through the datalist options to find a matching broom name
|
|||
|
broomOptions.forEach(option => {
|
|||
|
if (option.value.toLowerCase() === broomNameInput.toLowerCase()) {
|
|||
|
selectedLook = option.getAttribute("data-look");
|
|||
|
selectedMechanical = option.getAttribute("data-mechanical");
|
|||
|
}
|
|||
|
});
|
|||
|
|
|||
|
// Update the look and mechanical benefit fields if a predefined broom is selected
|
|||
|
document.getElementById("broom-look").value = selectedLook || "";
|
|||
|
document.getElementById("broom-mechanical").value = selectedMechanical || "";
|
|||
|
}, 100); // Delay of 100 milliseconds
|
|||
|
}
|
|||
|
</script>
|
|||
|
<fieldset class="resource grid-span-3 flexcol">
|
|||
|
<legend>Wand Selection</legend>
|
|||
|
|
|||
|
<!-- Wood Selection -->
|
|||
|
<div class="resource-flexrow">
|
|||
|
<label for="system.wand.wood" class="resource-label">Wood Type</label>
|
|||
|
<input list="WoodOptions" id="wandWoodChoice" name="system.wand.wood" value="{{system.wand.wood}}" placeholder="Select Wood type"
|
|||
|
oninput="updateWandWoodDetails()" onblur="updateWandWoodDetails()">
|
|||
|
<datalist id="WoodOptions">
|
|||
|
<option value="">Select Wood</option>
|
|||
|
<option value="Wisteria">(Brains)</option>
|
|||
|
<option value="Hawthorn">(Brains)</option>
|
|||
|
<option value="Pine">(Brawn)</option>
|
|||
|
<option value="Oak">(Brawn)</option>
|
|||
|
<option value="Crabapple">(Fight)</option>
|
|||
|
<option value="Dogwood">(Fight)</option>
|
|||
|
<option value="Birch">(Flight)</option>
|
|||
|
<option value="Bamboo">(Flight)</option>
|
|||
|
<option value="Ironwood">(Grit)</option>
|
|||
|
<option value="Maple">(Grit)</option>
|
|||
|
<option value="Lilac">(Charm)</option>
|
|||
|
<option value="Cherry">(Charm)</option>
|
|||
|
</datalist>
|
|||
|
</div>
|
|||
|
|
|||
|
<!-- Core Selection -->
|
|||
|
<div class="resource-flexrow">
|
|||
|
<label for="system.wand.core" class="resource-label">Core Type</label>
|
|||
|
<input list="CoreOptions" id="wandCoreChoice" name="system.wand.core" value="{{system.wand.core}}" placeholder="Select Core type"
|
|||
|
oninput="updateWandCoreDetails()" onblur="updateWandCoreDetails()">
|
|||
|
<datalist id="CoreOptions">
|
|||
|
<option value="">Select Core</option>
|
|||
|
<option value="Parchment">(Brains)</option>
|
|||
|
<option value="Phoenix Feather">(Brains)</option>
|
|||
|
<option value="Owl Feather">(Brains)</option>
|
|||
|
<option value="Gorilla Fur">(Brawn)</option>
|
|||
|
<option value="Ogre’s Fingernail">(Brawn)</option>
|
|||
|
<option value="Hippo’s Tooth">(Brawn)</option>
|
|||
|
<option value="Dragon’s Heartstring">(Fight)</option>
|
|||
|
<option value="Wolf’s Tooth">(Fight)</option>
|
|||
|
<option value="Elk’s Antler">(Fight)</option>
|
|||
|
<option value="Hawk’s Feather">(Flight)</option>
|
|||
|
<option value="Bat’s Bone">(Flight)</option>
|
|||
|
<option value="Changeling’s Hair">(Charm)</option>
|
|||
|
<option value="Gold">(Charm)</option>
|
|||
|
<option value="Mirror">(Charm)</option>
|
|||
|
<option value="Steel">(Grit)</option>
|
|||
|
<option value="Diamond">(Grit)</option>
|
|||
|
<option value="Lion’s Mane">(Grit)</option>
|
|||
|
</datalist>
|
|||
|
</div>
|
|||
|
</fieldset>
|
|||
|
<fieldset class="resource grid-span-3 flexcol">
|
|||
|
<legend>Animal Familiar</legend>
|
|||
|
<div class="resource grid-span-3 flexrow">
|
|||
|
<label for="system.animalfamiliar" class="resource-label">Animal Familiar</label>
|
|||
|
<input type="text" name="system.animalfamiliar" value="{{system.animalfamiliar}}" data-dtype="String"/>
|
|||
|
</div>
|
|||
|
</fieldset>
|
|||
|
|
|||
|
</section>
|