Files
layonara-forge/packages/backend/src/gff/utp.schema.ts
T

117 lines
2.7 KiB
TypeScript

import { GffFieldType, type GffTypeSchema } from "./schema.js";
export const schema: GffTypeSchema = {
fileType: "utp",
displayName: "Placeable",
categories: ["Identity", "Lock", "Trap", "Scripts"],
fields: [
{
label: "Appearance",
displayName: "Appearance",
type: GffFieldType.Dword,
category: "Identity",
description: "Row index into placeables.2da",
},
{
label: "Tag",
displayName: "Tag",
type: GffFieldType.CExoString,
category: "Identity",
},
{
label: "TemplateResRef",
displayName: "Template ResRef",
type: GffFieldType.ResRef,
category: "Identity",
},
{
label: "Faction",
displayName: "Faction",
type: GffFieldType.Dword,
category: "Identity",
},
{
label: "Plot",
displayName: "Plot",
type: GffFieldType.Byte,
category: "Identity",
description: "Indestructible if set",
},
{
label: "Useable",
displayName: "Useable",
type: GffFieldType.Byte,
category: "Identity",
description: "Whether the player can interact with this placeable",
},
{
label: "HasInventory",
displayName: "Has Inventory",
type: GffFieldType.Byte,
category: "Identity",
},
{
label: "Locked",
displayName: "Locked",
type: GffFieldType.Byte,
category: "Lock",
},
{
label: "LockDC",
displayName: "Lock DC",
type: GffFieldType.Byte,
category: "Lock",
description: "Difficulty class to pick the lock",
},
{
label: "OpenLockDC",
displayName: "Open Lock DC",
type: GffFieldType.Byte,
category: "Lock",
},
{
label: "KeyName",
displayName: "Key Tag",
type: GffFieldType.CExoString,
category: "Lock",
description: "Tag of the key item that unlocks this",
},
{
label: "KeyRequired",
displayName: "Key Required",
type: GffFieldType.Byte,
category: "Lock",
},
{
label: "TrapDetectable",
displayName: "Trap Detectable",
type: GffFieldType.Byte,
category: "Trap",
},
{
label: "TrapDisarmable",
displayName: "Trap Disarmable",
type: GffFieldType.Byte,
category: "Trap",
},
{
label: "ScriptOnOpen",
displayName: "On Open Script",
type: GffFieldType.ResRef,
category: "Scripts",
},
{
label: "ScriptOnClosed",
displayName: "On Closed Script",
type: GffFieldType.ResRef,
category: "Scripts",
},
{
label: "ScriptOnUsed",
displayName: "On Used Script",
type: GffFieldType.ResRef,
category: "Scripts",
},
],
};