new offworlders character sheets (#5297)

This commit is contained in:
Surazal87
2019-07-22 17:01:19 -05:00
committed by Cassie Levett
parent 59bd4d36c2
commit 8d5e31c58a
4 changed files with 740 additions and 0 deletions
+488
View File
@@ -0,0 +1,488 @@
.sheet-block-a,
.sheet-block-switch:checked~.sheet-block-b {
display: block;
}
.sheet-block-b,
.sheet-block-switch:checked~.sheet-block-a {
display: none;
}
.sheet-main {
display: grid;
width: 800px;
height: 900px;
grid-template-columns: 1min-content;
grid-template-rows: 1min-content 1min-content 1min-content;
grid-template-areas: "header" "common" "footer";
}
.sheet-header {
display: grid;
grid-template-columns: 1min-content 1min-content 1max-content 1min-content 1max-content 1min-content 1max-content 1min-content;
grid-template-rows: 1min-content 1min-content 1min-content 1min-content;
grid-template-areas: "named namedvalue namedvalue namedvalue strength strengthvalue agility agilityvalue" "class classvalue classvalue classvalue intelligence intvalue willpower willpowervalue" "health hpvalue armor armorvalue supply supplyvalue credits creditsvalue" "maxhp maxhpvalue . . maxsupply maxsupplyvalue . .";
grid-area: header;
background-color: silver;
padding-top: 5px;
padding-bottom: 5px;
}
.sheet-named {
grid-area: named;
text-align: right;
vertical-align: middle;
}
.sheet-namedvalue {
grid-area: namedvalue;
}
.sheet-strength {
grid-area: strength;
text-align: right;
vertical-align: middle;
}
.sheet-strengthvalue {
grid-area: strengthvalue;
}
.sheet-agility {
grid-area: agility;
text-align: right;
vertical-align: middle;
}
.sheet-agilityvalue {
grid-area: agilityvalue;
}
.sheet-class {
grid-area: class;
text-align: right;
vertical-align: middle;
}
.sheet-classvalue {
grid-area: classvalue;
}
.sheet-intelligence {
grid-area: intelligence;
text-align: right;
vertical-align: middle;
}
.sheet-intvalue {
grid-area: intvalue;
}
.sheet-willpower {
grid-area: willpower;
text-align: right;
vertical-align: middle;
}
.sheet-willpowervalue {
grid-area: willpowervalue;
}
.sheet-health {
grid-area: health;
text-align: right;
vertical-align: middle;
}
.sheet-maxhp {
grid-area: maxhp;
text-align: right;
vertical-align: middle;
}
.sheet-maxhpvalue {
grid-area: maxhpvalue;
}
.sheet-hpvalue {
grid-area: hpvalue;
}
.sheet-armor {
grid-area: armor;
text-align: right;
vertical-align: middle;
}
.sheet-armorvalue {
grid-area: armorvalue;
}
.sheet-supply {
grid-area: supply;
text-align: right;
vertical-align: middle;
}
.sheet-supplyvalue {
grid-area: supplyvalue;
}
.sheet-maxsupply {
grid-area: maxsupply;
text-align: right;
vertical-align: middle;
}
.sheet-maxsupplyvalue {
grid-area: maxsupplyvalue;
}
.sheet-credits {
grid-area: credits;
text-align: right;
vertical-align: middle;
}
.sheet-creditsvalue {
grid-area: creditsvalue;
}
.sheet-common {
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
grid-template-rows: 1min-content 1min-content 1min-content 1min-content 1min-content;
grid-template-areas: "skills skills skills skills" "sk1 sk2 sk3 sk4" "abbilities abbilities abbilities abbilities" "geek psychic outlaw warrior" "look look gear gear";
grid-area: common;
padding: 5px;
}
.sheet-skills {
padding-top: 5px;
grid-area: skills;
}
.sheet-common input {
margin-right: 5px;
}
.sheet-footer input {
margin-right: 5px;
}
.sheet-sk1 {
grid-area: sk1;
}
.sheet-sk2 {
grid-area: sk2;
}
.sheet-sk3 {
grid-area: sk3;
}
.sheet-sk4 {
grid-area: sk4;
}
.sheet-abbilities {
padding-top: 5px;
grid-area: abbilities;
}
.sheet-geek {
grid-area: geek;
}
.sheet-psychic {
grid-area: psychic;
}
.sheet-outlaw {
grid-area: outlaw;
}
.sheet-warrior {
grid-area: warrior;
}
.sheet-look {
padding-top: 10px;
grid-area: look;
}
.sheet-gear {
padding-top: 10px;
grid-area: gear;
}
.sheet-footer {
display: grid;
grid-template-columns: 1min-content 1max-content 1min-content 1max-content 1min-content;
grid-template-rows: 1min-content 1min-content 1min-content 1min-content;
grid-template-areas: "xp advancement advancement advancement advancement" "xpvalue newabb xptext1 newatt xptext2" "xpvalue newabb xptext1 newatt xptext2" "xpvalue newabb xptext1 newatt xptext2";
grid-area: footer;
background-color: silver;
padding: 5px;
}
.sheet-xp {
grid-area: xp;
}
.sheet-advancement {
grid-area: advancement;
}
.sheet-xpvalue {
width: 90%;
grid-area: xpvalue;
}
.sheet-newabb {
grid-area: newabb;
}
.sheet-xptext1 {
grid-area: xptext1;
}
.sheet-newatt {
grid-area: newatt;
}
.sheet-xptext2 {
grid-area: xptext2;
}
.sheet-section {
border-style: solid;
}
.sheet-namedinput {
grid-area: namedinput;
width: 175%;
}
.sheet-classinput {
grid-area: classinput;
width: 100%;
}
.sheet-look textarea {
width: 90%;
height: 75%;
}
.sheet-gear textarea {
width: 90%;
height: 60%;
}
label {
padding-bottom: 5px;
padding-top: 10px;
}
span {
padding-left: 5px;
padding-right: 5px;
padding-top: 10px;
padding-bottom: 10px;
}
.sheet-ship {
display: grid;
width: 800px;
height: 900px;
grid-template-columns: 1max-content;
grid-template-rows: 1min-content 1min-content 1min-content;
grid-template-areas: "shipheader" "shipcommon" "shipfooter";
}
.sheet-shipheader {
display: grid;
grid-template-columns: 2fr 1fr 1min-content 1fr 1min-content 1fr 1min-content;
grid-template-rows: 1min-content 1min-content;
grid-template-areas: "shipname hull hullv shiparmor shiparmorv fuel fuelv" "shipnamev hullmax hullmaxv dmg dmgv fuelmax fuelmaxv";
grid-area: shipheader;
background-color: silver;
padding: 5px;
}
.sheet-shipname {
grid-area: shipname;
}
.sheet-shipnamev {
grid-area: shipnamev;
}
.sheet-hull {
grid-area: hull;
text-align: right;
}
.sheet-hullmax {
grid-area: hullmax;
text-align: right;
}
.sheet-hullv {
grid-area: hullv;
}
.sheet-hullmaxv {
grid-area: hullmaxv;
}
.sheet-dmg {
grid-area: dmg;
text-align: right;
}
.sheet-dmgv {
grid-area: dmgv;
}
.sheet-fuel {
grid-area: fuel;
text-align: right;
}
.sheet-fuelmax {
grid-area: fuelmax;
text-align: right;
}
.sheet-fuelv {
grid-area: fuelv;
}
.sheet-fuelmaxv {
grid-area: fuelmaxv;
}
.sheet-shiparmor {
grid-area: shiparmor;
text-align: right;
}
.sheet-shiparmorv {
grid-area: shiparmorv;
}
.sheet-shipcommon {
display: grid;
grid-template-columns: 1min-content 1min-content;
grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
grid-template-areas: "upgrades upgrades" "addarmor addarmortxt" "advelec advelectxt" "advdrive advdrivetxt" "aftbrn aftbrntxt" "fueltnks fueltnkstxt" "maneuvr maneuvrtxt" "passanger passangertxt" "cargo cargotxt" "medbay medbaytxt" "pwrweapons pwrweaponstxt" "shuttle shuttletxt";
grid-area: shipcommon;
}
.sheet-shipcommon input {
margin-right: 5px;
}
.sheet-upgrades {
grid-area: upgrades;
}
.sheet-addarmor {
grid-area: addarmor;
}
.sheet-advelec {
grid-area: advelec;
}
.sheet-advdrive {
grid-area: advdrive;
}
.sheet-fueltnks {
grid-area: fueltnks;
}
.sheet-passanger {
grid-area: passanger;
padding-right: 5px;
}
.sheet-cargo {
grid-area: cargo;
}
.sheet-medbay {
grid-area: medbay;
}
.sheet-pwrweapons {
grid-area: pwrweapons;
}
.sheet-shuttle {
grid-area: shuttle;
}
.sheet-addarmortxt {
grid-area: addarmortxt;
}
.sheet-advelectxt {
grid-area: advelectxt;
}
.sheet-advdrivetxt {
grid-area: advdrivetxt;
}
.sheet-aftbrn {
grid-area: aftbrn;
}
.sheet-aftbrntxt {
grid-area: aftbrntxt;
}
.sheet-fueltnkstxt {
grid-area: fueltnkstxt;
}
.sheet-maneuvrtxt {
grid-area: maneuvrtxt;
}
.sheet-maneuvr {
grid-area: maneuvr;
}
.sheet-passangertxt {
grid-area: passangertxt;
}
.sheet-cargotxt {
grid-area: cargotxt;
}
.sheet-medbaytxt {
grid-area: medbaytxt;
}
.sheet-pwrweaponstxt {
grid-area: pwrweaponstxt;
}
.sheet-shuttletxt {
grid-area: shuttletxt;
}
.sheet-shipfooter {
grid-area: shipfooter;
}
.sheet-shipfooter textarea {
width: 100%;
height: 75%;
}
+244
View File
@@ -0,0 +1,244 @@
<div>
<input type="checkbox" class="sheet-block-switch"> Ship Sheet
<div class="sheet-block-a">
<div class="main">
<div class="header">
<div class="named"><span>NAME</span></div>
<div class="namevalue">
<input type="text" name="attr_character_name" class="namedinput" />
</div>
<div class="strength"><span>STRENGTH</span></div>
<div class="strengthvalue">
<input type="number" min="-1" max="3" value=0 name="attr_str" />
<button name="roll_strength" type="roll" value="&{template:default} {{name=@{character_name}}} {{attack=[[2d6cs12+(@{str})+(?{Modifier|0})]]}} {{Attribute= Strength}}" />
</div>
<div class="agility"><span>AGILITY</span></div>
<div class="agilityvalue">
<input type="number" min="-1" max="3" value=0 name="attr_agi" />
<button name="roll_agility" type="roll" value="&{template:default} {{name=@{character_name}}} {{attack=[[2d6cs12+(@{agi})+(?{Modifier|0})]]}} {{Attribute= Agility}}" />
</div>
<div class="class"><span>CLASS</span></div>
<div class="classvalue">
<select name="attr_class" class="classinput">
<option value="geek">Geek</option>
<option value="psychic">Psychic</option>
<option value="outlaw">Outlaw</option>
<option value="Warrior">Warrior</option>
</select>
</div>
<div class="intelligence"><span>INTELLIGENCE</span></div>
<div class="intvalue">
<input type="number" min="-1" max="3" value=0 name="attr_int" />
<button name="roll_intelligence" type="roll" value="&{template:default} {{name=@{character_name}}} {{attack=[[2d6cs12+(@{int})+(?{Modifier|0})]]}} {{Attribute= Intelligence}}" />
</div>
<div class="willpower"><span>WILLPOWER</span></div>
<div class="willpowervalue">
<input type="number" min="-1" max="3" value=0 name="attr_will" />
<button name="roll_willpower" type="roll" value="&{template:default} {{name=@{character_name}}} {{attack=[[2d6cs12+(@{will})+(?{Modifier|0})]]}} {{Attribute= Willpower}}" />
</div>
<div class="health"><span>HEALTH</span></div>
<div class="maxhp"><span>MAX</span></div>
<div class="maxhpvalue">
<input type="number" min="-1" max="3" value="@{str}+@{agi}+12" name="attr_hp_max" />
</div>
<div class="hpvalue">
<input type="number" min="0" value="@{str}+@{agi}+12" name="attr_hp" />
</div>
<div class="armor"><span>ARMOR</span></div>
<div class="armorvalue">
<input type="number" min="0" value=0 name="attr_armor" />
</div>
<div class="supply"><span>SUPPLY</span></div>
<div class="supplyvalue">
<input type="number" min="0" max="3" value=3 name="attr_supply" />
</div>
<div class="maxsupply"><span>MAX</span></div>
<div class="maxsupplyvalue">
<input type="number" value=3 disabled=true name="attr_supply_max" />
</div>
<div class="credits"><span>CREDITS</span></div>
<div class="creditsvalue">
<input type="number" min="0" value=3 name="attr_credits" />
</div>
</div>
<div class="common">
<div class="skills">
<label>SKILLS</label>
</div>
<div class="sk1">
<input name="attr_ATHLETICS" type="checkbox" />ATHLETICS
<br/>
<input name="attr_CULTURE" type="checkbox" />CULTURE
</div>
<div class="sk2">
<input name="attr_MANIPULATION" type="checkbox" />MANIPULATION
<br/>
<input name="attr_PILOT" type="checkbox" />PILOT
</div>
<div class="sk3">
<input name="attr_SCIENCE" type="checkbox" />SCIENCE
<br/>
<input name="attr_SNEAK" type="checkbox" />SNEAK
</div>
<div class="sk4">
<input name="attr_SURVIVAL" type="checkbox" />SURVIVAL
<br/>
<input name="attr_TECH" type="checkbox" />TECH
</div>
<div class="abbilities">
<label>ABILLITIES</label>
</div>
<div class="geek">
<i>GEEK</i>
<br/>
<input name="attr_ANALYTICAL" type="checkbox" />ANALYTICAL
<br/>
<input name="attr_CHEMIST" type="checkbox" />CHEMIST
<br/>
<input name="attr_DRONE" type="checkbox" />DRONE CONTROLLER
<br/>
<input name="attr_HIJACK" type="checkbox" />HIJACK
<br/>
<input name="attr_MEDIC" type="checkbox" />MEDIC
<br/>
<input name="attr_POLYMATH" type="checkbox" />POLYMATH
</div>
<div class="psychic">
<i>PSYCHIC</i>
<br/>
<input name="attr_BLAST" type="checkbox" />BLAST
<br/>
<input name="attr_FORCE" type="checkbox" />FORCE WALL
<br/>
<input name="attr_JUMP" type="checkbox" />JUMP
<br/>
<input name="attr_PREMONITION" type="checkbox" />PREMONITION
<br/>
<input name="attr_SCANNER" type="checkbox" />SCANNER
<br/>
<input name="attr_TELEKINESIS" type="checkbox" />TELEKINESIS
</div>
<div class="outlaw">
<i>OUTLAW</i>
<br/>
<input name="attr_CHEAP" type="checkbox" />CHEAP SHOT
<br/>
<input name="attr_GHOST" type="checkbox" />GHOST
<br/>
<input name="attr_LUCKY" type="checkbox" />LUCKY
<br/>
<input name="attr_RECKLESS" type="checkbox" />RECKLESS
<br/>
<input name="attr_SHOOT" type="checkbox" />SHOOT FIRST
<br/>
<input name="attr_SMUGGLE" type="checkbox" />SMUGGLE
</div>
<div class="warrior">
<i>WARRIOR</i>
<br/>
<input name="attr_BRUTE" type="checkbox" />BRUTE
<br/>
<input name="attr_DEAD" type="checkbox" />DEAD-EYE
<br/>
<input name="attr_HARDY" type="checkbox" />HARDY
<br/>
<input name="attr_LIFTING" type="checkbox" />HEAVY LIFTING
<br/>
<input name="attr_UNSTOPPABLE" type="checkbox" />UNSTOPPABLE
<br/>
<input name="attr_INSTINCTS" type="checkbox" />VETERAN'S INSTINCTS
</div>
<div class="look">
<label>LOOK</label>
<textarea name="attr_look" rows="10"></textarea>
</div>
<div class="gear">
<label>GEAR</label>
DAMAGE
<button name="roll_damage" type="roll" value="&{template:default} {{name=@{character_name}}} {{attack=[[?{Weapon?|Unarmed,2d6kl1|Light,1d6|Medium,1d6+1|Heavy,1d6+2}+(?{Modifier|0})]]}}"></button>
<textarea name="attr_gear" rows="10"></textarea>
</div>
</div>
<div class="footer">
<div class="xp">
<label>XP</label>
</div>
<div class="advancement">
<label>ADVANCEMENT</label>
</div>
<div class="xpvalue">
<input type="number" min="0" value=0 name="attr_xp" />
</div>
<div class="newabb">
<input name="attr_newabb1" type="checkbox" />GET A NEW CLASS ABILITY
<br/>
<input name="attr_newabb2" type="checkbox" />GET A NEW CLASS ABILITY
<br/>
<input name="attr_newabb3" type="checkbox" />GET A NEW CLASS ABILITY
</div>
<div class="xptext1">10XP
<br/>10XP
<br/>10XP
</div>
<div class="newatt">
<input name="attr_newatt1" type="checkbox" />INCREASE AN ATTRIBUTE BY 1 (MAX +2)
<br/>
<input name="attr_newatt2" type="checkbox" />INCREASE AN ATTRIBUTE BY 1 (MAX +2)
<br/>
<input name="attr_newatt3" type="checkbox" />INCREASE AN ATTRIBUTE BY 1 (MAX +3)
</div>
<div class="xptext2">10XP
<br/>10XP
<br/>20XP
</div>
</div>
</div>
</div>
<div class="sheet-block-b">
<div class="ship">
<div class="shipheader">
<div class="shipname">SHIP NAME</div>
<div class="shipnamev"><input type="text" name="attr_ship_name" /></div>
<div class="hull">HULL</div>
<div class="hullmax">MAX</div>
<div class="hullv"><input type="number" min="0" value="15" name="attr_hull" /></div>
<div class="hullmaxv"><input type="number" min="0" value="15" name="attr_hull_max" /></div>
<div class="dmg">EXTRA DAMAGE</div>
<div class="dmgv"><input type="number" min="0" value="0" name="attr_shpdmg" />
<button name="roll_shp_damage" type="roll" value="&{template:default} {{name=@{ship_name}}} {{attack=[[1d6+(@{shpdmg})+(?{Modifier|0})]]}}" /></div>
<div class="fuel">FUEL</div>
<div class="fuelmax">MAX</div>
<div class="fuelv"><input type="number" min="0" value="4" name="attr_fuel" /></div>
<div class="fuelmaxv"><input type="number" min="0" value="4" name="attr_fuel_max" /></div>
<div class="shiparmor">ARMOR</div>
<div class="shiparmorv"><input type="number" min="0" value="0" name="attr_ship_armor" /></div>
</div>
<div class="shipcommon">
<div class="upgrades"><label>UPGRADES</label></div>
<div class="addarmor"><input name="attr_upg_armor" type="checkbox" />ADDITIONAL ARMOR</div>
<div class="advelec"><input name="attr_upg_elec" type="checkbox" />ADVANCED ELECTRONICS</div>
<div class="advdrive"><input name="attr_upg_drive" type="checkbox" />ADVANCED DRIVE</div>
<div class="aftbrn"><input name="attr_upg_aftbrn" type="checkbox" />AFTERBURNERS</div>
<div class="fueltnks"><input name="attr_upg_fuel" type="checkbox" />FUEL TANKS</div>
<div class="maneuvr"><input name="attr_upg_maneuver" type="checkbox" />HIGH MANEUVERABILITY</div>
<div class="passanger"><input name="attr_upg_passenger" type="checkbox" />LUXURY PASSENGER QUARTERS</div>
<div class="cargo"><input name="attr_upg_cargo" type="checkbox" />MASSIVE CARGO HOLD</div>
<div class="medbay"><input name="attr_upg_medbay" type="checkbox" />MEDBAY</div>
<div class="pwrweapons"><input name="attr_upg_wpn" type="checkbox" />MORE POWERFUL WEAPONS</div>
<div class="shuttle"><input name="attr_upg_shuttle" type="checkbox" />SHUTTLE BAY</div>
<div class="addarmortxt">+1 armor.</div>
<div class="advelectxt">High-end scanners, communicators, sensors, etc.</div>
<div class="advdrivetxt">For each interstellar trip, you can choose either to take half the time or use half the amount of fuel.</div>
<div class="aftbrntxt">You may spend 1 Fuel to get +1 to a single pilot roll to evade, outrun, or maneuver.</div>
<div class="fueltnkstxt">Max drive fuel +2.</div>
<div class="maneuvrtxt">If you dont have the Pilot skill, you count as having it in situations where maneuverability is relevant. If you already have the pilot skill, you may choose to reroll both dice in these situations, instead of just one.</div>
<div class="passangertxt">For the crew who wants to attract a certain class of clientele.</div>
<div class="cargotxt">Large enough to transport smaller vessels or a huge amount of goods.</div>
<div class="medbaytxt">Advanced, automated medical equipment. Characters resting in a medbay heal all their HP instead of half their total.</div>
<div class="pwrweaponstxt">+1 damage.</div>
<div class="shuttletxt">Comes with a small shuttle which can fly independently, but cannot travel between stars on its own.</div>
</div>
<div class="shipfooter"><label>LOOK</label><textarea name="attr_gear" rows="10"></textarea></div>
</div>
</div>
</div>
Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

+8
View File
@@ -0,0 +1,8 @@
{
"html":"offworlders.html" ,
"css":"offworlders.css",
"authors":"Sura",
"roll20userid":"555406",
"preview":"offworlders.png",
"instructions":"Character sheet for Offworlders written by Chirs P. Wolf & Olivia Gulin."
}