Work towards using pop-out item sheets instead of inline-editing because inline-editing is annoying and kinda ugly TBH
This commit is contained in:
parent
dcdc1b7764
commit
516f7ac826
13 changed files with 150 additions and 73 deletions
|
|
@ -43,6 +43,9 @@
|
|||
.dotdungeon > .window-content textarea:active {
|
||||
border-color: rgb(0, 0, 0);
|
||||
}
|
||||
.dotdungeon > .window-content textarea {
|
||||
resize: vertical;
|
||||
}
|
||||
.dotdungeon > .window-content select, .dotdungeon > .window-content select:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
|
@ -63,4 +66,4 @@
|
|||
word-break: break-all;
|
||||
}
|
||||
|
||||
/*# 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%5D,%22names%22:%5B%5D,%22mappings%22:%22AAIQ;AAKP;EACC;;AAED;EACC;;AAGD;ECfA;EACA;EACA;EDeC,aEhBW;EFiBX;;AAGD;EACC;;AAGD;ECzBA;EACA;EACA;EDyBC;EACA;;AAEA;EACC;;AAIF;AAAA;AAAA;EAGC;EGpCD;EACA;EACA;EACA;EACA;EACA,aDLW;;ACOX;AAAA;AAAA;AAAA;AAAA;EAEC;;AH+BD;EACC;;AAEA;EACC;;;AAMH;EACC;;AAEA;EACC;EACA,YErDW;;AFuDX;EACC;EACA,aE3DS;EF4DT%22,%22file%22:%22generic.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%5D,%22names%22:%5B%5D,%22mappings%22:%22AAIQ;AAKP;EACC;;AAED;EACC;;AAGD;ECfA;EACA;EACA;EDeC,aEhBW;EFiBX;;AAGD;EACC;;AAGD;ECzBA;EACA;EACA;EDyBC;EACA;;AAEA;EACC;;AAIF;AAAA;AAAA;EAGC;EGpCD;EACA;EACA;EACA;EACA;EACA,aDLW;;ACOX;AAAA;AAAA;AAAA;AAAA;EAEC;;AH+BD;EACC;;AAGD;EACC;;AAEA;EACC;;;AAMH;EACC;;AAEA;EACC;EACA,YEzDW;;AF2DX;EACC;EACA,aE/DS;EFgET%22,%22file%22:%22generic.css%22%7D */
|
||||
|
|
|
|||
|
|
@ -43,6 +43,9 @@
|
|||
.dotdungeon > .window-content textarea:active {
|
||||
border-color: rgb(0, 0, 0);
|
||||
}
|
||||
.dotdungeon > .window-content textarea {
|
||||
resize: vertical;
|
||||
}
|
||||
.dotdungeon > .window-content select, .dotdungeon > .window-content select:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
|
@ -379,6 +382,9 @@
|
|||
flex-direction: column;
|
||||
gap: 4px;
|
||||
}
|
||||
.dotdungeon .actor--pc .panel--spells .spell .placeholder {
|
||||
opacity: 75%;
|
||||
}
|
||||
.dotdungeon .actor--pc .panel--spells .spell__actions {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
|
@ -476,4 +482,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/global/icons.scss%22,%22../styles/global/buttons.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,%22../styles/sheets/items/spell.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AAIQ;AAKP;EACC;;AAED;EACC;;AAGD;ECfA;EACA;EACA;EDeC,aEhBW;EFiBX;;AAGD;EACC;;AAGD;ECzBA;EACA;EACA;EDyBC;EACA;;AAEA;EACC;;AAIF;AAAA;AAAA;EAGC;EGpCD;EACA;EACA;EACA;EACA;EACA,aDLW;;ACOX;AAAA;AAAA;AAAA;AAAA;EAEC;;AH+BD;EACC;;AAEA;EACC;;;AAMH;EACC;;AAEA;EACC;EACA,YErDW;;AFuDX;EACC;EACA,aE3DS;EF4DT;;;AI5DF;EACC;EACA;EACA;;AAIC;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;;ACTH;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC,YHXc;EGYd,OHXe;;AGYf;EACC;EACA,OHfa;EGgBb,cHhBa;;AGoBf;EACC,YHlBc;EGmBd,OHlBe;;AGmBf;EACC;EACA,OHtBa;EGuBb,cHvBa;;AG2Bf;EACC,YHzBa;EG0Bb,OHzBc;;AG0Bd;EACC;EACA,OH7BY;EG8BZ,cH9BY;;AGkCd;EACC;;AAID;EACC;;AACA;EACC;;;ACvDJ;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;EPlBD;EACA;EACA;EOkBE;EACA;EACA,aNrBU;EMsBV;;AAGD;EAEC,QADO;EAEP,OAFO;EAGP;;AAIF;EACC;;;AC7BD;EDkCA;IACC;IACA;;;AExCF;EACC;EACA,qBACC;EASD;EACA,oBACC;EAGD;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIA;EACC;;AAMF;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;;AAED;EACC;EACA;;AAED;EACC;;AAGD;EACC;EACA;EACA;;AAGD;AAAA;AAAA;EAGC;EACA;;AAGD;EACC;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;EACA;;AAEA;AAAA;EACC;;AAIF;EACC;EACA;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAGF;EACC;EACA;EACA;;AAED;EACC;EACA;EACA;;AAED;EACC;EACA;EACA;EACA;;AAIH;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAEA;EACC;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAIH;EACC;;AAED;EACC;;AAED;EACC;;;ADxNF;ECgOC;IACC;IACA;IACA,qBACC;;EAkBC;IACC;;EAKD;IACC;IACA;;;ADxPL;ECkQC;IACC;IACA;IACA,qBACC;;EAeC;IACC;;;AC1RL;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;;;ACXF;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/global/icons.scss%22,%22../styles/global/buttons.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,%22../styles/sheets/items/spell.scss%22%5D,%22names%22:%5B%5D,%22mappings%22:%22AAIQ;AAKP;EACC;;AAED;EACC;;AAGD;ECfA;EACA;EACA;EDeC,aEhBW;EFiBX;;AAGD;EACC;;AAGD;ECzBA;EACA;EACA;EDyBC;EACA;;AAEA;EACC;;AAIF;AAAA;AAAA;EAGC;EGpCD;EACA;EACA;EACA;EACA;EACA,aDLW;;ACOX;AAAA;AAAA;AAAA;AAAA;EAEC;;AH+BD;EACC;;AAGD;EACC;;AAEA;EACC;;;AAMH;EACC;;AAEA;EACC;EACA,YEzDW;;AF2DX;EACC;EACA,aE/DS;EFgET;;;AIhEF;EACC;EACA;EACA;;AAIC;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;AAFD;EACC;EACA;;;ACTH;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC,YHXc;EGYd,OHXe;;AGYf;EACC;EACA,OHfa;EGgBb,cHhBa;;AGoBf;EACC,YHlBc;EGmBd,OHlBe;;AGmBf;EACC;EACA,OHtBa;EGuBb,cHvBa;;AG2Bf;EACC,YHzBa;EG0Bb,OHzBc;;AG0Bd;EACC;EACA,OH7BY;EG8BZ,cH9BY;;AGkCd;EACC;;AAID;EACC;;AACA;EACC;;;ACvDJ;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;EPlBD;EACA;EACA;EOkBE;EACA;EACA,aNrBU;EMsBV;;AAGD;EAEC,QADO;EAEP,OAFO;EAGP;;AAIF;EACC;;;AC7BD;EDkCA;IACC;IACA;;;AExCF;EACC;EACA,qBACC;EASD;EACA,oBACC;EAGD;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIA;EACC;;AAMF;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;;AAED;EACC;EACA;;AAED;EACC;;AAGD;EACC;EACA;EACA;;AAGD;AAAA;AAAA;EAGC;EACA;;AAGD;EACC;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;EACA;;AAEA;AAAA;EACC;;AAIF;EACC;EACA;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAGF;EACC;EACA;EACA;;AAED;EACC;EACA;EACA;;AAED;EACC;EACA;EACA;EACA;;AAIH;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAEA;EACC;EACA;EACA;;AAEA;EACC;;AAGD;EACC;EACA;EACA;EACA;;AAIH;EACC;;AAED;EACC;;AAED;EACC;;;AD5NF;ECoOC;IACC;IACA;IACA,qBACC;;EAkBC;IACC;;EAKD;IACC;IACA;;;AD5PL;ECsQC;IACC;IACA;IACA,qBACC;;EAeC;IACC;;;AC9RL;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;;;ACXF;EACC;;AAEA;EACC;EACA;EACA;;AAGD;EACC;EACA%22,%22file%22:%22root.css%22%7D */
|
||||
|
|
|
|||
|
|
@ -165,6 +165,9 @@
|
|||
flex-direction: column;
|
||||
gap: 4px;
|
||||
}
|
||||
.dotdungeon .actor--pc .panel--spells .spell .placeholder {
|
||||
opacity: 75%;
|
||||
}
|
||||
.dotdungeon .actor--pc .panel--spells .spell__actions {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
|
@ -206,4 +209,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;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIA;EACC;;AAMF;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;;AAED;EACC;EACA;;AAED;EACC;;AAGD;EACC;EACA;EACA;;AAGD;AAAA;AAAA;EAGC;EACA;;AAGD;EACC;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;EACA;;AAEA;AAAA;EACC;;AAIF;EACC;EACA;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAGF;EACC;EACA;EACA;;AAED;EACC;EACA;EACA;;AAED;EACC;EACA;EACA;EACA;;AAIH;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAEA;EACC;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAIH;EACC;;AAED;EACC;;AAED;EACC;;;ACxNF;EDgOC;IACC;IACA;IACA,qBACC;;EAkBC;IACC;;EAKD;IACC;IACA;;;ACxPL;EDkQC;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;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIA;EACC;;AAMF;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;;AAED;EACC;EACA;;AAED;EACC;;AAGD;EACC;EACA;EACA;;AAGD;AAAA;AAAA;EAGC;EACA;;AAGD;EACC;;AAGF;EACC;;AAEA;EACC;EACA;EACA;;AAGD;AAAA;EAEC;EACA;EACA;;AAEA;AAAA;EACC;;AAIF;EACC;EACA;;AAGF;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAGF;EACC;EACA;EACA;;AAED;EACC;EACA;EACA;;AAED;EACC;EACA;EACA;EACA;;AAIH;EACC;;AACA;EACC;EACA;EACA;EACA;;AAEA;EACC;;AAIH;EACC;;AAEA;EACC;EACA;EACA;;AAEA;EACC;;AAGD;EACC;EACA;EACA;EACA;;AAIH;EACC;;AAED;EACC;;AAED;EACC;;;AC5NF;EDoOC;IACC;IACA;IACA,qBACC;;EAkBC;IACC;;EAKD;IACC;IACA;;;AC5PL;EDsQC;IACC;IACA;IACA,qBACC;;EAeC;IACC%22,%22file%22:%22mvp.css%22%7D */
|
||||
|
|
|
|||
|
|
@ -175,15 +175,17 @@
|
|||
"empty": "You have no spells yet",
|
||||
"title.cost": "(Cost: {cost})",
|
||||
"name.label": "Name",
|
||||
"cost": {
|
||||
"label": "Cost",
|
||||
"placeholder": "Bytes per spell cast..."
|
||||
},
|
||||
"skill.label": "Spell Skill: {skill}",
|
||||
"description": {
|
||||
"label": "Description",
|
||||
"placeholder": "This spell does..."
|
||||
"label": "Description:",
|
||||
"placeholder": "There's no description for this spell yet..."
|
||||
},
|
||||
"add.label": "Add Spell"
|
||||
"add.label": "Add Spell",
|
||||
"aria": {
|
||||
"edit": "",
|
||||
"delete": "Delete spell",
|
||||
"chat": "Send spell information to chat"
|
||||
}
|
||||
}
|
||||
},
|
||||
"sync": {
|
||||
|
|
@ -204,6 +206,10 @@
|
|||
"name.placeholder": "Name...",
|
||||
"cost.label": "Cost",
|
||||
"description.label": "Description",
|
||||
"skill.label": "Spell Skill",
|
||||
"options": {
|
||||
"no-skill": "No Skill"
|
||||
},
|
||||
"aria": {
|
||||
"name": "The spell's name",
|
||||
"cost": "The amount of bytes it takes to cast the spell",
|
||||
|
|
@ -221,9 +227,41 @@
|
|||
"spell": {
|
||||
"delete": {
|
||||
"title": "Confirm Spell Deletion",
|
||||
"content": "Are you sure you would like to delete the spell: {name}<br /><br />This action cannot be reversed."
|
||||
"content": "Are you sure you would like to delete the spell: {name}<br /><br />This action cannot be undone."
|
||||
}
|
||||
}
|
||||
},
|
||||
"keyword": {
|
||||
"stat": {
|
||||
"build": "Build",
|
||||
"meta": "Meta",
|
||||
"presence": "Presence",
|
||||
"hands": "Hands",
|
||||
"tilt": "Tilt",
|
||||
"rng": "RNG"
|
||||
},
|
||||
"skill": {
|
||||
"defense": "Defense",
|
||||
"magic": "Magic",
|
||||
"melee": "Melee",
|
||||
"platforming": "Platforming",
|
||||
"strength": "Strength",
|
||||
"alchemy": "Alchemy",
|
||||
"arcanum": "Arcanum",
|
||||
"dreams": "Dream",
|
||||
"lore": "Lore",
|
||||
"navigation": "Navigation",
|
||||
"animal_handling": "Animal Handling",
|
||||
"perception": "Perception",
|
||||
"sneak": "Sneak",
|
||||
"speech": "Speech",
|
||||
"vibes": "Vibes",
|
||||
"accuracy": "Accuracy",
|
||||
"crafting": "Crafting",
|
||||
"engineering": "Engineering",
|
||||
"explosives": "Explosives",
|
||||
"piloting": "Piloting"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
|
|
|||
|
|
@ -6,17 +6,37 @@ const damageTypes = [ `slashing`, `piercing`, `smashing`, `gun`, `neon`, `shadow
|
|||
|
||||
const ammoTypes = [`quivers`, `mags`, `cells`];
|
||||
|
||||
const stats = [ `build`, `meta`, `presence`, `hands`, `tilt`, `rng` ];
|
||||
|
||||
const buildSkills = [ "defense", "magic", "melee", "platforming", "strength", ];
|
||||
const metaSkills = [ "alchemy", "arcanum", "dreams", "lore", "navigation", ];
|
||||
const presenceSkills = [ "animal_handling", "perception", "sneak", "speech", "vibes", ];
|
||||
const handsSkills = [ "accuracy", "crafting", "engineering", "explosives", "piloting", ];
|
||||
|
||||
const allSkills = [
|
||||
...buildSkills,
|
||||
...metaSkills,
|
||||
...presenceSkills,
|
||||
...handsSkills,
|
||||
];
|
||||
|
||||
const skills = {
|
||||
build: [ "defense", "magic", "melee", "platforming", "strength", ],
|
||||
meta: [ "alchemy", "arcanum", "dreams", "lore", "navigation", ],
|
||||
presence: [ "animal_handling", "perception", "sneak", "speech", "vibes", ],
|
||||
hands: [ "accuracy", "crafting", "engineering", "explosives", "piloting", ]
|
||||
build: buildSkills,
|
||||
meta: metaSkills,
|
||||
presence: presenceSkills,
|
||||
hands: handsSkills,
|
||||
};
|
||||
|
||||
export default {
|
||||
stats,
|
||||
statDice,
|
||||
trainingLevels,
|
||||
damageTypes,
|
||||
ammoTypes,
|
||||
buildSkills,
|
||||
metaSkills,
|
||||
presenceSkills,
|
||||
handsSkills,
|
||||
allSkills,
|
||||
skills,
|
||||
};
|
||||
|
|
@ -25,5 +25,6 @@ export default {
|
|||
"nor": (a, b) => !(a || b),
|
||||
"nand": (a, b) => !(a && b),
|
||||
"xor": (a, b) => (a || b) && !(a && b),
|
||||
"xnor": (a, b) => !((a || b) && !(a && b))
|
||||
"xnor": (a, b) => !((a || b) && !(a && b)),
|
||||
"defined": v => v != null
|
||||
};
|
||||
|
|
@ -10,11 +10,10 @@ export class SpellItemData extends DescribedItemData {
|
|||
blank: true,
|
||||
trim: true,
|
||||
options() {
|
||||
let skills = [ `` ];
|
||||
for (const group in DOTDUNGEON.skills) {
|
||||
skills.push(...skills[group]);
|
||||
};
|
||||
return skills;
|
||||
return [
|
||||
``,
|
||||
...DOTDUNGEON.allSkills
|
||||
];
|
||||
},
|
||||
}),
|
||||
});
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import DOTDUNGEON from "../config.mjs";
|
||||
import { preloadIcons } from "../handlebars.mjs";
|
||||
|
||||
export class GenericItemSheet extends ItemSheet {
|
||||
|
|
@ -20,7 +21,6 @@ export class GenericItemSheet extends ItemSheet {
|
|||
|
||||
async getData() {
|
||||
const ctx = {};
|
||||
const item = this.item.toObject(false);
|
||||
|
||||
// Send all of the settings that sheets need into their context
|
||||
ctx.settings = {};
|
||||
|
|
@ -32,9 +32,10 @@ export class GenericItemSheet extends ItemSheet {
|
|||
|
||||
ctx.meta = {
|
||||
expanded: this._expanded,
|
||||
idp: this.actor.uuid,
|
||||
idp: this.item.uuid,
|
||||
};
|
||||
|
||||
ctx.config = DOTDUNGEON;
|
||||
ctx.icons = await preloadIcons();
|
||||
|
||||
return ctx;
|
||||
|
|
|
|||
|
|
@ -23,14 +23,12 @@ export class SpellSheet extends GenericItemSheet {
|
|||
};
|
||||
|
||||
async getData() {
|
||||
const ctx = {};
|
||||
const item = this.item.toObject(false);
|
||||
|
||||
ctx.name = super.name;
|
||||
ctx.item = item;
|
||||
ctx.system = item.system;
|
||||
ctx.flags = item.flags;
|
||||
const ctx = await super.getData();
|
||||
|
||||
ctx.item = this.item;
|
||||
ctx.system = this.item.system;
|
||||
ctx.flags = this.item.flags;
|
||||
console.log(ctx)
|
||||
return ctx;
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -41,6 +41,10 @@
|
|||
@include input-generic;
|
||||
}
|
||||
|
||||
textarea {
|
||||
resize: vertical;
|
||||
}
|
||||
|
||||
select, select:hover {
|
||||
cursor: pointer;
|
||||
|
||||
|
|
|
|||
|
|
@ -200,6 +200,10 @@
|
|||
flex-direction: column;
|
||||
gap: 4px;
|
||||
|
||||
.placeholder {
|
||||
opacity: 75%;
|
||||
}
|
||||
|
||||
&__actions {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
|
|
|
|||
|
|
@ -4,71 +4,60 @@
|
|||
<summary data-collapse-id="{{spell.uuid}}">
|
||||
<span class="flex-grow" style="flex-grow: 1">
|
||||
{{spell.name}}
|
||||
{{localize "dotdungeon.actor.pc.spells.title.cost" cost=spell.system.cost}}
|
||||
{{#if (defined spell.system.cost)}}
|
||||
{{localize "dotdungeon.actor.pc.spells.title.cost" cost=spell.system.cost}}
|
||||
{{/if}}
|
||||
</span>
|
||||
</summary>
|
||||
|
||||
|
||||
<div class="spell">
|
||||
<div class="spell__name">
|
||||
<label for="{{spell.uuid}}-name">
|
||||
{{localize "dotdungeon.actor.pc.spells.name.label"}}
|
||||
</label>
|
||||
<input
|
||||
type="text"
|
||||
id="{{spell.uuid}}-name"
|
||||
value="{{spell.name}}"
|
||||
data-embedded-update="name"
|
||||
data-embedded-id="{{spell.uuid}}"
|
||||
>
|
||||
</div>
|
||||
<div class="spell__cost">
|
||||
<label for="{{spell.uuid}}-cost">
|
||||
{{localize "dotdungeon.actor.pc.spells.cost.label"}}
|
||||
</label>
|
||||
<input
|
||||
type="text"
|
||||
id="{{spell.uuid}}-cost"
|
||||
value="{{spell.system.cost}}"
|
||||
placeholder="{{localize "dotdungeon.actor.pc.spells.cost.placeholder"}}"
|
||||
data-embedded-update="system.cost"
|
||||
data-embedded-id="{{spell.uuid}}"
|
||||
>
|
||||
</div>
|
||||
<div class="spell__description">
|
||||
<label for="{{spell.uuid}}-description">
|
||||
{{localize "dotdungeon.actor.pc.spells.description.label"}}
|
||||
</label>
|
||||
<textarea
|
||||
id="{{spell.uuid}}-description"
|
||||
placeholder="{{localize "dotdungeon.actor.pc.spells.description.placeholder"}}"
|
||||
data-embedded-update="system.description"
|
||||
data-embedded-id="{{spell.uuid}}"
|
||||
>{{spell.system.description}}</textarea>
|
||||
{{localize "dotdungeon.actor.pc.spells.description.label"}}
|
||||
<p class="{{ifThen spell.system.description '' 'placeholder'}}">
|
||||
{{#if spell.system.description}}
|
||||
{{spell.system.description}}
|
||||
{{else}}
|
||||
{{localize "dotdungeon.actor.pc.spells.description.placeholder"}}
|
||||
{{/if}}
|
||||
</p>
|
||||
</div>
|
||||
{{#if spell.system.skill}}
|
||||
<div class="spell__skill">
|
||||
{{localize
|
||||
"dotdungeon.actor.pc.spells.skill.label"
|
||||
skill=(localize (concat "dotdungeon.keyword.skill." spell.system.skill))
|
||||
}}
|
||||
</div>
|
||||
{{/if}}
|
||||
<div class="spell__actions">
|
||||
<button
|
||||
class="neutral reduced-padding equal-padding"
|
||||
class="confirm"
|
||||
>
|
||||
<div class="icon icon--20">
|
||||
Edit
|
||||
</button>
|
||||
<button
|
||||
class="neutral equal-padding"
|
||||
aria-label="{{localize "dotdungeon.actor.pc.spells.aria.chat"}}"
|
||||
data-embedded-chat
|
||||
data-embedded-id="{{spell.uuid}}"
|
||||
>
|
||||
<div aria-hidden="true" class="icon icon--20">
|
||||
{{{ ../icons.chat-bubble }}}
|
||||
</div>
|
||||
</button>
|
||||
<button
|
||||
class="danger reduced-padding equal-padding"
|
||||
class="danger equal-padding"
|
||||
aria-label="{{localize "dotdungeon.actor.pc.spells.aria.delete"}}"
|
||||
data-embedded-delete
|
||||
data-embedded-id="{{spell.uuid}}"
|
||||
>
|
||||
<div class="icon icon--20">
|
||||
<div aria-hidden="true" class="icon icon--20">
|
||||
{{{ ../icons.garbage-bin }}}
|
||||
</div>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="debug-data">
|
||||
{{spell.uuid}}
|
||||
{{dd-stringify spell}}
|
||||
</div>
|
||||
</details>
|
||||
{{else}}
|
||||
<p>
|
||||
|
|
|
|||
|
|
@ -24,4 +24,15 @@
|
|||
aria-description="{{localize "dotdungeon.item.spell.aria.description"}}"
|
||||
>{{system.description}}</textarea>
|
||||
</label>
|
||||
<label for="{{meta.idp}}-skill">
|
||||
{{localize "dotdungeon.item.spell.skill.label"}}
|
||||
</label>
|
||||
<select name="system.skill" id="{{meta.idp}}-skill">
|
||||
{{#select system.skill}}
|
||||
<option value="">{{localize "dotdungeon.item.spell.options.no-skill"}}</option>
|
||||
{{#each config.allSkills as | skill |}}
|
||||
<option value="{{skill}}">{{localize (concat "dotdungeon.keyword.skill." skill)}}</option>
|
||||
{{/each}}
|
||||
{{/select}}
|
||||
</select>
|
||||
</form>
|
||||
Loading…
Add table
Add a link
Reference in a new issue