This is now officially support fan-material
Add Ship sheet
Layout fix for adversaries
Ability to remove skills on adversaries, useful when duplicating a adversary
Option to automatically apply spell cost when rolled
Added Armor compendium
Added Weapons compendium
Skills compendium updated with descriptions
Co-Authored-By: erebus <erebus@rikspolisen.se>
Co-Committed-By: erebus <erebus@rikspolisen.se>
This commit was merged in pull request #3.
This commit is contained in:
2020-12-04 19:50:46 +00:00
parent 2e389704ea
commit c103fac27c
26 changed files with 559 additions and 76 deletions

View File

@@ -0,0 +1,3 @@
<form class="{{cssClass}}" autocomplete="off">
<center><h1>Endast tillgängligt till Kopparhavets Hjältar för närvarande</h1></center>
</form>

View File

@@ -0,0 +1,53 @@
<form class="{{cssClass}}" autocomplete="off">
<div class="adversary">
<div class="header grid-container" style="">
<div class="avatar flex-group-center" style="grid-row: 1/7;">
<img class="profile-img actor-avatar-img" src="{{actor.img}}" data-edit="img" title="{{actor.name}}" />
</div>
<label style="margin-top: auto; margin-bottom: auto;">{{localize "BIO.NAME"}}:</label>
<h1 class="charname" style="margin-bottom: 0;grid-column: 3/6;"><input name="name" type="text" value="{{actor.name}}" placeholder="{{localize "BIO.NAME"}}" /></h1>
<label style="margin-top: auto; margin-bottom: auto;">{{localize data.class.label}}:</label>
<span class="charname" style="margin-bottom: 0;grid-column: 3/6;"><input name="data.class.value" type="text" value="{{data.class.value}}" placeholder="{{localize data.class.label}}" /></span>
<label style="margin: auto;">{{localize data.operationscost.label}}:</label>
<input class="center-text" type="text" name="data.operationscost.value" value="{{data.operationscost.value}}" data-dtype="Number" />
<label style="margin: auto;">{{localize data.operationssupply.label}}:</label>
<input class="center-text" type="text" name="data.operationssupply.value" value="{{data.operationssupply.value}}" data-dtype="Number" />
<label style="margin: auto;">{{localize data.hull.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.hull.value" value="{{data.hull.value}}" data-dtype="Number" />
<span style="margin-bottom: auto; margin-top: auto;"> / </span>
<input class="center-text" type="text" name="data.hull.max" value="{{data.hull.max}}" data-dtype="Number" />
</div>
<label style="margin: auto;">{{localize data.cargo.label}}:</label>
<div class="grid-container" style="grid-template-columns: auto 1fr auto;">
<input class="center-text" type="text" name="data.cargo.value" value="{{data.cargo.value}}" data-dtype="Number" />
<span style="margin-bottom: auto; margin-top: auto;"> / </span>
<input class="center-text" type="text" name="data.cargo.max" value="{{data.cargo.max}}" data-dtype="Number" />
</div>
</div>
<div class="sheet-tabs tabs flex row" data-group="primary">
<b class="item" data-tab="main">{{localize "TAB.MAIN"}}</b>
<b class="item" data-tab="combat">{{localize "TAB.ARMAMENT"}}</b>
<b class="item" data-tab="note">{{localize "TAB.NOTE"}}</b>
</div>
<div class="sheet-body">
<div class="tab" data-group="primary" data-tab="main">
{{> systems/kopparhavet/templates/parts/actor/ship-main.html}}
</div>
<div class="tab" data-group="primary" data-tab="combat">
{{> systems/kopparhavet/templates/parts/actor/ship-combat.html}}
</div>
<div class="tab border note" data-group="primary" data-tab="note" style="height: 100%; border-top: none;">
{{editor content=data.bio.note.value target="data.bio.note.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>
</form>

View File

@@ -0,0 +1,20 @@
<form class="{{cssClass}} item-sheet-talent" autocomplete="off">
<div class="header">
<div class="avatar flex-group-center" style="grid-row: 1/3;">
<img class="item-avatar-img" src="{{item.img}}" data-edit="img" title="{{item.name}}" />
</div>
<div class="container flex-group-center item-name">
<h1><input name="name" type="text" value="{{item.name}}" placeholder="{{localize "SHIP.TALENT"}}" /></h1>
</div>
</div>
<div class="item">
<div class="talent-description">
<h2>{{localize data.description.label}}</h2>
<div class="info-mid">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>
</div>
</form>

View File

@@ -0,0 +1,40 @@
<form class="{{cssClass}}" autocomplete="off">
<div class="header">
<div class="avatar flex-group-center" style="grid-row: 1/3;">
<img class="item-avatar-img" src="{{item.img}}" data-edit="img" title="{{item.name}}" />
</div>
<div class="container flex-group-center item-name">
<h1><input name="name" type="text" value="{{item.name}}" placeholder="{{localize "ITEM.WEAPON"}}" /></h1>
</div>
</div>
<div class="grid-container" style="grid-template-columns: 1fr 1fr;">
<div class="cost">
<label>{{localize data.price.label}}</label>
<input name="data.price.value" type="text" value="{{data.price.value}}" />
</div>
<div class="rating">
<label>{{localize data.damage.label}}</label>
<input name="data.damage.value" type="text" value="{{data.damage.value}}" />
</div>
<div>
<label>{{localize "ITEM.SKILL"}}</label>
<select class="item-weapon-skill-select" name="data.skill.value">
{{#select data.skill.value}}
{{#each this.khskills as |t|}}
<option value="{{t.name}}">{{t.name}}</option>
{{/each}}
{{/select}}
</select>
</div>
</div>
<div class="item">
<div class="description">
<h2>{{localize data.description.label}}</h2>
<div class="info">
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
</div>
</div>
</form>

View File

@@ -36,6 +36,9 @@
<li class="item-skill flexrow" data-item-id="{{skill._id}}">
<div class="item-name roll-skill rollable" style="flex-grow: 8;">{{skill.name}}</div>
<div class="item-value" style="flex: none;"><input class="skill-value" type="number" value="{{skill.data.value}}" min="0" data-item-id="{{skill._id}}" data-dtype="Number" /></div>
<div class="item-controls">
<a class="item-control item-delete" data-parent=".item-skill" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ul>

View File

@@ -28,6 +28,9 @@
<li class="item-skill flexrow" data-item-id="{{skill._id}}">
<div class="item-name roll-skill rollable" style="flex-grow: 8;">{{skill.name}}</div>
<div class="item-value" style="flex: none;"><input class="skill-value" type="number" value="{{skill.data.value}}" min="0" data-item-id="{{skill._id}}" data-dtype="Number" /></div>
<div class="item-controls">
<a class="item-control item-delete" data-parent=".item-skill" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ul>

View File

@@ -0,0 +1,37 @@
WEAPONS
<div class="bio-tab border scroll-y" style="height: 100%; border-top: none;">
<div class="grid-container" style="height: fit-content; border-top: none; grid-template-rows: 1fr auto; grid-template-columns: 1fr 1fr;">
<div class="border grid-container" style="grid-column-gap: 5px; grid-template-columns: auto 1fr; max-height: 163px; height: fit-content;">
<label style="margin-top: auto; margin-bottom: auto;">{{localize data.rammingdmg.label}}:</label>
<input style="text-align: center;" name="data.rammingdmg.value" type="text" value="{{data.rammingdmg.value}}" placeholder="{{localize data.rammingdmg.label}}" />
</div>
<div class="spells border">
<ul class="items">
<li class="items-header flexrow">
<div class="header-name">{{localize "SHIP.ARMAMENT"}}</div>
<div>{{localize "ITEM.DAMAGE"}}</div>
<div></div>
</li>
<ul class="items-list">
{{#each actor.shipweapons as |item id|}}
<li class="item-weapon flexrow" data-item-id="{{item._id}}" data-ability="{{item.data.skill.value}}">
<div class="item-name">{{item.name}}</div>
<div class="skill-roll">
<div class="roll-button">
<div class="roll-damage rollable">{{item.data.damage.value}}</div>
</div>
</div>
<div class="item-controls">
<a class="item-control item-edit" data-parent=".item-weapon" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" data-parent=".item-weapon" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ul>
</ul>
</div>
</div>
</div>

View File

@@ -0,0 +1,34 @@
<div class="bio-tab border scroll-y" style="height: 100%; border-top: none;">
<div class="grid-container" style="height: fit-content; border-top: none; grid-template-rows: auto auto; grid-template-columns: 1fr 1fr;">
<div class="border grid-container" style="height: 100%; grid-row: 1/4; grid-template-rows: auto 1fr; height: fit-content; min-height: 200px;">
<h2 style="margin-bottom: 0;">{{localize data.description.label}}</h2>
<div class="description">
{{editor content=data.description.value target="data.description.value" button=true owner=owner editable=editable}}
</div>
</div>
<div class="border grid-container" style="grid-column-gap: 5px; grid-template-columns: 1fr auto; max-height: 163px; height: fit-content;">
<label style="margin-top: auto; margin-bottom: auto;">{{localize data.crew.label}}:</label>
<input name="data.crew.value" style="text-align: center;" type="text" value="{{data.crew.value}}" placeholder="{{localize data.crew.label}}" />
</div>
<div class="spells border">
<h1 class="item-list-header">{{localize "ITEM.TALENT"}}</h1>
<div class="scroll-y" style="height: calc(100% - 20px);">
<ul class="items">
<ul class="items-list">
{{#each actor.shiptalents as |talent key|}}
<li class="item flexrow" data-item-id="{{talent._id}}">
<div class="item-name">{{talent.name}}</div>
<div class="item-controls">
<a class="item-control item-edit" data-parent=".item" title="Edit Item"><i class="fas fa-edit"></i></a>
<a class="item-control item-delete" data-parent=".item" title="Delete Item"><i class="fas fa-trash"></i></a>
</div>
</li>
{{/each}}
</ul>
</ul>
</div>
</div>
</div>
</div>