diff --git a/D6StarWars/CHANGELOG.md b/D6StarWars/CHANGELOG.md index 0a9a1d1d82..8d0c9d9b78 100644 --- a/D6StarWars/CHANGELOG.md +++ b/D6StarWars/CHANGELOG.md @@ -1,3 +1,21 @@ +### Version 2.41 (2021-05): +- fix broken styles + +### Version 2.40 (2021-05): +- refactor sheet to be able to use the new Roll20 Sheet framework +- Feature: Skills, Species, Force Powers auto-suggestions, suggest relevant names as you start typing +- more code cleanup + +### Version 2.34 (2021-05): +- Enhance Player Core info section's layout +- Reformats Player Secondary Info section +- Enhance Attributes & Skills section's layout +- Enhance Weapons & Armors section's layout +- Enhance Force section's layout +- FIX: cleaning up HTML code +- FIX: removes invalid CSS code +- FIX: Resist Pain effect works as expected + ### Version 2.33 (2021-04-06): - remove duplicated control force power name field - fix force power section width diff --git a/D6StarWars/D6StarWars.css b/D6StarWars/D6StarWars.css index f4c806b7a7..dcc92896d7 100644 --- a/D6StarWars/D6StarWars.css +++ b/D6StarWars/D6StarWars.css @@ -8,11 +8,23 @@ color:white; } -.charsheet .sheet-version::after { - content: '2.32'; +.charsheet div.version-top{ + position: absolute; + right: 5px; + top: 30px; } -.charsheet label, h1, h2, h3{ +.charsheet div.logo{ + display: inline-block; + position: absolute; + left: 150px; + padding-bottom: 50px; +} +.charsheet img.logo{ + max-height: 80px; +} + +.charsheet :is(label, h1, h2, h3, h4, h5){ color:white; } @@ -25,94 +37,98 @@ resize:none; } -.charsheet .sheet-toppad{ +.charsheet :is(p, .txtcenter){ + text-align: center; +} + +.charsheet .toppad{ padding:2px; } -.charsheet .sheet-section{ +.charsheet .section{ border-top: 5px dotted white; padding:10px; width: 100%; } -.charsheet .sheet-shipinfo span { - display: inline-block; - margin: 5px 10px 5px 10px; -} -.charsheet .sheet-flex-box{ +.charsheet .flex-box{ display: flex; } -.charsheet .sheet-flex-col{ +.charsheet .flex-col{ flex: 1; } -.charsheet input[type=number].sheet-pipnumber{ - width:33px; + +.charsheet input:not(:valid) { + background-color: #ffcccb; } -.charsheet input[type=number].sheet-smallnumber{ - width:40px; -} - -.charsheet input[type=number].sheet-smallshortnumber{ - width:40px; +.charsheet input[type=number].p60{ + width: 60px; + text-align: center; padding-top:2px; padding-bottom:2px; display: inline-block; float:right; } -.charsheet input[type=number].sheet-shortnumber{ - padding-top:2px; - padding-bottom:2px; + +.charsheet .p90{ + width: 90px; } -.charsheet input[type=number].sheet-mediumnumber{ +.charsheet input[type=number].mediumnumber{ width:60px; } -.charsheet input[type=number].sheet-credits, -.charsheet span.sheet-credits { +.charsheet input[type=number].credits, +.charsheet span.credits { width: 80px; padding-top: 2px; padding-bottom: 2px; + text-align: center; +} +.charsheet input[type=number].totalcredits{ + width: 60%; + float: right; } -.charsheet input[type=text].sheet-smalltext{ + +.charsheet input[type=text].smalltext{ width:60px; - margin:0px; + margin:0; } -.charsheet input[type=text].sheet-mediumtext{ +.charsheet input[type=text].mediumtext{ width:80px; - margin:0px; + margin:0; } -.charsheet input[type=text].sheet-shorttext{ +.charsheet input[type=text].reduce-padd{ padding-top:2px; padding-bottom:2px; } -.charsheet input[type=text].sheet-skilltext{ +.charsheet input[type=text].skilltext{ width:115px; padding:2px; margin-left:3px; } -.charsheet .sheet-right{ +.charsheet .right{ float:right; } -.charsheet .sheet-left{ +.charsheet .left{ float:left; } -.charsheet .sheet-bold{ +.charsheet .bold{ font-size: 12pt; margin-bottom: 10px; } -.charsheet span.sheet-num { +.charsheet span.num { background: white; color: black; border-radius: 2px; @@ -123,143 +139,163 @@ } -.charsheet .sheet-tdborder{ +.charsheet .tdborder{ border: 2px solid white; vertical-align:top; - width:330px; padding:5px; margin: 5px; } -.charsheet .sheet-rightmargin{ - margin-right:0px; +.charsheet .rightmargin{ + margin-right:0; } -.charsheet select.sheet-smallselect{ +.charsheet select.smallselect{ width:60px; height:25px; padding-top:2px; padding-bottom:2px; - margin:0px; + margin:0; display: inline-block; float:right; + text-align: center; } -.charsheet select.sheet-mediumselect{ /*Used for Wound levels dropdown select*/ +.charsheet select.mediumselect{ /*Used for Wound levels dropdown select*/ width:100px; height:25px; padding-top:2px; padding-bottom:2px; - margin:0px; + margin:0; display: inline-block; float:right; } -.charsheet label.sheet-areaLabel{ - margin:0px; +.charsheet label.areaLabel{ + margin:0; } + +.charsheet input[type="text"].60p{ + width: 60%; +} + +.charsheet .lineblck{ + display:inline-block; +} + /*-----------------------------------------*/ /*----------Roll Buttons classes-----------*/ -.charsheet button[type=roll].sheet-d6-dice::before { /*new die changes die roller to d6*/ - font-family: 'dicefontd6',arial; +.charsheet button[type=roll].d6-dice::before { /*new die changes die roller to d6*/ + font-family: 'dicefontd6', arial, sans-serif; content: 'F '; color: red; } -.charsheet .sheet-forcebutton{ +.charsheet .forcebutton{ width:90px; padding-right:5px; } -.charsheet .sheet-redtxt{ +.charsheet .redtxt{ font-size: 8px; color: red; - font-family: 'Arial'; + font-family: 'Arial', sans-serif; } /* writing the letter 't' with this font shows an impact icon signifying physical damage */ -.charsheet button.sheet-physical{ +.charsheet button.physical{ font-family: 'Pictos Custom'; } /* writing the letter 'e' with this font shows e bolt icon signifying energy damage */ -.charsheet button.sheet-energy{ +.charsheet button.energy{ font-family: 'Pictos'; } +.charsheet span.physical{ + font-family: 'Pictos Custom'; + font-size: large; + content: 't'; +} +/* writing the letter 'e' with this font shows e bolt icon signifying energy damage */ +.charsheet span.energy{ + font-family: 'Pictos'; + font-size: large; + content: 'e'; +} + /*-------------------------------------------*/ /*-----Main Settings and hide classes--------*/ /*-----------(from GUMSHOE Official)---------*/ - -.charsheet .sheet-main-settings .sheet-input-row label { +.charsheet .main-settings .container{ + width: 850px; +} +.charsheet .main-settings .input-row label { display: inline-block; width: auto; } - -.charsheet .sheet-main-settings .sheet-input-row input { + +.charsheet .main-settings .input-row input { margin-right: 30px; } -.charsheet .sheet-main-settings .sheet-input-row select { +.charsheet .main-settings .input-row select { width: 45%; margin-right: 15px; } -input.sheet-main-options.sheet-options-flag + span,/*displays the cog icon*/ -input[type=radio]:checked ~ .sheet-master-container input.sheet-options-flag + span { +.charsheet input.main-options.options-flag + span,/*displays the cog icon*/ +.charsheet input[type=radio]:checked ~ .master-container input.options-flag + span { font-family: pictos; font-style: normal; } -div.sheet-main-settings { +.charsheet div.main-settings { display: none; position: relative; margin-left: 0; } -input.sheet-options-flag:checked ~ div.sheet-main-settings { +.charsheet input.options-flag:checked ~ div.main-settings { display: inline-block; width: 600px; height: 500px; } -input.sheet-selector-switch , -input.sheet-options-flag:checked ~ div.sheet-main-container { +.charsheet input.selector-switch , +.charsheet input.options-flag:checked ~ div.main-container { display: none; } /* all hide options using option menu checkboxes*/ -.sheet-master-container .sheet-pc, -.sheet-master-container .sheet-npc, -.sheet-master-container .sheet-ship, -.sheet-master-container .sheet-shop-inventory { +.charsheet .master-container :is(.pc, .npc, .ship, .shop-inventory) { display: none; } -input.sheet-toggle[value="0"] ~ .sheet-master-container .sheet-pc, -input.sheet-toggle[value="1"] ~ .sheet-master-container .sheet-npc, -input.sheet-toggle[value="2"] ~ .sheet-master-container .sheet-ship, -input.sheet-toggle[value="3"] ~ .sheet-master-container .sheet-shop-inventory { +.charsheet input.toggle[value="0"] ~ .master-container .pc, +.charsheet input.toggle[value="1"] ~ .master-container .npc, +.charsheet input.toggle[value="2"] ~ .master-container .ship, +.charsheet input.toggle[value="3"] ~ .master-container .shop-inventory { display: block; } -input.sheet-toggle[value="2"] ~ .sheet-master-container .sheet-ship.sheet-shipblock{ +.charsheet input.toggle[value="2"] ~ .master-container .ship.shipblock{ display: grid; } -input.sheet-toggle[value="2"] ~ .sheet-master-container .sheet-ship.sheet-shipheader{ +.charsheet input.toggle[value="2"] ~ .master-container .ship.shipheader{ display: flex; } -input.sheet-background:checked ~ .sheet-master-container .sheet-background-hide, -input.sheet-force:checked ~ .sheet-master-container .sheet-force-hide, -input.sheet-equipment:checked ~ .sheet-master-container .sheet-equipment-hide, -input.sheet-gmroll:checked ~ .sheet-master-container .sheet-gmroll-hide, -input.sheet-rollmod:checked ~ .sheet-master-container .sheet-rollmod, -input.sheet-rollmod:not(:checked) ~ .sheet-master-container .sheet-rollmod-no, -input.sheet-cptracker:checked ~ .sheet-master-container .sheet-cptracker-hide, -input.sheet-credittracker:checked ~ .sheet-master-container .sheet-credittracker-hide { +.charsheet input.background:checked ~ .master-container .background-hide, +.charsheet input.force:checked ~ .master-container .force-hide, +.charsheet input.equipment:checked ~ .master-container .equipment-hide, +.charsheet input.gmroll:checked ~ .master-container .gmroll-hide, +.charsheet input.rollmod:checked ~ .master-container .rollmod, +.charsheet input.rollmod:not(:checked) ~ .master-container .rollmod-no, +.charsheet input.cptracker:checked ~ .master-container .cptracker-hide, +.charsheet input.credittracker:checked ~ .master-container .credittracker-hide { display: none; } @@ -267,35 +303,49 @@ input.sheet-credittracker:checked ~ .sheet-master-container .sheet-credittracker /*------------- General Styles---------------*/ /*------------(from GUMSHOE Official)--------*/ -input[type=number]::-webkit-inner-spin-button {} +.charsheet input[type=number].txtfield::-webkit-inner-spin-button, +.charsheet input[type=number].txtfield::-webkit-outer-spin-button { + -webkit-appearance: none; + margin: 0; +} +.charsheet input[type=number].txtfield { + -moz-appearance: textfield; +} -.sheet-master-container { +.charsheet .master-container { position: relative; padding: 0; display: inline-block; background-image: url(https://cdn.pixabay.com/photo/2015/09/29/15/12/stars-964022_960_720.png); /*black space with tiny stars*/ background-color: black; background-repeat: repeat; + width: 860px; + top: -10px; } -.sheet-container { +.charsheet .container { padding: 5px; margin-left: -25px; position: relative; } -.sheet-main-container { +.charsheet .main-container { display: inline-block; padding-top: 75px; margin-left: 0; } +.charsheet div.footer{ + text-align: center; + padding-top:10px; +} + /*-------------------------------------------*/ /*------------- Options Toggles--------------*/ /*-----------(from GUMSHOE Official)---------*/ -input.sheet-options-flag, -input.sheet-options-flag + span { +.charsheet input.options-flag, +.charsheet input.options-flag + span { position: absolute; top: 2px; right: 2px; @@ -303,13 +353,13 @@ input.sheet-options-flag + span { height: 15px; } -input.sheet-options-flag { +.charsheet input.options-flag { z-index: 99; opacity: 0; } -input.sheet-options-flag + span { - margin-top: 0px; +.charsheet input.options-flag + span { + margin-top: 0; display: none; white-space: nowrap; line-height: 15px; @@ -318,7 +368,7 @@ input.sheet-options-flag + span { cursor: pointer; } -input.sheet-options-flag.sheet-main-options { +.charsheet input.options-flag.main-options { width: 30px; height: 30px; top: 20px; @@ -326,7 +376,7 @@ input.sheet-options-flag.sheet-main-options { z-index: 3; } -input.sheet-options-flag.sheet-main-options + span { +.charsheet input.options-flag.main-options + span { width: 30px; height: 30px; top: 20px; @@ -338,80 +388,466 @@ input.sheet-options-flag.sheet-main-options + span { display: block; } -input.sheet-options-flag.sheet-main-options:hover + span { +.charsheet input.options-flag.main-options:hover + span { opacity: 1; } -input.sheet-options-flag:checked + span { +.charsheet input.options-flag:checked + span { color: white; display: block; } -input.sheet-selector-switch:checked ~ .sheet-master-container .sheet-content .sheet-options, -input.sheet-selector-switch:checked ~ .sheet-master-container .sheet-content .sheet-options-flag:checked ~ .sheet-display { +.charsheet input.selector-switch:checked ~ .master-container .content .options, +.charsheet input.selector-switch:checked ~ .master-container .content .options-flag:checked ~ .display { display: none; } -input.sheet-selector-switch:checked ~ .sheet-master-container .sheet-content .sheet-options-flag:checked ~ .sheet-options { +.charsheet input.selector-switch:checked ~ .master-container .content .options-flag:checked ~ .options { display: block; } +.charsheet div.sheettype-title{ + position:absolute; + right: 5px; + top:-35px; +} +/*-------------------------------------------*/ +/*--------------- PC Section-----------------*/ + +.charsheet .physical-params { + display: flex; + margin-top: 25px; +} + +.charsheet .physical-params label { + text-align: center; +} + +.charsheet .physical-params input { + display: block; + width: 100% !important; + text-align: center; +} + +.charsheet .custom-roll-table { + display: table; + width: 100%; +} + +.charsheet .custom-roll-table button.d6-dice { + width: 35px; + height: 18px; +} +.charsheet textarea.description{ + height:6em; + width:97% +} +.charsheet textarea.description-phys{ + height: 6em; + width: 97%; + margin-top: 3px; +} +.charsheet textarea.specabilities{ + width: 95%; + height: 12em; +} + +.charsheet th.init{ + vertical-align: top; +} +.charsheet td.init{ + padding-left: 6px; + padding-bottom: 40px; +} +.charsheet label input[type="number"].init, +.charsheet input[type="number"].init{ + width: 33px; +} + +/*-------------------------------------------*/ +/*--------------- NPC Section-----------------*/ +.charsheet div.section.npc div.first-col{ + display: inline-block; +} +.charsheet div.section.npc .npcname{ + width: 65%; +} +.charsheet label.wound{ + text-decoration: underline; +} +.charsheet select.wound{ + width: 125px; +} + +/* Attributes */ +.charsheet .attributes { + border: 2px solid white; + margin: 5px; + padding: 10px; +} + +.charsheet .attribute { + display: flex; + margin-bottom: 5px; +} + +/* Unified Dice */ +.charsheet .unified-dice { + width: 32px; + height: 34px; + line-height: 34px; +} +.charsheet .unified-dice-text { + flex-grow: 1; + height: 40px; + margin: 0; + padding: 0 5px; + font-size: 20px; + vertical-align: top; + line-height: 40px; +} + +.charsheet .unified-dice-roll { +} + +.charsheet button[type=roll].unified-dice-roll { + margin: 0; +} + +.charsheet input[type="number"].unified-dice-input { + font-size: large; + font-weight: bold; + text-align: center; + width: 46px; + padding: 2px 4px; +} + +.charsheet .unified-dice-middle { + display: inline-flex; + width: 32px; + height: 40px; + padding: 0 2px; + line-height: 40px; + font-size: 1.6em; + vertical-align: top; + font-weight: bold; +} + +.charsheet input[type="number"].unified-dice-pip { + font-size: large; + font-weight: bold; + text-align: center; + width: 46px; + padding: 2px 4px; +} + +.charsheet .attributes button[type=roll].unified-dice-roll { + margin: 0 5px 0 0; +} + +/* Skill */ +.charsheet .skill { + display: flex; + height: 28px; + margin: 4px 0; +} +.charsheet .skill * { + height: 28px; + line-height: 26px; +} +.charsheet .skill input[type="text"]{ + flex-grow: 1; + width: inherit; + margin-right: 5px; +} + +.charsheet .skill label { + padding: 0 1px; +} + +.charsheet .skill .unified-dice-text { + display: inline-flex; + width: calc(100% - 223px); + height: 28px; + font-size: medium; + font-weight: normal; + vertical-align: top; + line-height: 28px; +} + +.charsheet .skill button[type=roll].unified-dice-roll { + width: 32px; + height: 24px; + padding-top: 0; +} + +.charsheet .skill input[type="number"].unified-dice-input { + width: 46px; + height: 28px; + font-size: inherit; + text-align: center; +} + +.charsheet .skill .unified-dice-middle { + display: inline-flex; + width: 25px; + height: 28px; + margin: 0 2px; + padding-left: 4px; + padding-right: 3px; + font-size: medium; + vertical-align: top; + line-height: 28px; +} + +.charsheet .repcontrol { + height: 28px; + margin-top: 10px; +} + +.charsheet .skill input[type="number"].unified-dice-pip { + display: inline-flex; + width: 46px; + height: 28px; + font-size: inherit; + text-align: center; +} + + +.charsheet .redtxt { + bottom: -3px; + right: 5px; +} + + +/* Edit Mode */ +.charsheet .editmode .skill { + margin: 4px 36px 4px 34px +} + +.charsheet .editmode :is(.unified-dice-roll, .unified-dice-input, .unified-dice-middle, .unified-dice-pip) { + display: none !important; +} + +.charsheet .editmode .unified-dice-text { + width: 100% !important; +} +.charsheet .editmode .armor.sheet-row:not(:first-of-type) .cell:not(:first-of-type), +.charsheet .editmode .weapon.sheet-row:not(:first-of-type) .cell:not(:first-of-type) { + display: none; +} +.charsheet .editmode .armor.sheet-row:not(:first-of-type) .cell:first-of-type, +.charsheet .editmode .weapon.sheet-row:not(:first-of-type) .cell:first-of-type { + width: 100%; +} +.charsheet .force .editmode .skill input[type=checkbox] { + display: none; +} + + +.charsheet .overflow-auto { + overflow: auto; + padding-top: 15px; + padding-bottom: 10px; +} + +/* Weapons & Armors */ +.charsheet .armor.sheet-row, +.charsheet .weapon.sheet-row { + display: flex; + width: 100%; +} +.charsheet :not(input.gmroll:checked) .weapon.sheet-row , +.charsheet :not(input.gmroll:checked) .armor.sheet-row { + width: 866px; +} +.charsheet .armor.sheet-row:first-of-type .cell, +.charsheet .weapon.sheet-row:first-of-type .cell { + height: 36px; + border-bottom: 5px solid white; +} +.charsheet .armor.sheet-row:first-of-type .cell-4, +.charsheet .weapon.sheet-row:first-of-type .cell-4 { + vertical-align: bottom; +} +.charsheet .cell { + display: inline-block; + margin: 0 4px; + text-align: center; +} +.charsheet .cell:first-of-type { + margin-left: 0; +} +.charsheet .cell:last-of-type { + margin-right: 0; +} +.charsheet .armor.sheet-row:first-of-type .cell, +.charsheet .weapon.sheet-row:first-of-type .cell { + vertical-align: top; + line-height: 36px; + font-weight: bold; +} +.charsheet .weapon.sheet-row:first-of-type .cell.cell-4 { + line-height: inherit; +} +.charsheet .cell-name { + min-width: 50px; + flex-grow: 1; +} +.charsheet .cell-name .unified-dice-text { + width: 100%; +} +.charsheet .cell-dice { + width: 205px; +} +.charsheet :not(input.gmroll:checked) .cell-dice { + width: 208px; +} +.charsheet .cell-1 { + width: 46px; +} +.charsheet .cell-2 { + width: 98px; +} +.charsheet :not(input.gmroll:checked) .cell-2 { + width: 92px; +} +.charsheet .cell-4 { + width: 210px; +} +.charsheet .cell-4 .part { + display: inline-block; + width: 46px; +} +.charsheet .cell-5 { + width: 219px; +} + +.charsheet .repcontainer[data-groupname="repeating_weapons"] > .repitem input[type="text"].name, +.charsheet .repcontainer[data-groupname="repeating_armors"] > .repitem input[type="text"].name{ + width: 98px; +} +.charsheet .repcontainer[data-groupname="repeating_weapons"] > .repitem input[type="number"].40px, +.charsheet .repcontainer[data-groupname="repeating_armors"] > .repitem input[type="number"].40px{ + width: 40px; +} + +/* Force */ +.charsheet .force .skill .unified-dice-text { + width: calc(100% - 139px); +} + +.charsheet .force .skill input[type=checkbox], +.charsheet .powers input[type=checkbox] { + display: inline-block; + height: 28px; + width: 44px; +} +.charsheet .force-powers-description { + width: 100%; + height: 14em; + resize: vertical; +} +.charsheet table.powers { + width: 100%; +} +.charsheet table.powers td { + text-align: end; +} +.charsheet .force-hide .weapon.sheet-row { + width: 100%; +} +.charsheet :not(input.gmroll:checked) .force-hide .weapon.sheet-row { + width: 100%; +} +.charsheet .force-hide .weapon .cell.cell-name { + width: calc(100% - 418px); +} + + +/* Equipment & Backgorund */ + +.charsheet div.section.equipment-hide textarea{ + height: 7em; + width: 96%; +} + +.charsheet div.section.backgorund-hide td.33p{ + width: 33.33%; +} + + +/* Char point & credit tracking */ + + +.charsheet .repcontainer[data-groupname="repeating_cptable"] > .repitem div, +.charsheet .repcontainer[data-groupname="repeating_credittable"] > .repitem div{ + padding-top: 8px; +} +.charsheet .repcontainer[data-groupname="repeating_cptable"] > .repitem input[type="text"], +.charsheet .repcontainer[data-groupname="repeating_credittable"] > .repitem input[type="text"]{ + width:80%; +} +.charsheet .repcontainer[data-groupname="repeating_credittable"] > .repitem input[type="number"]{ + width:100px; +} /*-------------------------------------------*/ /*------------- Ship Section-----------------*/ -div.sheet-ship .sheet-wborder{ +.charsheet .shipinfo span { + display: inline-block; + margin: 5px 10px 5px 10px; +} + +.charsheet div.ship .wborder{ border: 2px solid white; padding: 5px; } -div.sheet-shipheader{ +.charsheet div.shipheader{ display: flex; justify-content: center; flex-flow: row nowrap; } -div.sheet-shipheader span:nth-child(1) input[type="text"]{ +.charsheet div.shipheader span:nth-child(1) input[type="text"]{ width: 300px; } -div.sheet-shipheader span:nth-child(2) input[type="text"]{ - width: 150px; -} -div.sheet-shipheader span:nth-child(3) input[type="text"]{ +.charsheet div.shipheader span:nth-child(2) input[type="text"], +.charsheet div.shipheader span:nth-child(3) input[type="text"]{ width: 150px; } -div.sheet-shipblock{ +.charsheet div.shipblock{ padding: 5px; display: grid; grid-template-columns: 3fr 7fr; - grid-template-rows: 4fr 2fr 4fr 4fr 2fr 1fr; grid-template-areas: "price perf " "price sensor " "price sensor " "price hyperdrive" "consume hyperdrive" "consume dura "; - height: 550px; } -div.sheet-shipblock div.sheet-price{ +.charsheet div.shipblock div.price{ grid-area: price; flex-flow: column nowrap; justify-content: space-between; } -div.sheet-shipblock div.sheet-price span{ +.charsheet div.shipblock div.price span{ width: 100px; } -div.sheet-shipblock div.sheet-price div{ +.charsheet div.shipblock div.price div{ display: flex; flex-flow: column nowrap; justify-content: space-between; } -div.sheet-shipblock div.sheet-priceblock div.sheet-flex-row{ +.charsheet div.shipblock div.priceblock div.flex-row{ flex-flow: row nowrap; justify-content: space-around; margin: 3px; @@ -419,47 +855,56 @@ div.sheet-shipblock div.sheet-priceblock div.sheet-flex-row{ /* Performance */ -div.sheet-shipblock div.sheet-perf{ +.charsheet div.shipblock div.perf{ grid-area: perf; padding: 5px; } -div.sheet-shipblock div.sheet-perf .sheet-medium, -div.sheet-shipblock div.sheet-sensor .sheet-medium, -div.sheet-shipblock div.sheet-hyperdrive input[type="text"], -div.sheet-shipblock div.sheet-price input[type="text"]{ +.charsheet div.shipblock div.perf .medium, +.charsheet div.shipblock div.sensor .medium, +.charsheet div.shipblock div.hyperdrive input[type="text"], +.charsheet div.shipblock div.price input[type="text"], +{ width: 80px; } -div.sheet-shipblock div.sheet-perf label:not(.sheet-title){ +.charsheet div.shipblock div.perf label:not(.title){ font-size: 0.8em; } -div.sheet-shipblock div.sheet-perf div.sheet-perf, -div.sheet-shipblock div.sheet-perf-block div.sheet-flex-col{ +.charsheet div.shipblock div.perf div.perf, +.charsheet div.shipblock div.perf-block div.flex-col{ display: flex; flex-flow: column nowrap; + border-width: 3px 0 0 0; + border-style: solid; + border-color: transparent; + padding-top: 5px; } -div.sheet-shipblock div.sheet-perf div.sheet-perf-block{ +.charsheet div.shipblock div.perf div.perf-block{ display: flex; flex-flow: row nowrap; justify-content: space-between; padding: 5px; } +.charsheet div.shipblock div.perf-block div.flex-col.wborder { + border-width: 3px; + border-color: white; +} /* Sensors */ -div.sheet-shipblock div.sheet-sensor{ +.charsheet div.shipblock div.sensor{ grid-area: sensor; border: 2px solid white; } -div.sheet-shipblock div.sheet-sensor div.sheet-flex-row{ +.charsheet div.shipblock div.sensor div.flex-row{ display: flex; flex-flow: row nowrap; } -div.sheet-shipblock div.sheet-sensor div.sheet-grid{ +.charsheet div.shipblock div.sensor div.grid{ display: grid; grid-template-columns: repeat(5, 1fr); grid-template-rows: repeat(3, 1fr); @@ -469,24 +914,24 @@ div.sheet-shipblock div.sheet-sensor div.sheet-grid{ } /* Hyperdrive */ -div.sheet-shipblock div.sheet-hyperdrive{ +.charsheet div.shipblock div.hyperdrive{ grid-area: hyperdrive; display: flex; flex-flow: column nowrap; } -div.sheet-shipblock div.sheet-hyperdrive div{ +.charsheet div.shipblock div.hyperdrive div{ display: flex; flex-flow: row nowrap; font-size: 0.8em; } -div.sheet-shipblock div.sheet-hyperdrive .sheet-crew{ +.charsheet div.shipblock div.hyperdrive .crew{ display: flex; flex-flow: column nowrap; } -div.sheet-shipblock div.sheet-hyperdrive .sheet-hyper-grid{ +.charsheet div.shipblock div.hyperdrive .hyper-grid{ display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(4, 1fr); @@ -495,34 +940,82 @@ div.sheet-shipblock div.sheet-hyperdrive .sheet-hyper-grid{ width: 440px; } -div.sheet-shipblock div.sheet-hyper-grid label{ +.charsheet div.shipblock div.hyper-grid label{ width: 110px; } -div.sheet-shipblock div.sheet-hyperdrive input[type="text"]{ +.charsheet div.shipblock div.hyperdrive input[type="text"]{ height: 22px; } -div.sheet-shipblock div.sheet-consume{ +.charsheet div.shipblock div.consume{ grid-area: consume; } -div.sheet-shipblock div.sheet-dura{ +.charsheet div.shipblock div.dura{ grid-area: dura; display: grid; grid-template-rows: 1fr 1fr; grid-template-columns: 1fr 1fr 1fr; } -div.sheet-shipblock div.sheet-dura label{ +.charsheet div.shipblock div.dura label{ width:80px; } -div.sheet-section.sheet-ship div.sheet-other{ +.charsheet div.section.ship div.other{ margin-bottom: 10px; } +/* Ship Weapons */ + +.charsheet .repcontainer[data-groupname="repeating_shipweapon"] > .repitem { + border: 2px solid white; + margin-bottom: 5px; + padding: 5px; + + display: grid; + grid-template-areas: "label value"; + grid-template-columns: 1fr 3fr +} + +.charsheet .repcontainer[data-groupname="repeating_shipweapon"] > .repitem .range { + display: inline-block; + width: 60px; + text-align: center; + border: none; +} +.charsheet .repcontainer[data-groupname="repeating_shipweapon"] > .repitem div{ + margin-bottom:10px; +} +.charsheet .repcontainer[data-groupname="repeating_shipweapon"] > .repitem span.range{ + margin-left: 15px; +} + +/* Generic Ship & Vehicle section */ + +.charsheet div.section.ship label{ + padding-top: 4px; + padding-bottom: 4px; + +} +.charsheet div.section.ship input[type="text"]{ + width: 95%; + padding-bottom:8px; +} +.charsheet div.section.ship textarea{ + width: 97%; + height: 17em; +} + +/* misc sheet styling */ + +.charsheet input[type=number].40px{ + width: 40px; +} + + /*-------------------------------------------*/ /*------------- Roll Templates---------------*/ @@ -571,7 +1064,7 @@ div.sheet-section.sheet-ship div.sheet-other{ /* alt template colors */ .sheet-rolltemplate-swd6 .sheet-container.sheet-color-green { --header-bg-color: #008000; -}rgba(204, 0, 0,1) +} .sheet-rolltemplate-swd6 .sheet-container.sheet-color-red { --header-bg-color: rgba(204, 0, 0,1); } diff --git a/D6StarWars/D6StarWars.html b/D6StarWars/D6StarWars.html index f38844916a..fd975aa3fb 100644 --- a/D6StarWars/D6StarWars.html +++ b/D6StarWars/D6StarWars.html @@ -1,3 +1,5 @@ + + @@ -6,936 +8,1852 @@ - - + +
- - y - - - - -

Settings

-

Player Sheet

-

NPC Sheet

-

Ship

-

Shop/Container

- - -

- - - -
- -
- - - -
-
- - -
- Sheet type: - -
- - -
- Hide GM Rolls? - -
- - -
- Disable roll modification query when rolling? - -
- - -
- Use Wild Die in rolls? - -
- - -
- Hide/Show Sections: -
-
- Hide Force Section? -
-
- Hide Equipment Section? - -
-
- Hide Background Section? - -
-
- Hide Character Point Summary Section? - -
-
- Hide Credit Summary Section? - -
-
-
- - - -
- - - -
-
-
- - - - - - - -
- - - - - - - -
-
-
- - - -
-
-
- - - -
-
-
- - -
-
- - - - - - - - -
-
- - - - - - - -
-
-
- - - - -
-
-
- - - - - - - - -
-
- - -
-
-
- -
- -
- - - -
-
-
- - - -
-
- - - - - -
- D+ -
-
-
- - - - - - -
- D+ -
-
-
- - - -
-
- - - - - -
- D+ -
-
-
- - - - - - -
- D+ -
-
-
- - - -
-
- - - - - -
- D+ -
-
-
- - - - - - -
- D+ -
-
-
-
- - -
- - - -
-
- - - - - -
- D+ -
-
-
- - - - - - -
- D+ -
-
-
- - - -
-
- - - - - -
- D+ -
-
-
- - - - - - -
- D+ -
-
-
- - - -
-
- - - - - -
- D+ -
-
-
- - - - - - -
- D+ -
-
-
-
-
-
- - - -
- - - - - - - - - - - - -
Skill RollDamageShortMedLongROFAmmo
-
- - D+ - D+ - - - - - - - - - - - - - - - -
- - - - - - - - -
PhysicalEnergyOtherDamage Soak Rolls
-
- - D+ - D+ - - - - - - - - - - - - - - - - -
-
- - - -
- -
-
- - - - - - - - - - -
-
- - - - - -
- D+ -
-
-
- - - - - - -
-
-
- - - - - -
- D+ -
-
-
- - - - - - -
-
-
- - - - - -
- D+ -
-
-
- - - - - - -
-
-
-
- - - - -
- Force Emptiness active - -
- Resist Pain active - - -
- # of other powers active - - -
-
-
- - -
-
-
-
-
- Lightsaber Combat - - D+ - - - D+ - - - -
-
- - - -
- - - - - - - -
- - - - - - - - -
-
- - - -
- - -
- - - - -
- - - - - - - - - - - - -
-
- -
-
- -
- -
-
- -
- -
-
- -
- -
-
- -
- -
-
- -
- -
-
-
- - - -
- - Character Point Balance: - -
-
- - -
-
-
- - - -
- - Credit Balance: - -
-
- - -
-
-
- - - - -
- Starship: - Scale: - Length: + + y + + +

Settings

+

Player Sheet

+

NPC Sheet

+

Ship

+

Shop/Container

+ +

+ + + + + + +
+
+ + +
+ Sheet type: + +
+ + +
+ Hide GM Rolls? + +
+ + +
+ Disable roll modification query when rolling? + +
+ + +
+ Use Wild Die in rolls? + +
+ + +
+ Hide/Show Sections: +
+
+ Hide Force Section? +
+
+ Hide Equipment Section? + +
+
+ Hide Background Section? + +
+
+ Hide Character Point Summary Section? + +
+
+ Hide Credit Summary Section? + +
+
+
+ + + +
+ + + +
+
+
+ + + + +
+ + + + +
+
+
+ + +
+
+
+ + + +
+
+
+ + +
+
+ + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Initiative bonus + D+ +
Initiative + + +
Custom Roll + + + +
Extra Dice + + + +
Char Points Roll + + + +
+
+
+
+ + + +
+
+
+ + + + + + + + +
+
+ + +
+
+
+ +
+ +
+ + + +
+ +
+
+ +
+
+ + + + + + + +
D+
+ +
+ +
+
+ + + + + + +
D+
+ +
+
+
+ +
+
+ + + + + + + +
D+
+ +
+ +
+
+ + + + + + +
D+
+ +
+
+
+ +
+
+ + + + + + + +
D+
+ +
+ +
+
+ + + + + + +
D+
+ +
+
+
+
-
-
- - -
-
- Era - -
-
- New - -
-
- Used - -
-
- -
-
- Era - -
-
- Reproduction - -
-
- New-Old-Stock - -
-
- Restored - -
-
- Used - -
-
+
+
+ + + + + + + +
D+
+
-
- -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
+
+
+ + + + + + +
D+
+ +
+
+
+ +
+
+ + + + + + + +
D+
+
-
- -
-
- - -
-
-
- Search - Scan - Passive - Focus +
+
+ + + + + + +
D+
+ +
+
+
- Range - - - - +
+
+ + - Sensitivity - - - - -
-
-
- -
- -
-
- - -
-
- - - - - - - - - - - - - - - -
-
- -
- -
-
- - -
- -
- - -
+ + + + +
D+
+
-
- - - -
- -
-
- -
-
- -
-
-
+
+
+ + + + + + +
D+
+ +
+
+
- - -
- -
- -
- Scale: - Fire Arc: - Crew: -
- -
- Skill: - Fire Control: D - Space Range: - Atmosphere Range: -
- -
- Damage:D+ -
- -
-
- - -
- -
- Craft: - Type: - Crew: -
-
- Skill: - Passangers: - Cargo Capacity: -
-
- Hyperdrive Multipiler: - Hyperdrive Backup: - Nav Computer: -
- +
+
- + -
-
-
- - - -
-
- - - -
-
-
+
+ +
+
+
Weapon
+
Attack
+
Damage
+
+
Range
+
PB
-
S
/
M
/
L
+
+
ROF
+
Ammo
+
- +
+
+
+ +
+
+ D+ + + + + +
+
+ D+ + + + + +
+
+ -// +
+
+
+
+
+
-
-

Original Author: Timothy O'Driscoll | Main Editor: Andreas J. (Roll20user: 1223200) |

-
-
+
+
+
Armor
+
Physical
+
Energy
+
Str
+
Other
+
+ +
+
+
+ +
+
+ D+ + + + + +
+
+ D+ + + + + +
+
+ + + + +
+
+ +
+
+
+
+ +
+ + + +
+ + +
+
+ +
+
+ + + + + + + +
D+
+ +
+ +
+
+ + + + + + +
+
+
+ +
+
+ + + + + + + +
D+
+ +
+ +
+
+ + + + + + +
+
+
+ +
+
+ + + + + + + +
D+
+ +
+ +
+
+ + + + + + +
+
+
+
+ +
+ + + + + + + + + + + + + + +
Force Emptiness details + +
Resist Pain details + +
Number of active powers details + +
+ +

Force Powers

+ + +
+
+ +
+
+
Lightsaber combat
+
Attack
+
Damage
+
+ +
+
+ +
+
+ D+ + + + + +
+
+ D+ + + + + +
+
+
+
+ + + +
+ + + + + + + +
+ + + + + + + + +
+
+ + + +
+ + +
+ + + +
+ + + + + + + + + + + + +
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
+
+ + + +
+ + Character Point Balance: + +
+
+ + +
+
+
+ + + +
+ + Credit Balance: + +
+
+ + +
+
+
+ + + +
+ Starship: + Scale: + Length: +
+ +
+
+ + +
+
+ Era + +
+
+ New + +
+
+ Used + +
+
+ +
+
+ Era + +
+
+ Reproduction + +
+
+ New-Old-Stock + +
+
+ Restored + +
+
+ Used + +
+
+
+ +
+ +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+
+ +
+ +
+
+ + +
+
+
+ Search + Scan + Passive + Focus + + Range + + + + + + Sensitivity + + + + +
+
+
+ +
+ +
+
+ + +
+
+ + + + + + + + + + + + + + + +
+
+ +
+ +
+
+ + +
+ +
+ + +
+
+ +
+ + + +
+ +
+
+ +
+
+ +
+
+
+ + + +
+ + +
+
+
+
+
+
+
+ PB - + S / + M / + L +
+
+ - + / + / + +
+
+ - + / + / + +
+
+ D+ + + +
+
+ D+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ Craft: + Type: + Crew: +
+
+ Skill: + Passangers: + Cargo Capacity: +
+
+ Hyperdrive Multipiler: + Hyperdrive Backup: + Nav Computer: +
+
+ + + +
+
+
+ + + +
+
+ + + +
+
+
+ + + + + +
+ - - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
- {{#name}}
{{name}}
{{/name}} - {{#subtitle}}
{{subtitle}}
{{/subtitle}} + {{#name}} +
{{name}}
+ {{/name}} + {{#subtitle}} +
{{subtitle}}
+ {{/subtitle}}
{{#allprops() title subtitle desc color}}
{{key}}
{{value}}
{{/allprops() title subtitle desc color}} - {{#desc}}
{{desc}}
{{/desc}} + {{#desc}} +
{{desc}}
+ {{/desc}}
@@ -943,43 +1861,50 @@ - +
{{#allprops() }} - - {{/allprops() }} -
{{name}}
{{key}}{{value}}
+ + {{key}} + {{value}} + {{/allprops() }} +
- +
{{#allprops() }} - - {{/allprops() }} -
{{name}}
{{key}}{{value}}
+ + {{key}} + {{value}} + {{/allprops() }} +
- +
{{#allprops() }} - - {{/allprops() }} -
{{name}}
{{key}}{{value}}
+ + {{key}} + {{value}} + {{/allprops() }} +
- +
{{#allprops() }} - - {{/allprops() }} -
{{name}}
{{key}}{{value}}
+ + {{key}} + {{value}} + {{/allprops() }} +
- - + diff --git a/D6StarWars/sheet.json b/D6StarWars/sheet.json index 7b6510c8e0..f96cc874f9 100644 --- a/D6StarWars/sheet.json +++ b/D6StarWars/sheet.json @@ -5,7 +5,7 @@ "roll20userid": "555352, 1223200", "patreon": "https://www.patreon.com/anduh", "preview": "d6starwarspreview.png", - "instructions": "\n This sheet is for Star Wars: The Roleplaying Game by West End Games(WEG) that uses the d6 pool system(**Sheet Version 2.32**).\n* Can be used for 1E, 2E, 2E R&E and REUP games, Wild Die can be disabled if wanted \n* NPC & Starship sheets available \n* Customization options include: hiding some sections, show/hide GM rolls, and disable/enable rolls to ask for modifiers before rolling \n* For more info, check out the sheet's [wiki page](https://wiki.roll20.net/Star_Wars_WEG_D6_character_sheet) \n\n Issues, Ideas & Questions can be sent to the [active editor](https://app.roll20.net/users/1223200)", + "instructions": "\n This sheet is for Star Wars: The Roleplaying Game by West End Games(WEG) that uses the d6 pool system.\n* Can be used for 1E, 2E, 2E R&E and REUP games, Wild Die can be disabled if wanted \n* NPC & Starship sheets available \n* Customization options include: hiding some sections, show/hide GM rolls, and disable/enable rolls to ask for modifiers before rolling \n* For more info, check out the sheet's [wiki page](https://wiki.roll20.net/Star_Wars_WEG_D6_character_sheet) \n\n Issues, Ideas & Questions can be sent to the [active editor](https://app.roll20.net/users/1223200)", "useroptions": [ { "attribute": "sheettype", @@ -102,5 +102,5 @@ "description": "How many Force Points a character starts with." } ], - "legacy": true + "legacy": false } \ No newline at end of file diff --git a/D6StarWars/src/datalist.pug b/D6StarWars/src/datalist.pug new file mode 100644 index 0000000000..1312452bc9 --- /dev/null +++ b/D6StarWars/src/datalist.pug @@ -0,0 +1,73 @@ +-var dex = ["Acrobatics", "Archaic Guns", "Blaster", "Blaster Artillery", "Bowcaster", "Bows", "Brawling Parry", "Contortions", "Dancing", "Dodge", "Firearms", "Grenade", "Lightsaber", "Melee Combat", "Melee Parry", "Missile Weapon", "Pick Pocket", "Running", "Shockball Fling", "Shockball Scoop", "Slingshot", "Thrown Weapons", "Vehicle Blasters", "Wedsphere"]; + +-var know = ["Accounting", "Agriculture", "Alien Species", "Artist", "Brainwashing", "Bureaucracy", "Business Administration", "Business", "Culinary Arts", "Cultures", "Drink Mixology", "Economics", "Home Economics", "Intimidation", "Languages", "Law Enforcement", "Military History", "Planetary Systems", "Shockball", "Streetwise", "Survival", "Tactics", "Traffic Control", "Torture", "Value", "Willpower"]; + +-var mech = ["Airship Operation", "Aquatic Ship Operation", "Archaic Starship Piloting", "Astrogation Calculating", "Beast Handling", "Beast Riding", "Capital Ship Gunnery", "Capital Ship Piloting", "Capital Ship Shields", "Ground Vehicle Operation", "Holorecorder Operation", "Household Appliance Operation", "Hover Vehicle Operation", "Jet Pack Operation", "Machinery Operation", "Musical Instrument", "Powersuit Operation", "Repulsorlift Operation", "Sailed Nautical Vessel Operation", "Sensors Operation", "Space Transports", "Starfighter Piloting", "Starship Gunnery", "Starship shields", "Swoop Operation", "Undersea Vehicle operation", "Walker Operation"]; + +-var per= ["Bargain", "Command", "Con", "Forgery", "Gambling", "Cesa", "Hide", "Investigation", "Persuasion", "Search", "Singing", "Sneak"]; + +-var str = ["Brawling", "Cleaning", "Climbing/Jumping", "Digging", "Stamina", "Swimming"]; + +-var tech = ["Aquatic Vehicle Engineering", "Aquatic Vehicle Repair", "Archaic Gun Repair", "Armor Design", "Armor Repair", "Battle Station Engineering", "Battle Station Repair", "Battle Station Weapon Engineering", "Battle Station Weapon Repair", "Blaster Artillery Engineering", "Blaster Repair", "Blaster Engineering", "Bowcaster Repair", "Bow Repair Repairing", "Capital Ship Engineering", "Capital Ship Repair", "Communications Repair", "Computer Engineering", "Computer Programming/Repair", "Construction", "Cyborg Technology", "Demolitions", "Droid Engineering", "Droid Repair", "Encryption Securing", "Engineering", "Firearms Repair", "First Aid", "Ground Vehicle Engineering", "Ground Vehicle Repair", "Holorecorder Repair", "Hover Vehicle Engineering", "Hover Vehicle Repair", "Jet Pack Engineering", "Jet Pack Repair", "Lightsaber Repair", "Machinery Repair", "Medicine Performing", "Melee Weapon Construction", "Melee Weapon Repair", "Musical Instrument Repair", "Powersuit Repair", "Prosthetic Design", "Prosthetic Repair", "Repulsorlift Engineering", "Repulsorlift Repair", "Rocket Pack Repair", "Sailed Nautical Vessel Repair", "Security Bypassing", "Space Transports Engineering", "Space Transports Repair", "Starfighter Engineering", "Starfighter Repair", "Starship Weapon Engineering", "Starship Weapon Repair", "Swoop Engineering", "Swoop Repair", "Walker Engineering", "Walker Repair"]; + +- var species = ["Aar’aa", "Abinyshi", "Abyssin", "Adarian", "Adnerem", "Advozse", "Aganof", "Aing-Tii", "Akwin", "Aleena", "Amanin", "Anguilla", "Annoo-dat", "Anointed People", "Anomid", "Anx", "Anzat", "Aqualish", "Arachnoid", "Aramandi", "Araquia", "Arcona", "Arkanian", "Askajian", "Avogwi (Altorian Bird)", "Ayrou", "Balinaka", "Balosar", "Barabel", "Baragwin", "Bartokk", "Berrite", "Besalisk", "Bilar", "Bimm (near-human)", "Bimm", "Bith", "Bitthævrian", "Blood Carver", "Boltrunian", "Borneck", "Bosph", "Bothan", "Bouncer", "Bovorian", "Brizzit", "Brubb", "Buzchub", "Caamasi", "Caarite", "Calibop", "Caridan", "Carosite", "Cathar", "Celegian", "Cerean", "Chadra-Fan", "Chagrian", "Chalactan", "Charon", "Charr Ontee", "Cha’wen’he", "Chazrach", "Chev", "Chevin", "Chikarri", "Chiss", "Chistori", "Chuhkyvi Iskalonian", "Clawdite", "Cliffborer", "Codru-Ji", "Colicoid", "Columi", "Conjeni", "Covallon", "Coway", "Coynite", "Cragmoloid", "Damaronian", "Dantari", "Dashade", "Dathomirian Rancor", "Dazouri", "Defel", "Derriphan", "Devaronian", "Devlikk", "Dornean", "Draedan", "Draethos", "Drall", "Dresselian", "Dug", "Duinuogwuin", "Dulok", "Duros", "Ebranite", "Ee", "Eirrauc", "Eklaad", "Elom", "Elomin", "Em’liy", "Entymal", "Epicanthix", "Ergesh", "Er’Kit", "Esoomian", "Essastii", "Etti", "Ewok", "Falleen", "Farghul", "Feeorin", "Fefze", "Fiery One", "Filar-Nitzan", "Filordus", "Filvian", "Firrerreo", "Flakax", "Florn Lamproid", "Fluggrian", "Fosh", "Frog-dog", "Frozian", "Gacerite", "Gados", "Galidyn", "Gamorrean", "Gand", "Gazaran", "Geelan", "Gen’Dai", "Geonosian", "Geran", "Gerb", "Gesaril", "Gigoran", "Givin", "Glymphid", "Gorm", "Gorothite", "Gossam", "Gotal", "Gran", "Gree", "Gruvian", "Gungan", "Gutratee", "Guudrian", "Hapan", "Herglic", "Hethas", "H’nemthe", "Ho’Din", "Hoojib", "Horansi", "Hortek", "Houk", "Hrakian", "Human", "Huralok", "Hutt", "Iktotchi", "Iotran", "Ipharian-Da’Lor", "Ishi Tib", "Iskalloni", "Issori", "Ithorian", "Ixlls", "Iyra", "Jarell", "Jawa", "Jenet", "Jiivahar", "Jillsarian", "Kadri’Ra", "Ka’hren", "Kalduu", "Kaleesh", "Kamarian", "Kaminoan", "Kari", "Karran", "Kel Dor", "Kentra", "Kerestian", "Ketton", "Khil", "Khommite", "Kian’thar", "Kilmaulsi", "Kitonak", "Klatooinian", "Kluuzot", "Kobok", "Kolac", "Koorivar", "Kowakian Monkey-Lizard", "Krakai", "Krevaaki", "Kriek", "Krikthasi", "Krish", "Krytollak", "Kubaz", "Kurtzen", "Kushiban", "Laboi", "Lafrarian", "Lahsbee / Huhk", "Lannik", "Lasat", "Lepi", "Lorrdian", "Lurrian", "Lutrillian", "Makurth", "Mantellian Savrip", "Maoi", "Marasan", "Massassi", "Meerian", "Melodie", "Menahuun", "Meri", "Mimbanite", "Miraluka", "Mirialan", "Mon Calamari", "Morodin", "Morseerian", "Mriss", "Mrlssi", "M’shinn", "Multopos", "Murachaun", "Muun", "Myneyrsh", "Nagai", "Najib", "Nalrithian", "Nalroni", "Nautolan", "Nazzar", "Neimoidian", "Nelvaanian", "Neti", "Nikto", "Nimbanel", "Noehon", "Noghri", "Nosaurian", "Nuiwit (Altorian Lizard)", "Nuknog", "Oblee", "Odenji", "Omwati", "Ongree", "Orfite", "Orgon", "Ortolan", "Ossan", "Pacithhip", "Paigun", "Pa’lowick", "Pau’an", "Permian", "Phindian", "Pho Ph’eahian", "Phuii", "Polis Massan", "Polydroxol", "Poss’Nomin", "Priapulin", "Protean", "Psadan", "Pulra", "P’w’eck", "Qieg", "Qiraash", "Quarren", "Quermian", "Quockran", "Quor’sav", "Qwohog", "Rakaan", "Rakatan", "Rakririan", "Ranat", "Ranth", "Reigat", "Rellarin", "Revwien", "Ri’Dar", "Riileb", "Riorian ", "Rishii", "Rodian", "Roonan", "Ropagu", "Ruurian", "Ruusanian", "Rybet", "Ryn", "Saheelindeeli", "Sakiyan", "Sanyassan", "Sarkan", "Sarrish", "Saurin", "Saurton", "Sauvax", "Sebiri", "Sedrian", "Segmi", "Seikoshan", "Sekct", "Selkath", "Selonian", "Shard", "Sharu", "Shashay", "Shatras", "Shawda Ubb", "Shi’ido", "Shistavanen", "Sic-Six", "Silika", "Siniteen", "Skakoan", "Skrilling", "S’kytri", "Slith", "Sljee", "Sludir", "Sluissi", "Sneevel", "Snivvian", "Spiner", "Squalris", "Squib", "Srrors’tok", "Ssamb", "Ssi-ruu", "Ssither", "Stenax", "Stennes Shifter", "Sullustan", "Sunesi", "Svivreni", "Swokes Swokes", "Sy Myrthian", "Talid", "Talz", "Tammuz-an", "Tarasin", "Tarc", "Tarong", "Tarro", "Tasari", "Tchuukthai", "Teek", "Teltior", "Temolak", "Tempestro", "Thakwaash", "Theelin", "Thisspian", "Tikiarri", "Tinnell", "Tirrith", "Tiss’shar", "T’landa Til", "Togorian", "Togruta", "Toka", "Toong", "Toydarian", "Trandoshan", "Trianii", "Triffian", "Troig", "Trunsk", "Tsil", "T’surr", "Tuhgri", "Tulvarees", "Tunroth", "Turazza", "Tusken Raider(Sand People)", "Twi’lek", "Tynnan", "Ubese", "Ugnaught", "Ugor", "Ukian", "Umbaran", "Utai", "Uukaablian", "Vaathkree", "Vashan", "Veknoid", "Vernol", "Verpine", "Viska", "Vodran", "Vor", "Vorzydiak", "Vratix", "Vulptereen", "Vultan", "Vurk", "Vuvrian", "Weequay", "Werbol", "Whiphid", "Wookiee", "Woostoid", "Wroonian", "Xa Fel", "Xamster", "Xan", "Xexto", "Xi’Dec", "Yaga", "Yam rii", "Yapi", "Yarkora", "Yevetha", "Yimi", "Yinchorri", "Yrashu", "Ysanna Nomad", "Yuuzahn Vong", "Yuzzem", "Yuzzum", "Yvarema", "Zabrak", "Zarian", "ZeHethbra", "Zelosian", "Zeltron", "Zexx", "Zizimaak"]; + +- var control = ["Absorb/Dissipate Energy", "Accelerate Healing", "Concentration", "Contort/Escape", "Control Disease", "Control Pain", "Detoxify Poison", "Emptiness", "Enhance Attribute", "Force of Will", "Hibernation", "Trance", "Instinctive Astrogation", "Reduce Injury", "Remain Conscious", "Remove Fatigue", "Resist Stun", "Short-Term Memory Enhancement", "Rage"]; + +- var sense = ["Beast Languages", "Combat Sense", "Danger Sense", "Instinctive Astrogation", "Life Detection", "Life Sense", "Life Web", "Magnify Senses", "Merge Senses", "Postcognition", "Predict Natural Disaster", "Receptive Telepathy", "Sense Force", "Sense Force Potential", "Sense Path", "Shift Sense", "Translation", "Weather Sense"]; + +- var alter = ["Telekinesis", "Bolt of Hatred", "Dark Side Web", "Injure/Kill"]; + +- var controlsense = ["Farseeing", "Life Bond", "Lightsaber Combat", "Projective Telepathy"]; + +- var controlalter = ["Accelerate Another's Healing", "Control Another's Disease", "Control Another's Pain", "Control Breathing", "Detoxify Another's Poison", "Place Another in Hibernation Trance", "Remove Another's Fatigue", "Return Another to Consciousness", "Transfer Force", "Aura of Uneasiness", "Electronic Manipulation", "Feed on Dark Side", "Force Lightning", "Inflict Pain", "Waves of Darkness"]; + +- var sensealter = ["Dim Another's Senses", "Lesser Force Shield"]; + +- var forceall = ["Control Mind", "Create Force Storms", "Doppleganger", "Drain Life Energy", "Drain Life Essence", "Memory Wipe", "Telekinetic Kill", "Transfer Life", "Force Scream"]; + +- var controlall = control.concat(controlsense, controlalter, forceall); + +- var senseall = sense.concat(controlsense, sensealter, forceall); + +- var alterall = alter.concat(controlalter, sensealter, forceall); + +datalist#dexskills + each skill in dex + option(value=`${skill}`)=skill + +datalist#knowskills + each skill in know + option(value=`${skill}`)=skill + +datalist#mechskills + each skill in mech + option(value=`${skill}`)=skill + +datalist#perskills + each skill in per + option(value=`${skill}`)=skill + +datalist#strskills + each skill in str + option(value=`${skill}`)=skill + +datalist#techskills + each skill in tech + option(value=`${skill}`)=skill + +datalist#species + each race in species + option(value=`${race}`)=race + +datalist#forcecontrol + each power in controlall + option(value=`${power}`)=power + +datalist#forcesense + each power in senseall + option(value=`${power}`)=power + +datalist#forcealter + each power in alterall + option(value=`${power}`)=power \ No newline at end of file