diff --git a/Shadowrun5thEdition/Shadowrun5thEdition.css b/Shadowrun5thEdition/Shadowrun5thEdition.css index 7b188aebd0..abd0c500f3 100644 --- a/Shadowrun5thEdition/Shadowrun5thEdition.css +++ b/Shadowrun5thEdition/Shadowrun5thEdition.css @@ -56,8 +56,7 @@ font-weight: normal; margin: 0px; text-align: center; - vertical-align: middle; - width: 3em;} + vertical-align: middle;} input::placeholder { color: #b8b7b6;} @@ -168,70 +167,59 @@ .sheet-tabs div {display: inline-block;} - .sheet-tabs input[type="radio"], - .sheet-tabs input[type="checkbox"] { - height : 18px; - position: absolute; - top : 80%;} - - .sheet-tab-whisper input[type="radio"] { - width: 6%;} - - .sheet-tab-toggles input[type="checkbox"]:nth-of-type(1) { - width: 7%;} - - .sheet-tab-toggles input[type="checkbox"]:nth-of-type(2) { - width: 8%;} - - .sheet-tab-col input[type="radio"]:nth-of-type(4), - .sheet-tab-col input[type="radio"]:nth-of-type(5), - .sheet-tab-col input[type="radio"]:nth-of-type(6), - .sheet-tab-col input[type="radio"]:nth-of-type(7) { - width: 5.5%;} - - .sheet-tabs input[type="radio"]:nth-of-type(8) { - width: 6%;} - - .sheet-tabs input[type="radio"]:nth-of-type(9) { - width: 2%;} - - .sheet-tabs input[type="radio"] + span, - .sheet-tabs input[type="checkbox"] + span { + .sheet-tabs button[type="action"] { background-color: #333; border-radius : 2px; border : 1px solid #000; box-shadow : inset 0px 0px 3px 1px #7c7c7c; color : #fff; font-family : sans-serif; + font-size : 1em; font-weight : bolder; - padding : 3px;} + text-transform : capitalize; + padding : 5px;} - .sheet-tabs input[type="radio"]:checked + span, - .sheet-tabs input[type="checkbox"]:checked + span { + .sheet-tabs input[value*="gm"] + button[type="action"], + .sheet-tabs input[value*="wounds"] + button[type="action"], + .sheet-tabs input[value*="Modifiers"] + button[type="action"], + .sheet-tabs input[value*="edge"] + button[type="action"], + .sheet-tabs input[value*="core"] ~ button[name*="core"], + .sheet-tabs input[value*="arms"] ~ button[name*="arms"], + .sheet-tabs input[value*="augs"] ~ button[name*="augs"], + .sheet-tabs input[value*="gear"] ~ button[name*="gear"], + .sheet-tabs input[value*="magic"] ~ button[name*="magic"], + .sheet-tabs input[value*="matrix"] ~ button[name*="matrix"], + .sheet-tabs input[value*="social"] ~ button[name*="social"], + .sheet-tabs input[value*="vehicle"] ~ button[name*="vehicle"], + .sheet-tabs input[value*="options"] ~ button[name*="options"] { background-color: #610b0d; box-shadow : inset 0px 0px 3px 1px #e31715; color : #fff;} - .sheet-tab-col input[type="radio"] + span:last-child {font-family: pictos;} + .sheet-tab-col button[type="action"]:last-child { + font-family: pictos; + text-transform: lowercase;} .sheet-tab-whisper, .sheet-tab-toggles { - margin-left : 1.5%; - margin-right: 6%;} + margin-left : 1%; + margin-right: 5%;} - .sheet-tabs span.sheet-d6 { + .sheet-tabs button[type="roll"] { color : #fff; - font-size : 1.7em; - position : relative; - top : -3px; - vertical-align: middle;} + font-family : "dicefontd6"; + font-size : 2.5em; + vertical-align: top;} + + .sheet-tabs button[type="roll"]:hover { + text-shadow: 1px 1px 2px black, 0 0 25px red, 0 0 5px #e31715;} .sheet-tabs img { vertical-align: top; width : 50%;} .sheet-tab-sheet { - position: relative;} + width: 35%;} /***** NPC TABS CUSTOMIZATIONS *****/ .sheet-sheet_type[value="pc"] ~ .sheet-tabs div.sheet-tab-sheet, @@ -240,15 +228,11 @@ display: none;} .sheet-sheet_type:not([value="pc"]) ~ .sheet-tabs { - margin-bottom: -1.5%;} - - .sheet-sheet_type:not([value="pc"]) ~ .sheet-tabs input[type="radio"], - .sheet-sheet_type:not([value="pc"]) ~ .sheet-tabs input[type="checkbox"] { - top: 13%;} - - .sheet-sheet_type:not([value="pc"]) ~ .sheet-tabs input[type="radio"] {width: 9%;} - .sheet-sheet_type:not([value="pc"]) ~ .sheet-tabs input[type="checkbox"] {width: 12%;} - .sheet-sheet_type:not([value="pc"]) ~ .sheet-tabs input[type="checkbox"]:nth-of-type(3) {width: 8%;} + background : black; + margin-bottom: -1.5%; + padding : 2%; + position : relative; + width : 720px;} /********************************************************************************************************/ /**************************************** START OF THE PC SHEET *******************************************/ @@ -265,7 +249,7 @@ .sheet-pc button > h2:hover, .sheet-pc button > span:hover, .sheet-pc label > button[type="roll"]:hover, - .sheet-pc .sheet-con-track input[type="radio"]:hover ~ h2 { + .sheet-pc .sheet-con-track button[type="action"]:hover { color : #fff; text-shadow: 1px 1px 2px black, 0 0 25px red, 0 0 5px #610b0d;} @@ -608,10 +592,11 @@ vertical-align: top; width : 47%;} - .sheet-con-track h2 { + .sheet-con-track button[type="action"] { + font-size : 1em; + font-weight : bold; margin-bottom: -5px; padding-left : 20px; - text-align : center; width : 100%;} .sheet-condition-box .sheet-display, @@ -636,19 +621,6 @@ text-align : center; width : 60%;} - .sheet-con-track input[type="checkbox"] { - left : 25px; - top : 20px; - width: 150px;} - - .sheet-con-track input[type="radio"]:first-child { - float : left; - height : 20px; - left : 31px; - margin-right: -147px; - top : 3px; - width : 146px;} - /***** CONDITION MONITOR SQUARES *****/ .sheet-squares { margin-left: 20%; @@ -684,7 +656,8 @@ margin-right : -7px;} .sheet-squares input[type="radio"]:checked ~ input[type="radio"] + span, - .sheet-con-track input[type="radio"]:checked ~ .sheet-squares span { + .sheet-con-track input[type="radio"]:checked ~ .sheet-squares span, + .sheet-con-track input[type="hidden"][value="0"] ~ .sheet-squares span { background-color: transparent;} /***** MAKE CONDTION SQUARES APPEAR & DISPPEAR *****/ @@ -1430,28 +1403,32 @@ display: inline-block; width : 100%;} - .sheet-vehicle-box input[type="text"] {width: 50%;} + .sheet-vehicle-box input[type="text"] { + width: 45%;} - .sheet-vehicle-box label {width: 18%;} + .sheet-vehicle-box label { + width: 18%;} - .sheet-vehicle-box .sheet-row-long:first-child label, - .sheet-vehicle-box label:nth-of-type(2) { + .sheet-vehicle-box .sheet-row-long:first-child label { + width : 12%;} + + .sheet-vehicle-box label:nth-child(1n+4) { text-align: right; - width : 11%;} - - .sheet-vehicle-box label:nth-child(1n+4) { - text-align: right; - width : 23%;} + width : 23%;} /***** VEHICLE SETTING *****/ .sheet-vehicle-box .sheet-settings h3 {margin-right: 2%;} - .sheet-vehicle-box .sheet-settings h3:nth-child(1) { - margin-left: 20%; - margin-top : -5px;} + .sheet-vehicle-box .sheet-settings h3:nth-child(1) { + margin-left: 20%; + margin-top : -5px;} - .sheet-vehicle-box .sheet-settings h3:nth-child(4) {margin-left: 23.5%;} - .sheet-vehicle-box .sheet-settings h3:nth-child(6) {margin-right: 0px;} + .sheet-vehicle-box .sheet-settings h3:nth-child(4) {margin-left: 23.5%;} + .sheet-vehicle-box .sheet-settings h3:nth-child(6) {margin-right: 0px;} + + .sheet-vehicle-box .sheet-settings input[type="text"], + .sheet-vehicle-box .sheet-settings input[type="number"] { + border: none;} /***** VEHICLE DISPLAY *****/ .sheet-vehicle-box .sheet-display-row { @@ -1598,13 +1575,14 @@ margin : 0px; padding : 0px;} - .sheet-npc label > button[type="roll"] { - font-weight: bold;} - .sheet-npc button:hover { background-color: transparent; text-shadow : none;} + .sheet-npc button[type="action"] { + font-size : 1em; + padding-left: 0px;} + .sheet-npc h1, .sheet-npc h2, .sheet-npc h3, @@ -1641,8 +1619,6 @@ font-size: 0.9em; width : 100%;} - .sheet-npc label {padding-right: 1px;} - .sheet-npc textarea, .sheet-npc select, .sheet-npc .sheet-stat-inputs input, @@ -1653,41 +1629,57 @@ .sheet-npc .sheet-repeat-section option {background-color: #000;} - .sheet-npc input {margin-bottom: 5px;} + .sheet-npc input[type="text"] , + .sheet-npc input[type="number"] { + margin-bottom: 5px;} - .sheet-npc label {font-size: 1em;} + .sheet-npc input[type="checkbox"].sheet-character-type { + margin-right: 5%; + opacity : 1;} - .sheet-npc textarea {margin-top: -35px;} + .sheet-npc label { + font-size: 1em; + font-weight: normal;} + + .sheet-npc textarea { + margin-top: -35px;} /*:+:+:+: NPC STATS :+:+:+:*/ .sheet-stats {display: inline;} - .sheet-colon {font-weight: bold;} - /*:+:+:+: NPC CUSTOMIZED ROWS & COLUMNS :+:+:+:*/ .sheet-row {margin: 0px 0px 0px 0px;} .sheet-leftcol, .sheet-2col { display : inline-block; - vertical-align: top; - width : calc(45% - 0px);} + vertical-align: top;} - .sheet-2col {width:calc(25% - 0px);} + div.sheet-grunt.sheet-2col, + div.sheet-vehicle.sheet-2col { + width:calc(16% - 0px);} - .sheet-leftcol input[type="number"]{width: 10%;} - .sheet-2col input[type="number"] {width: 20%;} + div.sheet-grunt.sheet-vehicle.sheet-2col { + margin-left : 1%; + margin-right: 3%; + width :calc(27% - 0px);} - /* .sheet-leftcol span, - .sheet-2col span { - margin-left: -2px;} */ + div.sheet-leftcol { + width:calc(50% - 0px);} - .sheet-npc input.sheet-character-type { - left : 90px; - margin-left: -80px; - width : 90px;} + div.sheet-leftcol input[type="number"]{ + width: 10%;} + + div.sheet-2col input[type="number"] { + width: 20%;} + + div.sheet-grunt.sheet-vehicle.sheet-2col label { + width: 75%;} /*:+:+:+: NPC TOGGLES & GEAR ICONS :+:+:+:*/ + input.sheet-settings-toggle { + width: 3em;} + .sheet-settings-toggle input[type="checkbox"] + span { background : transparent; font-family: pictos; @@ -1703,7 +1695,7 @@ .sheet-toggle input[type="radio"]:checked + span, .sheet-character-type:checked + label, .sheet-character-type:hover + label, - input.sheet-con-reset:hover ~ label.sheet-cond-header { + .sheet-npc button[type="action"]:hover { color: #FCD116;} /*:+:+:+: NPC SETTINGS & DISPLAYS :+:+:+:*/ @@ -1715,6 +1707,9 @@ vertical-align: top; width : calc(100% - 0px) !important;} + .sheet-npc .sheet-display div:nth-of-type(1n+5) { + margin: 1px;} + .sheet-npc .sheet-display span { border : 0px; font-size : 1em; @@ -1818,11 +1813,6 @@ display: inline-block; width : 100%;} - input.sheet-con-reset { - margin-left:-170px; - width : 24%;} - - input.sheet-con-reset + label {float: left;} /*:+:+:+: NPC CUSTOMIZED DISPLAYS :+:+:+:*/ .sheet-textrow { @@ -2125,8 +2115,6 @@ display: inline-block; width: 100%;} - .sheet-vehicle .sheet-character-type {left: 25%;} - /*:+:+:+: NPC ARMOR BUTTONS :+:+:+:*/ .sheet-npc .sheet-armor-buttons { display: inline; diff --git a/Shadowrun5thEdition/Shadowrun5thEdition.html b/Shadowrun5thEdition/Shadowrun5thEdition.html index 6312550f20..c9d9ff13a8 100644 --- a/Shadowrun5thEdition/Shadowrun5thEdition.html +++ b/Shadowrun5thEdition/Shadowrun5thEdition.html @@ -15,25 +15,25 @@
- Public - To GM +
-
- Wounds - Modifiers - Edge - +
+ + + +
- Core - Arms - Augs - Gear - Magic - Matrix - Social - Vehicle - y + + + + + + + + + +
- +
+ @@ -103,7 +103,7 @@
- +
+ @@ -114,7 +114,7 @@
- +
+ @@ -125,7 +125,7 @@
- +
+ @@ -136,7 +136,7 @@
- +
+ @@ -147,7 +147,7 @@
- +
+ @@ -158,7 +158,7 @@
- +
+ @@ -169,7 +169,7 @@
- +
+ @@ -179,7 +179,7 @@
- +
@@ -219,7 +219,7 @@ - +
+ @@ -236,7 +236,7 @@ - @@ -256,7 +256,7 @@ - @@ -277,7 +277,7 @@
- +
= @@ -289,7 +289,7 @@
-
@@ -303,7 +303,7 @@
-
@@ -317,7 +317,7 @@
-
@@ -405,7 +405,7 @@
- +
- @@ -535,8 +535,8 @@
- - + +
@@ -573,8 +573,8 @@
- - + +
@@ -611,8 +611,8 @@
- - + +
@@ -643,23 +643,23 @@

Primary Armor

-

Rating

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

Primary Ranged Weapon

- +

Dam

@@ -671,7 +671,7 @@

Primary Melee Weapon

- +

Reach

@@ -705,7 +705,8 @@
-

Physical Damage Track

+ +
@@ -732,7 +733,8 @@
-

Stun Damage Track

+ +
@@ -911,7 +913,7 @@
S
- +
@@ -976,7 +978,7 @@
S
- +
@@ -1023,25 +1025,25 @@
S
- +
-
-
-
-
-
-
i @@ -1138,10 +1140,10 @@
+

Spells

Type

Range

Duration

Drain

-
x @@ -1205,7 +1207,7 @@
-
+
@@ -1281,7 +1283,7 @@
-
+
@@ -1318,7 +1320,7 @@
-
+
i
@@ -1370,7 +1372,7 @@
- + @@ -1379,7 +1381,7 @@

Total

Temp

modifier

Base

Base slider


-
- +
= + + @@ -1422,7 +1424,7 @@
- +
= + + @@ -1443,7 +1445,7 @@
- +
= + + @@ -1549,7 +1551,7 @@
-
+
@@ -1643,57 +1645,57 @@
- - - + + + - - - - - + + + + +
- - - - - + + + + + - - - - - + + + + +
- - - - - + + + + + - - - - - + + + + +
- - - - - + + + + + - - - - - + + + + +

Base

Modifier

Temp

Base

Modifier

Temp

@@ -1705,7 +1707,7 @@
-

Vehicle

+

Vehicle

Handling

@@ -1742,19 +1744,6 @@
-

Sheet Select


+
- : - - +
+ + - d6 + + d6 = + + + d6
- - + - d6 + + d6 = + + + d6
- : - - + + - d6 -
+ + d6 = + + + d6
- : - - + / / + - : - - - - + = + / + / + + + /
- : - - - - , - , - +
+ + + = , + + + = , + + + =
- : +
- : - - - - + /
- : +
- : +
- : +
-
- : - - -
- : + + +
- : +
- : +
- : +
- : +
- : +
- : -
+ +
-
-
-
-
+
+
+ +

+
-
+

- :
- :
+
+
- : +
- :
- : +
+
- : +
- :
- : +
+
- : +
@@ -2012,15 +1999,33 @@
-

-

-

-

-

-

-

-

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



@@ -2029,35 +2034,35 @@









@@ -2076,43 +2081,46 @@









+
+ +
+ d6
@@ -2120,7 +2128,7 @@
+ d6
@@ -2128,25 +2136,24 @@
-
- : + / / +
- - : + /
- : + Physical , Mental , Social @@ -2155,55 +2162,55 @@
- :
- :
- :
- - : +
+
+
+ /
- - : + ≈ +
- : + +
-
- - - - - - + + + + + +
-
: +
x - - + + ,
@@ -2332,12 +2339,12 @@
-
: +
x - - + + ,
@@ -2368,12 +2375,12 @@
-
: +
x - - + + ,
@@ -2406,11 +2413,11 @@
-
: +
x - , + ,
@@ -2428,11 +2435,11 @@
-
: +
x - , + ,
@@ -2450,56 +2457,56 @@
- : +
- : +
- : +
- :
- : +
+
- :
- : +
+
- : +
- : +
- : +
- : +
- : +
@@ -2537,7 +2544,7 @@
() - @@ -2608,7 +2615,7 @@
- () @@ -2648,7 +2655,7 @@
- () @@ -2700,7 +2707,7 @@
Q - @@ -2717,13 +2724,13 @@
@@ -2751,7 +2758,7 @@
@@ -2779,7 +2786,7 @@
@@ -2807,7 +2814,7 @@
@@ -2849,7 +2856,7 @@
Q - +
@@ -2923,6 +2930,25 @@ + + + + + + + + + + + + + + + + + + + @@ -3017,964 +3043,1001 @@ \ No newline at end of file + //Cyberdeck Calculations + [ + 'attack', + 'sleaze', + 'data_processing', + 'firewall', + ].forEach(attr => { + // Attach listener + on(`change:${attr}_base change:${attr}_modifier change:${attr}_temp`, () => { + // Load attribute values + getAttrs([`${attr}_base`, `${attr}_modifier`, `${attr}_temp`], (v) => { + // Do some math to calculate the total + const bas = parseInt(v[`${attr}_base`]) || 0; + const mod = parseInt(v[`${attr}_modifier`]) || 0; + const tem = parseInt(v[`${attr}_temp`]) || 0; + const tot = tem + bas + mod; + + // Update the finalized total + setAttrs({ + [attr]: tot + }); + }); + }); + }); + + //Vehicle displays for PCs + on("change:repeating_vehicle:name", () =>{ + getAttrs(["repeating_vehicle_name", "repeating_vehicle_display_name"], (v) => { + const name = (v.repeating_vehicle_name); + const dis = (v.repeating_vehicle_display_name); + let update = {}; + + let displayName = ((name).length > 0 && (name).length <= 24) ? name : ((name).length > 24 ) ? (name).slice(0, 24) + "..." : " "; + if (dis != displayName) {update["repeating_vehicle_display_name"] = displayName}; + + setAttrs(update); + }); + }); + + [ + 'acceleration', + 'armor', + 'body', + 'data_processing', + 'handling', + 'pilot', + 'sensor', + 'speed', + ].forEach(attr => { + // Attach listener + on(`change:repeating_vehicle:${attr}_base change:repeating_vehicle:${attr}_modifier change:repeating_vehicle:${attr}_temp`, () => { + // Load attribute values + getAttrs([`repeating_vehicle_${attr}_base`, `repeating_vehicle_${attr}_modifier`, `repeating_vehicle_${attr}_temp`], (v) => { + // Do some math to calculate the total + const bas = parseInt(v[`repeating_vehicle_${attr}_base`]) || 0; + const mod = parseInt(v[`repeating_vehicle_${attr}_modifier`]) || 0; + const tem = parseInt(v[`repeating_vehicle_${attr}_temp`]) || 0; + const bon = mod + tem; + const stat = bas + bon; + + // Update the finalized total + setAttrs({ + [attr]: stat, + [`repeating_vehicle_display_${attr}`]: bon === 0 ? bas : `${bas} (${stat})` + }); + }); + }); + }); + + + \ No newline at end of file diff --git a/Shadowrun5thEdition/translation.json b/Shadowrun5thEdition/translation.json index 05d6ba523e..0e6521de69 100644 --- a/Shadowrun5thEdition/translation.json +++ b/Shadowrun5thEdition/translation.json @@ -274,6 +274,7 @@ "primarymeleeweapon": "Primary Melee Weapon", "primaryrangedweapon": "Primary Ranged Weapon", "programs": "Programs", + "pr": "Professional Rating", "projectileweapons": "Projectile Weapons", "public": "Public", "publicawareness": "Public Awereness",