feat: complete visual redesign of all item sheets + compact chat roll messages
- Rewrote _item.sass with unified layout: type-bar + dark header + stats pills + tabs - All 11 item templates converted to new pill-based stats bar - Chat roll message font sizes and padding compacted - Physical item partial rewritten as stat pills (QTY/WEIGHT/COST/TL) - Legacy itemsheet-header and itemsheet-maincol hidden
This commit is contained in:
@@ -1,79 +1,77 @@
|
||||
<div class="{{cssClass}} flexrow itemsheet">
|
||||
<div class="itemsheet-header">
|
||||
<div class="item-type-bar">
|
||||
{{#if (eq system.subType "skill")}}
|
||||
<label>{{localize 'MGT2.TalentSubType.skill'}}</label>
|
||||
<span class="item-type-label"><i class="fas fa-star"></i> {{localize 'MGT2.TalentSubType.skill'}}</span>
|
||||
{{else if (eq system.subType "psionic")}}
|
||||
<label>{{localize 'MGT2.TalentSubType.psionic'}}</label>
|
||||
<span class="item-type-label"><i class="fas fa-brain"></i> {{localize 'MGT2.TalentSubType.psionic'}}</span>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="item-sheet-header">
|
||||
<img class="item-header-img" src="{{item.img}}" data-edit="img" data-tooltip="{{item.name}}" />
|
||||
<input class="item-header-name" name="name" type="text" value="{{item.name}}" />
|
||||
</div>
|
||||
<div class="item-stats-bar">
|
||||
<div class="item-stat-pill">
|
||||
<span class="stat-label">{{ localize 'MGT2.Items.Type' }}</span>
|
||||
<select name="system.subType" style="font-size:0.75rem;">
|
||||
{{selectOptions config.TalentSubType selected=system.subType localize=true}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="itemsheet-panel">
|
||||
<div class="itemsheet-maincol">
|
||||
<img class="profile-img" src="{{item.img}}" data-edit="img" data-tooltip="{{item.name}}" />
|
||||
<div class="field-group mt-1">
|
||||
<label>{{ localize 'MGT2.Items.Type' }}</label>
|
||||
<select name="system.subType">
|
||||
{{selectOptions config.TalentSubType selected = system.subType localize = true}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="w-100">
|
||||
<input class="field field-item-name" name="name" type="text" value="{{item.name}}" />
|
||||
{{#if (eq system.subType "skill")}}
|
||||
<div class="field-groups mt-1">
|
||||
<div class="field-group">
|
||||
<label>{{ localize 'MGT2.Items.Speciality' }}</label>
|
||||
<input type="text" name="system.skill.speciality" value="{{system.skill.speciality}}" data-dtype="String" />
|
||||
</div>
|
||||
<div class="field-group">
|
||||
<label>{{ localize 'MGT2.Items.Level' }}</label>
|
||||
<input type="text" name="system.level" value="{{system.level}}" data-dtype="Number" />
|
||||
</div>
|
||||
</div>
|
||||
{{else if (eq system.subType "psionic")}}
|
||||
<div class="field-groups mt-1">
|
||||
<div class="field-group">
|
||||
<label>{{ localize 'MGT2.Items.Level' }}</label>
|
||||
<input type="text" name="system.level" value="{{system.level}}" data-dtype="Number" />
|
||||
</div>
|
||||
<div class="field-group">
|
||||
<label>{{ localize 'MGT2.Items.Reach' }}</label>
|
||||
<select name="system.psionic.reach">
|
||||
<option></option>
|
||||
{{selectOptions config.PsionicReach selected = system.psionic.reach localize = true}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="field-group">
|
||||
<label>{{ localize 'MGT2.Items.PSICost' }}</label>
|
||||
<input type="number" name="system.psionic.cost" value="{{system.psionic.cost}}" data-dtype="Number" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="field-groups mt-1">
|
||||
<div class="field-group">
|
||||
<label>{{ localize 'MGT2.Items.Duration' }}</label>
|
||||
<div class="flexrow">
|
||||
<input type="text" name="system.psionic.duration" value="{{system.psionic.duration}}" data-dtype="String" class="flex-basis-50" />
|
||||
<select name="system.psionic.durationUnit" class="flex-basis-50 flex-fix">
|
||||
{{selectOptions config.Durations selected=system.psionic.durationUnit localize = true}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
<nav class="horizontal-tabs tabs mt-1" data-group="primary">
|
||||
<a class="item tab-select" data-tab="tab1">{{ localize 'MGT2.Items.Description' }}</a>
|
||||
<a class="item tab-select" data-tab="config">{{ localize 'MGT2.Items.Configuration' }}</a>
|
||||
</nav>
|
||||
<div class="tab" data-group="primary" data-tab="tab1">
|
||||
<textarea name="system.description" rows="6">{{system.description}}</textarea>
|
||||
</div>
|
||||
<div class="tab" data-group="primary" data-tab="config">
|
||||
{{#if (eq system.subType "skill")}}
|
||||
<div class="field-group mt-05">
|
||||
<label class="mgt2-checkbox"><input type="checkbox" name="system.skill.reduceEncumbrance" data-dtype="Boolean" {{checked system.skill.reduceEncumbrance}} />{{ localize 'MGT2.Items.ReduceEncumbrance' }}</label>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{> systems/mgt2/templates/items/parts/sheet-configuration.html }}
|
||||
</div>
|
||||
</div>
|
||||
{{#if (eq system.subType "skill")}}
|
||||
<div class="item-stat-pill">
|
||||
<span class="stat-label">{{ localize 'MGT2.Items.Level' }}</span>
|
||||
<input type="number" name="system.level" value="{{system.level}}" data-dtype="Number" />
|
||||
</div>
|
||||
<div class="item-stat-pill">
|
||||
<span class="stat-label">{{ localize 'MGT2.Items.Speciality' }}</span>
|
||||
<input type="text" name="system.skill.speciality" value="{{system.skill.speciality}}" data-dtype="String" />
|
||||
</div>
|
||||
{{else if (eq system.subType "psionic")}}
|
||||
<div class="item-stat-pill">
|
||||
<span class="stat-label">{{ localize 'MGT2.Items.Level' }}</span>
|
||||
<input type="number" name="system.level" value="{{system.level}}" data-dtype="Number" />
|
||||
</div>
|
||||
<div class="item-stat-pill">
|
||||
<span class="stat-label">{{ localize 'MGT2.Items.PSICost' }}</span>
|
||||
<input type="number" name="system.psionic.cost" value="{{system.psionic.cost}}" data-dtype="Number" />
|
||||
</div>
|
||||
<div class="item-stat-pill">
|
||||
<span class="stat-label">{{ localize 'MGT2.Items.Reach' }}</span>
|
||||
<select name="system.psionic.reach">
|
||||
<option></option>
|
||||
{{selectOptions config.PsionicReach selected=system.psionic.reach localize=true}}
|
||||
</select>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
<nav class="horizontal-tabs tabs" data-group="primary">
|
||||
<a class="item tab-select" data-tab="tab1">{{ localize 'MGT2.Items.Description' }}</a>
|
||||
<a class="item tab-select" data-tab="config">{{ localize 'MGT2.Items.Configuration' }}</a>
|
||||
</nav>
|
||||
<div class="tab-content-area">
|
||||
<div class="tab" data-group="primary" data-tab="tab1">
|
||||
{{#if (eq system.subType "psionic")}}
|
||||
<div class="field-groups" style="margin-bottom:8px;">
|
||||
<div class="field-group">
|
||||
<label>{{ localize 'MGT2.Items.Duration' }}</label>
|
||||
<div style="display:flex;gap:4px;">
|
||||
<input type="text" name="system.psionic.duration" value="{{system.psionic.duration}}" data-dtype="String" />
|
||||
<select name="system.psionic.durationUnit">
|
||||
{{selectOptions config.Durations selected=system.psionic.durationUnit localize=true}}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
<textarea name="system.description" rows="6">{{system.description}}</textarea>
|
||||
</div>
|
||||
<div class="tab" data-group="primary" data-tab="config">
|
||||
{{#if (eq system.subType "skill")}}
|
||||
<div class="field-group">
|
||||
<label class="mgt2-checkbox"><input type="checkbox" name="system.skill.reduceEncumbrance" data-dtype="Boolean" {{checked system.skill.reduceEncumbrance}} />{{ localize 'MGT2.Items.ReduceEncumbrance' }}</label>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{> systems/mgt2/templates/items/parts/sheet-configuration.html }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user