annotate Sprites.h @ 686:0f25d026acfa

Слияние
author Ritor1
date Fri, 15 Mar 2013 19:03:53 +0600
parents 9824e2eeee30
children af20650a052f
rev   line source
0
Ritor1
parents:
diff changeset
1 #pragma once
Ritor1
parents:
diff changeset
2
Ritor1
parents:
diff changeset
3
Ritor1
parents:
diff changeset
4 /* 18 */
Ritor1
parents:
diff changeset
5 #pragma pack(push, 1)
670
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
6 struct Sprite //28h
0
Ritor1
parents:
diff changeset
7 {
Ritor1
parents:
diff changeset
8 void Release();
Ritor1
parents:
diff changeset
9
670
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
10 const char *pName; //0
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
11 int uPaletteID; //4
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
12 struct IDirectDrawSurface4 *pTextureSurface; //8
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
13 struct IDirect3DTexture2 *pTexture; //ch
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
14 int uAreaX; //10h
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
15 int uAreaY; //14h
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
16 int uBufferWidth; //18h
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
17 int uBufferHeight; //1ch
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
18 int uAreaWidth; //20h
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
19 int uAreaHeight; //24h
0
Ritor1
parents:
diff changeset
20 };
Ritor1
parents:
diff changeset
21 #pragma pack(pop)
Ritor1
parents:
diff changeset
22
Ritor1
parents:
diff changeset
23
Ritor1
parents:
diff changeset
24 /* 42 */
Ritor1
parents:
diff changeset
25 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
26 struct SpriteFrame
Ritor1
parents:
diff changeset
27 {
670
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
28 char pIconName[12];
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
29 char pTextureName[12]; //c
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
30 __int16 pHwSpriteIDs[8]; //18h
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
31 int scale; //28h
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
32 int uFlags; //2c
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
33 __int16 uGlowRadius; //30
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
34 __int16 uPaletteID; //32
0
Ritor1
parents:
diff changeset
35 __int16 uPaletteIndex;
Ritor1
parents:
diff changeset
36 __int16 uAnimTime;
Ritor1
parents:
diff changeset
37 __int16 uAnimLength;
Ritor1
parents:
diff changeset
38 __int16 _pad;
Ritor1
parents:
diff changeset
39 };
Ritor1
parents:
diff changeset
40 #pragma pack(pop)
Ritor1
parents:
diff changeset
41
Ritor1
parents:
diff changeset
42 /* 43 */
Ritor1
parents:
diff changeset
43 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
44 struct SpriteFrameTable
Ritor1
parents:
diff changeset
45 {
Ritor1
parents:
diff changeset
46 //----- (0044D4BA) --------------------------------------------------------
Ritor1
parents:
diff changeset
47 inline SpriteFrameTable()
Ritor1
parents:
diff changeset
48 {
Ritor1
parents:
diff changeset
49 uNumSpriteFrames = 0;
Ritor1
parents:
diff changeset
50 pSpriteSFrames = nullptr;
Ritor1
parents:
diff changeset
51 pSpritePFrames = nullptr;
Ritor1
parents:
diff changeset
52 pSpriteEFrames = nullptr;
Ritor1
parents:
diff changeset
53 }
Ritor1
parents:
diff changeset
54 void ToFile();
Ritor1
parents:
diff changeset
55 void FromFile(void *pSerialized);
Ritor1
parents:
diff changeset
56 bool FromFileTxt(const char *Args);
Ritor1
parents:
diff changeset
57 void ReleaseSFrames();
Ritor1
parents:
diff changeset
58 void ResetSomeSpriteFlags();
670
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
59 void InitializeSprite(signed int uSpriteID);
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
60 signed int FastFindSprite(char *pSpriteName);
0
Ritor1
parents:
diff changeset
61 void BinarySearch(int a2, int a3, const char *pSpriteName);
639
4f2837124c69 Decoration animations
Nomad
parents: 0
diff changeset
62 SpriteFrame *GetFrame(unsigned int uSpriteID, unsigned int uTime);
0
Ritor1
parents:
diff changeset
63 SpriteFrame *GetFrameBy_x(unsigned int uSpriteID, signed int a3);
Ritor1
parents:
diff changeset
64
670
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
65 signed int uNumSpriteFrames;
0
Ritor1
parents:
diff changeset
66 unsigned int uNumEFrames;//field_4;
Ritor1
parents:
diff changeset
67 int field_8;
670
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
68 struct SpriteFrame *pSpriteSFrames; //0c
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
69 struct SpriteFrame **pSpritePFrames; //10h
9824e2eeee30 fixed decorations animation
Gloval
parents: 639
diff changeset
70 __int16 *pSpriteEFrames; //14h
0
Ritor1
parents:
diff changeset
71 };
Ritor1
parents:
diff changeset
72 #pragma pack(pop)
Ritor1
parents:
diff changeset
73
Ritor1
parents:
diff changeset
74
Ritor1
parents:
diff changeset
75
Ritor1
parents:
diff changeset
76
Ritor1
parents:
diff changeset
77
Ritor1
parents:
diff changeset
78
Ritor1
parents:
diff changeset
79 extern struct SpriteFrameTable *pSpriteFrameTable;