117 lines
2.7 KiB
TypeScript
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",
|
|
},
|
|
],
|
|
};
|