Adds Monsters and Locations

This commit is contained in:
2025-05-31 22:56:43 -07:00
parent f3bfb2736c
commit 9c0d9326e0
11 changed files with 358 additions and 18 deletions

View File

@@ -20,10 +20,12 @@ export type Campaign = RecordModel & {
export const RelationshipType = {
DiscoveredIn: "discoveredIn",
Locations: "locations",
Monsters: "monsters",
Npcs: "npcs",
Scenes: "scenes",
Secrets: "secrets",
Treasures: "treasures",
Npcs: "npcs",
} as const;
export type RelationshipType =
@@ -52,6 +54,35 @@ export type Document = RecordModel & {
updated: ISO8601Date;
};
/** Locations **/
export type Location = Document &
DocumentData<
"location",
{
name: string;
description: string;
}
>;
export function isLocation(doc: Document): doc is Location {
return Object.hasOwn(doc.data, "location");
}
/** Monsters **/
export type Monster = Document &
DocumentData<
"monster",
{
name: string;
}
>;
export function isMonster(doc: Document): doc is Monster {
return Object.hasOwn(doc.data, "monster");
}
/** NPCs **/
export type Npc = Document &