From faa84df3bc45b28caa0dc1048cbfecb57c2ed621 Mon Sep 17 00:00:00 2001 From: Oliver-Akins Date: Sat, 23 Dec 2023 20:25:45 -0700 Subject: [PATCH] Add text boxes for roles --- .styles/root.css | 11 ++++++++++- .styles/sheets/actor/mvp.css | 11 ++++++++++- module/models/PlayerData.mjs | 7 ++++++- styles/sheets/actor/mvp.scss | 10 ++++++++++ templates/actors/char-sheet-mvp/sheet.hbs | 6 +++++- 5 files changed, 41 insertions(+), 4 deletions(-) diff --git a/.styles/root.css b/.styles/root.css index 3c92b13..72f6d38 100644 --- a/.styles/root.css +++ b/.styles/root.css @@ -211,6 +211,15 @@ .dotdungeon .actor--pc .panel--roles { grid-area: roles; } +.dotdungeon .actor--pc .panel--roles .panel__content { + display: grid; + grid-template-rows: repeat(4, min-content); + height: 100%; + gap: 4px; +} +.dotdungeon .actor--pc .panel--roles .panel__content textarea { + resize: vertical; +} .dotdungeon .actor--pc .panel--spells { grid-area: spells; } @@ -292,4 +301,4 @@ resize: vertical; } -/*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../styles/generic.scss%22,%22../styles/mixins/_foundry.scss%22,%22../styles/_vars.scss%22,%22../styles/mixins/_partials.scss%22,%22../styles/sheets/partials/stat.scss%22,%22../styles/sheets/partials/skill.scss%22,%22../styles/sheets/partials/panel.scss%22,%22../styles/mixins/_breakpoints.scss%22,%22../styles/sheets/actor/mvp.scss%22,%22../styles/sheets/actor/sync/basic.scss%22,%22../styles/sheets/items/aspect.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AAIQ;AAKP;EACC;;AAED;EACC;;AAGD;ECfA;EACA;EACA;EDeC,aElBW;EFmBX;;AAGD;EACC;;AAGD;ECzBA;EACA;EACA;EDyBC;EACA;;AAGD;AAAA;AAAA;EAGC;EGhCD;EACA;EACA;EACA;EACA;EACA,aDPW;;ACSX;AAAA;AAAA;AAAA;AAAA;EAEC;;AH2BD;EACC;;AAGD;EACC;EACA,aE5CU;;;AFiDZ;EACC;;AAEA;EACC;EACA,YEpDW;;;AEHb;EACC;EACA;EACA;;ACHD;EACC;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;;ACdH;EACC;EACA;EAEA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;ELlBD;EACA;EACA;EKkBE;EACA;EACA,aJvBU;EIwBV;;AAGD;EAEC,QADO;EAEP,OAFO;EAGP;;AAIF;EACC;;;AC7BD;EDkCA;IACC;IACA;;;AExCF;EACC;EACA,qBACC;EASD;EACA,oBACC;EAGD;EACA;;AAGC;EACC;;AACA;EACC;EACA;;AAGD;EACC;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;EACA;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAEA;EACC;;AAIF;AAAA;EAEC;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;EACA;;AAEA;AAAA;EACC;;AAIF;EACC;EACA;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;;AAGF;EACC;;AAED;EACC;;AAED;EACC;;AAED;EACC;;AAED;EACC;;AAED;EACC;;;AD5HF;ECoIC;IACC;IACA;IACA,qBACC;;EAkBC;IACC;;EAKD;IACC;IACA;;;AD5JL;ECsKC;IACC;IACA;IACA,qBACC;;EAeC;IACC;;;AC9LL;EACC;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;;AAGD;EACC;EACA;;AAGD;EACC;EACA;;AAMA;EACC;EACA;;;AFlBH;EE4BG;IACC;IACA;;;ACzCL;EACC;;AAEA;EACC;EACA;EACA;;AAGD;EACC;EACA%22,%22file%22:%22root.css%22%7D */ +/*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../styles/generic.scss%22,%22../styles/mixins/_foundry.scss%22,%22../styles/_vars.scss%22,%22../styles/mixins/_partials.scss%22,%22../styles/sheets/partials/stat.scss%22,%22../styles/sheets/partials/skill.scss%22,%22../styles/sheets/partials/panel.scss%22,%22../styles/mixins/_breakpoints.scss%22,%22../styles/sheets/actor/mvp.scss%22,%22../styles/sheets/actor/sync/basic.scss%22,%22../styles/sheets/items/aspect.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AAIQ;AAKP;EACC;;AAED;EACC;;AAGD;ECfA;EACA;EACA;EDeC,aElBW;EFmBX;;AAGD;EACC;;AAGD;ECzBA;EACA;EACA;EDyBC;EACA;;AAGD;AAAA;AAAA;EAGC;EGhCD;EACA;EACA;EACA;EACA;EACA,aDPW;;ACSX;AAAA;AAAA;AAAA;AAAA;EAEC;;AH2BD;EACC;;AAGD;EACC;EACA,aE5CU;;;AFiDZ;EACC;;AAEA;EACC;EACA,YEpDW;;;AEHb;EACC;EACA;EACA;;ACHD;EACC;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;;ACdH;EACC;EACA;EAEA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;ELlBD;EACA;EACA;EKkBE;EACA;EACA,aJvBU;EIwBV;;AAGD;EAEC,QADO;EAEP,OAFO;EAGP;;AAIF;EACC;;;AC7BD;EDkCA;IACC;IACA;;;AExCF;EACC;EACA,qBACC;EASD;EACA,oBACC;EAGD;EACA;;AAGC;EACC;;AACA;EACC;EACA;;AAGD;EACC;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;EACA;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAEA;EACC;;AAIF;AAAA;EAEC;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;EACA;;AAEA;AAAA;EACC;;AAIF;EACC;EACA;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;;AAGF;EACC;;AAED;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAED;EACC;;AAED;EACC;;AAED;EACC;;;ADtIF;EC8IC;IACC;IACA;IACA,qBACC;;EAkBC;IACC;;EAKD;IACC;IACA;;;ADtKL;ECgLC;IACC;IACA;IACA,qBACC;;EAeC;IACC;;;ACxML;EACC;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;;AAGD;EACC;EACA;;AAGD;EACC;EACA;;AAMA;EACC;EACA;;;AFlBH;EE4BG;IACC;IACA;;;ACzCL;EACC;;AAEA;EACC;EACA;EACA;;AAGD;EACC;EACA%22,%22file%22:%22root.css%22%7D */ diff --git a/.styles/sheets/actor/mvp.css b/.styles/sheets/actor/mvp.css index a0bca8d..6c6dea8 100644 --- a/.styles/sheets/actor/mvp.css +++ b/.styles/sheets/actor/mvp.css @@ -89,6 +89,15 @@ .dotdungeon .actor--pc .panel--roles { grid-area: roles; } +.dotdungeon .actor--pc .panel--roles .panel__content { + display: grid; + grid-template-rows: repeat(4, min-content); + height: 100%; + gap: 4px; +} +.dotdungeon .actor--pc .panel--roles .panel__content textarea { + resize: vertical; +} .dotdungeon .actor--pc .panel--spells { grid-area: spells; } @@ -127,4 +136,4 @@ } } -/*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../../../styles/sheets/actor/mvp.scss%22,%22../../../styles/mixins/_breakpoints.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AAGA;EACC;EACA,qBACC;EASD;EACA,oBACC;EAGD;EACA;;AAGC;EACC;;AACA;EACC;EACA;;AAGD;EACC;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;EACA;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAEA;EACC;;AAIF;AAAA;EAEC;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;EACA;;AAEA;AAAA;EACC;;AAIF;EACC;EACA;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;;AAGF;EACC;;AAED;EACC;;AAED;EACC;;AAED;EACC;;AAED;EACC;;AAED;EACC;;;AC5HF;EDoIC;IACC;IACA;IACA,qBACC;;EAkBC;IACC;;EAKD;IACC;IACA;;;AC5JL;EDsKC;IACC;IACA;IACA,qBACC;;EAeC;IACC%22,%22file%22:%22mvp.css%22%7D */ +/*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%22../../../styles/sheets/actor/mvp.scss%22,%22../../../styles/mixins/_breakpoints.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AAGA;EACC;EACA,qBACC;EASD;EACA,oBACC;EAGD;EACA;;AAGC;EACC;;AACA;EACC;EACA;;AAGD;EACC;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;EACA;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAEA;EACC;;AAIF;AAAA;EAEC;EACA;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;EACA;;AAEA;AAAA;EACC;;AAIF;EACC;EACA;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;;AAGF;EACC;;AAED;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAED;EACC;;AAED;EACC;;AAED;EACC;;;ACtIF;ED8IC;IACC;IACA;IACA,qBACC;;EAkBC;IACC;;EAKD;IACC;IACA;;;ACtKL;EDgLC;IACC;IACA;IACA,qBACC;;EAeC;IACC%22,%22file%22:%22mvp.css%22%7D */ diff --git a/module/models/PlayerData.mjs b/module/models/PlayerData.mjs index 0672ee7..f7f4583 100644 --- a/module/models/PlayerData.mjs +++ b/module/models/PlayerData.mjs @@ -68,7 +68,12 @@ export class PlayerData extends foundry.abstract.DataModel { deactivateAfter: new fields.NumberField({ min: 0, integer: true}), used: new fields.BooleanField(), }), - roles: new fields.ArrayField(new fields.HTMLField()), + roles: new fields.SchemaField({ + r1: new fields.StringField({ initial: ``, blank: true, trim: true }), + r2: new fields.StringField({ initial: ``, blank: true, trim: true }), + r3: new fields.StringField({ initial: ``, blank: true, trim: true }), + r4: new fields.StringField({ initial: ``, blank: true, trim: true }), + }), weapon: new fields.SchemaField({ name: new fields.HTMLField(), damage: new fields.HTMLField(), diff --git a/styles/sheets/actor/mvp.scss b/styles/sheets/actor/mvp.scss index 8b059d4..bc0ac4f 100644 --- a/styles/sheets/actor/mvp.scss +++ b/styles/sheets/actor/mvp.scss @@ -112,6 +112,16 @@ } &--roles { grid-area: roles; + .panel__content { + display: grid; + grid-template-rows: repeat(4, min-content); + height: 100%; + gap: 4px; + + textarea { + resize: vertical; + } + } } &--spells { grid-area: spells; diff --git a/templates/actors/char-sheet-mvp/sheet.hbs b/templates/actors/char-sheet-mvp/sheet.hbs index 8b98d01..d97b25a 100644 --- a/templates/actors/char-sheet-mvp/sheet.hbs +++ b/templates/actors/char-sheet-mvp/sheet.hbs @@ -192,7 +192,11 @@ {{#> dotdungeon.panel class="roles" title="dotdungeon.actor.pc.panel.roles"}} - Roles + {{#each system.roles}} + + {{/each}} {{/ dotdungeon.panel}}