Merge pull request #7 from unrealkakeman89/professorbunbury-sw5e

Professorbunbury sw5e
This commit is contained in:
CK 2020-07-31 15:39:28 -04:00 committed by GitHub
commit 71b4c49f72
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 199 additions and 37 deletions

View file

@ -199,6 +199,8 @@
"SW5E.ItemTypeEquipmentPl": "Equipment",
"SW5E.ItemTypeLoot": "Loot",
"SW5E.ItemTypeLootPl": "Loot",
"SW5E.ItemTypeSpecies": "Species",
"SW5E.ItemTypeSpeciesPl": "Species",
"SW5E.ItemTypeTool": "Tool",
"SW5E.ItemTypeToolPl": "Tools",
"SW5E.ItemTypePower": "Power",
@ -457,6 +459,7 @@
"SW5E.PowerUnprepared": "Unprepared",
"SW5E.PowerUsage": "Power Usage",
"SW5E.Powerbook": "Powerbook",
"SW5E.SpeciesTraits": "Species Traits",
"SW5E.SubclassName": "Subclass Name",
"SW5E.Supply": "Supply",
"SW5E.Target": "Target",

View file

@ -160,6 +160,10 @@ export class Item5e extends Item {
else labels.featType = "Passive";
}
// Species Items
else if ( itemData.type === "species" ) {
}
// Equipment Items
else if ( itemData.type === "equipment" ) {
labels.armor = data.armor.value ? `${data.armor.value} AC` : "";

View file

@ -104,6 +104,10 @@ export class ItemSheet5e extends ItemSheet {
else if ( item.type === "feat" ) {
props.push(labels.featType);
}
else if ( item.type === "species" ) {
}
// Action type
if ( item.data.actionType ) {

View file

105
sw5e.css
View file

@ -2,13 +2,27 @@
/* ----------------------------------------- */
/* Fonts */
/* ----------------------------------------- */
/* russo-one-regular - latin */
@font-face {
font-family: "Nodesto";
src: url("fonts/NodestoCapsCondensed.otf");
font-family: 'Russo One';
font-style: normal;
font-weight: 400;
src: url('/fonts/RussoOne.ttf');
}
.nodesto {
font-family: "Nodesto", "Signika", "Palatino Linotype", serif;
font-size: 20px;
/* bungee-inline-regular - latin */
@font-face {
font-family: 'Bungee Inline';
font-style: normal;
font-weight: 400;
src: url('/fonts/BungeeInline.ttf');
}
/* open-sans-regular - latin */
@font-face {
font-family: 'Open Sans';
font-style: normal;
font-weight: 400;
src: url('/fonts/OpenSans-Regular.ttf');
}
/* ----------------------------------------- */
/* Sheet Styles */
@ -72,7 +86,7 @@
font-size: 13px;
color: #191813;
}
.sw5e input[type="text"],
.sw5e input[type="text"]
.sw5e select {
height: calc(100% - 2px);
border: 1px solid #7a7971;
@ -107,7 +121,7 @@
flex: auto;
margin: 0;
line-height: 20px;
font-size: 11px;
font-size: 10px;
text-align: right;
}
.sw5e label.checkbox input[type="checkbox"] {
@ -159,9 +173,9 @@
.sw5e .form-header {
margin: 0 0 0.25em 0;
padding: 0 2px;
font-family: "Nodesto", "Signika", "Palatino Linotype", serif;
font-size: 20px;
font-size: 24px;
font-family: "Russo One";
font-size: 8px;
font-size: 12px;
border-top: 2px groove #eeede0;
border-bottom: 2px groove #eeede0;
}
@ -246,8 +260,8 @@
.sw5e.sheet .sheet-header {
flex: 0 0 100px;
border-bottom: 2px groove #eeede0;
font-family: "Nodesto", "Signika", "Palatino Linotype", serif;
font-size: 20px;
font-family: "Russo One";
font-size: 14px;
/* Character Name */
/* Profile Image */
/* Header Summary Details */
@ -261,7 +275,8 @@
}
.sw5e.sheet .sheet-header h1 input {
height: 50px;
font-size: 36px;
font-size: 1.75vw;
text-transform: uppercase;
}
.sw5e.sheet .sheet-header img.profile {
flex: 0 0 100px;
@ -296,8 +311,8 @@
.sw5e.sheet .sheet-navigation {
flex: 0 0 30px;
margin-bottom: 5px;
font-family: "Nodesto", "Signika", "Palatino Linotype", serif;
font-size: 20px;
font-family: "Russo One";
font-size: 12px;
}
.sw5e.sheet .sheet-navigation .item {
height: 30px;
@ -311,6 +326,17 @@
.sw5e.sheet .sheet-body {
flex: 1;
overflow: hidden;
font-family: "Open Sans";
}
.sw5e.sheet .sheet-body h2 {
font-family: "Russo One";
font-size: 18px;
text-transform: uppercase;
color: #c40f0f;
}
.sw5e.sheet .sheet-body th {
font-family: "Russo One";
text-transform: uppercase;
}
.sw5e.sheet .filter-list {
list-style: none;
@ -403,18 +429,18 @@
.sw5e.sheet.actor .sheet-header .charlevel .level {
width: 100%;
height: 30px;
font-size: 20px;
font-size: 18px;
line-height: 30px;
}
.sw5e.sheet.actor .sheet-header .charlevel .level label {
display: inline;
font-size: 24px;
font-size: 18px;
text-align: right;
}
.sw5e.sheet.actor .sheet-header .charlevel .level input {
display: inline;
width: 36px;
font-size: 24px;
font-size: 18px;
text-align: center;
}
.sw5e.sheet.actor .sheet-header .charlevel .level.noxp {
@ -424,7 +450,7 @@
font-size: 32px;
}
.sw5e.sheet.actor .sheet-header .charlevel .level.noxp > input {
font-size: 32px;
font-size: 18px;
flex: 0 0 40px;
height: 44px;
}
@ -441,7 +467,7 @@
.sw5e.sheet.actor h4.box-title {
line-height: 16px;
margin: 4px 8px 2px;
font-size: 18px;
font-size: 14px;
border-bottom: 1px solid #b5b3a4;
}
.sw5e.sheet.actor ul.attributes {
@ -454,8 +480,8 @@
margin: 0 5px;
border: 2px groove #eeede0;
border-radius: 4px;
font-family: "Nodesto", "Signika", "Palatino Linotype", serif;
font-size: 20px;
font-family: "Russo One";
font-size: 12px;
text-align: center;
}
.sw5e.sheet.actor ul.attributes li.attribute .attribute-name {
@ -470,7 +496,7 @@
max-width: 80%;
height: 28px;
margin: 0;
font-size: 24px;
font-size: 14px;
}
.sw5e.sheet.actor ul.attributes li.attribute .attribute-value span.sep {
display: inline;
@ -494,8 +520,8 @@
list-style: none;
margin: 0;
padding: 0;
font-family: "Nodesto", "Signika", "Palatino Linotype", serif;
font-size: 20px;
font-family: "Russo One";
font-size: 8px;
}
.sw5e.sheet.actor .ability-scores .ability {
height: 70px;
@ -510,7 +536,7 @@
width: 50px;
margin: 0 auto;
line-height: 32px;
font-size: 24px;
font-size: 16px;
}
.sw5e.sheet.actor .ability-scores .ability .ability-modifiers {
height: 24px;
@ -591,9 +617,9 @@
.sw5e.sheet.actor .counters .counter h4 {
flex: auto;
margin: 0;
font-family: "Nodesto", "Signika", "Palatino Linotype", serif;
font-size: 20px;
font-family: "Russo One";
font-size: 14px;
font-size: 10px;
}
.sw5e.sheet.actor .counters .counter .counter-value {
flex: 0 0 50px;
@ -665,10 +691,10 @@
}
.sw5e.sheet.actor .inventory-filters h3,
.sw5e.sheet.actor .inventory-filters .filter-title {
font-family: "Nodesto", "Signika", "Palatino Linotype", serif;
font-size: 20px;
font-family: "Russo One";
font-size: 10px;
color: #4b4a44;
font-size: 18px;
font-size: 12px;
margin: 0;
}
.sw5e.sheet.actor .inventory-filters.powerbook-filters {
@ -894,7 +920,7 @@
padding: 0 8px;
}
.sw5e.sheet.item {
min-height: 420px;
min-height: 520px;
/* ----------------------------------------- */
/* Sheet Header */
/* ----------------------------------------- */
@ -923,7 +949,7 @@
color: #7a7971;
}
.sw5e.sheet.item .sheet-header .item-subtitle .item-type {
font-size: 24px;
font-size: 16px;
line-height: 26px;
margin: 0;
}
@ -935,10 +961,15 @@
margin-bottom: 5px;
}
.sw5e.sheet.item .sheet-navigation .item {
font-size: 18px;
font-size: 14px;
}
.sw5e.sheet.item .sheet-body {
overflow: hidden;
font-family: "Open Sans";
}
.sw5e.sheet.item .sheet-body h2 {
font-family: "Russo One";
font-size: 18px;
}
.sw5e.sheet.item .sheet-body .tab {
padding: 0 5px;
@ -1152,8 +1183,8 @@
flex: 1;
margin: 0;
line-height: 36px;
font-family: "Nodesto", "Signika", "Palatino Linotype", serif;
font-size: 20px;
font-family: "Russo One";
font-size: 10px;
color: #4b4a44;
}
.sw5e.chat-card .card-header h3:hover {
@ -1304,7 +1335,7 @@
margin: 0 6px;
}
.sw5e.sheet.actor.character .sheet-header .attributes .hit-dice {
font-size: 24px;
font-size: 16px;
}
.sw5e.sheet.actor.character .attributes .resource .attribute-name {
margin: 0 8px;

View file

@ -0,0 +1,120 @@
<form class="{{cssClass}} flexcol" autocomplete="off">
{{!-- Item Sheet Header --}}
<header class="sheet-header flexrow">
<img class="profile" src="{{item.img}}" title="{{item.name}}" data-edit="img"/>
<div class="header-details flexrow">
<h1 class="charname">
<input name="name" type="text" value="{{item.name}}" placeholder="{{ localize 'SW5E.ItemName' }}"/>
</h1>
<div class="item-subtitle">
<h4 class="item-type">{{itemType}}</h4>
<span class="item-status">{{itemStatus}}</span>
</div>
<ul class="summary">
<li>
<input type="text" name="data.source" value="{{data.source}}" placeholder="{{ localize 'SW5E.Source' }}"/>
</li>
</ul>
</div>
</header>
{{!-- Item Sheet Navigation --}}
<nav class="sheet-navigation tabs" data-group="primary">
<a class="item active" data-tab="description">{{ localize "SW5E.Description" }}</a>
<a class="item" data-tab="species-traits">{{ localize "SW5E.SpeciesTraits" }}</a>
</nav>
{{!-- Item Sheet Body --}}
<section class="sheet-body">
{{!-- Description Tab --}}
<div class="tab description flexcol" data-group="primary" data-tab="description">
<table style="background-color: #c2e0f4; border-color: #3598db; border-style: solid; height: 217px; width: 520px; word-wrap: break-word;" border="1">
<tbody>
<tr style="height: 17px; background-color: #ced4d9;">
<th style="text-align: left; height: 17px; width: 350px;" colspan="4">VISUAL CHARACTERISTICS</th>
</tr>
<tr style="height: 17px; border-style: none;">
<td style="border-style: none; height: 17px; width: 148px;"><em>Skin Color</em></td>
<td style="border-style: none; height: 17px; width: 20px;">&nbsp;</td>
<td style="border-style: none; width: 154px; height: 17px;"><input name="data.skinColorOptions.value" type="text" value="{{data.skinColorOptions.value}}" placeholder="{{ localize SW5E.skinColorOptions }}"/></td>
<td style="border-style: none; height: 17px; width: 150px;">&nbsp;</td>
</tr>
<tr style="border-style: none; height: 17px; background-color: #ced4d9;">
<td style="border-style: none; height: 17px; width: 148px;"><em>Hair Color</em></td>
<td style="border-style: none; height: 17px; width: 20px;">&nbsp;</td>
<td style="border-style: none; width: 154px; height: 17px;"><input name="data.hairColorOptions.value" type="text" value="{{data.hairColorOptions.value}}" placeholder="{{ localize SW5E.hairColorOptions }}"/></td>
<td style="border-style: none; height: 17px; width: 150px;">&nbsp;</td>
</tr>
<tr style="height: 17px;">
<td style="border-style: none; height: 17px; width: 148px;"><em>Eye Color</em></td>
<td style="border-style: none; height: 17px; width: 20px;">&nbsp;</td>
<td style="border-style: none; width: 154px; height: 17px;"><input name="data.eyeColorOptions.value" type="text" value="{{data.eyeColorOptions.value}}" placeholder="{{ localize SW5E.eyeColorOptions }}"/></td>
<td style="border-style: none; height: 17px; width: 150px;">&nbsp;</td>
</tr>
<tr style="border-style: none; height: 17px; background-color: #ced4d9; text-wrap: normal;">
<td style="border-style: none; height: 17px; width: 148px;"><em>Distinctions</em></td>
<td style="border-style: none; height: 17px; width: 20px;">&nbsp;</td>
<td style="border-style: none; text-wrap: normal; width: 154px; height: 17px;" colspan="2"><input text-wrap="break-word" name="data.distinctions.value" type="text" value="{{data.distinctions.value}}" placeholder="{{ localize SW5E.distinctions }}"/></td>
</tr>
<tr style="background-color: #ced4d9;">
<th style="text-align: left; height: 17px; width: 519px;" colspan="4">PHYSICAL CHARACTERISTICS</th>
</tr>
<tr style="height: 17px;">
<td style="border-style: none; height: 17px; width: 148px;"><em>Height</em></td>
<td style="border-style: none; height: 17px; width: 20px;">&nbsp;</td>
<td style="text-align: center; border-style: none; width: 155px; height: 17px;"><input name="data.heightAverage.value" type="text" value="{{data.heightAverage.value}}" placeholder="5'2&rdquo;"/></td>
<td style="text-align: center; border-style: none; height: 17px; width: 151px;"><input name="data.heightRollMod.value" type="text" value="{{data.heightRollMod.value}}" placeholder="+1d4&rdquo;"/></td>
</tr>
<tr style="background-color: #ced4d9;">
<td style="border-style: none; height: 17px; width: 148px; background-color: #ced4d9;"><em>Weight</em></td>
<td style="border-style: none; height: 17px; width: 20px;">&nbsp;</td>
<td style="text-align: center; border-style: none; width: 155px; height: 17px;"><input name="data.weightAverage.value" type="text" value="{{data.weightAverage.value}}" placeholder="100 lb."/></td>
<td style="text-align: center; border-style: none; height: 17px; width: 151px;"><input name="data.weightRollMod.value" type="text" value="{{data.weightRollMod.value}}" placeholder="x(1d4) lb."/></td>
</tr>
<tr style="background-color: #ced4d9;">
<th style="text-align: left; height: 17px; width: 519px;" colspan="4">SOCIOCULTURAL CHARACTERISTICS</th>
</tr>
<tr style="height: 17px;">
<td style="border-style: none; height: 17px; width: 148px;"><em>Homeworld</em></td>
<td style="border-style: none; height: 17px; width: 20px;">&nbsp;</td>
<td style="border-style: none; width: 154px; height: 17px;" colspan="2"><input name="data.homeworld.value" type="text" value="{{data.homeworld.value}}" placeholder="{{ localize SW5E.homeworld }}"/></td>
</tr>
<tr style="background-color: #ced4d9;">
<td style="border-style: none; height: 17px; width: 148px;"><em>Language</em></td>
<td style="border-style: none; height: 17px; width: 20px;">&nbsp;</td>
<td style="border-style: none; width: 154px; height: 17px;" colspan="2"><input name="data.slanguage.value" type="text" value="{{data.slanguage.value}}" placeholder="{{ localize SW5E.slanguage }}"/></td>
</tr>
</tbody>
</table>
<div id="species-description">
<p>
<!--Species Description-->
{{editor content=data.description.value target="data.description.value" fontsize=12px button=true editable=editable}}
</p>
</div>
</div>
{{!-- Traits Tab --}}
<div class="tab species-traits flexcol" data-group="primary" data-tab="species-traits">
<span id="Traits"><h2>{{item.name}} Traits</h2>
<p>As a/an {{item.name}}, you have the following special traits.<br>
<ul style="list-style-type:none;">
{{#each data.traits as | d t |}}
<li><em><strong>{{t}}</strong></em>. {{{desc}}}</li>
{{/each}}
</ul>
</span>
</div>
</section>
</form>