| 1 | unit AKEV; | 
 
 
 
 
 | 2 |  | 
 
 
 
 
 | 3 | interface | 
 
 
 
 
 | 4 |  | 
 
 
 
 
 | 5 | uses | 
 
 
 
 
 | 6 | _FileTypes; | 
 
 
 
 
 | 7 |  | 
 
 
 
 
 | 8 | type | 
 
 
 
 
 | 9 | TFile_AKEV = class(TResource) | 
 
 
 
 
 | 10 | public | 
 
 
 
 
 | 11 | procedure InitDataFields; override; | 
 
 
 
 
 | 12 | end; | 
 
 
 
 
 | 13 |  | 
 
 
 
 
 | 14 | implementation | 
 
 
 
 
 | 15 |  | 
 
 
 
 
 | 16 | uses | 
 
 
 
 
 | 17 | ConnectionManager, Math, Classes, TypeDefs, _DataTypes, Forms, StdCtrls; | 
 
 
 
 
 | 18 |  | 
 
 
 
 
 | 19 | procedure TFile_AKEV.InitDataFields; | 
 
 
 
 
 | 20 | begin | 
 
 
 
 
 | 21 | inherited; | 
 
 
 
 
 | 22 | FDataFields := TBlock.Create(Self, nil, 'Base', '', []); | 
 
 
 
 
 | 23 | with FDataFields do | 
 
 
 
 
 | 24 | begin | 
 
 
 
 
 | 25 | AddField(TResourceID, 'FileID', '', []); | 
 
 
 
 
 | 26 | AddField(TLevelID, 'LevelID', '', []); | 
 
 
 
 
 | 27 |  | 
 
 
 
 
 | 28 | AddField(TLinkByID, 'PNTA-link', 'Link to the 3D Point Array', ['PNTA']); | 
 
 
 
 
 | 29 | AddField(TLinkByID, 'PLEA-link', 'Link to the Plane Equation Array', ['PLEA']); | 
 
 
 
 
 | 30 | AddField(TLinkByID, 'TXCA-link', 'Link to the Texture Coordinate Array', ['TXCA']); | 
 
 
 
 
 | 31 | AddField(TLinkByID, 'AGQG-link', 'Link to the Gunk Quad General Array', ['AGQG']); | 
 
 
 
 
 | 32 |  | 
 
 
 
 
 | 33 | AddField(TLinkByID, 'AGQR-link', 'Link to the Gunk Quad Render Array', ['AGQR']); | 
 
 
 
 
 | 34 | AddField(TLinkByID, 'AGQC-link', 'Link to the Gunk Quad Collision Array', ['AGQC']); | 
 
 
 
 
 | 35 | AddField(TLinkByID, 'AGDB-link', 'Link to the Gunk Quad Debug Array', ['AGDB']); | 
 
 
 
 
 | 36 | AddField(TLinkByID, 'TXMA-link', 'Link to the Texture Map Array', ['TXMA']); | 
 
 
 
 
 | 37 |  | 
 
 
 
 
 | 38 | AddField(TLinkByID, 'AKVA-link', 'Link to the BNV Node Array', ['AKVA']); | 
 
 
 
 
 | 39 | AddField(TLinkByID, 'AKBA-link', 'Link to the Side Array', ['AKBA']); | 
 
 
 
 
 | 40 | AddField(TLinkByID, 'IDXA-link', 'Link to the Index Array', ['IDXA']); | 
 
 
 
 
 | 41 | AddField(TLinkByID, 'IDXA-link', 'Link to the Index Array', ['IDXA']); | 
 
 
 
 
 | 42 |  | 
 
 
 
 
 | 43 | AddField(TLinkByID, 'AKBP-link', 'Link to the BSP Node Array', ['AKBP']); | 
 
 
 
 
 | 44 | AddField(TLinkByID, 'ABNA-link', 'Link to the BSP Tree Node Array', ['ABNA']); | 
 
 
 
 
 | 45 | AddField(TLinkByID, 'AKOT-link', 'Link to the Oct Tree', ['AKOT']); | 
 
 
 
 
 | 46 | AddField(TLinkByID, 'AKAA-link', 'Link to the Adjacency Array', ['AKAA']); | 
 
 
 
 
 | 47 |  | 
 
 
 
 
 | 48 | AddField(TLinkByID, 'AKDA-link', 'Link to the Door Frame Array', ['AKDA']); | 
 
 
 
 
 | 49 |  | 
 
 
 
 
 | 50 |  | 
 
 
 
 
 | 51 | AddField(TFloat, 'AABB X-', 'Minimal x-coordinate of the level model', []); | 
 
 
 
 
 | 52 | AddField(TFloat, 'AABB Y-', 'Minimal y-coordinate of the level model', []); | 
 
 
 
 
 | 53 | AddField(TFloat, 'AABB Z-', 'Minimal z-coordinate of the level model', []); | 
 
 
 
 
 | 54 |  | 
 
 
 
 
 | 55 | AddField(TFloat, 'AABB X+', 'Maximal x-coordinate of the level model', []); | 
 
 
 
 
 | 56 | AddField(TFloat, 'AABB Y+', 'Maximal y-coordinate of the level model', []); | 
 
 
 
 
 | 57 | AddField(TFloat, 'AABB Z+', 'Maximal z-coordinate of the level model', []); | 
 
 
 
 
 | 58 |  | 
 
 
 
 
 | 59 | AddField(TUnused, 'Not used', '', [1024]); | 
 
 
 
 
 | 60 | AddField(TFloat, 'Unknown', 'Unknown; maybe the tolerance', []); | 
 
 
 
 
 | 61 | end; | 
 
 
 
 
 | 62 | FDataFields.Update(0, -1); | 
 
 
 
 
 | 63 | FFileStream.Free; | 
 
 
 
 
 | 64 | FFileStream := nil; | 
 
 
 
 
 | 65 | end; | 
 
 
 
 
 | 66 |  | 
 
 
 
 
 | 67 |  | 
 
 
 
 
 | 68 | end. |