0
|
1 #pragma once
|
|
2
|
|
3
|
|
4
|
|
5
|
|
6 /* 324 */
|
|
7 enum OBJECT_DESC_FLAGS
|
|
8 {
|
|
9 OBJECT_DESC_NO_SPRITE = 0x1,
|
|
10 OBJECT_DESC_NO_COLLISION = 0x2,
|
|
11 OBJECT_DESC_TEMPORARY = 0x4,
|
|
12 OBJECT_DESC_SFT_LIFETIME = 0x8,
|
|
13 OBJECT_DESC_UNPICKABLE = 0x10,
|
|
14 OBJECT_DESC_NO_GRAVITY = 0x20,
|
|
15 OBJECT_DESC_INTERACTABLE = 0x40,
|
|
16 OBJECT_DESC_BOUNCE = 0x80,
|
|
17 OBJECT_DESC_TRIAL_PARTICLE = 0x100,
|
|
18 OBJECT_DESC_TRIAL_FIRE = 0x200,
|
|
19 OBJECT_DESC_TRIAL_LINE = 0x400,
|
|
20 };
|
|
21
|
|
22
|
|
23
|
|
24
|
|
25 /* 56 */
|
|
26 #pragma pack(push, 1)
|
|
27 struct ObjectDesc
|
|
28 {
|
430
|
29 inline bool NoSprite() const {return uFlags & OBJECT_DESC_NO_SPRITE;}
|
|
30
|
0
|
31 char field_0[32];
|
|
32 __int16 uObjectID;
|
|
33 __int16 uRadius;
|
|
34 __int16 uHeight;
|
|
35 __int16 uFlags;
|
|
36 unsigned __int16 uSpriteID;
|
|
37 __int16 uLifetime;
|
|
38 unsigned int uParticleTrailColor;
|
|
39 __int16 uSpeed;
|
|
40 char uParticleTrailColorR;
|
|
41 char uParticleTrailColorG;
|
|
42 char uParticleTrailColorB;
|
|
43 char field_35_clr;
|
|
44 char field_36_clr;
|
|
45 char field_37_clr;
|
|
46 };
|
|
47 #pragma pack(pop)
|
|
48
|
|
49 /* 57 */
|
|
50 #pragma pack(push, 1)
|
|
51 struct ObjectList
|
|
52 {
|
|
53 inline ObjectList(): //----- (004583D5)
|
|
54 uNumObjects(0), pObjects(nullptr)
|
|
55 {}
|
|
56
|
|
57 void ToFile();
|
|
58 void FromFile(void *pSerialized);
|
|
59 bool FromFileTxt(const char *Args);
|
|
60 void InitializeSprites();
|
|
61 __int16 ObjectIDByItemID(unsigned __int16 uItemID);
|
|
62
|
|
63
|
|
64 unsigned int uNumObjects;
|
|
65 struct ObjectDesc *pObjects;
|
|
66 };
|
|
67 #pragma pack(pop)
|
|
68
|
|
69 extern struct ObjectList *pObjectList; |