#49 Ziehbare Items

Changes:
 + Items können jetzt zwischen Charakteren ausgetauscht werden (Nur Gegenstände, keine Zauber etc.)
 + Items können Sortiert werden durch verziehen und droppen

Sneak Change:
 + Löschen button für mods hinzugefügt
 + ESLint und Prettier hinzugefügt, sorry für all die changes :D
This commit is contained in:
2024-02-22 15:24:39 +01:00
parent 06ef797ef2
commit 023b924421
397 changed files with 21631 additions and 9145 deletions
+6 -6
View File
@@ -51,7 +51,7 @@
<tbody>
{{#each data.calc.gear.weapons as |item itemId|}}
{{#if item.equipped}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding edit-item {{#if item.special}}highlight{{/if}}">{{item.label}}{{#if item.special}}(*){{/if}}</td>
<td class="fixed-value">{{item.calc.ew}}</td>
<td class="fixed-value">{{item.damageBase}}</td>
@@ -67,7 +67,7 @@
{{/if}}
{{/each}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding edit-item">{{localize "midgard5.brawl"}}</td>
<td class="fixed-value">{{data.calc.stats.brawlFw}}</td>
<td class="fixed-value">1d6 -4</td>
@@ -87,9 +87,9 @@
<td><a class="title add-kampfkunst"><i class="fa-regular fa-plus"></i></a></th>
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.calc.kampfkuenste as |item itemId|}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}" class="item">
<td class="padding edit-item">{{item.label}}</td>
<td>
{{#if item.isKido}}
@@ -150,7 +150,7 @@
<tbody>
{{#each data.calc.gear.defensiveWeapons as |item itemId|}}
{{#if item.equipped}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding edit-item">{{item.label}}</td>
<td class="fixed-value">{{item.calc.ew}}</td>
<td class="fixed-value">{{item.defenseBonus}}</td>
@@ -179,7 +179,7 @@
<tbody>
{{#each data.calc.gear.armor as |item itemId|}}
{{#if item.equipped}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding">{{item.label}}</td>
<td class="fixed-value">{{lpProtection}}</td>
<td class="change-equipped">
+66 -46
View File
@@ -1,50 +1,70 @@
<div class="flexbox">
<div class="flexcolumn-1">
<div class="flexpart">
<div class="flexpart-header"><img src="icons/commodities/cloth/thread-spindle-white-needle.webp" class="flexpart-icon" />{{localize "midgard5.characteristics"}}</div>
<table>
<tbody>
<tr height="10px"></tr>
<tr>
<td>{{localize "midgard5.origin"}}</td>
<td><input name="data.info.origin" type="text" value="{{data.info.origin}}" data-dtype="String" /></td>
<td>{{localize "midgard5.gender"}}</td>
<td><input name="data.info.gender" type="text" value="{{data.info.gender}}" data-dtype="String" /></td>
<td>{{localize "midgard5.shape"}}</td>
<td><input name="data.info.shape" type="text" value="{{data.info.shape}}" data-dtype="String" /></td>
<td>{{localize "midgard5.age"}}</td>
<td><input name="data.info.age" type="text" value="{{data.info.age}}" data-dtype="String" /></td>
</tr>
<tr>
<td>{{localize "midgard5.weight"}}</td>
<td><input name="data.info.weight" type="text" value="{{data.info.weight}}" data-dtype="String" /></td>
<td>{{localize "midgard5.height"}}</td>
<td><input name="data.info.height" type="text" value="{{data.info.height}}" data-dtype="String" /></td>
<td>{{localize "midgard5.caste"}}</td>
<td><input name="data.info.caste" type="text" value="{{data.info.caste}}" data-dtype="String" /></td>
<td>{{localize "midgard5.faith"}}</td>
<td><input name="data.info.faith" type="text" value="{{data.info.faith}}" data-dtype="String" /></td>
</tr>
<tr height="10px"></tr>
</tbody>
</table>
</div>
</div>
<div class='flexbox'>
<div class='flexcolumn-1'>
<div class='flexpart'>
<div class='flexpart-header'><img
src='icons/commodities/cloth/thread-spindle-white-needle.webp'
class='flexpart-icon'
/>{{localize 'midgard5.characteristics'}}</div>
<table>
<tbody>
<tr height='10px'></tr>
<tr>
<td>{{localize 'midgard5.origin'}}</td>
<td><input name='data.info.origin' type='text' value='{{data.info.origin}}' data-dtype='String' /></td>
<td>{{localize 'midgard5.gender'}}</td>
<td><input name='data.info.gender' type='text' value='{{data.info.gender}}' data-dtype='String' /></td>
<td>{{localize 'midgard5.shape'}}</td>
<td><input name='data.info.shape' type='text' value='{{data.info.shape}}' data-dtype='String' /></td>
<td>{{localize 'midgard5.age'}}</td>
<td><input name='data.info.age' type='text' value='{{data.info.age}}' data-dtype='String' /></td>
</tr>
<tr>
<td>{{localize 'midgard5.weight'}}</td>
<td><input name='data.info.weight' type='text' value='{{data.info.weight}}' data-dtype='String' /></td>
<td>{{localize 'midgard5.height'}}</td>
<td><input name='data.info.height' type='text' value='{{data.info.height}}' data-dtype='String' /></td>
<td>{{localize 'midgard5.caste'}}</td>
<td><input name='data.info.caste' type='text' value='{{data.info.caste}}' data-dtype='String' /></td>
<td>{{localize 'midgard5.faith'}}</td>
<td><input name='data.info.faith' type='text' value='{{data.info.faith}}' data-dtype='String' /></td>
</tr>
<tr height='10px'></tr>
</tbody>
</table>
</div>
</div>
<div class="flexcolumn-1">
<div class="flexpart" style="height: 250px;">
<div class="flexpart-header"><img src="icons/environment/wilderness/mine-interior-dungeon-door.webp" class="flexpart-icon" />{{localize "midgard5.description"}}</div>
<br />
<div class="biography">{{editor content=data.info.description target="data.info.description" button=true owner=owner editable=editable}}</div>
</div>
</div>
<div class='flexcolumn-1'>
<div class='flexpart' style='height: 250px;'>
<div class='flexpart-header'><img
src='icons/environment/wilderness/mine-interior-dungeon-door.webp'
class='flexpart-icon'
/>{{localize 'midgard5.description'}}</div>
<br />
<div class='biography'>{{editor
content=data.info.description
target='data.info.description'
button=true
owner=owner
editable=editable
}}</div>
</div>
</div>
<div class="flexcolumn-1">
<div class="flexpart" style="height: 250px;">
<div class="flexpart-header"><img src="icons/environment/people/group.webp" class="flexpart-icon" />{{localize "midgard5.background"}}</div>
<br />
<div class="biography">{{editor content=data.info.background target="data.info.background" button=true owner=owner editable=editable}}</div>
</div>
</div>
<div class='flexcolumn-1'>
<div class='flexpart' style='height: 250px;'>
<div class='flexpart-header'><img src='icons/environment/people/group.webp' class='flexpart-icon' />{{localize
'midgard5.background'
}}</div>
<br />
<div class='biography'>{{editor
content=data.info.background
target='data.info.background'
button=true
owner=owner
editable=editable
}}</div>
</div>
</div>
</div>
+2 -2
View File
@@ -6,9 +6,9 @@
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.calc.gear.effects as |item itemId|}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}" class="item">
<td class="padding">
<span class="edit-item">{{item.label}}</span>
{{#if item.equipped}}
+13 -15
View File
@@ -48,7 +48,7 @@
<tbody>
<tr height = 10px></tr>
{{#each data.calc.gear.containers as |item itemId|}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding">
<span class="edit-item">{{item.label}}</span>
</td>
@@ -95,7 +95,7 @@
<tr height = 10px></tr>
{{#each ../data.calc.gear.items as |item itemId|}}
{{#if (eq item.containerId containerId)}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding">
<span class="edit-item">{{item.label}}</span>
</td>
@@ -123,7 +123,7 @@
{{/each}}
{{#each ../data.calc.gear.weapons as |item itemId|}}
{{#if (eq item.containerId containerId)}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding">
<span class="edit-item">{{item.label}}</span>
</td>
@@ -147,7 +147,7 @@
{{/each}}
{{#each ../data.calc.gear.defensiveWeapons as |item itemId|}}
{{#if (eq item.containerId containerId)}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding">
<span class="edit-item">{{item.label}}</span>
</td>
@@ -171,7 +171,7 @@
{{/each}}
{{#each ../data.calc.gear.armor as |item itemId|}}
{{#if (eq item.containerId containerId)}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding">
<span class="edit-item">{{item.label}}</span>
</td>
@@ -220,12 +220,10 @@
<td><a class="title add-item"><i class="fa-regular fa-plus"></i></a></th>
</tr>
</thead>
<tbody>
<tr height = 10px></tr>
</tr>
<tbody class="items-list">
{{#each data.calc.gear.items as |item itemId|}}
{{#if (or ../data.info.showAllItems (eq item.containerId ""))}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}" class="item">
<td class="padding">
<span class="edit-item">{{item.label}}</span>
</td>
@@ -270,10 +268,10 @@
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.calc.gear.weapons as |item itemId|}}
{{#if (or ../data.info.showAllItems (eq item.containerId ""))}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}" class="item">
<td class="padding edit-item">{{item.label}}</td>
<td style="text-align: start">
{{#unless (or (eq item.value 0) (eq item.currency ""))}}
@@ -308,10 +306,10 @@
<td><a class="title add-defensiveWeapon"><i class="fa-regular fa-plus"></i></a></th>
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.calc.gear.defensiveWeapons as |item itemId|}}
{{#if (or ../data.info.showAllItems (eq item.containerId ""))}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}" class="item">
<td class="padding edit-item">{{item.label}}</td>
<td style="text-align: start">
{{#unless (or (eq item.value 0) (eq item.currency ""))}}
@@ -346,10 +344,10 @@
<td><a class="title add-armor"><i class="fa-regular fa-plus"></i></a></th>
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.calc.gear.armor as |item itemId|}}
{{#if (or ../data.info.showAllItems (eq item.containerId ""))}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}" class="item">
<td class="padding edit-item">{{item.label}}</td>
<td style="text-align: start">
{{#unless (or (eq item.value 0) (eq item.currency ""))}}
+12 -12
View File
@@ -14,9 +14,9 @@
<th><a class="title add-innate-skill"><i class="fa-regular fa-plus"></i></a></th>
</tr>
</thead>
<tbody>
<tbody class="items">
{{#each data.calc.skills.innate as |skill skillId|}}
<tr data-item="{{skillId}}">
<tr data-item-id="{{skillId}}" class="item">
<td class="padding edit-item">{{skill.label}}</td>
<td class="fixed-value">{{skill.fw}}</td>
<td class="fixed-value">{{skill.calc.bonus}}</td>
@@ -25,7 +25,7 @@
<td><a class="item-delete" title="Delete Item"><i class="fas fa-trash"></i></a></td>
</tr>
{{/each}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding edit-item">{{localize "midgard5.perception"}}</td>
<td class="fixed-value">{{data.calc.stats.perceptionFW}}</td>
<td class="fixed-value">{{data.calc.stats.perception.value}}</td>
@@ -33,7 +33,7 @@
<td><button class="roll-button roll-perception-button"></button></td>
<td class="fixed-value"></td>
</tr>
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}">
<td class="padding edit-item">{{localize "midgard5.drinking"}}</td>
<td class="fixed-value">{{data.calc.stats.drinkingFW}}</td>
<td class="fixed-value">{{data.calc.stats.drinking.value}}</td>
@@ -59,9 +59,9 @@
<th><a class="title add-general-skill"><i class="fa-regular fa-plus"></i></a></th>
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.calc.skills.general as |skill skillId|}}
<tr data-item="{{skillId}}">
<tr data-item-id="{{skillId}}" class="item">
<td class="padding edit-item">{{skill.label}}</td>
<td class="fixed-value">{{skill.fw}}</td>
<td class="fixed-value">{{skill.calc.bonus}}</td>
@@ -89,9 +89,9 @@
<th><a class="title add-combat-skill"><i class="fa-regular fa-plus"></i></th>
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.calc.skills.combat as |skill skillId|}}
<tr data-item="{{skillId}}">
<tr data-item-id="{{skillId}}" class="item">
<td class="padding edit-item">{{skill.label}}</td>
<td class="fixed-value">{{skill.fw}}</td>
<td class="fixed-value">{{skill.calc.bonus}}</td>
@@ -119,9 +119,9 @@
<th><a class="title add-language-skill"><i class="fa-regular fa-plus"></i></a></th>
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.calc.skills.language as |skill skillId|}}
<tr data-item="{{skillId}}">
<tr data-item-id="{{skillId}}" class="item">
<td class="padding edit-item">{{skill.label}}</td>
<td class="fixed-value">{{skill.fw}}</td>
<td class="fixed-value">{{skill.calc.bonus}}</td>
@@ -151,10 +151,10 @@
<th class="title"><img src="/icons/svg/d20.svg" class="table-icon"></th>
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.skills.general as |skill key|}}
{{#unless (isSkillInList (localizeMidgard key) ../actor.system.calc.skills.general) }}
<tr data-skill="{{key}}">
<tr data-skill="{{key}}" class="item">
<td><button class="learn-button">{{localize "midgard5.learn"}}</button></td>
<td class="padding" style="font-style: italic;">{{localizeMidgard key}}</td>
<td class="fixed-value">{{skill.fw}}</td>
+2 -2
View File
@@ -7,9 +7,9 @@
<td><a class="title add-spell"><i class="fa-regular fa-plus"></i></a></th>
</tr>
</thead>
<tbody>
<tbody class="items-list">
{{#each data.calc.spells as |item itemId|}}
<tr data-item="{{itemId}}">
<tr data-item-id="{{itemId}}" class="item">
<td class="padding edit-item">
<span>{{item.label}}</span>
<span class="spell-process">{{localize item.process}}</span>