parent
c65ad01ae4
commit
3bd9d6b3f7
|
@ -0,0 +1,200 @@
|
|||
/* core foundry changes
|
||||
#compendium.flexcolumn.active {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
#compendium.flexcolumn > .directory-list {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
flex-basis: 0;
|
||||
flex-grow: 1;
|
||||
}
|
||||
#compendium.flexcolumn > .directory-footer {
|
||||
height: auto;
|
||||
}
|
||||
#compendium.flexcolumn > .directory-footer > * {
|
||||
margin-top: 5px;
|
||||
}
|
||||
*/
|
||||
#compendium .directory-footer .compendium-browser-btn {
|
||||
margin-top: 5px;
|
||||
}
|
||||
#compendium .directory-footer {
|
||||
display: block;
|
||||
}
|
||||
/* spellbrowser */
|
||||
/* resizing */
|
||||
.compendium-browser {
|
||||
max-width: 1100px;
|
||||
max-height: 90vh;
|
||||
}
|
||||
.compendium-browser .tabs {
|
||||
max-height: 2em;
|
||||
border-bottom: solid #782e22;
|
||||
}
|
||||
.compendium-browser .tabContainer {
|
||||
height: calc(100% - 2em);
|
||||
}
|
||||
.compendium-browser .tabContainer .tab {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
overflow: scroll;
|
||||
}
|
||||
.compendium-browser .control-area {
|
||||
position: sticky;
|
||||
display: block;
|
||||
min-width: 250px;
|
||||
width: 300px;
|
||||
height: 100%;
|
||||
padding-right: 5px;
|
||||
overflow: scroll;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer {
|
||||
border: 1px solid #bbb;
|
||||
border-radius: 5px;
|
||||
margin-top: 5px;
|
||||
padding: 2px;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer h3 {
|
||||
margin: 0;
|
||||
cursor: pointer;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer dl,
|
||||
.compendium-browser .control-area .filtercontainer div {
|
||||
margin: 5px 0;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer dt {
|
||||
display: inline-block;
|
||||
width: 40%;
|
||||
padding-left: 5px;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer dd {
|
||||
display: inline-block;
|
||||
width: 58%;
|
||||
margin-left: 0;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer dd select {
|
||||
width: 100%;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer .multiselect {
|
||||
border: 1px solid #bbb;
|
||||
border-radius: 3px;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer .multiselect label {
|
||||
padding: 5px;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer .small-input {
|
||||
width: 144px;
|
||||
height: 27px;
|
||||
background: rgba(255, 255, 255, 0.8);
|
||||
border: 1px solid #444;
|
||||
border-radius: 3px;
|
||||
padding: 0 3px;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.compendium-browser .control-area .filtercontainer .small-select {
|
||||
width: 40px;
|
||||
}
|
||||
.compendium-browser .browser .window-content {
|
||||
overflow-y: hidden!important;
|
||||
}
|
||||
.compendium-browser .browser ul {
|
||||
float: right;
|
||||
display: block;
|
||||
min-width: 335px;
|
||||
width: 785px;
|
||||
margin: 0;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
padding-left: 5px;
|
||||
}
|
||||
.compendium-browser .browser ul .filter-tags {
|
||||
display: none;
|
||||
}
|
||||
.compendium-browser .browser .spacer {
|
||||
display: inline-block;
|
||||
min-width: 5px;
|
||||
}
|
||||
.compendium-browser .browser .spacer-large {
|
||||
display: inline-block;
|
||||
min-width: 15px;
|
||||
}
|
||||
.compendium-browser .spell-browser .spell {
|
||||
cursor: default;
|
||||
vertical-align: middle;
|
||||
line-height: 32px;
|
||||
margin: 2px 0;
|
||||
}
|
||||
.compendium-browser .spell-browser .spell .spell-image {
|
||||
max-width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
.compendium-browser .spell-browser .spell .spell-name {
|
||||
height: 32px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
.compendium-browser .spell-browser .spell .spell-level {
|
||||
text-align: center;
|
||||
font-weight: 900;
|
||||
max-width: 18px;
|
||||
height: 32px;
|
||||
}
|
||||
.compendium-browser .spell-browser .spell .spell-tags {
|
||||
text-align: right;
|
||||
margin-right: 3px;
|
||||
font-weight: 900;
|
||||
max-width: 100px;
|
||||
height: 32px;
|
||||
}
|
||||
.compendium-browser .npc-browser .npc {
|
||||
cursor: default;
|
||||
vertical-align: middle;
|
||||
line-height: 64px;
|
||||
margin: 4px 0;
|
||||
}
|
||||
.compendium-browser .npc-browser .npc .npc-image {
|
||||
max-width: 64px;
|
||||
height: 64px;
|
||||
}
|
||||
.compendium-browser .npc-browser .npc .npc-image img {
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
border: none;
|
||||
}
|
||||
.compendium-browser .npc-browser .npc .npc-line {
|
||||
line-height: 25px;
|
||||
padding: 9px 0 5px 5px;
|
||||
}
|
||||
.compendium-browser .npc-browser .npc .npc-name {
|
||||
font-weight: bold;
|
||||
font-size: 16px;
|
||||
}
|
||||
.compendium-browser .npc-browser .npc .cr {
|
||||
display: inline-block;
|
||||
width: 55px;
|
||||
}
|
||||
.compendium-browser .npc-browser .npc .size {
|
||||
display: inline-block;
|
||||
width: 75px;
|
||||
}
|
||||
.compendium-browser .npc-browser .npc .type {
|
||||
display: inline-block;
|
||||
}
|
||||
.compendium-browser .settings .settings-group {
|
||||
border: 1px solid #bbb;
|
||||
border-radius: 5px;
|
||||
margin-top: 5px;
|
||||
padding: 2px;
|
||||
}
|
||||
.compendium-browser .settings .settings-group h3 {
|
||||
margin: 0;
|
||||
cursor: pointer;
|
||||
}
|
||||
.compendium-browser .settings .settings-group label {
|
||||
display: block;
|
||||
}
|
||||
.compendium-browser .settings .settings-group h4 {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
height: 100%;
|
||||
}
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,236 @@
|
|||
/* core foundry changes
|
||||
#compendium.flexcolumn.active {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
#compendium.flexcolumn > .directory-list {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
flex-basis: 0;
|
||||
flex-grow: 1;
|
||||
}
|
||||
#compendium.flexcolumn > .directory-footer {
|
||||
height: auto;
|
||||
}
|
||||
#compendium.flexcolumn > .directory-footer > * {
|
||||
margin-top: 5px;
|
||||
}
|
||||
*/
|
||||
#compendium .directory-footer .compendium-browser-btn {
|
||||
margin-top:5px;
|
||||
}
|
||||
|
||||
#compendium .directory-footer {
|
||||
display:block;
|
||||
}
|
||||
|
||||
/* spellbrowser */
|
||||
/* resizing */
|
||||
.compendium-browser {
|
||||
max-width:1100px;
|
||||
max-height:90vh;
|
||||
|
||||
.tabs {
|
||||
max-height:2em;
|
||||
border-bottom: solid #782e22;
|
||||
a {
|
||||
}
|
||||
}
|
||||
.tabContainer {
|
||||
height:calc(100% - 2em);
|
||||
.tab {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
overflow:scroll;
|
||||
}
|
||||
}
|
||||
|
||||
.control-area {
|
||||
position:sticky;
|
||||
display: block;
|
||||
min-width: 250px;
|
||||
width: 300px;
|
||||
height:100%;
|
||||
padding-right:5px;
|
||||
overflow:scroll;
|
||||
|
||||
.filtercontainer {
|
||||
border: 1px solid #bbb;
|
||||
border-radius: 5px;
|
||||
margin-top: 5px;
|
||||
padding:2px;
|
||||
|
||||
h3 {
|
||||
margin:0;
|
||||
cursor:pointer;
|
||||
}
|
||||
|
||||
dl, div {
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
dt {
|
||||
display:inline-block;
|
||||
width:40%;
|
||||
padding-left:5px;
|
||||
}
|
||||
|
||||
dd {
|
||||
display:inline-block;
|
||||
width:58%;
|
||||
margin-left:0;
|
||||
|
||||
select {
|
||||
width:100%;
|
||||
}
|
||||
}
|
||||
.multiselect {
|
||||
border: 1px solid #bbb;
|
||||
border-radius: 3px;
|
||||
|
||||
label {
|
||||
padding:5px;
|
||||
}
|
||||
}
|
||||
.small-input {
|
||||
width: 144px;
|
||||
height: 27px;
|
||||
background: rgba(255, 255, 255, 0.8);
|
||||
border: 1px solid #444;
|
||||
border-radius: 3px;
|
||||
padding: 0 3px;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.small-select {
|
||||
width: 40px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.browser {
|
||||
|
||||
.window-content {
|
||||
overflow-y: hidden!important;
|
||||
}
|
||||
|
||||
ul {
|
||||
float:right;
|
||||
display: block;
|
||||
min-width: 335px;
|
||||
width: 785px;
|
||||
margin:0;
|
||||
height: 100%;
|
||||
overflow:auto;
|
||||
padding-left: 5px;
|
||||
|
||||
.filter-tags {
|
||||
display:none;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.spacer {
|
||||
display:inline-block;
|
||||
min-width:5px;
|
||||
}
|
||||
.spacer-large {
|
||||
display:inline-block;
|
||||
min-width:15px;
|
||||
}
|
||||
}
|
||||
|
||||
.spell-browser {
|
||||
.spell {
|
||||
cursor:default;
|
||||
vertical-align: middle;
|
||||
line-height:32px;
|
||||
margin:2px 0;
|
||||
|
||||
.spell-image {
|
||||
max-width:32px;
|
||||
height:32px;
|
||||
}
|
||||
.spell-name {
|
||||
height:32px;
|
||||
padding-left:5px;
|
||||
}
|
||||
.spell-level {
|
||||
text-align:center;
|
||||
font-weight:900;
|
||||
max-width:18px;
|
||||
height:32px;
|
||||
}
|
||||
.spell-tags {
|
||||
text-align:right;
|
||||
margin-right:3px;
|
||||
font-weight:900;
|
||||
max-width:100px;
|
||||
height:32px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.npc-browser {
|
||||
.npc {
|
||||
cursor:default;
|
||||
vertical-align: middle;
|
||||
line-height:64px;
|
||||
margin:4px 0;
|
||||
.npc-image {
|
||||
max-width: 64px;
|
||||
height: 64px;
|
||||
}
|
||||
.npc-image img {
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.npc-line {
|
||||
line-height: 25px;
|
||||
padding: 9px 0 5px 5px;
|
||||
}
|
||||
.npc-name {
|
||||
font-weight:bold;
|
||||
font-size:16px;
|
||||
}
|
||||
.cr {
|
||||
display: inline-block;
|
||||
width: 55px;
|
||||
}
|
||||
.size {
|
||||
display: inline-block;
|
||||
width: 75px;
|
||||
}
|
||||
.type {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.settings {
|
||||
.settings-group {
|
||||
border: 1px solid #bbb;
|
||||
border-radius: 5px;
|
||||
margin-top: 5px;
|
||||
padding:2px;
|
||||
|
||||
h3 {
|
||||
margin:0;
|
||||
cursor:pointer;
|
||||
}
|
||||
|
||||
label {
|
||||
display:block;
|
||||
}
|
||||
input {
|
||||
|
||||
}
|
||||
h4 {
|
||||
display:inline-block;
|
||||
vertical-align: middle;
|
||||
height:100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,55 @@
|
|||
{
|
||||
"CMPBrowser.sortBy":"Sort by",
|
||||
"CMPBrowser.cr":"Challenge Rating",
|
||||
"CMPBrowser.generalSettings":"General Settings",
|
||||
"CMPBrowser.allowSpellAcc":"Allow Players Access to the spell browser",
|
||||
"CMPBrowser.allowNpcAcc":"Allow Players Access to the npc browser",
|
||||
"CMPBrowser.compSettings":"Spell Compendium Settings",
|
||||
"CMPBrowser.load":"Load",
|
||||
"CMPBrowser.lvl":"Level",
|
||||
"CMPBrowser.ritual":"Ritual",
|
||||
"CMPBrowser.concentration":"Concentration",
|
||||
"CMPBrowser.verbal":"Verbal",
|
||||
"CMPBrowser.somatic":"Somatic",
|
||||
"CMPBrowser.material":"Material",
|
||||
"CMPBrowser.cantip":"Cantip",
|
||||
"CMPBrowser.school":"School",
|
||||
"CMPBrowser.castingTime":"Casting Time",
|
||||
"CMPBrowser.bonusAction":"Bonus Action",
|
||||
"CMPBrowser.reaction":"Reaction",
|
||||
"CMPBrowser.spellType":"Spell Type",
|
||||
"CMPBrowser.damageType":"Damage Type",
|
||||
"CMPBrowser.class":"Class",
|
||||
"CMPBrowser.bard":"Bard",
|
||||
"CMPBrowser.cleric":"Cleric",
|
||||
"CMPBrowser.druid":"Druid",
|
||||
"CMPBrowser.paladin":"Paladin",
|
||||
"CMPBrowser.ranger":"Ranger",
|
||||
"CMPBrowser.sorcerer":"Sorcerer",
|
||||
"CMPBrowser.warlock":"Warlock",
|
||||
"CMPBrowser.wizard":"Wizard",
|
||||
"CMPBrowser.general":"General",
|
||||
"CMPBrowser.components":"Components",
|
||||
"CMPBrowser.hasSpells":"Has Spells",
|
||||
"CMPBrowser.hasLegAct":"Has Legendary Actions",
|
||||
"CMPBrowser.hasLegRes":"Has Legendary Resistance",
|
||||
"CMPBrowser.creatureType":"Creature Type",
|
||||
"CMPBrowser.aberration": "Aberration",
|
||||
"CMPBrowser.beast": "Beast",
|
||||
"CMPBrowser.celestial": "Celestial",
|
||||
"CMPBrowser.construct": "construct",
|
||||
"CMPBrowser.dragon": "Dragon",
|
||||
"CMPBrowser.elemental": "Elemental",
|
||||
"CMPBrowser.fey": "Fey",
|
||||
"CMPBrowser.fiend": "Fiend",
|
||||
"CMPBrowser.giant": "Giant",
|
||||
"CMPBrowser.humanoid": "Humanoid",
|
||||
"CMPBrowser.monstrosity": "Monstrosity",
|
||||
"CMPBrowser.ooze": "Ooze",
|
||||
"CMPBrowser.plant": "Plant",
|
||||
"CMPBrowser.undead": "Undead",
|
||||
"CMPBrowser.abilities": "Abilities",
|
||||
"CMPBrowser.dmgInteraction": "Damage Interaction",
|
||||
"CMPBrowser.dmgDealt": "Damage Dealt",
|
||||
"CMPBrowser.cmpBrowser": "Compendium Browser"
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"name": "compendium-browser",
|
||||
"title": "Compendium Browser",
|
||||
"description": "A module to easily browse and filter spells as well as npcs loaded from compendie.",
|
||||
"version": "0.1",
|
||||
"author": "Felix#6196",
|
||||
"systems": ["dnd5e"],
|
||||
"scripts": ["./compendium-browser.js"],
|
||||
"styles": ["./compendium-browser.css"],
|
||||
"packs": [],
|
||||
"minimumCoreVersion": "0.4.3",
|
||||
"languages": [
|
||||
{
|
||||
"lang": "en",
|
||||
"name": "English",
|
||||
"path": "lang/en.json"
|
||||
}
|
||||
],
|
||||
"url": "https://github.com/syl3r86/compendium-browser",
|
||||
"manifest": "https://raw.githubusercontent.com/syl3r86/compendium-browser/master/module.json",
|
||||
"download": "https://github.com/syl3r86/compendium-browser/archive/master.zip"
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 414 KiB |
|
@ -0,0 +1,78 @@
|
|||
{{#each filters.registeredFilterCategorys as |cat key|}}
|
||||
<div class="filtercontainer" id="{{key}}">
|
||||
<h3>{{cat.label}}</h3>
|
||||
<div class="filters">
|
||||
{{#each cat.filters as |filter key|}}
|
||||
<div class="filter" data-path="{{filter.path}}" data-type="{{filter.type}}" data-valIsArray="{{filter.valIsArray}}">
|
||||
{{#if filter.istext}}
|
||||
<dt>{{filter.label}}</dt>
|
||||
<dd>
|
||||
{{#if filter.possibleValues}}
|
||||
<select class="null">
|
||||
<option value="" selected>-</option>
|
||||
{{#each filter.possibleValues as |label val|}}
|
||||
<option value="{{val}}">{{label}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
{{else}}
|
||||
<input type="text">
|
||||
{{/if}}
|
||||
</dd>
|
||||
{{/if}}
|
||||
{{#if filter.isbool}}
|
||||
<dl>
|
||||
<dt>{{filter.label}}</dt>
|
||||
<dd>
|
||||
<select class="null">
|
||||
<option value="null" selected>-</option>
|
||||
<option value="true">Yes</option>
|
||||
<option value="false">No</option>
|
||||
</select>
|
||||
</dd>
|
||||
</dl>
|
||||
{{/if}}
|
||||
{{#if filter.isselect}}
|
||||
<dl>
|
||||
<dt>{{filter.label}}</dt>
|
||||
<dd>
|
||||
<select class="null">
|
||||
<option value="null" selected>-</option>
|
||||
{{#each filter.possibleValues as |label val|}}
|
||||
<option value="{{val}}">{{label}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
</dd>
|
||||
</dl>
|
||||
{{/if}}
|
||||
{{#if filter.ismultiSelect}}
|
||||
<div class="multiselect">
|
||||
<label>{{filter.label}}</label>
|
||||
<dl>
|
||||
{{#each filter.possibleValues as |label val|}}
|
||||
|
||||
<dt><label>{{label}}</label></dt>
|
||||
<dd><input type="checkbox" data-value="{{val}}"></dd>
|
||||
{{/each}}
|
||||
</dl>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if filter.isnumberCompare}}
|
||||
<div class="numberCompare">
|
||||
<dt>{{filter.label}}</dt>
|
||||
<dd>
|
||||
<select class="small-select">
|
||||
<option value="null" selected>-</option>
|
||||
<option value="=">=</option>
|
||||
<option value="<"><</option>
|
||||
<option value=">">></option>
|
||||
</select>
|
||||
<input class="small-input" type="number">
|
||||
</dd>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/each}}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
{{/each}}
|
|
@ -0,0 +1,42 @@
|
|||
<div class="npc-browser browser tab flexrow" data-tab="npc" data-group="toplvl">
|
||||
<div class="control-area">
|
||||
<div class="filtercontainer" id="tagfilter">
|
||||
<div class="filter" data-type="text" data-path="name">
|
||||
<input class="" name="textFilter" type="text" value="" data-dtype="String" placeholder="{{localize "Name"}}"/>
|
||||
</div>
|
||||
<dl id="sorter">
|
||||
<dt>{{localize "CMPBrowser.sortBy"}}:</dt>
|
||||
<dd><select name="sortorder">
|
||||
<option value="name" selected>{{localize "Name"}}</option>
|
||||
<option value="cr">{{localize "CMPBrowser.cr"}}</option>
|
||||
<option value="size">{{localize "DND5E.Size"}}</option>
|
||||
</select></dd>
|
||||
</dl>
|
||||
</div>
|
||||
{{> "modules/compendium-browser/template/filter-container.html" filters=npcFilters}}
|
||||
</div>
|
||||
<ul>
|
||||
{{#each npcs as |npc id|}}
|
||||
<li class="npc flexrow draggable" data-entry-compendium="{{npc.compendium}}" data-entry-id="{{npc._id}}">
|
||||
<div class="npc-image">
|
||||
<img class="" src="{{npc.img}}" title="{{npc.name}}" width="32" height="32" />
|
||||
</div>
|
||||
<div class="npc-line">
|
||||
<div class="npc-name">
|
||||
<span class="item-edit"><a>{{npc.name}}</a></span>
|
||||
</div>
|
||||
<div class="npc-tags">
|
||||
<span class="cr-display" title="Challange Rating">CR {{npc.displayCR}}</span>
|
||||
<span class="size-display">{{npc.displaySize}}</span>
|
||||
<span class="type">{{npc.data.details.type.value}}</span>
|
||||
</div>
|
||||
<div class="filter-tags">
|
||||
<input type="hidden" name="order.cr" value="{{npc.data.details.cr}}">
|
||||
<input type="hidden" name="order.size" value="{{npc.filterSize}}">
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
|
||||
</div>
|
|
@ -0,0 +1,32 @@
|
|||
<div class="settings tab" data-tab="setting" data-group="toplvl">
|
||||
<div class="settings-group">
|
||||
<h3>{{localize "CMPBrowser.generalSettings"}}</h3>
|
||||
<label>
|
||||
<input data-setting="allow-spell-browser" type="checkbox" {{#if settings.allowSpellBrowser}}checked{{/if}}>
|
||||
<h4>{{localize "CMPBrowser.generalSettings"}}</h4>
|
||||
</label>
|
||||
<label>
|
||||
<input data-setting="allow-npc-browser" type="checkbox" {{#if settings.allowNpcBrowser}}checked{{/if}}>
|
||||
<h4>{{localize "CMPBrowser.generalSettings"}}</h4>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="settings-group">
|
||||
<h3>{{localize "CMPBrowser.compSettings"}}</h3>
|
||||
{{#each settings.loadedSpellCompendium as |spellComp key|}}
|
||||
<label>
|
||||
<input data-setting="spell-compendium-setting" data-key="{{key}}" data-type="spell" type="checkbox"{{#if spellComp.load}}checked{{/if}}>
|
||||
<h4>{{localize "CMPBrowser.load"}} {{spellComp.name}}</h4>
|
||||
</label>
|
||||
{{/each}}
|
||||
</div>
|
||||
<div class="settings-group">
|
||||
<h3>Npc Compendium Settings</h3>
|
||||
{{#each settings.loadedNpcCompendium as |npcComp key|}}
|
||||
<label>
|
||||
<input data-setting="npc-compendium-setting" data-key="{{key}}" data-type="npc" type="checkbox"{{#if npcComp.load}}checked{{/if}}>
|
||||
<h4>{{localize "CMPBrowser.load"}} {{npcComp.name}}</h4>
|
||||
</label>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
|
@ -0,0 +1,43 @@
|
|||
<div class="spell-browser browser tab flexrow" data-tab="spell" data-group="toplvl">
|
||||
<div class="control-area">
|
||||
<div class="filtercontainer" id="tagfilter">
|
||||
<div class="filter" data-type="text" data-path="name">
|
||||
<input class="" name="textFilter" type="text" value="" data-dtype="String" placeholder="Search Text"/>
|
||||
</div>
|
||||
<dl id="sorter">
|
||||
<dt>{{localize "CMPBrowser.sortBy"}}:</dt>
|
||||
<dd><select class="null" name="sortorder">
|
||||
<option value="true" selected>{{localize "Name"}}</option>
|
||||
<option value="false">{{localize "CMPBrowser.lvl"}}</option>
|
||||
</select></dd>
|
||||
</dl>
|
||||
</div>
|
||||
{{> "modules/compendium-browser/template/filter-container.html" filters=spellFilters}}
|
||||
</div>
|
||||
<ul>
|
||||
{{#each spells as |spell id|}}
|
||||
<li class="spell flexrow draggable" data-entry-compendium="{{spell.compendium}}" data-entry-id="{{spell._id}}">
|
||||
<div class="spell-image">
|
||||
<img class="" src="{{spell.img}}" title="{{spell.name}}" width="32" height="32"/>
|
||||
</div>
|
||||
<div class="spell-name">
|
||||
<span class="item-edit" ><a>{{spell.name}}</a></span>
|
||||
</div>
|
||||
<div class="spell-tags">
|
||||
<span title="Spell level">{{#if spell.data.level}}{{spell.data.level}}{{else}}C{{/if}}</span>
|
||||
<div class="spacer-large"></div>
|
||||
<span {{#unless spell.data.components.ritual}}style="color:#bbb;" title="{{localize "No"}} {{localize "CMPBrowser.ritual"}}"{{else}} title="{{localize "CMPBrowser.ritual"}}"{{/unless}}>R</span>
|
||||
<span {{#unless spell.data.components.concentration}}style="color:#bbb;" title="{{localize "No"}} {{localize "CMPBrowser.concentration"}}"{{else}} title="{{localize "CMPBrowser.concentration"}}"{{/unless}}>C</span>
|
||||
<div class="spacer"></div>
|
||||
<span {{#unless spell.data.components.vocal}}style="color:#bbb;" title="{{localize "No"}} {{localize "CMPBrowser.verbal"}}"{{else}} title="{{localize "CMPBrowser.verbal"}}"{{/unless}}>V</span>
|
||||
<span {{#unless spell.data.components.somatic}}style="color:#bbb;" title="{{localize "No"}} {{localize "CMPBrowser.somatic"}}"{{else}} title="{{localize "CMPBrowser.somatic"}}"{{/unless}}>S</span>
|
||||
<span {{#unless spell.data.components.material}}style="color:#bbb;" title="no{{localize "No"}} {{localize "CMPBrowser.material"}}"{{else}} title="{{localize "CMPBrowser.material"}}"{{/unless}}>M</span>
|
||||
</div>
|
||||
<div class="filter-tags">
|
||||
<input type="hidden" name="level" value="{{spell.data.level}}">
|
||||
</div>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
|
||||
</div>
|
|
@ -0,0 +1,11 @@
|
|||
<div class="tabs" data-group="toplvl">
|
||||
{{#if showSpellBrowser}}<a class="item" data-tab="spell">Spell Browser</a>{{/if}}
|
||||
{{#if showNpcBrowser}}<a class="item" data-tab="npc">NPC Browser</a>{{/if}}
|
||||
{{#if isGM}}<a class="item" data-tab="setting">Settings</a>{{/if}}
|
||||
</div>
|
||||
|
||||
<div class="tabContainer">
|
||||
{{#if showSpellBrowser}}{{> "modules/compendium-browser/template/spell-browser.html"}}{{/if}}
|
||||
{{#if showNpcBrowser}} {{> "modules/compendium-browser/template/npc-browser.html"}}{{/if}}
|
||||
{{#if isGM}} {{> "modules/compendium-browser/template/settings.html"}}{{/if}}
|
||||
</div>
|
Loading…
Reference in New Issue