limited sheet for limited rights ^^
This commit is contained in:
@@ -15,6 +15,17 @@ export class BaseSheetL5r5e extends ActorSheet {
|
||||
return sheetData;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return a light sheet if in "limited" state
|
||||
* @override
|
||||
*/
|
||||
get template() {
|
||||
if (!game.user.isGM && this.actor.limited) {
|
||||
return `${CONFIG.l5r5e.paths.templates}actors/limited-sheet.html`;
|
||||
}
|
||||
return this.options.template;
|
||||
}
|
||||
|
||||
/**
|
||||
* Update the actor.
|
||||
* @param event
|
||||
@@ -56,6 +67,11 @@ export class BaseSheetL5r5e extends ActorSheet {
|
||||
activateListeners(html) {
|
||||
super.activateListeners(html);
|
||||
|
||||
// *** Everything below here is only needed if the sheet is editable ***
|
||||
if (!this.options.editable) {
|
||||
return;
|
||||
}
|
||||
|
||||
// *** Dice event on Skills clic ***
|
||||
html.find(".skill-name").on("click", (event) => {
|
||||
const li = $(event.currentTarget).parents(".skill");
|
||||
@@ -66,11 +82,6 @@ export class BaseSheetL5r5e extends ActorSheet {
|
||||
}).render(true);
|
||||
});
|
||||
|
||||
// *** Everything below here is only needed if the sheet is editable ***
|
||||
if (!this.options.editable) {
|
||||
return;
|
||||
}
|
||||
|
||||
// On focus on one numeric element, select all text for better experience
|
||||
html.find(".select-on-focus").on("focus", (event) => {
|
||||
event.target.select();
|
||||
|
||||
@@ -22,6 +22,9 @@ export class CharacterSheetL5r5e extends BaseSheetL5r5e {
|
||||
*/
|
||||
_getHeaderButtons() {
|
||||
let buttons = super._getHeaderButtons();
|
||||
if (!this.options.editable) {
|
||||
return buttons;
|
||||
}
|
||||
|
||||
buttons.unshift({
|
||||
label: game.i18n.localize("l5r5e.twenty_questions.bt_abrev"),
|
||||
|
||||
47
system/templates/actors/limited-sheet.html
Normal file
47
system/templates/actors/limited-sheet.html
Normal file
@@ -0,0 +1,47 @@
|
||||
<form class="{{cssClass}} flexcol limited" autocomplete="off">
|
||||
|
||||
{{!-- Sheet Header --}}
|
||||
<div class="sheet-header flexrow">
|
||||
<img class="profile-img" src="{{actor.img}}" data-edit="img" title="{{actor.name}}"/>
|
||||
|
||||
<div class="header-fields identity-wrapper">
|
||||
<h1 class="charname"><input name="name" type="text" value="{{actor.name}}" placeholder="Name"/></h1>
|
||||
</div>
|
||||
|
||||
{{!-- Sheet Body --}}
|
||||
<section class="sheet-body">
|
||||
<ul class="identity-content">
|
||||
<li>
|
||||
<label class="attribute-label">
|
||||
{{ localize 'l5r5e.clan' }}
|
||||
<input type="text" name="data.identity.clan" value="{{data.identity.clan}}"/>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="attribute-label">
|
||||
{{ localize 'l5r5e.family' }}
|
||||
<input type="text" name="data.identity.family" value="{{data.identity.family}}"/>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="attribute-label">
|
||||
{{ localize 'l5r5e.school' }}
|
||||
<input type="text" name="data.identity.school" value="{{data.identity.school}}"/>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="attribute-label">
|
||||
{{ localize 'l5r5e.schoolrank' }}
|
||||
<input type="number" name="data.identity.school_rank" value="{{data.identity.school_rank}}" class="select-on-focus" data-dtype="Number" min="0" placeholder="0"/>
|
||||
</label>
|
||||
</li>
|
||||
<li>
|
||||
<label class="attribute-label">
|
||||
{{ localize 'l5r5e.roles' }}
|
||||
<input type="text" name="data.identity.roles" value="{{data.identity.roles}}"/>
|
||||
</label>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</div>
|
||||
</form>
|
||||
Reference in New Issue
Block a user