Properties from pack

Editable functionalities (hide icons)
Merge of edit/add/delete items hooks
This commit is contained in:
Vlyan
2020-12-24 15:51:52 +01:00
parent 3c79556152
commit 0f1afcf740
24 changed files with 230 additions and 82 deletions

View File

@@ -94,6 +94,7 @@
"properties": "Properties",
"weapons": {
"title": "Weapons",
"title_new": "New Weapon",
"damage": "Damage",
"range": "Range",
"stats": "Stats",
@@ -105,17 +106,21 @@
},
"armors": {
"title": "Armors",
"title_new": "New Armor",
"type": "Defence",
"physical": "physical",
"supernatural": "supernatural",
"equipped": "Equipped"
},
"items": "Items",
"items": {
"title": "Items",
"title_new": "New Item"
},
"feats": "Feats",
"techniques": {
"title": "Techniques",
"type": "Type accessible",
"title_new": "New Technique",
"type": "Type accessible",
"kata": "Kata",
"kiho": "Kihõ",
"invocation": "Invocation",
@@ -124,6 +129,9 @@
"maho": "Mahõ",
"ninjutsu": "Ninjutsu"
},
"peculiarities": {
"title_new": "Nouvelle particularité"
},
"skill": "Skill",
"level": "Level",
"approaches": "Approaches",

View File

@@ -94,6 +94,7 @@
"properties": "Propiedades",
"weapons": {
"title": "Armas",
"title_new": "New Weapon",
"damage": "Daño",
"range": "Rango",
"stats": "Stats",
@@ -105,12 +106,16 @@
},
"armors": {
"title": "Armors",
"title_new": "New Armor",
"type": "Defensa",
"physical": "physical",
"supernatural": "supernatural",
"equipped": "Equipped"
},
"items": "Equipo",
"items": {
"title": "Equipo",
"title_new": "New Item"
},
"feats": "Feats",
"techniques": {
"title": "Techniques",
@@ -124,6 +129,9 @@
"maho": "Mahõ",
"ninjutsu": "Ninjutsu"
},
"peculiarities": {
"title_new": "Nouvelle particularité"
},
"skill": "Habilidad",
"level": "Nivel",
"approaches": "Planteamientos",

View File

@@ -94,6 +94,7 @@
"properties": "Propriétés",
"weapons": {
"title": "Armement",
"title_new": "Nouvelle Arme",
"damage": "Dégâts de base (DDB)",
"range": "Portée (PRT)",
"stats": "Attributs",
@@ -105,17 +106,21 @@
},
"armors": {
"title": "Armures",
"title_new": "Nouvelle Armure",
"type": "Défense",
"physical": "Physique",
"supernatural": "Spirituelle",
"equipped": "Équipé"
},
"items": "Objets",
"items": {
"title": "Objets",
"title_new": "Nouvel Objet"
},
"feats": "Prouesses",
"techniques": {
"title": "Techniques",
"type": "Type accessible",
"title_new": "Nouvelle Technique",
"type": "Type accessible",
"kata": "Kata",
"kiho": "Kihõ",
"invocation": "Invocation",
@@ -124,6 +129,9 @@
"maho": "Mahõ",
"ninjutsu": "Ninjutsu"
},
"peculiarities": {
"title_new": "Nouvelle particularité"
},
"skill": "Compétence",
"level": "Niveau",
"approaches": "Approches",

View File

@@ -0,0 +1,9 @@
{"_id":"L5RCoreArm000000","name":"Ashigaru Armor","permission":{"default":0},"type":"armor","data":{"equipped":false,"quantity":1,"weight":"3","rarity":"0","zeni":"5 koku","properties":[{"id":"L5RCorePro000010","name":"Wargear"}],"armor":{"physical":"3","supernatural":"-"},"description":"","book_reference":"Core p.239"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/armor.svg","effects":[]}
{"_id":"L5RCoreArm000001","name":"Plated Armor","permission":{"default":0},"type":"armor","data":{"equipped":false,"quantity":1,"weight":"8","rarity":"0","zeni":"40 koku","properties":[{"id":"L5RCorePro000005","name":"Cumbersome"},{"id":"L5RCorePro000014","name":" Durable"},{"id":"L5RCorePro000010","name":" Wargear"}],"armor":{"physical":"5","supernatural":"-"},"description":"","book_reference":"Core p.239"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/armor.svg","effects":[]}
{"_id":"L5RCoreArm000002","name":"Concealed Armor","permission":{"default":0},"type":"armor","data":{"equipped":false,"quantity":1,"weight":"4","rarity":"0","zeni":"5 koku","properties":[{"id":"L5RCorePro000004","name":"Concealable"}],"armor":{"physical":"2","supernatural":"-"},"description":"","book_reference":"Core p.239"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/armor.svg","effects":[]}
{"_id":"L5RCoreArm000003","name":"Lacquered Armor","permission":{"default":0},"type":"armor","data":{"equipped":false,"quantity":1,"weight":"6","rarity":"0","zeni":"25 koku","properties":[{"id":"L5RCorePro000001","name":"Ceremonial"},{"id":"L5RCorePro000005","name":" Cumbersome"},{"id":"L5RCorePro000010","name":" Wargear"}],"armor":{"physical":"4","supernatural":"-"},"description":"","book_reference":"Core p.239"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/armor.svg","effects":[]}
{"_id":"L5RCoreArm000004","name":"Ceremonial Clothes","permission":{"default":0},"type":"armor","data":{"equipped":false,"quantity":1,"weight":"4","rarity":"0","zeni":"1 koku","properties":[{"id":"L5RCorePro000001","name":"Ceremonial"},{"id":"L5RCorePro000009","name":" Resplendent"}],"armor":{"physical":"1","supernatural":"-"},"description":"","book_reference":"Core p.239"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/armor.svg","effects":[]}
{"_id":"L5RCoreArm000005","name":"Traveling Clothes","permission":{"default":0},"type":"armor","data":{"equipped":false,"quantity":1,"weight":"2","rarity":"0","zeni":"2 bu","properties":[{"id":"L5RCorePro000014","name":"Durable"},{"id":"L5RCorePro000011","name":" Mundane"},{"id":"L5RCorePro000015","name":" Subtle"}],"armor":{"physical":"2","supernatural":"-"},"description":"","book_reference":"Core p.239"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/armor.svg","effects":[]}
{"_id":"L5RCoreArm000006","name":"Sanctified Robes","permission":{"default":0},"type":"armor","data":{"equipped":false,"quantity":1,"weight":"7","rarity":"0","zeni":"4 koku","properties":[{"id":"L5RCorePro000001","name":"Ceremonial"}],"armor":{"physical":"1","supernatural":"3"},"description":"","book_reference":"Core p.239"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/armor.svg","effects":[]}
{"_id":"L5RCoreArm000007","name":"Sleeping Garb","permission":{"default":0},"type":"armor","data":{"equipped":false,"quantity":1,"weight":"2","rarity":"0","zeni":"1 koku","properties":[],"armor":{"physical":"-","supernatural":""},"description":"","book_reference":"Core p.239"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/armor.svg","effects":[]}
{"_id":"L5RCoreArm000008","name":"Common Clothes","permission":{"default":0},"type":"armor","data":{"equipped":false,"quantity":1,"weight":"1","rarity":"0","zeni":"1 bu","properties":[{"id":"L5RCorePro000011","name":"Mundane"}],"armor":{"physical":"1","supernatural":"-"},"description":"","book_reference":"Core p.239"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/armor.svg","effects":[]}

View File

@@ -0,0 +1,16 @@
{"_id":"L5RCorePro000000","name":"Razor-Edged","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.241"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000001","name":"Ceremonial","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.240"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000002","name":"Damaged","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.240"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000003","name":"Destroyed","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.240"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000004","name":"Concealable","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.240"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000005","name":"Cumbersome","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.240"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000006","name":"Snaring","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.241"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000007","name":"Unholy","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.241"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000008","name":"Forbidden","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.240"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000009","name":"Resplendent","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.241"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000010","name":"Wargear","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.241"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000011","name":"Mundane","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.240"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000012","name":"Prepare","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.240"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000013","name":"Sacred","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.241"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000014","name":"Durable","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.240"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}
{"_id":"L5RCorePro000015","name":"Subtle","permission":{"default":0},"type":"property","data":{"description":"","book_reference":"Core p.241"},"sort":100001,"flags":{},"img":"systems/l5r5e/assets/icons/items/property.svg","effects":[]}

View File

@@ -94,34 +94,18 @@ export class BaseSheetL5r5e extends ActorSheet {
// tgt.hasClass('toggle-active') ? tgt.removeClass('toggle-active') : tgt.addClass('toggle-active');
// });
// *** Items : edit, delete ***
["item", "peculiarity", "technique", "advancement"].forEach((type) => {
html.find(`.${type}-edit`).on("click", (event) => {
this._editSubItem(event, type);
// *** Items : add, edit, delete, curriculum ***
html.find(".item-add").on("click", (event) => {
this._addSubItem(event);
});
html.find(`.${type}-delete`).on("click", (event) => {
this._deleteSubItem(event, type);
html.find(`.item-edit`).on("click", (event) => {
this._editSubItem(event);
});
if (type !== "item") {
html.find(`.${type}-curriculum`).on("click", (event) => {
this._switchSubItemCurriculum(event, type);
});
}
});
// *** Items : add ***
html.find(".technique-add").on("click", (event) => {
this._addSubItem({
name: game.i18n.localize("l5r5e.techniques.title_new"),
type: "technique",
});
});
html.find(".advancement-add").on("click", (event) => {
this._addSubItem({
name: game.i18n.localize("l5r5e.advancements.title_new"),
type: "advancement",
html.find(`.item-delete`).on("click", (event) => {
this._deleteSubItem(event);
});
html.find(`.item-curriculum`).on("click", (event) => {
this._switchSubItemCurriculum(event);
});
}
@@ -129,20 +113,30 @@ export class BaseSheetL5r5e extends ActorSheet {
* Add a generic item with sub type
* @private
*/
async _addSubItem(data) {
const created = await this.actor.createEmbeddedEntity("OwnedItem", data);
async _addSubItem(event) {
const type = $(event.currentTarget).data("item-type");
const titles = {
item: "l5r5e.items.title_new",
armor: "l5r5e.armors.title_new",
weapon: "l5r5e.weapons.title_new",
technique: "l5r5e.techniques.title_new",
peculiarity: "l5r5e.peculiarities.title_new",
advancement: "l5r5e.advancements.title_new",
};
const created = await this.actor.createEmbeddedEntity("OwnedItem", {
name: game.i18n.localize(titles[type]),
type: type,
});
const item = this.actor.getOwnedItem(created._id);
item.sheet.render(true);
return item;
}
/**
* Edit a generic item with sub type
* @private
*/
async _editSubItem(event, type) {
const li = $(event.currentTarget).parents("." + type);
const itemId = li.data(type + "Id");
_editSubItem(event) {
const itemId = $(event.currentTarget).data("item-id");
const item = this.actor.getOwnedItem(itemId);
item.sheet.render(true);
}
@@ -151,23 +145,24 @@ export class BaseSheetL5r5e extends ActorSheet {
* Delete a generic item with sub type
* @private
*/
async _deleteSubItem(event, type) {
const li = $(event.currentTarget).parents("." + type);
return this.actor.deleteOwnedItem(li.data(type + "Id"));
_deleteSubItem(event, type) {
const itemId = $(event.currentTarget).data("item-id");
return this.actor.deleteOwnedItem(itemId);
}
/**
* Switch "in_curriculum"
* @private
*/
_switchSubItemCurriculum(event, type) {
const li = $(event.currentTarget).parents("." + type);
const itemId = li.data(type + "Id");
_switchSubItemCurriculum(event) {
const itemId = $(event.currentTarget).data("item-id");
const item = this.actor.getOwnedItem(itemId);
return item.update({
if (item.type !== "item") {
item.update({
data: {
in_curriculum: !item.data.data.in_curriculum,
},
});
}
}
}

View File

@@ -1,5 +1,14 @@
export const L5R5E = {};
L5R5E.packsIds = {
properties: {
core: "l5r5e.core-properties",
},
techniques: {
core: "l5r5e.core-techniques",
},
};
L5R5E.paths = {
assets: `systems/l5r5e/assets/`,
templates: `systems/l5r5e/templates/`,

View File

@@ -44,7 +44,7 @@ export class ItemSheetL5r5e extends ItemSheet {
props.push({ id: property.id, name: item.name });
} else {
// Pack item
item = await game.packs.get("l5r5e.Properties").getEntry(property.id);
item = await game.packs.get(CONFIG.l5r5e.packsIds.properties.core).getEntry(property.id);
if (item) {
sheetData.data.propertiesList.push(item);
props.push({ id: item._id, name: item.name });

View File

@@ -11,6 +11,60 @@
"esmodules": ["./scripts/main-l5r5e.js"],
"styles": ["./styles/l5r5e.css"],
"packs": [
{
"name": "core-properties",
"label": "Properties",
"path": "packs/core-property.db",
"entity": "Item"
},
{
"name": "core-techniques",
"label": "Techniques",
"path": "packs/core-technique.db",
"entity": "Item"
},
{
"name": "core-items",
"label": "Items",
"path": "packs/core-item.db",
"entity": "Item"
},
{
"name": "core-armors",
"label": "Armors",
"path": "packs/core-armor.db",
"entity": "Item"
},
{
"name": "core-weapons",
"label": "Weapons",
"path": "packs/core-weapon.db",
"entity": "Item"
},
{
"name": "core-distinctions",
"label": "Distinctions",
"path": "packs/core-distinction.db",
"entity": "Item"
},
{
"name": "core-passions",
"label": "Passions",
"path": "packs/core-passion.db",
"entity": "Item"
},
{
"name": "core-adversities",
"label": "Adversities",
"path": "packs/core-adversity.db",
"entity": "Item"
},
{
"name": "core-anxieties",
"label": "Anxieties",
"path": "packs/core-anxiety.db",
"entity": "Item"
},
{
"name": "macros",
"label": "L5R5e Macros",

View File

@@ -1,12 +1,14 @@
<tr class="flexrow row advancement" data-advancement-id="{{advancement._id}}">
<tr class="flexrow row advancement">
<td class="name" name="advancement.name">{{#if advancement.data.in_curriculum}}<i class="fas fa-graduation-cap"></i> {{/if}}{{ advancement.name }}</td>
<td class="xp" name="advancement.xp">{{ advancement.data.xp_used }}</td>
<td class="rank" name="advancement.rank">{{ advancement.data.rank }}</td>
{{#if editable}}
<td class="actions">
<ul>
<li class="item-control advancement-curriculum" title="{{localize 'l5r5e.global.curriculum'}}"><i class="fas fa-graduation-cap"></i></li>
<li class="item-control advancement-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li class="item-control advancement-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
<li data-item-id="{{advancement._id}}" class="item-control item-curriculum" title="{{localize 'l5r5e.global.curriculum'}}"><i class="fas fa-graduation-cap"></i></li>
<li data-item-id="{{advancement._id}}" class="item-control item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li data-item-id="{{advancement._id}}" class="item-control item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
</ul>
</td>
{{/if}}
</tr>

View File

@@ -19,20 +19,22 @@
</label>
</fieldset>
<fieldset class="advancement">
<legend class="tools">{{ localize 'l5r5e.advancements.title'}} <a class="advancement-control advancement-add" title="{{ localize 'l5r5e.global.add'}}"><i class="fas fa-plus"></i></a></legend>
<legend class="tools">{{ localize 'l5r5e.advancements.title'}} <a data-item-type="advancement" class="advancement-control item-add" title="{{ localize 'l5r5e.global.add'}}"><i class="fas fa-plus"></i></a></legend>
<table>
<thead class="flex">
<tr class="flexrow row">
<th class="name">{{ localize 'l5r5e.name' }}</th>
<th class="xp">{{ localize 'l5r5e.advancements.spent' }}</th>
<th class="rank">{{ localize 'l5r5e.rank' }}</th>
{{#if editable}}
<th class="actions"></th>
{{/if}}
</tr>
</thead>
<tbody class="flex">
{{#each actor.items as |advancement advancementId|}}
{{#ifCond '["peculiarity", "technique","advancement"]' 'includes' advancement.type}}
{{> 'systems/l5r5e/templates/actors/character/advancement.html' advancement=advancement }}
{{> 'systems/l5r5e/templates/actors/character/advancement.html' advancement=advancement editable=../editable }}
{{/ifCond}}
{{/each}}
</tbody>

View File

@@ -13,7 +13,12 @@
</li>
<li>
<fieldset>
<legend class="text-block-header">{{ localize 'l5r5e.social.advantages' }}</legend>
<legend class="text-block-header">
{{ localize 'l5r5e.social.advantages' }}
{{#if editable}}
<a data-item-type="peculiarity" class="peculiarity-control item-add" title="{{ localize 'l5r5e.global.add'}}"><i class="fas fa-plus"></i></a>
{{/if}}
</legend>
<ul class="item-list">
{{#each actor.items as |item id|}}
{{#ifCond '["distinction","passion"]' 'includes' item.data.peculiarity_type}}
@@ -25,7 +30,12 @@
</li>
<li>
<fieldset>
<legend class="text-block-header">{{ localize 'l5r5e.social.disadvantages' }}</legend>
<legend class="text-block-header">
{{ localize 'l5r5e.social.disadvantages' }}
{{#if editable}}
<a data-item-type="peculiarity" class="peculiarity-control item-add" title="{{ localize 'l5r5e.global.add'}}"><i class="fas fa-plus"></i></a>
{{/if}}
</legend>
<ul class="item-list">
{{#each actor.items as |item id|}}
{{#ifCond '["adversity","anxiety"]' 'includes' item.data.peculiarity_type}}

View File

@@ -13,7 +13,9 @@
<fieldset class="section-header flexrow">
<legend class="technique-controls">
{{ localize 'l5r5e.techniques.title' }}
<a class="technique-control technique-add" title="{{ localize 'l5r5e.global.add' }}"><i class="fas fa-plus"></i></a>
{{#if editable}}
<a data-item-type="technique" class="technique-control item-add" title="{{ localize 'l5r5e.global.add' }}"><i class="fas fa-plus"></i></a>
{{/if}}
</legend>
<ul class="item-list">
{{#each actor.items as |item id|}}

View File

@@ -1,5 +1,10 @@
<fieldset class="narrative-content">
<legend class="text-block-header">{{ localize 'l5r5e.social.advantages' }}</legend>
<legend class="text-block-header">
{{ localize 'l5r5e.social.advantages' }}
{{#if editable}}
<a data-item-type="peculiarity" class="peculiarity-control item-add" title="{{ localize 'l5r5e.global.add'}}"><i class="fas fa-plus"></i></a>
{{/if}}
</legend>
<ul class="item-list">
{{#each actor.items as |item id|}}
{{#ifCond '["distinction","passion"]' 'includes' item.data.peculiarity_type}}
@@ -9,7 +14,12 @@
</ul>
</fieldset>
<fieldset class="narrative-content">
<legend class="text-block-header">{{ localize 'l5r5e.social.disadvantages' }}</legend>
<legend class="text-block-header">
{{ localize 'l5r5e.social.disadvantages' }}
{{#if editable}}
<a data-item-type="peculiarity" class="peculiarity-control item-add" title="{{ localize 'l5r5e.global.add'}}"><i class="fas fa-plus"></i></a>
{{/if}}
</legend>
<ul class="item-list">
{{#each actor.items as |item id|}}
{{#ifCond '["adversity","anxiety"]' 'includes' item.data.peculiarity_type}}

View File

@@ -2,7 +2,7 @@
<fieldset class="section-header flexrow">
<legend class="technique-controls">
{{ localize 'l5r5e.techniques.title' }}
<a class="technique-control technique-add" title="{{ localize 'l5r5e.global.add' }}"><i class="fas fa-plus"></i></a>
<a data-item-type="technique" class="technique-control item-add" title="{{ localize 'l5r5e.global.add' }}"><i class="fas fa-plus"></i></a>
</legend>
<ul class="item-list">
{{#each actor.items as |item id|}}

View File

@@ -1,10 +1,10 @@
<li class="item advancement flexcol" data-advancement-id="{{advancement._id}}">
<li class="item advancement flexcol">
<ul class="item-header advancement-controls">
<li class="item-img"><img src="{{advancement.img}}" title="{{advancement.name}}" width="32px" height="32px"/></li>
<li class="item-name">{{ advancement.name }}</li>
{{#if editable}}
<li class="item-control advancement-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li class="item-control advancement-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
<li data-item-id="{{advancement._id}}" class="item-control item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li data-item-id="{{advancement._id}}" class="item-control item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
{{/if}}
</ul>
<div class="item-description">{{{ advancement.data.description }}}</div>

View File

@@ -1,4 +1,4 @@
<li class="item flexcol" data-item-id="{{item._id}}">
<li class="item flexcol">
<ul class="item-header item-control">
<li class="item-img"><img src="{{item.img}}" title="{{item.name}}" width="32px" height="32px"/></li>
<li class="item-name">{{ item.name }}</li>
@@ -7,8 +7,8 @@
<i class="fas fa-bolt" title="{{ localize 'l5r5e.armors.type' }} {{ localize 'l5r5e.armors.supernatural' }}"> {{item.data.armor.supernatural}}</i>
</li>
{{#if editable}}
<li class="item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li class="item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
<li data-item-id="{{item._id}}" class="item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li data-item-id="{{item._id}}" class="item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
{{/if}}
</ul>
<ul class="item-properties">

View File

@@ -1,5 +1,10 @@
<fieldset class="armors-content">
<legend class="section-header">{{ localize 'l5r5e.armors.title' }}</legend>
<legend class="section-header">
{{ localize 'l5r5e.armors.title' }}
{{#if editable}}
<a data-item-type="armor" class="armor-control item-add" title="{{ localize 'l5r5e.global.add'}}"><i class="fas fa-plus"></i></a>
{{/if}}
</legend>
<ul class="item-list">
{{#each actor.items as |item id|}}
{{#ifCond item.type '==' 'armor'}}

View File

@@ -1,10 +1,10 @@
<li class="item flexcol" data-item-id="{{item._id}}">
<li class="item flexcol">
<ul class="item-header item-control">
<li class="item-img"><img src="{{item.img}}" title="{{item.name}}" width="32px" height="32px"/></li>
<li class="item-name">{{ item.name }} <sub>x{{ item.data.quantity }}</sub></li>
{{#if editable}}
<li class="item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li class="item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
<li data-item-id="{{item._id}}" class="item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li data-item-id="{{item._id}}" class="item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
{{/if}}
</ul>
<ul class="item-properties">

View File

@@ -1,5 +1,10 @@
<fieldset class="items-content">
<legend>{{ localize 'l5r5e.equipment' }}</legend>
<legend>
{{ localize 'l5r5e.equipment' }}
{{#if editable}}
<a data-item-type="item" class="item-control item-add" title="{{ localize 'l5r5e.global.add'}}"><i class="fas fa-plus"></i></a>
{{/if}}
</legend>
<ul class="item-list">
{{#each actor.items as |item id|}}
{{#ifCond item.type '==' 'item'}}

View File

@@ -1,10 +1,10 @@
<li class="item peculiarity flexcol" data-peculiarity-id="{{peculiarity._id}}">
<li class="item peculiarity flexcol">
<ul class="item-header peculiarity-controls">
<li class="item-img"><img src="{{peculiarity.img}}" title="{{peculiarity.name}}" width="32px" height="32px"/></li>
<li class="item-name">{{ peculiarity.name }}</li>
{{#if editable}}
<li class="item-control peculiarity-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li class="item-control peculiarity-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
<li data-item-id="{{peculiarity._id}}" class="item-control item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li data-item-id="{{peculiarity._id}}" class="item-control item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
{{/if}}
</ul>
<div class="item-description">{{{ peculiarity.data.description }}}</div>

View File

@@ -1,10 +1,10 @@
<li class="item technique flexcol" data-technique-id="{{technique._id}}">
<li class="item technique flexcol">
<ul class="item-header technique-controls">
<li class="item-img"><img src="{{technique.img}}" title="{{technique.name}}" width="32px" height="32px"/></li>
<li class="item-name">{{ technique.name }}</li>
{{#if editable}}
<li class="item-control technique-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li class="item-control technique-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
<li data-item-id="{{technique._id}}" class="item-control item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li data-item-id="{{technique._id}}" class="item-control item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
{{/if}}
</ul>
<div class="item-description">{{{ technique.data.description }}}</div>

View File

@@ -1,4 +1,4 @@
<li class="item flexcol" data-item-id="{{item._id}}">
<li class="item flexcol">
<ul class="item-header item-control">
<li class="item-img"><img src="{{item.img}}" title="{{item.name}}" width="32px" height="32px"/></li>
<li class="item-name">{{ item.name }}</li>
@@ -8,8 +8,8 @@
<i class="fas fa-skull" title="{{ localize 'l5r5e.weapons.deadliness' }}"> {{item.data.deadliness}}</i>
</li>
{{#if editable}}
<li class="item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li class="item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
<li data-item-id="{{item._id}}" class="item-edit" title="{{localize 'l5r5e.global.edit'}}"><i class="fas fa-edit"></i></li>
<li data-item-id="{{item._id}}" class="item-delete" title="{{localize 'l5r5e.global.delete'}}"><i class="fas fa-trash"></i></li>
{{/if}}
</ul>
<ul class="item-properties">

View File

@@ -1,5 +1,10 @@
<fieldset class="weapons-content">
<legend class="section-header">{{ localize 'l5r5e.weapons.title' }}</legend>
<legend class="section-header">
{{ localize 'l5r5e.weapons.title' }}
{{#if editable}}
<a data-item-type="weapon" class="weapon-control item-add" title="{{ localize 'l5r5e.global.add'}}"><i class="fas fa-plus"></i></a>
{{/if}}
</legend>
<ul class="item-list">
{{#each actor.items as |item id|}}
{{#ifCond item.type '==' 'weapon'}}