comparison Engine/Objects/ObjectList.h @ 2498:92eeeb5200f2

.
author Ritor1
date Fri, 19 Sep 2014 00:03:04 +0600
parents
children
comparison
equal deleted inserted replaced
2497:82d5d92a097c 2498:92eeeb5200f2
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_mm6
28 {
29 inline bool NoSprite() const {return uFlags & OBJECT_DESC_NO_SPRITE;}
30
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 short uParticleTrailColor;
39 __int16 uSpeed;
40 char uParticleTrailColorR;
41 char uParticleTrailColorG;
42 char uParticleTrailColorB;
43 char field_35_clr;
44 };
45
46 struct ObjectDesc
47 {
48 inline bool NoSprite() const {return uFlags & OBJECT_DESC_NO_SPRITE;}
49
50 char field_0[32];
51 __int16 uObjectID;
52 __int16 uRadius;
53 __int16 uHeight;
54 __int16 uFlags;
55 unsigned __int16 uSpriteID;
56 __int16 uLifetime;
57 unsigned int uParticleTrailColor;
58 __int16 uSpeed;
59 unsigned char uParticleTrailColorR;
60 unsigned char uParticleTrailColorG;
61 unsigned char uParticleTrailColorB;
62 char field_35_clr;
63 char field_36_clr;
64 char field_37_clr;
65 };
66 #pragma pack(pop)
67
68 /* 57 */
69 #pragma pack(push, 1)
70 struct ObjectList
71 {
72 inline ObjectList(): //----- (004583D5)
73 uNumObjects(0), pObjects(nullptr)
74 {}
75
76 void ToFile();
77 void FromFile(void *data_mm6, void *data_mm7, void *data_mm8);
78 bool FromFileTxt(const char *Args);
79 void InitializeSprites();
80 __int16 ObjectIDByItemID(unsigned __int16 uItemID);
81
82
83 unsigned int uNumObjects;
84 struct ObjectDesc *pObjects;
85 };
86 #pragma pack(pop)
87
88 extern struct ObjectList *pObjectList;