From f3cd786fb0ffdff76894f043875a3081de0b2ee8 Mon Sep 17 00:00:00 2001 From: Andreas Johansson Date: Thu, 3 Jun 2021 20:07:18 +0300 Subject: [PATCH] refactor last html->pug --- Stargate-RPG/Readme.md | 5 + Stargate-RPG/src/_core.scss | 66 +-- Stargate-RPG/src/_rolltemplate.scss | 34 +- Stargate-RPG/src/core.html | 755 ---------------------------- Stargate-RPG/src/core.pug | 534 ++++++++++++++++++++ Stargate-RPG/src/rolltemplate.html | 18 - Stargate-RPG/src/rolltemplate.pug | 19 + Stargate-RPG/stargate.css | 59 +-- Stargate-RPG/stargate.html | 661 +++++++++--------------- Stargate-RPG/stargate.pug | 4 +- 10 files changed, 852 insertions(+), 1303 deletions(-) delete mode 100644 Stargate-RPG/src/core.html create mode 100644 Stargate-RPG/src/core.pug delete mode 100644 Stargate-RPG/src/rolltemplate.html create mode 100644 Stargate-RPG/src/rolltemplate.pug diff --git a/Stargate-RPG/Readme.md b/Stargate-RPG/Readme.md index f1a1a19eee..c29b840182 100644 --- a/Stargate-RPG/Readme.md +++ b/Stargate-RPG/Readme.md @@ -4,6 +4,11 @@ Offical Roll20 Character sheet for "Stargate RPG" by Wyvern Gaming (Quickstart/B ### Changelog +**v.1.80(2021-06)** +* Simple NPC sheet +* update in-sheet changelog +* refactor code + **v.1.70(2021-05-04)** * refactor sheet in PUG & SCSS * update the sheet to work with [CSE](https://wiki.roll20.net/CSE) diff --git a/Stargate-RPG/src/_core.scss b/Stargate-RPG/src/_core.scss index ecd89a8056..1e546bc242 100644 --- a/Stargate-RPG/src/_core.scss +++ b/Stargate-RPG/src/_core.scss @@ -1,6 +1,12 @@ -/*------------------------------------------------*\ - #GENERAL -\*------------------------------------------------*/ +// SASS Var + +$url: "https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/"; +$urldev: "https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/"; +// url("#{$url}bg.png") + +// ------------------------------------------------ +// #GENERAL +// ------------------------------------------------ .charsheet{ @@ -27,7 +33,7 @@ display: none; } - /* --------- Text ------------- */ + // --------- Text ------------- .bold { font-weight: 800; @@ -58,7 +64,7 @@ font-weight: bold; } - /* --------- Inputs ------------- */ + // --------- Inputs ------------- input[type="text"] { background-color: transparent; border-style: none none solid none; @@ -132,14 +138,14 @@ } - /* highlights empty fields with light pink, if the fields have placeholder text */ + // highlights empty fields with light pink, if the fields have placeholder text textarea:placeholder-shown, input[type="text"]:placeholder-shown, input[type="number"]:placeholder-shown{ background-color: #EAC9D1; } - /* higlight selected input with gray*/ + // higlight selected input with gray textarea:focus, input[type="text"]:focus, input[type="number"]:focus{ @@ -148,7 +154,7 @@ - /* -----Hides up/down buttons on numberfields that don't need them ---*/ + // -----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, @@ -162,7 +168,7 @@ -moz-appearance: textfield; } - /* ------- Buttons ---------- */ + // ------- Buttons ---------- button[type="roll"].txt-btn { &:before { content: ' '; @@ -180,12 +186,12 @@ } } - /*-----------------------------------------------------------------*\ - #SECTIONS - \*-----------------------------------------------------------------*/ + //-----------------------------------------------------------------*\ + // #SECTIONS + //-----------------------------------------------------------------*/ - /* --------- General Section Styling ------------- */ + // --------- General Section Styling ------------- .section, section { @@ -219,7 +225,7 @@ justify-content: space-evenly; } - /* ------------ PAGES ---------- */ + // ------------ PAGES ---------- main.character { display: grid; @@ -234,7 +240,7 @@ "attr attacks attacks attacks "; width: 850px; height: 1000px; - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png); + background-image: url("#{$url}bg.png"); background-repeat: no-repeat; background-size: 700px 700px; background-position: center; @@ -249,7 +255,7 @@ "prof notes "; width: 840px; height: 990px; - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png); + background-image: url("#{$url}bg.png"); background-repeat: no-repeat; background-size: 700px 700px; background-position: center; @@ -276,7 +282,7 @@ "ammo changelog"; width: 840px; height: 990px; - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png); + background-image: url("#{$url}bg.png"); background-repeat: no-repeat; background-size: 700px 700px; background-position: center; @@ -312,7 +318,7 @@ grid-template-rows: 1fr 1fr; width: 840px; height: 990px; - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png); + background-image: url("#{$url}bg.png"); background-repeat: no-repeat; background-size: 700px 700px; background-position: center; @@ -320,7 +326,7 @@ grid-gap: 10px; padding: 5px; } - /* -------------- tab buttons ------------- */ + // -------------- tab buttons ------------- main.character, main.background, @@ -331,7 +337,7 @@ display: none; } - /* show the selected tab */ + // show the selected tab input.tabstoggle[value="character"] ~ main.character, input.tabstoggle[value="background"] ~ main.background, input.tabstoggle[value="npc"] ~ main.npc, @@ -339,7 +345,7 @@ display: grid; } - /* shows/hides page buttons */ + // shows/hides page buttons input.npctoggle[value="0"] ~ button[type="action"].pc, input.npctoggle[value="1"] ~ button[type="action"].npc{ display: flex; @@ -366,11 +372,10 @@ } - /* ------------ Section Specific ---------- */ + // ------------ Section Specific ---------- - /* ----------- page 1 ------------ */ - + // ----------- page 1 ------------ section.name { grid-area: name; @@ -397,7 +402,7 @@ grid-area: attr; .stat { - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/attr.png); + background-image: url("#{$url}attr.png"); background-repeat: no-repeat; background-size: 124px 113px; width: 120px; @@ -477,7 +482,7 @@ } } - /* hp SECTION */ + // HP SECTION section.hp { grid-area: hp; @@ -742,7 +747,7 @@ } - /* -------- Page 3 -------- */ + // -------- Page 3 -------- section.settings { grid-area: settings; @@ -780,9 +785,8 @@ section.changelog { grid-area: changelog; - img.phoenix { - width: 150px; - height: 150px; + button[type="roll"]{ + margin-bottom: 10px; } } @@ -801,7 +805,7 @@ padding: 0px 0px 5px 0px; } div { - margin: 7px 1px 7px 1px; + margin: 7px 1px; } } diff --git a/Stargate-RPG/src/_rolltemplate.scss b/Stargate-RPG/src/_rolltemplate.scss index 667051eaf6..a9c9c1cae6 100644 --- a/Stargate-RPG/src/_rolltemplate.scss +++ b/Stargate-RPG/src/_rolltemplate.scss @@ -1,8 +1,8 @@ -/*------------------------------------*\ - #ROLL TEMPLATES -\*------------------------------------*/ +//------------------------------------ +// #ROLL TEMPLATES +//------------------------------------ -/* Smaller margins - remove these if you want the huge default left margin */ +// Smaller margins - remove these if you want the huge default left margin .sheet-rolltemplate-stargate { margin-left: -37px; } @@ -15,7 +15,7 @@ border-radius: 3px; } -/* Header formatting - title and subtitle */ +// Header formatting - title and subtitle .sheet-rolltemplate-stargate .sheet-header { background-color: var(--header-bg-color); color: var(--header-text-color); @@ -28,7 +28,7 @@ font-size:1.2em; font-weight: bold; } -/* Stargate Phoenix logo*/ +// Stargate Phoenix logo .sheet-rolltemplate-stargate .sheet-title img.sheet-phoenix{ width: 33px; height: 33px; @@ -39,14 +39,14 @@ font-size:.9em; } -/* example colors */ +// example colors .sheet-rolltemplate-stargate .sheet-container { - /* this is the default color */ + // default colors --header-bg-color: #a83521; --header-text-color: #FFF; } -/* alt template colors */ +// alt template colors .sheet-rolltemplate-stargate .sheet-container.sheet-color-green { --header-bg-color: #008000; } @@ -58,38 +58,34 @@ --header-text-color: #000; } -/* Allprops part */ +// Allprops part .sheet-rolltemplate-stargate .sheet-content { display: grid; background: #FFF; - /* Header formatting - modify the column layout below */ + // Header formatting - modify the column layout below grid-template-columns: auto auto; - /* Line height to match default roll template */ + // Line height to match default roll template line-height:1.4em; } .sheet-rolltemplate-stargate .sheet-content > div { padding: 5px; } -/* Left column */ +// Left column .sheet-rolltemplate-stargate .sheet-content .sheet-key { font-weight: bold; padding-right: 10px; text-align: right; } -/* Empty rule, use this if you want to change the right column -.sheet-rolltemplate-stargate .sheet-value { -} -*/ -/* Make even-numbered rows grey */ +// Make even-numbered rows grey .sheet-rolltemplate-stargate .sheet-content :nth-child(4n+3), .sheet-rolltemplate-stargate .sheet-content :nth-child(4n) { background:#EEE; } -/* Description field */ +// Description field .sheet-rolltemplate-stargate .sheet-desc { grid-column: span 2; padding: 5px; diff --git a/Stargate-RPG/src/core.html b/Stargate-RPG/src/core.html deleted file mode 100644 index 75da5eb081..0000000000 --- a/Stargate-RPG/src/core.html +++ /dev/null @@ -1,755 +0,0 @@ -
- - - - - - Sheet Version: -
- - - - - - - -
- - -
- -
- -
- - -
-
- - -
-
- - -
- -
- -
- -
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- - -
-
- -
- - - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
- -
- - - - -
-

Skills

- -
- - - - (dex) -
- -
- - - - (wis) -
- -
- - - - (str) -
- -
- - - - (wis) -
- -
- - - - (cha) -
- -
- - - - (int) -
- -
- - - - (int) -
- -
- - - - (wis) -
- -
- - - - (cha) -
- -
- - - - (int) -
- - - -
- - - - (wis) -
- -
- - - - (int) -
- -
- - - - (wis) -
- -
- - - - (cha) -
- -
- - - - (cha) -
- -
- - - - (dex) -
- -
- - - - (int) -
- -
- - - - (dex) -
- -
- - - - (dex) -
- -
- - - - (wis) -
- -
- - - - -
-
- -
- - / - -
- -
-
- -
- - / - -
-
-
- - - - -
-

CONDITION

-
- - Normal -
-
- - Disadv ability checks -
-
- - speed halved -
-
- - disadv attacks, saves -
-
- - HP max halved -
-
- - speed zero -
-
- - death -
-
- - - - -
-
- - -
-
- - -
-
- - -
-
- - - - -
-
- - -
-
- -
- - / - -
-
-
- - - - -
-
- - -
-
- -
- - - - Sucesses -
-
- - - - Failures -
-
-
- - - - -
-

Saves

-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - - -
-

Tactical Vest Bulk

- -
- - - - - - - -
-

Inventory

- -
- - - -
- Attack/Action Name - to hit - dmg - type - range - Cap/Reload - special - - -
- - -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
- - -
- - -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
- - -
- - -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
- - -
- - -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
- - -
- - -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
- -
- -
- - - - - -
- -
- - -
- -
- - -
- -
- - -
- -
- - -
- -
- - -
- -
- - -
- -
- - - - -
-

NPC

- -
- -
- CR: - - Speed - -
-
- Type: - -
-
-
- - - - - - -
- -
- - -
- Whisper rolls? - -
- -
- Show name in rolls? - -
- -
- NPC sheet? - -
- -
- - - -
-
- -
-
- - -
-
- - -
-
- - -
-
- - -
-
- -
- -
- Mission Points(MP): - - / - -
-
- Eureka Points: - - / - -
-
- Wounds/Ability Damage - -
-
- -
- - - * more stats to track on Settings page - - * add Stargate Phoenix image to roll template
- * integrate ChatSetAttr commands to Short/Long Rest buttons
- * added whisper toggle to Saves
- * Link to sheet wiki page (button on settings page)
-
- - -
-
- -
- Stargaterpg.com username - - Roll20 ID - -
-
- Stargaterpg.com character link - -
-
- -
-
- - -
-
- - -
-
- - -
-
- - -
-
-
- -
\ No newline at end of file diff --git a/Stargate-RPG/src/core.pug b/Stargate-RPG/src/core.pug new file mode 100644 index 0000000000..2b3465fa17 --- /dev/null +++ b/Stargate-RPG/src/core.pug @@ -0,0 +1,534 @@ +//- variables & mixin +- var url = "https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/"; +- var urldev = "https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/"; +- var pages = ["character", "background", "npc", "settings"]; +//- var attr-abr = []; //- kye-value instead? +//- var attr-name = []; +//- var skill-at = []; +//- var skill-name = []; +- var dice = ["d4", "d6", "d8", "d10", "d12"]; +- var attack = ["attack1", "attack2", "attack3", "attack4", "attack5"]; +- var ammo = ["1", "2", "3", "4"]; +//- sheet start +.tab-buttons.middle.center + input.npctoggle(type="hidden" name="attr_npc" value="0") + button.pc(type="action" name="act_character") Character + button.pc(type="action" name="act_background") Background + button.npc(type="action" name="act_npc") NPC + button(type="action" name="act_settings") Settings + span.version.bold + | Sheet Version: + span(name="attr_version") +input.tabstoggle(type="hidden" name="attr_sheetTab" value="character") +//- --------------------------------------------------------------------------------- +//- --------------------------- CHARACTER ------------------------------------------ +//- --------------------------------------------------------------------------------- +main.character + //- NAME SECTION + section.name.columnflex.nowrap + .rowflex.nowrap.spaced + .columnflex.nowrap + label(style="width:100px;") Character name + input(name="attr_character_name" type="text") + .columnflex.nowrap + label(style="width:80px;") Player name + input(name="attr_player_name" type="text") + .columnflex.nowrap + label Campaign + input(name="attr_campaign" type="text") + .rowflex.nowrap.spaced + .columnflex.nowrap + label Race + input(name="attr_race" list="race" placeholder="race" type="text") + .columnflex.nowrap + label Origin + input(name="attr_origin" list="origin" placeholder="origin" type="text") + .columnflex.nowrap + label Class + input(name="attr_class" list="rpgclass" placeholder="class" type="text") + .columnflex.nowrap + label.w40(title="@{rank}") Level + input.w40(name="attr_rank" title="@{rank}" type="number" placeholder="1") + .columnflex.nowrap + label.w40(title="Hit Dice") HD + input.w40(name="attr_hd" type="text" placeholder="d8" title="Hit Dice: @{hd}") + .columnflex.nowrap + label.w30 MP + input.w40(name="attr_mp" type="number" placeholder="" title="Mission Points") + .columnflex.nowrap + label.w70(title="@{td}") Tension Die + select(name="attr_td") + option(value="d4") d4 + option(value="d6" selected="") d6 + option(value="d8") d8 + option(value="d10") d10 + option(value="d12") d12 + //- ATTRIBUTES SECTION + .attr.columnflex.nowrap.spaced.center + .stat.columnflex.nowrap.center.middle + button.txt-btn.large(name="roll_str" title="%{str}" type="roll" value="@{whisper}&{template:stargate} {{title=Strength Check}} @{show_name} {{[[d20+(@{str_mod})]]=[[d20+(@{str_mod})]]}}") STR + input(name="attr_str" type="number" value="10") + span.mod(name="attr_str_mod" title="@{str_mod}") + .stat.columnflex.nowrap.center.middle + button.txt-btn.large(name="roll_dex" type="roll" title="%{dex}" value="@{whisper}&{template:stargate} {{title=Dexterity Check}} @{show_name} {{[[d20+(@{dex_mod})]]=[[d20+(@{dex_mod})]]}}") DEX + input(name="attr_dex" type="number" value="10") + span.mod(name="attr_dex_mod" title="@{dex_mod}") + .stat.columnflex.nowrap.center.middle + button.txt-btn.large(name="roll_con" type="roll" title="%{con}" value="@{whisper}&{template:stargate} {{title=Constitution Check}} @{show_name} {{[[d20+(@{con_mod})]]=[[d20+(@{con_mod})]]}}") CON + input(name="attr_con" type="number" value="10") + span.mod(name="attr_con_mod" title="@{con_mod}") + .stat.columnflex.nowrap.center.middle + button.txt-btn.large(name="roll_int" type="roll" title="%{int}" value="@{whisper}&{template:stargate} {{title=Intelligence Check}} @{show_name} {{[[d20+(@{int_mod})]]=[[d20+(@{int_mod})]]}}") INT + input(name="attr_int" type="number" value="10") + span.mod(name="attr_int_mod" title="@{int_mod}") + .stat.columnflex.nowrap.center.middle + button.txt-btn.large(name="roll_wis" type="roll" title="%{wis}" value="@{whisper}&{template:stargate} {{title=Wisdom Check}} @{show_name} {{[[d20+(@{wis_mod})]]=[[d20+(@{wis_mod})]]}}") WIS + input(name="attr_wis" type="number" value="10") + span.mod(name="attr_wis_mod" title="@{wis_mod}") + .stat.columnflex.nowrap.center.middle + button.txt-btn.large(name="roll_cha" type="roll" title="%{cha}" value="@{whisper}&{template:stargate} {{title=Charisma Check}} @{show_name} {{[[d20+(@{cha_mod})]]=[[d20+(@{cha_mod})]]}}") CHA + input(name="attr_cha" type="number" value="10") + span.mod(name="attr_cha_mod" title="@{cha_mod}") + //- Skills (20) + section.skills.columnflex.nowrap.spaced + h3 Skills + .rowflex.nowrap + input(name="attr_acrobatics_c" type="checkbox" value="1") + input.w30(name="attr_acrobatics" type="number" title="@{acrobatics}" value="0") + button.txt-btn(name="roll_acrobatics" type="roll" value="@{whisper}&{template:stargate} {{title=Acrobatics Check}} @{show_name} {{[[d20+(@{acrobatics})]]=[[d20+(@{acrobatics})]]}}") Acrobatics + span (dex) + .rowflex.nowrap + input(name="attr_animalhandling_c" type="checkbox" value="1") + input.w30(name="attr_animalhandling" type="number" title="@{animalhandling}" value="0") + button.txt-btn(name="roll_animalhandling" type="roll" value="@{whisper}&{template:stargate} {{title=Animal Handling Check}} @{show_name} {{[[d20+(@{animalhandling})]]=[[d20+(@{animalhandling})]]}}") Animal Handling + span (wis) + .rowflex.nowrap + input(name="attr_athletics_c" type="checkbox" value="1") + input.w30(name="attr_athletics" type="number" title="@{athletics}" value="0") + button.txt-btn(name="roll_athletics" type="roll" value="@{whisper}&{template:stargate} {{title=Athletics Check}} @{show_name} {{[[d20+(@{athletics})]]=[[d20+(@{athletics})]]}}") Athletics + span (str) + .rowflex.nowrap + input(name="attr_culture_c" type="checkbox" value="1") + input.w30(name="attr_culture" type="number" title="@{culture}" value="0") + button.txt-btn(name="roll_culture" type="roll" value="@{whisper}&{template:stargate} {{title=Culture Check}} @{show_name} {{[[d20+(@{culture})]]=[[d20+(@{culture})]]}}") Culture + span (wis) + .rowflex.nowrap + input(name="attr_deception_c" type="checkbox" value="1") + input.w30(name="attr_deception" type="number" title="@{deception}" value="0") + button.txt-btn(name="roll_deception" type="roll" value="@{whisper}&{template:stargate} {{title=Deception Check}} @{show_name} {{[[d20+(@{deception})]]=[[d20+(@{deception})]]}}") Deception + span (cha) + .rowflex.nowrap + input(name="attr_engineering_c" type="checkbox" value="1") + input.w30(name="attr_engineering" type="number" title="@{engineering}" value="0") + button.txt-btn(name="roll_engineering" type="roll" value="@{whisper}&{template:stargate} {{title=Engineering Check}} @{show_name} {{[[d20+(@{engineering})]]=[[d20+(@{engineering})]]}}") engineering + span (int) + .rowflex.nowrap + input(name="attr_history_c" type="checkbox" value="1") + input.w30(name="attr_history" type="number" title="@{history}" value="0") + button.txt-btn(name="roll_history" type="roll" value="@{whisper}&{template:stargate} {{title=History Check}} @{show_name} {{[[d20+(@{history})]]=[[d20+(@{history})]]}}") history + span (int) + .rowflex.nowrap + input(name="attr_insight_c" type="checkbox" value="1") + input.w30(name="attr_insight" type="number" title="@{insight}" value="0") + button.txt-btn(name="roll_insight" type="roll" value="@{whisper}&{template:stargate} {{title=Insight Check}} @{show_name} {{[[d20+(@{insight})]]=[[d20+(@{insight})]]}}") insight + span (wis) + .rowflex.nowrap + input(name="attr_intimidation_c" type="checkbox" value="1") + input.w30(name="attr_intimidation" type="number" title="@{intimidation}" value="0") + button.txt-btn(name="roll_intimidation" type="roll" value="@{whisper}&{template:stargate} {{title=Intimidation Check}} @{show_name} {{[[d20+(@{intimidation})]]=[[d20+(@{intimidation})]]}}") intimidation + span (cha) + .rowflex.nowrap + input(name="attr_investigation_c" type="checkbox" value="1") + input.w30(name="attr_investigation" type="number" title="@{investigation}" value="0") + button.txt-btn(name="roll_investigation" type="roll" value="@{whisper}&{template:stargate} {{title=Investigation Check}} @{show_name} {{[[d20+(@{investigation})]]=[[d20+(@{investigation})]]}}") investigation + span (int) + .rowflex.nowrap + input(name="attr_medicine_c" type="checkbox" value="1") + input.w30(name="attr_medicine" type="number" title="@{medicine}" value="0") + button.txt-btn(name="roll_medicine" type="roll" value="@{whisper}&{template:stargate} {{title=medicine Check}} @{show_name} {{[[d20+(@{medicine})]]=[[d20+(@{medicine})]]}}") medicine + span (wis) + .rowflex.nowrap + input(name="attr_nature_c" type="checkbox" value="1") + input.w30(name="attr_nature" type="number" title="@{nature}" value="0") + button.txt-btn(name="roll_nature" type="roll" value="@{whisper}&{template:stargate} {{title=nature Check}} @{show_name} {{[[d20+(@{nature})]]=[[d20+(@{nature})]]}}") nature + span (int) + .rowflex.nowrap + input(name="attr_perception_c" type="checkbox" value="1") + input.w30(name="attr_perception" type="number" title="@{perception}" value="0") + button.txt-btn(name="roll_perception" type="roll" value="@{whisper}&{template:stargate} {{title=perception Check}} @{show_name} {{[[d20+(@{perception})]]=[[d20+(@{perception})]]}}") perception + span (wis) + .rowflex.nowrap + input(name="attr_performance_c" type="checkbox" value="1") + input.w30(name="attr_performance" type="number" title="@{performance}" value="0") + button.txt-btn(name="roll_performance" type="roll" value="@{whisper}&{template:stargate} {{title=performance Check}} @{show_name} {{[[d20+(@{performance})]]=[[d20+(@{performance})]]}}") performance + span (cha) + .rowflex.nowrap + input(name="attr_persuasion_c" type="checkbox" value="1") + input.w30(name="attr_persuasion" type="number" title="@{persuasion}" value="0") + button.txt-btn(name="roll_persuasion" type="roll" value="@{whisper}&{template:stargate} {{title=Persuasion Check}} @{show_name} {{[[d20+(@{persuasion})]]=[[d20+(@{persuasion})]]}}") persuasion + span (cha) + .rowflex.nowrap + input(name="attr_pilot_c" type="checkbox" value="1") + input.w30(name="attr_pilot" type="number" title="@{}" value="0") + button.txt-btn(name="roll_pilot" type="roll" value="@{whisper}&{template:stargate} {{title=pilot Check}} @{show_name} {{[[d20+(@{pilot})]]=[[d20+(@{pilot})]]}}") pilot + span (dex) + .rowflex.nowrap + input(name="attr_science_c" type="checkbox" value="1") + input.w30(name="attr_science" type="number" title="@{science}" value="0") + button.txt-btn(name="roll_science" type="roll" value="@{whisper}&{template:stargate} {{title=science Check}} @{show_name} {{[[d20+(@{science})]]=[[d20+(@{science})]]}}") science + span (int) + .rowflex.nowrap + input(name="attr_sleight_c" type="checkbox" value="1") + input.w30(name="attr_sleight" type="number" title="@{sleight}" value="0") + button.txt-btn(name="roll_sleight" type="roll" value="@{whisper}&{template:stargate} {{title=Sleight of Hand Check}} @{show_name} {{[[d20+(@{sleight})]]=[[d20+(@{sleight})]]}}") Sleight of Hand + span (dex) + .rowflex.nowrap + input(name="attr_stealth_c" type="checkbox" value="1") + input.w30(name="attr_stealth" type="number" title="@{stealth}" value="0") + button.txt-btn(name="roll_stealth" type="roll" value="@{whisper}&{template:stargate} {{title=stealth Check}} @{show_name} {{[[d20+(@{stealth})]]=[[d20+(@{stealth})]]}}") stealth + span (dex) + .rowflex.nowrap + input(name="attr_survival_c" type="checkbox" value="1") + input.w30(name="attr_survival" type="number" title="@{survival}" value="0") + button.txt-btn(name="roll_survival" type="roll" value="@{whisper}&{template:stargate} {{title=survival Check}} @{show_name} {{[[d20+(@{survival})]]=[[d20+(@{survival})]]}}") survival + span (wis) + //- hp + section.hp.rowflex.nowrap + .section.columnflex.nowrap.middle.center + label.txtcenter(title="Hit Points") HP + .rowflex.nowrap + input.stat.w40(name="attr_hp" type="number" value="" placeholder="20" title="@{hp}") + span.slash / + input.stat.w40(name="attr_hp_max" type="number" value="" placeholder="20" title="@{hp|max}") + .section.columnflex.nowrap.middle.center.determ + label.txtcenter(title="Temporary Hit Points") Temp HP + .rowflex.nowrap + input.stat.w40(name="attr_hp_temp" type="number" value="" title="@{hp_temp}") + span.slash / + input.stat.w40(name="attr_hp_temp_max" type="number" value="" title="@{hp_temp|max}") + //- condition + section.condition.columnflex.nowrap.spaced + h3.txtcenter(title="@{condition}") CONDITION + .rowflex.nowrap + input(name="attr_condition" type="radio" value="0" checked="true") + span Normal + .rowflex.nowrap + input(name="attr_condition" type="radio" value="1") + span Disadv ability checks + .rowflex.nowrap + input(name="attr_condition" type="radio" value="2") + span speed halved + .rowflex.nowrap + input(name="attr_condition" type="radio" value="3") + span disadv attacks, saves + .rowflex.nowrap + input(name="attr_condition" type="radio" value="4") + span HP max halved + .rowflex.nowrap + input(name="attr_condition" type="radio" value="5") + span speed zero + .rowflex.nowrap + input(name="attr_condition" type="radio" value="6") + span death + //- prof + .prof.rowflex.nowrap + .section.columnflex.nowrap.middle.center + label.wide(title="Proficiency Bonus") Prof Bonus + input.stat.w40(name="attr_prof" type="number" value="2" title="Proficiency Bonus: @{prof}") + .section.columnflex.nowrap.middle.center.init + button.txt-btn(name="roll_init" type="roll" value="@{whisper}&{template:stargate} {{title=Initiative}} @{show_name} {{ Roll =[[d20+(@{init}) &{tracker}]]}}" title="%{init}") Initiative + input.stat.w40(name="attr_init" type="number" value="0" title="@{init}") + .section.columnflex.nowrap.middle.center.moxie + button.txt-btn(name="roll_moxie" type="roll" value="@{whisper}&{template:stargate} {{title=Moxie}} @{show_name} {{ Roll =[[d20+(@{moxie}) &{tracker}]]}}" title="Social Initiative: %{moxie}") Moxie + input.stat.w40(name="attr_moxie" type="number" value="0" title="Social Initiative: @{moxie}") + //- ac + .ac.rowflex.nowrap + .section.columnflex.nowrap.middle.center + label.wide Armor Class + input.stat.w70(name="attr_ac" type="number" value="10" title="@{ac}") + .section.columnflex.nowrap.middle.center + label.wide determination + .rowflex.nowrap + input.stat.w40(name="attr_determination" type="number" value="2" title="@{determination}") + span.slash / + input.stat.w40(name="attr_determination_max" type="number" value="2" title="@{determination|max}") + //- speed + .speed.rowflex.nowrap + .section.columnflex.nowrap.middle.center + label.bold.txtcenter Speed + input.w70.stat(name="attr_speed" type="text" value="6m") + .section.death.columnflex.nowrap.middle.center + button.txt-btn.large(name="roll_deathsave" type="roll" value="@{whisper}&{template:stargate} {{color=black}} {{title=Death Save}} @{show_name} {{Result=[[d20]]}}" title="%{deathsave}") Death Save + .rowflex.nowrap + input(name="attr_death_success1" type="checkbox" value="1") + input(name="attr_death_success2" type="checkbox" value="1") + input(name="attr_death_success3" type="checkbox" value="1") + span Sucesses + .rowflex.nowrap + input(name="attr_death_failure1" type="checkbox" value="1") + input(name="attr_death_failure2" type="checkbox" value="1") + input(name="attr_death_failure3" type="checkbox" value="1") + span Failures + //- saves + section.saves.columnflex.nowrap + h3 Saves + .rowflex.nowrap + input(name="attr_str_save_c" type="checkbox" value="1") + input.w30(name="attr_str_save" title="@{str_save}" type="number" value="0") + button.txt-btn(name="roll_str_save" title="%{str_save}" type="roll" value="@{whisper}&{template:stargate} {{title=Strength Save}} @{show_name} {{[[d20+(@{str_save})]]=[[d20+(@{str_save})]]}}") Strength + .rowflex.nowrap + input(name="attr_dex_save_c" type="checkbox" value="1") + input.w30(name="attr_dex_save" type="number" value="0" title="@{dex_save}") + button.txt-btn(name="roll_dex_save" type="roll" value="@{whisper}&{template:stargate} {{title=Dexterity Save}} @{show_name} {{[[d20+(@{dex_save})]]=[[d20+(@{dex_save})]]}}" title="%{dex_save}") Dexterity + .rowflex.nowrap + input(name="attr_con_save_c" type="checkbox" value="1") + input.w30(name="attr_con_save" type="number" value="0") + button.txt-btn(name="roll_con_save" type="roll" value="@{whisper}&{template:stargate} {{title=Constitution Save}} @{show_name} {{[[d20+(@{con_save})]]=[[d20+(@{con_save})]]}}") Constitution + .rowflex.nowrap + input(name="attr_int_save_c" type="checkbox" value="1") + input.w30(name="attr_int_save" type="number" value="0") + button.txt-btn(name="roll_int_save" type="roll" value="@{whisper}&{template:stargate} {{title=Intelligence Save}} @{show_name} {{[[d20+(@{int_save})]]=[[d20+(@{int_save})]]}}") Intelligence + .rowflex.nowrap + input(name="attr_wis_save_c" type="checkbox" value="1") + input.w30(name="attr_wis_save" type="number" value="0") + button.txt-btn(name="roll_wis_save" type="roll" value="@{whisper}&{template:stargate} {{title=Wisdom Save}} @{show_name} {{[[d20+(@{wis_save})]]=[[d20+(@{wis_save})]]}}") Wisdom + .rowflex.nowrap.mb20 + input(name="attr_cha_save_c" type="checkbox" value="1") + input.w30(name="attr_cha_save" type="number" value="0") + button.txt-btn(name="roll_cha_save" type="roll" value="@{whisper}&{template:stargate} {{title=Charisma Save}} @{show_name} {{[[d20+(@{cha_save})]]=[[d20+(@{cha_save})]]}}") Charisma + //- bulk + section.bulk.columnflex.nowrap.middle.center + h3 Tactical Vest Bulk + input.stat.w40(name="attr_bulk" type="number" value="8") + //- ammo + //- inventory mini + section.inventory.columnflex.nowrap.center + h4 Inventory + textarea(name="attr_inventory" title="@{inventory}") + //- attacks + section.attacks + span.name.bold Attack/Action Name + span.bold to hit + span.bold.pl20 dmg + span.bold.dmg-type type + span.bold range + span.bold Cap/Reload + span.bold.pl20 special + //- attack1 + .rowflex.nowrap + button(name="roll_attack1" type="roll" title="%{attack1}" value="@{whisper}&{template:stargate} {{title=@{attack1}}} @{show_name} {{[[d20+(@{attack1_to_hit})]]=[[d20+(@{attack1_to_hit})]]}} {{Damage=[[@{attack1_dmg}+0]] @{attack1_dmgtype} }} {{desc=@{attack1_special} }}") + input.ml15(name="attr_attack1" type="text" placeholder="Sidearm(Beretta M9)") + div + input.w40(name="attr_attack1_to_hit" type="text" placeholder="4") + div + input.w70.mr15(name="attr_attack1_dmg" type="text" placeholder="1d6") + div + input.w50(name="attr_attack1_dmgtype" type="text" placeholder="piercing") + div + input.w50(name="attr_attack1_range" type="text" placeholder="50/100") + div + input.w50(name="attr_attack1_reload" type="text" placeholder="15/1") + div + input.w110.mr15(name="attr_attack1_special" type="text") + //- attack2 + .rowflex.nowrap + button(name="roll_attack2" type="roll" title="%{attack2}" value="@{whisper}&{template:stargate} {{title=@{attack2}}} @{show_name} {{[[d20+(@{attack2_to_hit})]]=[[d20+(@{attack2_to_hit})]]}} {{Damage=[[@{attack2_dmg}+0]] @{attack2_dmgtype} }} {{desc=@{attack2_special} }}") + input.ml15(name="attr_attack2" type="text" placeholder="attack/action name") + div + input.w40(name="attr_attack2_to_hit" type="text" placeholder="4") + div + input.w70.mr15(name="attr_attack2_dmg" type="text" placeholder="1d6") + div + input.w50(name="attr_attack2_dmgtype" type="text") + div + input.w50(name="attr_attack2_range" type="text") + div + input.w50(name="attr_attack2_reload" type="text") + div + input.w110.mr15(name="attr_attack2_special" type="text") + //- attack3 + .rowflex.nowrap + button(name="roll_attack3" type="roll" title="%{attack3}" value="@{whisper}&{template:stargate} {{title=@{attack3}}} @{show_name} {{[[d20+(@{attack3_to_hit})]]=[[d20+(@{attack3_to_hit})]]}} {{Damage=[[@{attack3_dmg}+0]] @{attack3_dmgtype} }} {{desc=@{attack3_special} }}") + input.ml15(name="attr_attack3" type="text" placeholder="attack/action name") + div + input.w40(name="attr_attack3_to_hit" type="text" placeholder="4") + div + input.w70.mr15(name="attr_attack3_dmg" type="text" placeholder="1d6") + div + input.w50(name="attr_attack3_dmgtype" type="text") + div + input.w50(name="attr_attack3_range" type="text") + div + input.w50(name="attr_attack3_reload" type="text") + div + input.w110.mr15(name="attr_attack3_special" type="text") + //- attack4 + .rowflex.nowrap + button(name="roll_attack4" type="roll" title="%{attack4}" value="@{whisper}&{template:stargate} {{title=@{attack4}}} @{show_name} {{[[d20+(@{attack4_to_hit})]]=[[d20+(@{attack4_to_hit})]]}} {{Damage=[[@{attack4_dmg}+0]] @{attack4_dmgtype} }} {{desc=@{attack4_special} }}") + input.ml15(name="attr_attack4" type="text" placeholder="attack/action name") + div + input.w40(name="attr_attack4_to_hit" type="text" placeholder="4") + div + input.w70.mr15(name="attr_attack4_dmg" type="text" placeholder="1d6") + div + input.w50(name="attr_attack4_dmgtype" type="text") + div + input.w50(name="attr_attack4_range" type="text") + div + input.w50(name="attr_attack4_reload" type="text") + div + input.w110.mr15(name="attr_attack4_special" type="text") + //- attack5 + .rowflex.nowrap + button(name="roll_attack5" type="roll" title="%{attack5}" value="@{whisper}&{template:stargate} {{title=@{attack5}}} @{show_name} {{[[d20+(@{attack5_to_hit})]]=[[d20+(@{attack5_to_hit})]]}} {{Damage=[[@{attack5_dmg}+0]] @{attack5_dmgtype} }} {{desc=@{attack5_special} }}") + input.ml15(name="attr_attack5" type="text" placeholder="attack/action name") + div + input.w40(name="attr_attack5_to_hit" type="text" placeholder="4") + div + input.w70.mr15(name="attr_attack5_dmg" type="text" placeholder="1d6+@{td}") + div + input.w50(name="attr_attack5_dmgtype" type="text") + div + input.w50(name="attr_attack5_range" type="text") + div + input.w50(name="attr_attack5_reload" type="text") + div + input.w110.mr15(name="attr_attack5_special" type="text") +//- --------------------------------------------------------------------------------- +//- --------------------------- BACKGORUND ---------------------------------------------- +//- --------------------------------------------------------------------------------- +main.background + section.racial_abilities.columnflex.nowrap.center + label Racial Abilities + textarea(name="attr_racial") + section.feats.columnflex.nowrap.center + label Feats + textarea(name="attr_feats") + section.class.columnflex.nowrap.center + label Class Abilities + textarea(name="attr_class_abilities") + section.equipment.columnflex.nowrap.center + label Equipment + textarea(name="attr_equipment") + section.prof.columnflex.nowrap.center + label Proficiencies + textarea(name="attr_proficiencies") + section.notes.columnflex.nowrap.center + label Notes + textarea(name="attr_notes") +//- --------------------------------------------------------------------------------- +//- ------------------------------ NPC ---------------------------------------------- +//- --------------------------------------------------------------------------------- +main.npc.gap + h1 NPC + .section.columnflex.nowrap + label.other NPC stuff + .rowflex.nowrap + span CR: + input.w40(name="attr_cr" type="number" placeholder="" title="Challenge Rating: @{cr}" value="") + span Speed + input.w40(name="attr_speed_npc" type="text" style="width:200px" placeholder="1m Fly(6m)" title="@{speed_npc}" value="") + .rowflex.nowrap + span Type: + input.w40(name="attr_type" type="text" style="width:350px" placeholder="Medium Humanoid(Scout 2)" title="Challenge Rating: @{type}" value="") +//- --------------------------------------------------------------------------------- +//- --------------------------- SETTINGS -------------------------------------------- +//- --------------------------------------------------------------------------------- +main.settings + section.settings.columnflex.nowrap.center + label Settings + .rowflex.nowrap + span(title="@{whisper}") Whisper rolls? + input(name="attr_whisper" title="@{whisper}" type="checkbox" value="/w gm") + .rowflex.nowrap + span(title="@{show_name}") Show name in rolls? + select(name="attr_show_name" title="@{show_name}") + option(value="{{subtitle=@{character_name} }}") Yes + option(value=" ") No + .rowflex.nowrap + span(title="@{npc}") NPC sheet? + input(name="attr_npc" title="@{npc}" type="checkbox" value="1") + .rowflex.nowrap + button(name="roll_hd" type="roll" title="%{hd}" value="@{whisper}&{template:stargate} {{color=green}} {{title=Short Rest}} @{show_name} !modbattr --silent --name @{character_name} --hp|{{Healing=[[@{hd}]]}}!!! {{desc=One roll of the Hit Dice.}}") Short Rest + button(name="roll_longrest" type="roll" title="%{longrest}" value="@{whisper}&{template:stargate} {{color=green}} {{title=Long Rest}} @{show_name} !modbattr --silent --name @{character_name} --hp|{{Healing=[[@{rank}@{hd}]]}}!!! {{desc=Rolls a number of Hit Dice equal to the characters level, and recovers that amount of health. }}") Long Rest + button(name="roll_td" type="roll" title="%{td}" value="@{whisper}&{template:stargate} {{title=Tension Die (@{td})}} @{show_name} {{Roll=[[@{td}]]}} {{desc=Rolls the current tension die for the episode. }}") Tension Dice + .rowflex.nowrap + label Custom roll + .rowflex.nowrap + button(name="roll_custom1" type="roll" value="@{whisper}@{custom1}") + input(type="text" name="attr_custom1" value="&{template:stargate} {{color=green}} {{title=Med Kit}} @{show_name} {{Healing=[[1d4]]}} {{desc=Heals someone with a medic kit. }}") + .rowflex.nowrap + button(name="roll_custom2" type="roll" value="@{whisper}@{custom2}") + input(type="text" name="attr_custom2" value="&{template:stargate} {{color=white}} {{title=Scientific Discovery}} @{show_name} {{DC=[[8+(@{wis_mod}[wisdom modifier])+(@{prof}[proficiency])]] Wisdom or Intelligence Save}} {{desc=Archeologist: As an action you can cause a target emotional and mental distress by using cultural taboos against them. If the target fails a Wisdom save (DC 8+ Intelligence modifier + Proficiency Bonus) you may spend a number of Eureka points. The target is stunned for a number of rounds equal to the Eureka points spent. A target that passes its save is immune to this ability for 24 hours (and possibly very upset). }}") + .rowflex.nowrap + button(name="roll_custom3" type="roll" value="@{whisper}@{custom3}") + input(type="text" name="attr_custom3" value="&{template:stargate} {{color=white}} {{title=Tension Die (@{td})}} @{show_name} {{Roll=[[@{td}]]}} {{desc=Rolls the current tension die for the episode. }}") + .rowflex.nowrap + button(name="roll_custom4" type="roll" value="@{whisper}@{custom4}") + input(type="text" name="attr_custom4" value="&{template:stargate} {{title=Tension Die (@{td})}} @{show_name} {{Roll=[[@{td}]]}} {{desc=Rolls the current tension die for the episode. }}") + section.other.columnflex.nowrap.center + label Other stats + .rowflex.nowrap + span Mission Points(MP): + input.w40(name="attr_mp" type="number" placeholder="" title="Mission Points @{mp}") + | / + input.w40(name="attr_mp_max" type="number" placeholder="" title="Total Mission Points @{mp|max}") + .rowflex.nowrap + span Eureka Points: + input.w40(name="attr_eureka" type="number" placeholder="" title="Eureka Points: @{eureka}" value="0") + | / + input.w40(name="attr_eureka_max" type="number" placeholder="" title="Max Eureka Points: @{eureka|max}") + .columnflex.nowrap + span Wounds/Ability Damage + textarea.dmg(name="attr_ability_damage") + section.changelog.columnflex.nowrap.center + button.txt-btn(name="roll_help" type="roll" value="@{whisper}&{template:stargate} {{title=[(Link)Sheet Userguide](https://wiki.roll20.net/Stargate) }} {{subtitle=Roll20 Wiki}} {{desc= (Right-click to open in a new tab)\n**Official Stargate RPG**\n**Roll20 Character Sheet**\n created by **Andreas J.**([@anduh_](https://twitter.com/anduh_)) }}") Sheet Documentation + br + h1 Changelog + label v.1.80 (June) + span * Simple NPC page + label v.1.70 (May) + span + | * replace page buttons + br + | * add datalists for race, origin, class + br + | * refactor sheet in PUG & SCSS + br + | * update the sheet to work with CSE + label v.1.55(Nov. 3rd) + span + | * more stats to track on Settings page + label v.1.50(Oct. 20th) + span + | * add Stargate Phoenix image to roll template + br + | * integrate ChatSetAttr commands to Short/Long Rest buttons + br + | * added whisper toggle to Saves + br + | * Link to sheet wiki page (button on settings page) + .ammo + .section.columnflex.nowrap + label.other Living Series + .rowflex.nowrap + span Stargaterpg.com username + input.w40(name="attr_living_series_user" type="text" placeholder="" value="" style="width:100px") + span(title="You can see your Roll20 id by going to your Roll20 profile page, and copying the numbers in the URL") Roll20 ID + input.w40(name="attr_roll20id" type="text" style="width:100px" title="You can see your Roll20 id by going to your Roll20 profile page, and copying the numbers in the URL" value="") + .rowflex.nowrap + span Stargaterpg.com character link + input.w40(name="attr_cahracter_link" type="text" style="width:350px" placeholder="The url to your character sheet" value="") + .ammo.grid + .section.columnflex.nowrap.middle.center + label Ammo Weapon 1 + input(name="attr_ammo1" type="number" value="0") + .section.columnflex.nowrap.middle.center + label Ammo Weapon 2 + input(name="attr_ammo2" type="number" value="0") + .section.columnflex.nowrap.middle.center + label Ammo Weapon 3 + input(name="attr_ammo3" type="number" value="0") + .section.columnflex.nowrap.middle.center + label Ammo Weapon 4 + input(name="attr_ammo4" type="number" value="0") diff --git a/Stargate-RPG/src/rolltemplate.html b/Stargate-RPG/src/rolltemplate.html deleted file mode 100644 index 85b76ad0f7..0000000000 --- a/Stargate-RPG/src/rolltemplate.html +++ /dev/null @@ -1,18 +0,0 @@ - - - -
-
- {{#title}}
{{title}}Stargate Phoenix logo
{{/title}} - {{#subtitle}}
{{subtitle}}
{{/subtitle}} -
-
- {{#allprops() title subtitle desc color}} -
{{key}}
-
{{value}}
- {{/allprops() title subtitle desc color}} - {{#desc}}
{{desc}}
{{/desc}} -
-
-
- diff --git a/Stargate-RPG/src/rolltemplate.pug b/Stargate-RPG/src/rolltemplate.pug new file mode 100644 index 0000000000..9211df3fca --- /dev/null +++ b/Stargate-RPG/src/rolltemplate.pug @@ -0,0 +1,19 @@ +rolltemplate.sheet-rolltemplate-stargate + .sheet-container(class="sheet-color-{{color}}") + .sheet-header + | {{#title}} + .sheet-title + | {{title}} + img.sheet-phoenix(src=`${url}SG-phoenix.png` alt="Stargate Phoenix logo") + | {{/title}} + | {{#subtitle}} + .sheet-subtitle {{subtitle}} + | {{/subtitle}} + .sheet-content + | {{#allprops() title subtitle desc color}} + .sheet-key {{key}} + .sheet-value {{value}} + | {{/allprops() title subtitle desc color}} + | {{#desc}} + .sheet-desc {{desc}} + | {{/desc}} diff --git a/Stargate-RPG/stargate.css b/Stargate-RPG/stargate.css index 8a96a6a525..f61826b6eb 100644 --- a/Stargate-RPG/stargate.css +++ b/Stargate-RPG/stargate.css @@ -1,26 +1,3 @@ -/*------------------------------------------------*\ - #GENERAL -\*------------------------------------------------*/ -.charsheet { - /* --------- Text ------------- */ - /* --------- Inputs ------------- */ - /* highlights empty fields with light pink, if the fields have placeholder text */ - /* higlight selected input with gray*/ - /* -----Hides up/down buttons on numberfields that don't need them ---*/ - /* ------- Buttons ---------- */ - /*-----------------------------------------------------------------*\ - #SECTIONS - \*-----------------------------------------------------------------*/ - /* --------- General Section Styling ------------- */ - /* ------------ PAGES ---------- */ - /* -------------- tab buttons ------------- */ - /* show the selected tab */ - /* shows/hides page buttons */ - /* ------------ Section Specific ---------- */ - /* ----------- page 1 ------------ */ - /* hp SECTION */ - /* -------- Page 3 -------- */ -} .charsheet input[type=range].progress-bar { width: 100px; } @@ -211,7 +188,7 @@ grid-template-areas: "name name name name " "attr skills hp condition" "attr skills prof condition" "attr skills ac condition" "attr skills speed bulk " "attr skills saves inventory" "attr attacks attacks attacks "; width: 850px; height: 1000px; - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png); + background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png"); background-repeat: no-repeat; background-size: 700px 700px; background-position: center; @@ -224,7 +201,7 @@ grid-template-areas: "racial feats " "class equipment" "prof notes "; width: 840px; height: 990px; - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png); + background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png"); background-repeat: no-repeat; background-size: 700px 700px; background-position: center; @@ -250,7 +227,7 @@ grid-template-areas: "settings other " "ammo changelog"; width: 840px; height: 990px; - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png); + background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png"); background-repeat: no-repeat; background-size: 700px 700px; background-position: center; @@ -282,7 +259,7 @@ grid-template-rows: 1fr 1fr; width: 840px; height: 990px; - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png); + background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/bg.png"); background-repeat: no-repeat; background-size: 700px 700px; background-position: center; @@ -346,7 +323,7 @@ grid-area: attr; } .charsheet .attr .stat { - background-image: url(https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/attr.png); + background-image: url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Stargate-RPG/images/attr.png"); background-repeat: no-repeat; background-size: 124px 113px; width: 120px; @@ -650,9 +627,8 @@ .charsheet section.changelog { grid-area: changelog; } -.charsheet section.changelog img.phoenix { - width: 150px; - height: 150px; +.charsheet section.changelog button[type=roll] { + margin-bottom: 10px; } .charsheet div.ammo.grid { grid-area: ammo; @@ -667,13 +643,9 @@ padding: 0px 0px 5px 0px; } .charsheet div.ammo div { - margin: 7px 1px 7px 1px; + margin: 7px 1px; } -/*------------------------------------*\ - #ROLL TEMPLATES -\*------------------------------------*/ -/* Smaller margins - remove these if you want the huge default left margin */ .sheet-rolltemplate-stargate { margin-left: -37px; } @@ -687,7 +659,6 @@ border-radius: 3px; } -/* Header formatting - title and subtitle */ .sheet-rolltemplate-stargate .sheet-header { background-color: var(--header-bg-color); color: var(--header-text-color); @@ -702,7 +673,6 @@ font-weight: bold; } -/* Stargate Phoenix logo*/ .sheet-rolltemplate-stargate .sheet-title img.sheet-phoenix { width: 33px; height: 33px; @@ -713,14 +683,11 @@ font-size: 0.9em; } -/* example colors */ .sheet-rolltemplate-stargate .sheet-container { - /* this is the default color */ --header-bg-color: #a83521; --header-text-color: #FFF; } -/* alt template colors */ .sheet-rolltemplate-stargate .sheet-container.sheet-color-green { --header-bg-color: #008000; } @@ -734,13 +701,10 @@ --header-text-color: #000; } -/* Allprops part */ .sheet-rolltemplate-stargate .sheet-content { display: grid; background: #FFF; - /* Header formatting - modify the column layout below */ grid-template-columns: auto auto; - /* Line height to match default roll template */ line-height: 1.4em; } @@ -748,24 +712,17 @@ padding: 5px; } -/* Left column */ .sheet-rolltemplate-stargate .sheet-content .sheet-key { font-weight: bold; padding-right: 10px; text-align: right; } -/* Empty rule, use this if you want to change the right column -.sheet-rolltemplate-stargate .sheet-value { -} -*/ -/* Make even-numbered rows grey */ .sheet-rolltemplate-stargate .sheet-content :nth-child(4n+3), .sheet-rolltemplate-stargate .sheet-content :nth-child(4n) { background: #EEE; } -/* Description field */ .sheet-rolltemplate-stargate .sheet-desc { grid-column: span 2; padding: 5px; diff --git a/Stargate-RPG/stargate.html b/Stargate-RPG/stargate.html index c33ba12969..efcef32717 100644 --- a/Stargate-RPG/stargate.html +++ b/Stargate-RPG/stargate.html @@ -1,777 +1,584 @@
- - - - - - Sheet Version: + + + + + Sheet Version:
- - - - - - - +
- -
-
-
- +
- +
- -
- + +
-
-
- +
- +
- +
- +
- +
- +
-
- - - -
- - - + +
- - - + +
- - - + +
- - - + +
- - - + +
- - - + +
-
- - - -

Skills

-
- - - - (dex) + + + (dex)
-
- - - - (wis) + + + (wis)
-
- - - - (str) + + + (str)
-
- - - - (wis) + + + (wis)
-
- - - - (cha) + + + (cha)
-
- - - - (int) + + + (int)
-
- - - - (int) + + + (int)
-
- - - - (wis) + + + (wis)
-
- - - - (cha) + + + (cha)
-
- - - - (int) + + + (int)
- - -
- - - - (wis) + + + (wis)
-
- - - - (int) + + + (int)
-
- - - - (wis) + + + (wis)
-
- - - - (cha) + + + (cha)
-
- - - - (cha) + + + (cha)
-
- - - - (dex) + + + (dex)
-
- - - - (int) + + + (int)
-
- - - - (dex) + + + (dex)
-
- - - - (dex) + + + (dex)
-
- - - - (wis) + + + (wis)
-
- - - -
- - / - + / +
-
- - / - + / +
- - - -
-

CONDITION

+

CONDITION

- - Normal + Normal
- - Disadv ability checks + Disadv ability checks
- - speed halved + speed halved
- - disadv attacks, saves + disadv attacks, saves
- - HP max halved + HP max halved
- - speed zero + speed zero
- - death + death
- - - -
- +
- - + +
- - + +
- - - -
- +
- - / - + / +
- - - -
- +
- +
- - - - Sucesses + + + Sucesses
- - - - Failures + + + Failures
- - - -

Saves

- - - + + +
- - - + + +
- - - + + +
- - - + + +
- - - + + +
- - - + + +
- - - -
-

Tactical Vest Bulk

- +

Tactical Vest Bulk

+
- - - - - - -

Inventory

- - - -
- Attack/Action Name - to hit - dmg - type - range - Cap/Reload - special - - +
Attack/Action Nameto hitdmgtyperangeCap/Reloadspecial
- - + +
- +
- +
- +
- +
- +
- +
- -
- - + +
- +
- +
- +
- +
- +
- +
- -
- - + +
- +
- +
- +
- +
- +
- +
- -
- - + +
- +
- +
- +
- +
- +
- +
- -
- - + +
- +
- +
- +
- +
- +
- +
-
-
- - - - -
-
-
-
-
-
-
-
- - - -

NPC

-
- -
- CR: - - Speed - + +
CR: + Speed + +
+
Type: +
-
- Type: - -
- - - - - -
-
- -
- Whisper rolls? - +
Whisper rolls? +
- -
- Show name in rolls? +
Show name in rolls?
- -
- NPC sheet? - +
NPC sheet? +
-
- - - -
+ + + +
- +
- +
- +
- +
-
-
- Mission Points(MP): - - / - +
Mission Points(MP): + / +
-
- Eureka Points: - - / - +
Eureka Points: + / +
-
- Wounds/Ability Damage - +
Wounds/Ability Damage +
-
- - - * more stats to track on Settings page - - * add Stargate Phoenix image to roll template
- * integrate ChatSetAttr commands to Short/Long Rest buttons
- * added whisper toggle to Saves
- * Link to sheet wiki page (button on settings page)
+
+

Changelog

+ * Simple NPC page + * replace page buttons
* add datalists for race, origin, class
* refactor sheet in PUG & SCSS
* update the sheet to work with CSE
+ * more stats to track on Settings page + * add Stargate Phoenix image to roll template
* integrate ChatSetAttr commands to Short/Long Rest buttons
* added whisper toggle to Saves
* Link to sheet wiki page (button on settings page)
- -
- -
- Stargaterpg.com username - - Roll20 ID - + +
Stargaterpg.com username + Roll20 ID + +
+
Stargaterpg.com character link +
-
- Stargaterpg.com character link - -
-
- +
- +
- +
- +
-
-
-
- {{#title}}
{{title}}Stargate Phoenix logo
{{/title}} - {{#subtitle}}
{{subtitle}}
{{/subtitle}} +
{{#title}} +
{{title}}Stargate Phoenix logo
{{/title}} + {{#subtitle}} +
{{subtitle}}
{{/subtitle}}
-
- {{#allprops() title subtitle desc color}} +
{{#allprops() title subtitle desc color}}
{{key}}
-
{{value}}
- {{/allprops() title subtitle desc color}} - {{#desc}}
{{desc}}
{{/desc}} +
{{value}}
{{/allprops() title subtitle desc color}} + {{#desc}} +
{{desc}}
{{/desc}}
- - diff --git a/Stargate-RPG/stargate.pug b/Stargate-RPG/stargate.pug index d39203249f..1105eaacc9 100644 --- a/Stargate-RPG/stargate.pug +++ b/Stargate-RPG/stargate.pug @@ -1,7 +1,7 @@ -include src/core.html +include src/core.pug -include src/rolltemplate.html +include src/rolltemplate.pug include src/data.pug