diff --git a/app/imports/ui/creature/character/printedCharacterSheet/CharacterSheetPrinted.vue b/app/imports/ui/creature/character/printedCharacterSheet/CharacterSheetPrinted.vue new file mode 100644 index 00000000..cffd8bc5 --- /dev/null +++ b/app/imports/ui/creature/character/printedCharacterSheet/CharacterSheetPrinted.vue @@ -0,0 +1,124 @@ + + + + + + + + + + Character not found + + + Either this character does not exist, or you don't have permission + to view it. + + + + + + + + + + + + + + + + + diff --git a/app/imports/ui/creature/character/printedCharacterSheet/PrintedCharacter.vue b/app/imports/ui/creature/character/printedCharacterSheet/PrintedCharacter.vue new file mode 100644 index 00000000..f37e7b5b --- /dev/null +++ b/app/imports/ui/creature/character/printedCharacterSheet/PrintedCharacter.vue @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/imports/ui/creature/character/printedCharacterSheet/PrintedFeatures.vue b/app/imports/ui/creature/character/printedCharacterSheet/PrintedFeatures.vue new file mode 100644 index 00000000..c1bfc215 --- /dev/null +++ b/app/imports/ui/creature/character/printedCharacterSheet/PrintedFeatures.vue @@ -0,0 +1,60 @@ + + + + + + + + + + + + + diff --git a/app/imports/ui/creature/character/printedCharacterSheet/PrintedInventory.vue b/app/imports/ui/creature/character/printedCharacterSheet/PrintedInventory.vue new file mode 100644 index 00000000..ea77fddd --- /dev/null +++ b/app/imports/ui/creature/character/printedCharacterSheet/PrintedInventory.vue @@ -0,0 +1,233 @@ + + + + + + + + + $vuetify.icons.injustice + + + + Weight Carried + + + + + {{ weightCarried }} lb + + + + + + $vuetify.icons.cash + + + + Net worth + + + + + + + + + + + $vuetify.icons.spell + + + + Items attuned + + + + + {{ variables.itemsAttuned.value }} + + + + + + + + + + Equipped + + + + + + + + + + Carried + + + + + + + + + + + + + + + + diff --git a/app/imports/ui/creature/character/printedCharacterSheet/PrintedSpells.vue b/app/imports/ui/creature/character/printedCharacterSheet/PrintedSpells.vue new file mode 100644 index 00000000..a5e307cc --- /dev/null +++ b/app/imports/ui/creature/character/printedCharacterSheet/PrintedSpells.vue @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + diff --git a/app/imports/ui/creature/character/printedCharacterSheet/PrintedStats.vue b/app/imports/ui/creature/character/printedCharacterSheet/PrintedStats.vue new file mode 100644 index 00000000..b4717b20 --- /dev/null +++ b/app/imports/ui/creature/character/printedCharacterSheet/PrintedStats.vue @@ -0,0 +1,572 @@ + + + + + + + + + + + + {{ ability.total }} + + + {{ numberToSignedString(ability.modifier) }} + + + + + {{ numberToSignedString(ability.modifier) }} + + + {{ ability.total }} + + + + + {{ ability.name }} + + + + + + + + + {{ toggle.name }} + + + + + + {{ stat.value }} + + + {{ stat.name }} + + + + + + {{ numberToSignedString(modifier.value) }} + + + {{ modifier.name }} + + + + + + {{ numberToSignedString(check.value) }} + + + {{ check.name }} + + + + + + + + Total: + + + {{ hitDie.total }}{{ hitDie.hitDiceSize }} + + + + + Hit Dice + + + + + + {{ resource.total }} + {{ resource.name }} + + + + + + Spell Slots + + + {{ spellSlot.name }} + + + {{ spellSlot.total }} + + + + mdi-radiobox-blank + + + + + + + + + Saving Throws + + + + + + + + + Skills + + + + + + + + + + + + + + Weapons + + + + + + + + + + Armor + + + + + + + + + + Tools + + + + + + + + + + Languages + + + + + + + + + + + + + + diff --git a/app/imports/ui/router.js b/app/imports/ui/router.js index 6fd075d9..bb8dc307 100644 --- a/app/imports/ui/router.js +++ b/app/imports/ui/router.js @@ -12,6 +12,7 @@ const LibraryCollectionToolbar = () => import('/imports/ui/library/LibraryCollec const CharacterSheetPage = () => import('/imports/ui/pages/CharacterSheetPage.vue'); const CharacterSheetToolbar = () => import('/imports/ui/creature/character/CharacterSheetToolbar.vue'); const CharacterSheetRightDrawer = () => import('/imports/ui/creature/character/CharacterSheetRightDrawer.vue'); +const CharacterSheetPrinted = () => import('/imports/ui/creature/character/printedCharacterSheet/CharacterSheetPrinted.vue'); const SignIn = () => import('/imports/ui/pages/SignIn.vue'); const Register = () => import('/imports/ui/pages/Register.vue'); const IconAdmin = () => import('/imports/ui/icons/IconAdmin.vue'); @@ -177,6 +178,16 @@ RouterFactory.configure(router => { meta: { title: 'Character Sheet', }, + }, { + name: 'printCharacterSheet', + path: '/print-character/:id', + alias: '/print-character/:id/:urlName', + components: { + default: CharacterSheetPrinted, + }, + meta: { + title: 'Print Character Sheet', + }, }, { path: '/tabletops', name: 'tabletops',