RC-80 | Setup Item Sheet

This commit is contained in:
Oliver-Akins 2025-01-08 21:16:04 -07:00
parent 21ca3e067b
commit 94c89f72e1
6 changed files with 73 additions and 0 deletions

View file

@ -9,6 +9,7 @@
}, },
"RipCrypt": { "RipCrypt": {
"sheet-names": { "sheet-names": {
"AllItemsSheetV1": "RipCrypt Item Sheet",
"HeroSummaryCardV1": "Hero Stat Card", "HeroSummaryCardV1": "Hero Stat Card",
"HeroSkillsCardV1": "Hero Skill Card" "HeroSkillsCardV1": "Hero Skill Card"
}, },

View file

@ -0,0 +1,50 @@
import { filePath } from "../../consts.mjs";
import { GenericAppMixin } from "../GenericApp.mjs";
import { Logger } from "../../utils/Logger.mjs";
const { HandlebarsApplicationMixin } = foundry.applications.api;
const { ItemSheetV2 } = foundry.applications.sheets;
export class AllItemSheetV1 extends GenericAppMixin(HandlebarsApplicationMixin(ItemSheetV2)) {
// #region Options
static DEFAULT_OPTIONS = {
classes: [
`ripcrypt--item`,
`ripcrypt--AllItemSheetV1`,
],
position: {
width: `auto`,
height: `auto`,
},
window: {
resizable: false,
},
actions: {
},
form: {
submitOnChange: true,
closeOnSubmit: false,
},
};
static PARTS = {
content: {
template: filePath(`templates/Apps/AllItemSheetV1/content.hbs`),
},
};
// #endregion
// #region Lifecycle
async _preparePartContext(partId, ctx, opts) {
ctx = await super._preparePartContext(partId, ctx, opts);
ctx.actor = this.document;
Logger.debug(`Context:`, ctx);
return ctx;
};
// #endregion
// #region Actions
// #endregion
};

View file

@ -1,4 +1,5 @@
// Applications // Applications
import { AllItemSheetV1 } from "../Apps/ItemSheets/AllItemSheetV1.mjs";
import { HeroSkillsCardV1 } from "../Apps/ActorSheets/HeroSkillsCardV1.mjs"; import { HeroSkillsCardV1 } from "../Apps/ActorSheets/HeroSkillsCardV1.mjs";
import { HeroSummaryCardV1 } from "../Apps/ActorSheets/HeroSummaryCardV1.mjs"; import { HeroSummaryCardV1 } from "../Apps/ActorSheets/HeroSummaryCardV1.mjs";
@ -34,6 +35,12 @@ Hooks.once(`init`, () => {
// #endregion // #endregion
// #region Sheets // #region Sheets
// Unregister core sheets
/* eslint-disable no-undef */
Items.unregisterSheet(`core`, ItemSheet);
Actors.unregisterSheet(`core`, ActorSheet);
/* eslint-enabled no-undef */
// #region Actors // #region Actors
Actors.registerSheet(game.system.id, HeroSummaryCardV1, { Actors.registerSheet(game.system.id, HeroSummaryCardV1, {
makeDefault: true, makeDefault: true,
@ -47,6 +54,14 @@ Hooks.once(`init`, () => {
themes: HeroSkillsCardV1.themes, themes: HeroSkillsCardV1.themes,
}); });
// #endregion // #endregion
// #region Items
Items.registerSheet(game.system.id, AllItemSheetV1, {
makeDefault: true,
label: `RipCrypt.sheet-names.AllItemsSheetV1`,
themes: AllItemSheetV1.themes,
});
// #endregion
// #endregion // #endregion
// #region Token Attrs // #region Token Attrs

View file

@ -0,0 +1,3 @@
<div class="AllItemSheetV1">
All Item Sheet V1
</div>

View file

@ -0,0 +1,3 @@
.ripcrypt .AllItemSheetV1 {
--input-height: 1rem;
}

View file

@ -1,2 +1,3 @@
@import url("./AllItemSheetV1/style.css");
@import url("./HeroSummaryCardV1/style.css"); @import url("./HeroSummaryCardV1/style.css");
@import url("./HeroSkillsCardV1/style.css"); @import url("./HeroSkillsCardV1/style.css");