XPlor/definitions/cod/stringtable_asset.xscript
njohnson 0fa26e5256 Expand Call of Duty XScript definitions
Add new asset type definitions:
- GfxWorld and related structures (cells, lights, probes)
- Menu system (menudef, itemdef, windowdef, listboxdef)
- Sound system (soundalias, soundfile, speakermap, sndcurve)
- D3D resources (vertex/index buffers)
- Font glyphs and expression entries

Update existing definitions with improved field annotations
and UI display properties.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 16:36:40 -05:00

31 lines
878 B
Plaintext

type stringtable_asset [display="String Table"]
{
i32 name_ptr [ui, readonly, display="Name Ptr"];
i32 column_count [ui, readonly, display="Column Count"];
i32 row_count [ui, readonly, display="Row Count"];
i32 values_ptr [ui, readonly, display="Values Ptr"];
// Parse inline name
if (name_ptr == -1) {
name = cstring() [ui, readonly, display="Name"];
_name = name;
}
// Parse string table values if inline
if (values_ptr == -1 && row_count > 0 && column_count > 0) {
cell_count = row_count * column_count;
// First read all cell pointers (each is 4 bytes)
_cell_ptrs_size = cell_count * 4;
cell_ptrs = read(_cell_ptrs_size) [ui, readonly, display="Cell Pointers"];
// Then read all cell string values
cells = 0;
repeat(cell_count) {
_cell_value = cstring();
cells = push("cells", _cell_value);
}
}
}