[Ambition & Avarice 1E] New sheet (#5616)
* Ambitions & Avarice: img + sheet.json upload * Ambitions & Avarice: v.0.5 html + css * Ambitions & Avarice: v.0.6 main buttons added, preview img * Ambitions & Avarice: v.0.8 more buttons, NPC started, minor visula fixes * Ambitions & Avarice: v.0.9 button adjustments, minor fixes * Ambitions & Avarice: v.1.0; button styling, last fixes for publishing * Ambition & Avarice: v1.00 fix minor layout bug for chrome
@@ -0,0 +1,566 @@
|
||||
/*------------------------------------------------*\
|
||||
#GENERAL
|
||||
\*------------------------------------------------*/
|
||||
|
||||
|
||||
/* --------- Text ------------- */
|
||||
|
||||
span{
|
||||
/*overflow: hidden;*/
|
||||
}
|
||||
|
||||
span.sheet-bold{
|
||||
font-weight: 800;
|
||||
font-size: medium;
|
||||
}
|
||||
|
||||
label {
|
||||
margin: 5px 0px 5px 0px;
|
||||
width: 70px;
|
||||
text-transform: capitalize;
|
||||
font-size: 1.1em;
|
||||
/*overflow: hidden;*/
|
||||
}
|
||||
label.sheet-title{
|
||||
width: 130px;
|
||||
font-size: 1.3em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sheet-short{
|
||||
width: 50px;
|
||||
}
|
||||
|
||||
/* --------- Inputs ------------- */
|
||||
|
||||
input[type="text"] {
|
||||
background-color: transparent;
|
||||
border-style: none none solid none;
|
||||
border-width: 2px;
|
||||
border-radius: 0px;
|
||||
border-color: black;
|
||||
padding: 0px 4px;
|
||||
margin: 0px 4px;
|
||||
width: auto;
|
||||
}
|
||||
|
||||
input[type="number"]{
|
||||
background-color: transparent;
|
||||
border-style: none none solid none;
|
||||
border-width: 2px;
|
||||
border-radius: 0px;
|
||||
border-color: black;
|
||||
text-align: center;
|
||||
width: 40px;
|
||||
}
|
||||
|
||||
textarea {
|
||||
background-color: transparent;
|
||||
background-image:
|
||||
linear-gradient(to right, transparent 5px, transparent 5px),
|
||||
linear-gradient(to left, transparent 5px, transparent 5px),
|
||||
repeating-linear-gradient(transparent, transparent 20px, #030303 20px, #000 22px, transparent 21px);
|
||||
line-height: 21px;
|
||||
padding: 3px 10px;
|
||||
border-style: none;
|
||||
width: 80%;
|
||||
height: 90%;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
|
||||
input[type="checkbox"].sheet-checkbox {
|
||||
border-style: solid black;
|
||||
border-radius: 0px;
|
||||
}
|
||||
|
||||
/* highlights empty fields with light gray */
|
||||
textarea:placeholder-shown,
|
||||
input[type="text"]:placeholder-shown,
|
||||
input[type="number"]:placeholder-shown{
|
||||
background-color: #EAC9D1;
|
||||
}
|
||||
|
||||
/* higlight selected input */
|
||||
textarea:focus,
|
||||
input[type="text"]:focus,
|
||||
input[type="number"]:focus{
|
||||
background-color: #9E9698;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* -----Hides up/down buttons on numberfields that don't need them ---*/
|
||||
|
||||
input[type=number]::-webkit-inner-spin-button,
|
||||
input[type=number]::-webkit-outer-spin-button,
|
||||
input[type=number].sheet-txtfield::-webkit-inner-spin-button,
|
||||
input[type=number].sheet-txtfield::-webkit-outer-spin-button {
|
||||
-webkit-appearance: none;
|
||||
margin: 0;
|
||||
}
|
||||
input[type=number],
|
||||
input[type=number].sheet-txtfield {
|
||||
-moz-appearance: textfield;
|
||||
}
|
||||
|
||||
/* dice images */
|
||||
|
||||
div.sheet-d20{
|
||||
background-image: url(https://raw.githubusercontent.com/Anduh/roll20-character-sheets/ambition_avarice/Ambition_Avarice/images/d20.png);
|
||||
background-size: 30px 30px;
|
||||
background-repeat: no-repeat;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
}
|
||||
|
||||
div.sheet-d6{
|
||||
background-image: url(https://raw.githubusercontent.com/Anduh/roll20-character-sheets/ambition_avarice/Ambition_Avarice/images/d6.png);
|
||||
background-size: 30px 30px;
|
||||
background-repeat: no-repeat;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
}
|
||||
|
||||
/* ------- Buttons ---------- */
|
||||
|
||||
button[type="roll"].sheet-d20:before,
|
||||
button[type="roll"].sheet-d6:before{
|
||||
content: ' ';
|
||||
}
|
||||
|
||||
button[type="roll"].sheet-d20:hover,
|
||||
button[type="roll"].sheet-d6:hover{
|
||||
background-position: 0;
|
||||
}
|
||||
|
||||
button[type="roll"].sheet-d20{
|
||||
background-image: url(https://raw.githubusercontent.com/Anduh/roll20-character-sheets/ambition_avarice/Ambition_Avarice/images/d20.png);
|
||||
background-size: 26px 26px;
|
||||
background-repeat: no-repeat;
|
||||
width: 26px;
|
||||
height: 26px;
|
||||
border-style: none;
|
||||
background-color: transparent;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
button[type="roll"].sheet-d6{
|
||||
background-image: url(https://raw.githubusercontent.com/Anduh/roll20-character-sheets/ambition_avarice/Ambition_Avarice/images/d6.png);
|
||||
background-size: 26px 26px;
|
||||
background-repeat: no-repeat;
|
||||
width: 26px;
|
||||
height: 26px;
|
||||
border-style: none;
|
||||
background-color: transparent;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
/*
|
||||
button[type="roll"].sheet-d6:before{
|
||||
font-family: 'dicefontd6';
|
||||
content: 'f';
|
||||
}*/
|
||||
|
||||
button[type="roll"].sheet-d10:before{
|
||||
font-family: 'dicefontd10';
|
||||
content: 'j ';
|
||||
}
|
||||
|
||||
button[type="roll"].sheet-empty:before{
|
||||
content: ' ';
|
||||
}
|
||||
|
||||
|
||||
/*-----------------------------------------------------------------*\
|
||||
#SECTIONS
|
||||
\*-----------------------------------------------------------------*/
|
||||
|
||||
|
||||
/* --------- General Section Styling ------------- */
|
||||
.sheet-section {
|
||||
display: flex;
|
||||
padding: 5px;
|
||||
min-height: 90%;
|
||||
}
|
||||
|
||||
.sheet-columnflex {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.sheet-rowflex {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
}
|
||||
.sheet-wrap {
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.sheet-nowrap {
|
||||
flex-wrap: nowrap;
|
||||
}
|
||||
|
||||
.sheet-center {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.sheet-middle {
|
||||
justify-content: center;
|
||||
}
|
||||
.sheet-spaced {
|
||||
justify-content: space-evenly;
|
||||
}
|
||||
.sheet-note{
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
/* ------------ Tabs ---------- */
|
||||
|
||||
input.sheet-tab1:checked ~ div.sheet-tab1,
|
||||
input.sheet-tab2:checked ~ div.sheet-tab2,
|
||||
input.sheet-tab3:checked ~ div.sheet-tab3
|
||||
{
|
||||
display: grid;
|
||||
}
|
||||
|
||||
/* styles tab button */
|
||||
input.sheet-tab
|
||||
{
|
||||
width: 150px;
|
||||
height: 22px;
|
||||
position: relative;
|
||||
top: -26px;
|
||||
left: 80px;
|
||||
|
||||
margin: 5px 0px 5px 0px;
|
||||
padding: 0px;
|
||||
cursor: pointer;
|
||||
z-index: 1;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
input.sheet-tab + span::before
|
||||
{
|
||||
content: attr(title);
|
||||
|
||||
width: 150px;
|
||||
height: 22px;
|
||||
position: absolute;
|
||||
top: 50px;
|
||||
left: 110px;
|
||||
|
||||
border: solid 2px grey;
|
||||
border-radius: 13px;
|
||||
padding-bottom: 2px;
|
||||
text-align: center;
|
||||
font-size: 18px;
|
||||
display: inline-block;
|
||||
background: white;
|
||||
}
|
||||
|
||||
input.sheet-tab:checked + span::before
|
||||
{
|
||||
background: #e5e5e5;
|
||||
}
|
||||
|
||||
input.sheet-tab2 + span::before
|
||||
{
|
||||
left: 263px;
|
||||
}
|
||||
|
||||
input.sheet-tab3 + span::before
|
||||
{
|
||||
left: 415px;
|
||||
}
|
||||
|
||||
/* ------------ PAGES ---------- */
|
||||
|
||||
div.sheet-pg1 {
|
||||
display: grid;
|
||||
grid-gap: 1px;
|
||||
grid-template-columns: 7fr 2fr 8fr 12fr 4fr 12fr;
|
||||
grid-template-rows: 4fr 8fr 8fr 5fr 3fr 5fr;
|
||||
grid-template-areas:"name name name name logo logo "
|
||||
"attrs attrs hp-ac hp-ac hp-ac hp-ac"
|
||||
"saving dungeon dungeon sixes sixes profs"
|
||||
"k-spells k-spells k-spells class class lang " /* k-spells = known spells */
|
||||
"spells-d spells-d spells-d speed speed speed" /* spells-d = spells per day */
|
||||
"spells-m spells-m spells-m misc exp exp "; /* spells-m = spells memorized */
|
||||
width: 750px;
|
||||
height: 1000px;
|
||||
position: relative;
|
||||
top:-20px;
|
||||
}
|
||||
|
||||
div.sheet-pg2 {
|
||||
display: grid;
|
||||
grid-gap: 1px;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
grid-template-rows: 80px auto;
|
||||
grid-template-areas:"coin companions"
|
||||
"equip companions";
|
||||
width: 750px;
|
||||
height: 1000px;
|
||||
position: relative;
|
||||
top:-20px;
|
||||
}
|
||||
|
||||
div.sheet-pg3 {
|
||||
display: grid;
|
||||
grid-gap: 1px;
|
||||
grid-template-columns: 2fr 1fr 2fr;
|
||||
grid-template-rows: 45px auto;
|
||||
grid-template-areas:"npc-main npc-main npc-main"
|
||||
"npc-attrs npc-buttons notes ";
|
||||
width: 600px;
|
||||
height: 700px;
|
||||
position: relative;
|
||||
top:-20px;
|
||||
}
|
||||
|
||||
div.sheet-tab-content { display: none; }
|
||||
|
||||
/* ------------ Section Specific ---------- */
|
||||
|
||||
|
||||
|
||||
/* ------- page 1 ------------ */
|
||||
|
||||
/* NAME SECTION */
|
||||
div.sheet-name{
|
||||
grid-area: name;
|
||||
}
|
||||
div.sheet-name div{
|
||||
margin: 3px 5px;
|
||||
}
|
||||
div.sheet-name input{
|
||||
width: 150px;
|
||||
}
|
||||
div.sheet-name .sheet-short{
|
||||
width: 60px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
|
||||
/* LOGO SECTION */
|
||||
div.sheet-logo{
|
||||
grid-area: logo;
|
||||
background-image: url(https://raw.githubusercontent.com/Anduh/roll20-character-sheets/ambition_avarice/Ambition_Avarice/images/logo.png);
|
||||
background-size: 230px 123px;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
/* ATTRS SECTION */
|
||||
div.sheet-attrs{
|
||||
grid-area: attrs;
|
||||
}
|
||||
div.sheet-attrs span:not(.sheet-info),
|
||||
div.sheet-npc-attrs span:not(.sheet-info){
|
||||
width: 25px;
|
||||
margin-top: 4px;
|
||||
border-style: none none solid none;
|
||||
margin-bottom: 4px;
|
||||
border-width: 2px;
|
||||
text-align: center;
|
||||
}
|
||||
div.sheet-attrs input[type="number"],
|
||||
div.sheet-npc-attrs input[type="number"],
|
||||
div.sheet-saving input[type="number"],
|
||||
div.sheet-dungeon input[type="number"]{
|
||||
width:30px;
|
||||
padding: 0px 0px;
|
||||
margin: 4px 4px;
|
||||
}
|
||||
div.sheet-attrs span.sheet-note{
|
||||
width: 100px;
|
||||
}
|
||||
|
||||
/* HP AC SECTION */
|
||||
div.sheet-hp-ac{
|
||||
grid-area: hp-ac;
|
||||
}
|
||||
div.sheet-hp-ac div.sheet-hp{
|
||||
background-image: url(https://raw.githubusercontent.com/Anduh/roll20-character-sheets/ambition_avarice/Ambition_Avarice/images/hp.png);
|
||||
background-size: 220px 110px;
|
||||
background-repeat: no-repeat;
|
||||
width: 220px;
|
||||
height: 110px;
|
||||
}
|
||||
div.sheet-hp-ac div.sheet-to-hit{
|
||||
background-image: url(https://raw.githubusercontent.com/Anduh/roll20-character-sheets/ambition_avarice/Ambition_Avarice/images/to-hit.png);
|
||||
background-size: 100px 110px;
|
||||
background-repeat: no-repeat;
|
||||
width: 100px;
|
||||
height:110px;
|
||||
}
|
||||
div.sheet-hp-ac div.sheet-ac{
|
||||
background-image: url(https://raw.githubusercontent.com/Anduh/roll20-character-sheets/ambition_avarice/Ambition_Avarice/images/ac.png);
|
||||
background-size: 100px 110px;
|
||||
background-repeat: no-repeat;
|
||||
width: 100px;
|
||||
height: 110px;
|
||||
}
|
||||
|
||||
div.sheet-hp-ac div.sheet-infra{
|
||||
margin-top: 15px;
|
||||
}
|
||||
div.sheet-hp-ac div.sheet-spaced label{
|
||||
width: 65px;
|
||||
text-align: end;
|
||||
}
|
||||
div.sheet-hp-ac div.sheet-die input[type="text"]{
|
||||
width: 40px;
|
||||
}
|
||||
div.sheet-hp-ac div.sheet-to-hit label.sheet-title{
|
||||
width: 110px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
div.sheet-hp-ac div.sheet-ac label.sheet-title{
|
||||
width: 100px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
/* hp-ac buttons */
|
||||
div.sheet-hp-ac .sheet-buttons label{
|
||||
text-align: center;
|
||||
}
|
||||
div.sheet-hp-ac .sheet-buttons input[type="number"]{
|
||||
width: 30px;
|
||||
}
|
||||
div.sheet-hp-ac .sheet-npc-buttons button[type="roll"]{
|
||||
margin-top: 4px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* saving throws */
|
||||
div.sheet-saving{
|
||||
grid-area: saving;
|
||||
}
|
||||
|
||||
div.sheet-dungeon{
|
||||
grid-area: dungeon;
|
||||
}
|
||||
div.sheet-dungeon label.sheet-title{
|
||||
text-align: start;
|
||||
}
|
||||
div.sheet-dungeon label.sheet-title,
|
||||
div.sheet-sixes label.sheet-title{
|
||||
width: 150px;
|
||||
}
|
||||
|
||||
div.sheet-sixes{
|
||||
grid-area: sixes;
|
||||
}
|
||||
div.sheet-sixes textarea{
|
||||
width: 220px;
|
||||
}
|
||||
|
||||
/* proficiencies */
|
||||
div.sheet-profs{
|
||||
grid-area: profs;
|
||||
}
|
||||
|
||||
/* known spells */
|
||||
div.sheet-k-spells{
|
||||
grid-area: k-spells;
|
||||
}
|
||||
|
||||
div.sheet-class{
|
||||
grid-area: class;
|
||||
}
|
||||
div.sheet-class input{
|
||||
width: 150px;
|
||||
}
|
||||
|
||||
div.sheet-lang{
|
||||
grid-area: lang;
|
||||
}
|
||||
div.sheet-lang textarea{
|
||||
width: 160px;
|
||||
}
|
||||
|
||||
/* spells per day*/
|
||||
div.sheet-spells-d{
|
||||
grid-area: spells-d;
|
||||
}
|
||||
div.sheet-spells-d label:not(.sheet-title){
|
||||
width: 40px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
|
||||
div.sheet-speed{
|
||||
grid-area: speed;
|
||||
align-items: flex-end;
|
||||
}
|
||||
div.sheet-speed label{
|
||||
margin: 5px 2px;
|
||||
}
|
||||
div.sheet-speed .sheet-title,
|
||||
div.sheet-spells-d .sheet-title{
|
||||
width: 200px;
|
||||
}
|
||||
div.sheet-speed .sheet-title{
|
||||
margin-right: 55px;
|
||||
}
|
||||
|
||||
/* spells memorized */
|
||||
div.sheet-spells-m{
|
||||
grid-area: spells-m;
|
||||
}
|
||||
|
||||
div.sheet-misc{
|
||||
grid-area: misc;
|
||||
}
|
||||
|
||||
div.sheet-exp{
|
||||
grid-area: exp;
|
||||
}
|
||||
div.sheet-spells-m .sheet-title,
|
||||
div.sheet-exp .sheet-title{
|
||||
width: 160px;
|
||||
}
|
||||
div.sheet-exp label:not(.sheet-title){
|
||||
width: 110px;
|
||||
}
|
||||
|
||||
/* ------- page 2 equipment ------------ */
|
||||
|
||||
div.sheet-coin{
|
||||
grid-area: coin;
|
||||
}
|
||||
div.sheet-coin label{
|
||||
text-align: center;
|
||||
margin: 1px;
|
||||
}
|
||||
|
||||
div.sheet-equip{
|
||||
grid-area: equip;
|
||||
}
|
||||
|
||||
div.sheet-companions{
|
||||
grid-area: companions;
|
||||
}
|
||||
div.sheet-companions input{
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
|
||||
|
||||
/* ------- page 3 NPC ------------ */
|
||||
|
||||
div.sheet-npc-main{
|
||||
grid-area: npc-main;
|
||||
}
|
||||
div.sheet-npc-main label{
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
div.sheet-npc-buttons{
|
||||
grid-area: npc-buttons;
|
||||
margin-top: 10px;
|
||||
}
|
||||
div.sheet-npc-buttons button[type="roll"]{
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
div.sheet-notes{
|
||||
grid-area: notes;
|
||||
}
|
||||
@@ -0,0 +1,644 @@
|
||||
<input type="radio" name="attr_tab" class="tab tab1" value="1" checked="checked"><span title="Main"></span>
|
||||
<input type="radio" name="attr_tab" class="tab tab2" value="2" ><span title="Equipment"></span>
|
||||
<input type="radio" name="attr_tab" class="tab tab3" value="3" ><span title="NPC"></span>
|
||||
|
||||
<!-- --------------------------------------------------------------------------------- -->
|
||||
<!-- --------------------------- PAGE 1 ---------------------------------------------- -->
|
||||
<!-- --------------------------------------------------------------------------------- -->
|
||||
<div class="tab-content tab1 pg1">
|
||||
|
||||
<!-- NAME SECTION -->
|
||||
<div class="name section columnflex wrap">
|
||||
<div class="rowflex nowrap">
|
||||
<label>Player: </label>
|
||||
<input name="attr_player" type="text" placeholder="Player name">
|
||||
</div>
|
||||
<div class="rowflex nowrap">
|
||||
<label>Character: </label>
|
||||
<input name="attr_character_name" type="text" placeholder="character name">
|
||||
</div>
|
||||
<div class="rowflex nowrap">
|
||||
<label>Campaign: </label>
|
||||
<input name="attr_campaign" type="text" placeholder="campaign name">
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label class="short">Race: </label>
|
||||
<input name="attr_race" type="text" placeholder="human">
|
||||
</div>
|
||||
<div class="rowflex nowrap">
|
||||
<label class="short">Class: </label>
|
||||
<input name="attr_class" type="text" placeholder="class">
|
||||
</div>
|
||||
<div class="rowflex nowrap">
|
||||
<label class="short">Gender: </label>
|
||||
<input name="attr_gender" type="text" placeholder="gender">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- LOGO SECTION -->
|
||||
<div class="logo section"></div>
|
||||
|
||||
|
||||
<!-- ATTRIBUTES SECTION -->
|
||||
|
||||
<div class="attrs section columnflex nowrap center">
|
||||
|
||||
<label class="title">attributes</label>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Strength</label>
|
||||
<input name="attr_str" type="number" value="" placeholder="10">
|
||||
<span name="attr_str_mod"></span>
|
||||
<button name="roll_str" type="roll" value="&{template:default} {{name= **Strength** (Test)}} {{Roll= [[1d20+(@{str_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Dexterity</label>
|
||||
<input name="attr_dex" type="number" value="" placeholder="10">
|
||||
<span name="attr_dex_mod"></span>
|
||||
<button name="roll_dex" type="roll" value="&{template:default} {{name= **Dexterity** (Test)}} {{Roll= [[1d20+(@{dex_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Constitution</label>
|
||||
<input name="attr_con" type="number" value="" placeholder="10">
|
||||
<span name="attr_con_mod"></span>
|
||||
<button name="roll_con" type="roll" value="&{template:default} {{name= **Constitution** (Test)}} {{Roll= [[1d20+(@{con_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Intelligence</label>
|
||||
<input name="attr_int" type="number" value="" placeholder="10">
|
||||
<span name="attr_int_mod"></span>
|
||||
<button name="roll_int" type="roll" value="&{template:default} {{name= **Intelligence** (Test)}} {{Roll= [[1d20+(@{int_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Wisdom</label>
|
||||
<input name="attr_wis" type="number" value="" placeholder="10">
|
||||
<span name="attr_wis_mod"></span>
|
||||
<button name="roll_wis" type="roll" value="&{template:default} {{name= **Wisdom** (Test)}} {{Roll= [[1d20+(@{wis_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Charisma</label>
|
||||
<input name="attr_cha" type="number" value="" placeholder="10">
|
||||
<span name="attr_cha_mod"></span>
|
||||
<button name="roll_cha" type="roll" value="&{template:default} {{name= **Charisma** (Test)}} {{Roll= [[1d20+(@{cha_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- HP-AC SECTION -->
|
||||
|
||||
<div class="hp-ac section rowflex nowrap">
|
||||
|
||||
<div class="columnflex nowrap center">
|
||||
<label class="title">Hit Points</label>
|
||||
|
||||
<div class="hp rowflex nowrap center middle">
|
||||
<div>
|
||||
<input name="attr_hp" type="number" value="" placeholder="10" style="margin-right: 30px;">
|
||||
</div>
|
||||
<div>
|
||||
<input name="attr_hp_max" type="number" value="" placeholder="10">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="columnflex nowrap spaced die">
|
||||
<div class="rowflex nowrap">
|
||||
<label style="width:55px;">Hit Die:</label>
|
||||
<div>
|
||||
<input name="attr_hit_die" type="text" placeholder="d10">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<button name="roll_rest" type="roll" value=" &{template:default} {{name=**Rest**}} {{You recover [[1d@{rest}]] hp }}" class="empty">Rest Roll</button>
|
||||
<input name="attr_rest" type="number" style="width:30px;" value="" placeholder="6">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="columnflex nowrap center">
|
||||
<label class="title" style="width:110px;padding-right: 0px;">To Hit Bonus</label>
|
||||
<div class="to-hit columnflex center middle">
|
||||
<div>
|
||||
<input name="attr_to_hit" type="number" value="" placeholder="1" style="width:35px;">
|
||||
</div>
|
||||
</div>
|
||||
<button name="roll_melee" type="roll" value=" &{template:default} {{name=**Attack(Melee/Thrown)**}} {{Attack=[[d20+(@{str_mod}[STR MOD]+@{to_hit}[TO HIT BONUS])]]}}" style="margin-bottom:5px;">Melee</button>
|
||||
<button name="roll_ranged" type="roll" value=" &{template:default} {{name=**Attack(Ranged)**}} {{Attack=[[d20+(@{dex_mod}[DEX MOD]+@{to_hit}[TO HIT BONUS])]]}}">Ranged</button>
|
||||
</div>
|
||||
|
||||
<div class="columnflex nowrap center">
|
||||
<label class="title" style="width: 100px;">Armor Class</label>
|
||||
<div class="ac columnflex center middle">
|
||||
<div>
|
||||
<input name="attr_ac" type="number" value="" placeholder="10">
|
||||
</div>
|
||||
</div>
|
||||
<div class="infra rowflex nowrap center">
|
||||
<label>infravision</label>
|
||||
<input name="attr_infravision" type="checkbox" value="">
|
||||
</div>
|
||||
</div>
|
||||
<div class="columnflex nowrap center buttons">
|
||||
<label class="title" style="width: 50px;">Init</label>
|
||||
<input name="attr_init_race" type="number" value="0" class="short">
|
||||
<button name="roll_init" type="roll" value=" &{template:default} {{name=**Initiative**}} {{Roll=[[d10+(@{wis_mod}[WIS MOD])+(@{init_race}[INIT BONUS])]]}} &{tracker}" class="d10">Init</button>
|
||||
<button name="roll_suprise" type="roll" value=" &{template:default} {{name=**Suprise**}} {{Roll=[[d10+(@{wis_mod}[WIS MOD])]]}}" class="d10">Suprise</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- SAVING THROWS -->
|
||||
|
||||
<div class="saving section columnflex nowrap center">
|
||||
<label class="title">Saving Throws</label>
|
||||
<div class="rowflex nowrap">
|
||||
<label>blast</label>
|
||||
<input name="attr_blast" type="number" value="" placeholder="0">
|
||||
<button name="roll_blast" type="roll" value="&{template:default} {{name=**Blast** (Saving Throw)}} {{You attempt: [[1d20>@{blast}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
<div class="rowflex nowrap">
|
||||
<label>death</label>
|
||||
<input name="attr_death" type="number" value="" placeholder="0">
|
||||
<button name="roll_death" type="roll" value="&{template:default} {{name=**Death** (Saving Throw)}} {{You attempt: [[1d20>@{death}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>paralysis</label>
|
||||
<input name="attr_paralysis" type="number" value="" placeholder="0">
|
||||
<button name="roll_paralysis" type="roll" value="&{template:default} {{name=**Paralysis** (Saving Throw)}} {{You attempt: [[1d20>@{paralysis}]]}} " class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>poison</label>
|
||||
<input name="attr_poison" type="number" value="" placeholder="0">
|
||||
<button name="roll_poison" type="roll" value="&{template:default} {{name=**Poison** (Saving Throw)}} {{You attempt: [[1d20>@{poison}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>reflex</label>
|
||||
<input name="attr_reflex" type="number" value="" placeholder="0">
|
||||
<button name="roll_reflex" type="roll" value="&{template:default} {{name=**Reflex** (Saving Throw)}} {{You attempt: [[1d20>@{reflex}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>spells</label>
|
||||
<input name="attr_spells" type="number" value="" placeholder="0">
|
||||
<button name="roll_spells" type="roll" value="&{template:default} {{name=**Spells** (Saving Throw)}} {{You attempt: [[1d20>@{spells}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="note rowflex nowrap">
|
||||
<div class="d20"></div>
|
||||
<span>equal or greater</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- DUNGEON THROWS -->
|
||||
|
||||
<div class="dungeon section columnflex nowrap">
|
||||
<label class="title">Dungeon Throws</label>
|
||||
<div class="rowflex nowrap">
|
||||
<label class="short">climb</label>
|
||||
<input name="attr_climb" type="number" value="" placeholder="0">
|
||||
<button name="roll_climb" type="roll" value=" &{template:default} {{name=**Climb** (Dungeon Throw)}} {{You attempt: [[1d20>@{climb}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label class="short">force</label>
|
||||
<input name="attr_force" type="number" value="" placeholder="0">
|
||||
<button name="roll_force" type="roll" value=" &{template:default} {{name=**Force** (Dungeon Throw)}} {{You attempt: [[1d20>@{force}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label class="short">locks</label>
|
||||
<input name="attr_locks" type="number" value="" placeholder="0">
|
||||
<button name="roll_locks" type="roll" value=" &{template:default} {{name=**Locks** (Dungeon Throw)}} {{You attempt: [[1d20>@{locks}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label class="short">notice</label>
|
||||
<input name="attr_notice" type="number" value="" placeholder="0">
|
||||
<button name="roll_notice" type="roll" value=" &{template:default} {{name=**Notice** (Dungeon Throw)}} {{You attempt: [[1d20>(@{notice})]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label class="short">sneak</label>
|
||||
<input name="attr_sneak" type="number" value="" placeholder="0">
|
||||
<button name="roll_sneak" type="roll" value=" &{template:default} {{name=**Sneak** (Dungeon Throw)}} {{You attempt: [[1d20>@{sneak}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label class="short">traps</label>
|
||||
<input name="attr_traps" type="number" value="" placeholder="0">
|
||||
<button name="roll_traps" type="roll" value=" &{template:default} {{name=**Traps** (Dungeon Throw)}} {{You attempt: [[1d20>@{traps}]]}} {{( 1 is success, 0 is failure) }}" class="d20"></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IN SIX -->
|
||||
<div class="sixes section columnflex nowrap center">
|
||||
<label class="title">In Sixes Chances</label>
|
||||
<div class="rowflex nowrap spaced">
|
||||
<input name="attr_sixes1_name" type="text" style="width:60px;" placeholder="Name">
|
||||
<input name="attr_sixes1_info" type="text" style="width:120px;" placeholder="info">
|
||||
<input name="attr_sixes1" type="number" value="2" style="width: 25px;">
|
||||
<button name="roll_sixes1" type="roll" value="&{template:default} {{name=**@{sixes1_name}** (In Sixes)}} {{You attempt: [[1d6cs0cf0>@{sixes1}]] }} {{( 1 is success, 0 is failure) }}" class="d6"></button>
|
||||
</div>
|
||||
<div class="rowflex nowrap spaced">
|
||||
<input name="attr_sixes2_name" type="text" style="width:60px;" placeholder="Name">
|
||||
<input name="attr_sixes2_info" type="text" style="width:120px;" placeholder="info">
|
||||
<input name="attr_sixes2" type="number" value="2" style="width: 25px;">
|
||||
<button name="roll_sixes2" type="roll" value="&{template:default} {{name=**@{sixes2_name}** (In Sixes)}} {{You attempt: [[1d6cs0cf0>@{sixes2}]] }} {{( 1 is success, 0 is failure) }}" class="d6"></button>
|
||||
</div>
|
||||
<div class="rowflex nowrap spaced">
|
||||
<input name="attr_sixes3_name" type="text" style="width:60px;" placeholder="Name">
|
||||
<input name="attr_sixes3_info" type="text" style="width:120px;" placeholder="info">
|
||||
<input name="attr_sixes3" type="number" value="2" style="width: 25px;">
|
||||
<button name="roll_sixes3" type="roll" value="&{template:default} {{name=**@{sixes3_name}** (In Sixes)}} {{You attempt: [[1d6cs0cf0>@{sixes3}]] }} {{( 1 is success, 0 is failure) }}" class="d6"></button>
|
||||
</div>
|
||||
<div class="rowflex nowrap spaced">
|
||||
<input name="attr_sixes4_name" type="text" style="width:60px;" placeholder="Name">
|
||||
<input name="attr_sixes4_info" type="text" style="width:120px;" placeholder="info">
|
||||
<input name="attr_sixes4" type="number" value="2" style="width: 25px;">
|
||||
<button name="roll_sixes4" type="roll" value="&{template:default} {{name=**@{sixes4_name}** (In Sixes)}} {{You attempt: [[1d6cs0cf0>@{sixes4}]] }} {{( 1 is success, 0 is failure) }}" class="d6"></button>
|
||||
</div>
|
||||
<div class="note rowflex nowrap">
|
||||
<div class="d6"></div>
|
||||
<span>equal or lower</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- PROFICIENCIES -->
|
||||
|
||||
<div class="profs section columnflex nowrap center">
|
||||
<label class="title">proficiencies</label>
|
||||
<textarea name="attr_proficiencies" placeholder="proficiencies"></textarea>
|
||||
</div>
|
||||
|
||||
<!-- KNOWN SPELLS -->
|
||||
|
||||
<div class="k-spells section columnflex nowrap center">
|
||||
<label class="title">Spells Known</label>
|
||||
<textarea name="attr_known_spells" placeholder="Magic Missile"></textarea>
|
||||
</div>
|
||||
|
||||
<!-- CLASS FEATURES -->
|
||||
|
||||
<div class="class section columnflex nowrap center">
|
||||
<label class="title">Class Features</label>
|
||||
<div class="rowflex nowrap">
|
||||
<label>Expertise:</label>
|
||||
<input name="attr_expertise" type="text" placeholder="expertise">
|
||||
</div>
|
||||
<div class="rowflex nowrap">
|
||||
<label>Identify:</label>
|
||||
<input name="attr_identify" type="text" placeholder="identify">
|
||||
</div>
|
||||
<div class="rowflex nowrap">
|
||||
<label>Other:</label>
|
||||
<input name="attr_other" type="text" placeholder="other">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- languages -->
|
||||
|
||||
<div class="lang section columnflex nowrap center">
|
||||
<label class="title">Languages</label>
|
||||
<textarea name="attr_languages" placeholder="Common"></textarea>
|
||||
</div>
|
||||
|
||||
<!-- spells per day -->
|
||||
|
||||
<div class="spells-d section columnflex nowrap center">
|
||||
<label class="title">Spells per Day</label>
|
||||
<div class="rowflex nowrap">
|
||||
<div class="columnflex nowrap">
|
||||
<label>1st</label>
|
||||
<input name="attr_lvl1_spells" type="number" value="" class="ref" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label>2nd</label>
|
||||
<input name="attr_lvl2_spells" type="number" value="" class="ref" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label>3rd</label>
|
||||
<input name="attr_lvl3_spells" type="number" value="" class="ref" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label>4th</label>
|
||||
<input name="attr_lvl4_spells" type="number" value="" class="ref" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label>5th</label>
|
||||
<input name="attr_lvl5_spells" type="number" value="" class="ref" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label>6th</label>
|
||||
<input name="attr_lvl6_spells" type="number" value="" class="ref" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label>7th</label>
|
||||
<input name="attr_lvl7_spells" type="number" value="" class="ref" placeholder="0">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- encumberance -->
|
||||
|
||||
<div class="speed section columnflex nowrap center">
|
||||
<label class="title">Encumberance & Speed</label>
|
||||
<div class="rowflex nowrap center">
|
||||
<div class="columnflex nowrap">
|
||||
<label class="short">status</label>
|
||||
<input name="attr_status" type="number" value="" class="ref" placeholder="status">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label class="short">weight</label>
|
||||
<input name="attr_weight" type="number" value="" class="ref" placeholder="weight">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label style="margin-right:10px;">exploration</label>
|
||||
<input name="attr_exploration" type="number" value="" class="ref" placeholder="30" style="margin-left: 15px;">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label class="short">combat</label>
|
||||
<input name="attr_combat" type="number" value="" class="ref" placeholder="30">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label class="short">sprint</label>
|
||||
<input name="attr_sprint" type="number" value="" class="ref" placeholder="30">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- memorized spells -->
|
||||
|
||||
<div class="spells-m section columnflex nowrap center">
|
||||
<label class="title">Memorized Spells</label>
|
||||
<textarea name="attr_spells_memo" placeholder="Magic Missile, Mage Armor etc."></textarea>
|
||||
</div>
|
||||
|
||||
<!-- misc -->
|
||||
|
||||
<div class="misc section columnflex nowrap center">
|
||||
<label class="title">Miscellany</label>
|
||||
<textarea name="attr_misc" placeholder="Misc. notes"></textarea>
|
||||
</div>
|
||||
|
||||
<!-- EXP -->
|
||||
|
||||
<div class="exp section columnflex nowrap center">
|
||||
<label class="title">Experience Points</label>
|
||||
<div class="rowflex nowrap">
|
||||
<label>current</label>
|
||||
<input name="attr_xp" type="number" value="" placeholder="0">
|
||||
</div>
|
||||
<div class="rowflex nowrap">
|
||||
<label>next level</label>
|
||||
<input name="attr_xp_next" type="number" value="" placeholder="100">
|
||||
</div>
|
||||
<div class="rowflex nowrap">
|
||||
<label>character level</label>
|
||||
<input name="attr_level" type="number" value="1">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- --------------------------------------------------------------------------------- -->
|
||||
<!-- --------------------------- PAGE 2 ---------------------------------------------- -->
|
||||
<!-- --------------------------------------------------------------------------------- -->
|
||||
|
||||
<div class="tab-content tab2 pg2">
|
||||
|
||||
<!-- coin -->
|
||||
|
||||
<div class="coin section columnflex nowrap center">
|
||||
<label class="title">Coin</label>
|
||||
<div class="rowflex nowrap">
|
||||
<div class="columnflex nowrap">
|
||||
<label class="short">CP</label>
|
||||
<input name="attr_cp" type="number" value="" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label class="short">SP</label>
|
||||
<input name="attr_sp" type="number" value="" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label class="short">EP</label>
|
||||
<input name="attr_ep" type="number" value="" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label class="short">GP</label>
|
||||
<input name="attr_gp" type="number" value="" placeholder="0">
|
||||
</div>
|
||||
<div class="columnflex nowrap">
|
||||
<label class="short">PP</label>
|
||||
<input name="attr_pp" type="number" value="" placeholder="0">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- equipment -->
|
||||
|
||||
<div class="equip section columnflex nowrap center">
|
||||
<label class="title">Equipment</label>
|
||||
<fieldset class="repeating_eq">
|
||||
<div class="rowflex nowrap">
|
||||
<input name="attr_name" type="text" placeholder="name" style="width:30%;margin-right: 5px;">
|
||||
<input name="attr_info" type="text" placeholder="info" style="width: 67%;">
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- companions -->
|
||||
|
||||
<div class="companions section columnflex nowrap center">
|
||||
<label class="title">Companions</label>
|
||||
<fieldset class="repeating_companions">
|
||||
<div class="rowflex wrap">
|
||||
<input name="attr_name" type="text" placeholder="name" style="width: 55%;">
|
||||
<input name="attr_type" type="text" placeholder="type" style="width: 36%;margin-left: 10px;">
|
||||
<input name="attr_abilities" type="text" placeholder="abilities" style="width:100%;">
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- --------------------------------------------------------------------------------- -->
|
||||
<!-- --------------------------- PAGE 3 ---------------------------------------------- -->
|
||||
<!-- --------------------------------------------------------------------------------- -->
|
||||
|
||||
|
||||
<div class="tab-content tab3 pg3">
|
||||
|
||||
<!-- NPC main block -->
|
||||
<div class="npc-main section rowflex nowrap center">
|
||||
<div class="npc-main section columnflex nowrap center">
|
||||
<label>Name:</label>
|
||||
<input name="attr_character_name" type="text">
|
||||
</div>
|
||||
|
||||
<div class="npc-main section columnflex nowrap center">
|
||||
<label>HP</label>
|
||||
<div class="hp rowflex nowrap center middle">
|
||||
<div>
|
||||
<input name="attr_hp" type="number" value="" placeholder="10" style="margin-right: 15px;">
|
||||
</div>
|
||||
<div>
|
||||
<input name="attr_hp_max" type="number" value="" placeholder="10">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="npc-main section columnflex nowrap center">
|
||||
<label>AC:</label>
|
||||
<input name="attr_ac" type="number" placeholder="10">
|
||||
</div>
|
||||
|
||||
<div class="npc-main section columnflex nowrap center">
|
||||
<label>To Hit:</label>
|
||||
<input name="attr_to_hit" type="number" placeholder="10">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- NOTES -->
|
||||
<div class="notes section columnflex nowrap center">
|
||||
<label class="title">Notes</label>
|
||||
<textarea name="attr_notes"></textarea>
|
||||
</div>
|
||||
|
||||
<!-- duplicate of buttons -->
|
||||
<div class="columnflex nowrap center npc-buttons">
|
||||
<label class="title" style="width: 50px;">Init</label>
|
||||
<input name="attr_init_race" type="number" value="0" class="short">
|
||||
<button name="roll_init" type="roll" value=" &{template:default} {{name=**Initiative**}} {{Roll=[[d10+(@{wis_mod}[WIS MOD])+(@{init_race}[INIT BONUS])]]}} &{tracker}" class="d10">Init</button>
|
||||
<button name="roll_suprise" type="roll" value=" &{template:default} {{name=**Suprise**}} {{Roll=[[d10+(@{wis_mod}[WIS MOD])]]}}" class="d10">Suprise</button>
|
||||
<button name="roll_melee" type="roll" value=" &{template:default} {{name=**Attack(Melee/Thrown)**}} {{Attack=[[d20+(@{str_mod}[STR MOD]+@{to_hit}[TO HIT BONUS])]]}}">Melee</button>
|
||||
<button name="roll_ranged" type="roll" value=" &{template:default} {{name=**Attack(Ranged)**}} {{Attack=[[d20+(@{dex_mod}[DEX MOD]+@{to_hit}[TO HIT BONUS])]]}}">Ranged</button>
|
||||
</div>
|
||||
|
||||
<!-- dulicate of Attrs -->
|
||||
<div class="npc-attrs section columnflex nowrap" style="padding-top: 15px;">
|
||||
<label class="title">attributes</label>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Str</label>
|
||||
<input name="attr_str" type="number" value="" placeholder="10">
|
||||
<span name="attr_str_mod"></span>
|
||||
<button name="roll_str" type="roll" value="&{template:default} {{name= **Strength** (Test)}} {{Roll= [[1d20+(@{str_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Dex</label>
|
||||
<input name="attr_dex" type="number" value="" placeholder="10">
|
||||
<span name="attr_dex_mod"></span>
|
||||
<button name="roll_dex" type="roll" value="&{template:default} {{name= **Dexterity** (Test)}} {{Roll= [[1d20+(@{dex_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Con</label>
|
||||
<input name="attr_con" type="number" value="" placeholder="10">
|
||||
<span name="attr_con_mod"></span>
|
||||
<button name="roll_con" type="roll" value="&{template:default} {{name= **Constitution** (Test)}} {{Roll= [[1d20+(@{con_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Int</label>
|
||||
<input name="attr_int" type="number" value="" placeholder="10">
|
||||
<span name="attr_int_mod"></span>
|
||||
<button name="roll_int" type="roll" value="&{template:default} {{name= **Intelligence** (Test)}} {{Roll= [[1d20+(@{int_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Wis</label>
|
||||
<input name="attr_wis" type="number" value="" placeholder="10">
|
||||
<span name="attr_wis_mod"></span>
|
||||
<button name="roll_wis" type="roll" value="&{template:default} {{name= **Wisdom** (Test)}} {{Roll= [[1d20+(@{wis_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
|
||||
<div class="rowflex nowrap">
|
||||
<label>Cha</label>
|
||||
<input name="attr_cha" type="number" value="" placeholder="10">
|
||||
<span name="attr_cha_mod"></span>
|
||||
<button name="roll_cha" type="roll" value="&{template:default} {{name= **Charisma** (Test)}} {{Roll= [[1d20+(@{cha_mod})]] }} {{ d20 + mod vs DC }}" class="d20"></button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<!-- --------------------------------------------------------------------------------- -->
|
||||
<!-- --------------------------- Sheet workers --------------------------------------- -->
|
||||
<!-- --------------------------------------------------------------------------------- -->
|
||||
|
||||
<input name="attr_str_mod" type="hidden" value="0">
|
||||
<input name="attr_dex_mod" type="hidden" value="0">
|
||||
<input name="attr_con_mod" type="hidden" value="0">
|
||||
<input name="attr_wis_mod" type="hidden" value="0">
|
||||
<input name="attr_int_mod" type="hidden" value="0">
|
||||
<input name="attr_cha_mod" type="hidden" value="0">
|
||||
<input name="attr_rest" type="hidden" value="0">
|
||||
|
||||
<script type="text/worker">
|
||||
|
||||
const int = score => parseInt(score, 10) || 0;
|
||||
|
||||
|
||||
const stats = ["str", "dex", "con", "wis", "int", "cha"];
|
||||
stats.forEach(stat => {
|
||||
on(`change:${stat}`, () => {
|
||||
getAttrs([stat], values => {
|
||||
const stat_base = int(values[stat]);
|
||||
//console.log(stat_base);
|
||||
let stat_mod = 0;
|
||||
if (stat_base >= 19) stat_mod = "+4";
|
||||
else if (stat_base >= 18) stat_mod = "+3";
|
||||
else if (stat_base >= 16) stat_mod = "+2";
|
||||
else if (stat_base >= 14) stat_mod = "+1";
|
||||
else if (stat_base >= 12) stat_mod = "+0";
|
||||
else if (stat_base >= 8) stat_mod = "-1";
|
||||
else if (stat_base >= 6) stat_mod = "-2";
|
||||
else stat_mod = "-3";
|
||||
|
||||
setAttrs({
|
||||
[`${stat}_mod`]: stat_mod
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
/*
|
||||
on(`change:con`, () => {
|
||||
getAttrs("con_mod", value => {
|
||||
const con = int(value["con_mod"]);
|
||||
console.log(con);
|
||||
let rest = 0;
|
||||
if (con >= 17) rest = "1d12";
|
||||
else if (con >= 15) rest = "1d10";
|
||||
else if (con >= 13) rest = "1d8";
|
||||
else if (con >= 9) rest = "1d6";
|
||||
else if (con >= 7) rest = "1d4";
|
||||
else if (con >= 5) rest = "1d2";
|
||||
else if (con >= 3) rest = "1";
|
||||
else rest = "1";
|
||||
|
||||
setAttrs({
|
||||
rest : rest
|
||||
});
|
||||
});
|
||||
});
|
||||
*/
|
||||
|
||||
</script>
|
||||
|
After Width: | Height: | Size: 196 KiB |
|
After Width: | Height: | Size: 40 KiB |
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 27 KiB |
|
After Width: | Height: | Size: 211 KiB |
|
After Width: | Height: | Size: 156 KiB |
|
After Width: | Height: | Size: 70 KiB |
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"html": "ambition_avarice.html",
|
||||
"css": "ambition_avarice.css",
|
||||
"authors": "Andreas J.",
|
||||
"roll20userid": "1223200",
|
||||
"preview": "ambition_avarice_preview.png",
|
||||
"instructions": "Character Sheet for 'Ambition & Avarice 1st Edition' ttrpg by Chubby Funster."
|
||||
}
|
||||