annotate Engine/Tables/PlayerFrameTable.cpp @ 2553:48708da03b7f

Party Creation UI logic separated from MainMenu
author a.parshin
date Wed, 13 May 2015 02:20:05 +0200
parents a902abdfc7f2
children
rev   line source
2499
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
1 #define _CRTDBG_MAP_ALLOC
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
2 #include <stdlib.h>
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
3 #include <crtdbg.h>
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
4
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
5 #define _CRT_SECURE_NO_WARNINGS
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
6
2541
a902abdfc7f2 1. Renamed class Game to class Engine.
a.parshin
parents: 2499
diff changeset
7 #include "Engine/Engine.h"
2499
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
8
2541
a902abdfc7f2 1. Renamed class Game to class Engine.
a.parshin
parents: 2499
diff changeset
9 #include "PlayerFrameTable.h"
2499
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
10 #include "FrameTableInc.h"
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
11
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
12
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
13 //----- (00494AED) --------------------------------------------------------
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
14 unsigned int PlayerFrameTable::GetFrameIdByExpression(CHARACTER_EXPRESSION_ID expression)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
15 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
16 for (uint i = 0; i < this->uNumFrames; i++)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
17 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
18 if (this->pFrames[i].expression == expression)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
19 return i;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
20 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
21 return 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
22 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
23
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
24 //----- (00494B10) --------------------------------------------------------
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
25 PlayerFrame *PlayerFrameTable::GetFrameBy_x(unsigned int uFramesetID, unsigned int uFrameID)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
26 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
27 unsigned int v3; // esi@1
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
28 __int16 v6; // dx@2
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
29 int v7; // edx@3
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
30 char *i; // eax@3
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
31 int v9; // ecx@5
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
32 PlayerFrame *result; // eax@6
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
33
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
34 v3 = uFramesetID;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
35 if (this->pFrames[uFramesetID].uFlags & 1 && (v6 = this->pFrames[uFramesetID].uAnimLength) != 0)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
36 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
37 v7 = ((signed int)uFrameID >> 3) % (unsigned __int16)v6;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
38 for (i = (char *)&this->pFrames[uFramesetID].uAnimTime;; i += 10)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
39 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
40 v9 = *(short *)i;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
41 if (v7 <= v9)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
42 break;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
43 v7 -= v9;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
44 ++v3;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
45 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
46 result = &this->pFrames[v3];
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
47 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
48 else
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
49 result = &this->pFrames[uFramesetID];
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
50 return result;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
51 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
52
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
53 //----- (00494B5E) --------------------------------------------------------
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
54 PlayerFrame *PlayerFrameTable::GetFrameBy_y(int *pFramesetID, int *pAnimTime, int a4)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
55 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
56 int v5; // esi@1
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
57 int v6; // eax@2
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
58
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
59 v5 = a4 + *pAnimTime;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
60 if (v5 < 8 * this->pFrames[*pFramesetID].uAnimTime)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
61 *pAnimTime = v5;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
62 else
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
63 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
64 v6 = rand() % 4 + 21;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
65 *pFramesetID = v6;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
66 *pAnimTime = 8 * v5 % this->pFrames[v6].uAnimTime;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
67 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
68 return &this->pFrames[*pFramesetID];
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
69 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
70
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
71 //----- (00494BC3) --------------------------------------------------------
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
72 void PlayerFrameTable::ToFile()
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
73 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
74 PlayerFrameTable *v1; // esi@1
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
75 FILE *v2; // eax@1
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
76 FILE *v3; // edi@1
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
77
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
78 PlayerFrameTable* Str = this;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
79
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
80 v1 = Str;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
81 v2 = fopen("data\\dpft.bin", "wb");
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
82 v3 = v2;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
83 if (!v2)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
84 Error("Unable to save dpft.bin");
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
85 fwrite(v1, 4, 1, v2);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
86 fwrite(v1->pFrames, 0xAu, v1->uNumFrames, v3);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
87 fclose(v3);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
88 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
89
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
90 //----- (00494C0F) --------------------------------------------------------
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
91 void PlayerFrameTable::FromFile(void *data_mm6, void *data_mm7, void *data_mm8)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
92 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
93 uint num_mm6_frames = data_mm6 ? *(int *)data_mm6 : 0,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
94 num_mm7_frames = data_mm7 ? *(int *)data_mm7 : 0,
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
95 num_mm8_frames = data_mm8 ? *(int *)data_mm8 : 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
96 uNumFrames = num_mm6_frames + num_mm7_frames + num_mm8_frames;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
97 assert(uNumFrames);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
98 assert(!num_mm8_frames);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
99
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
100 pFrames = (PlayerFrame *)malloc(uNumFrames * sizeof(PlayerFrame));
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
101 memcpy(pFrames, (char *)data_mm7 + 4, num_mm7_frames * sizeof(PlayerFrame));
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
102 memcpy(pFrames + num_mm7_frames, (char *)data_mm6 + 4, num_mm6_frames * sizeof(PlayerFrame));
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
103 memcpy(pFrames + num_mm6_frames + num_mm7_frames, (char *)data_mm8 + 4, num_mm8_frames * sizeof(PlayerFrame));
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
104 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
105
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
106 //----- (00494C5A) --------------------------------------------------------
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
107 int PlayerFrameTable::FromFileTxt(const char *Args)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
108 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
109 //PlayerFrameTable *v2; // ebx@1
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
110 FILE *v3; // eax@1
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
111 int v4; // esi@3
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
112 void *v5; // eax@10
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
113 FILE *v6; // ST0C_4@12
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
114 char *i; // eax@12
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
115 // __int16 v8; // ax@15
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
116 // const char *v9; // ST10_4@15
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
117 // unsigned __int16 v10; // ax@15
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
118 // const char *v11; // ST0C_4@15
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
119 int j; // esi@15
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
120 // int v13; // eax@17
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
121 int v14; // edx@22
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
122 int v15; // ecx@23
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
123 int v16; // eax@24
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
124 signed int k; // eax@27
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
125 //PlayerFrame *v18; // edx@28
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
126 int v19; // esi@28
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
127 int l; // ecx@29
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
128 char Buf; // [sp+Ch] [bp-2F8h]@3
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
129 FrameTableTxtLine v23; // [sp+200h] [bp-104h]@4
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
130 FrameTableTxtLine v24; // [sp+27Ch] [bp-88h]@4
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
131 int v25; // [sp+2F8h] [bp-Ch]@3
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
132 int v26; // [sp+2FCh] [bp-8h]@3
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
133 FILE *File; // [sp+300h] [bp-4h]@1
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
134 int Argsa; // [sp+30Ch] [bp+8h]@28
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
135
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
136 __debugbreak();//Ritor1;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
137 //TileTable::dtor((TileTable *)this);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
138 v3 = fopen(Args, "r");
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
139 File = v3;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
140 if (!v3)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
141 Error("PlayerFrameTable::load - Unable to open file: %s.", Args);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
142 v4 = 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
143 v25 = 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
144 v26 = 1;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
145 if (fgets(&Buf, 490, v3))
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
146 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
147 do
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
148 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
149 *strchr(&Buf, 10) = 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
150 memcpy(&v24, txt_file_frametable_parser(&Buf, &v23), sizeof(v24));
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
151 if (v24.uPropCount && *v24.pProperties[0] != 47)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
152 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
153 if (v24.uPropCount < 3)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
154 Error("PlayerFrameTable::load, too few arguments, %s line %i.", Args, v26);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
155 ++v25;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
156 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
157 ++v26;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
158 } while (fgets(&Buf, 490, File));
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
159 v4 = v25;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
160 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
161 this->uNumFrames = v4;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
162 v5 = malloc(10 * v4);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
163 this->pFrames = (PlayerFrame *)v5;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
164 if (!v5)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
165 Error("PlayerFrameTable::load - Out of Memory!");
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
166 v6 = File;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
167 this->uNumFrames = 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
168 fseek(v6, 0, 0);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
169 for (i = fgets(&Buf, 490, File); i; i = fgets(&Buf, 490, File))
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
170 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
171 *strchr(&Buf, 10) = 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
172 memcpy(&v24, txt_file_frametable_parser(&Buf, &v23), sizeof(v24));
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
173 if (v24.uPropCount && *v24.pProperties[0] != 47)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
174 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
175 //v8 = atoi(v24.pProperties[0]);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
176 //v9 = v24.pProperties[1];
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
177 this->pFrames[this->uNumFrames].expression = (CHARACTER_EXPRESSION_ID)atoi(v24.pProperties[0]);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
178 //v10 = atoi(v9);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
179 //v11 = v24.pProperties[2];
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
180 this->pFrames[this->uNumFrames].uTextureID = atoi(v24.pProperties[1]);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
181 this->pFrames[this->uNumFrames].uAnimTime = atoi(v24.pProperties[2]);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
182 this->pFrames[this->uNumFrames].uAnimLength = 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
183 this->pFrames[this->uNumFrames].uFlags = 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
184 for (j = 3; j < v24.uPropCount; ++j)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
185 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
186 if (!_stricmp(v24.pProperties[j], "New"))
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
187 this->pFrames[this->uNumFrames].uFlags |= 4;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
188 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
189 ++this->uNumFrames;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
190 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
191 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
192 fclose(File);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
193
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
194 if ((signed int)(this->uNumFrames - 1) > 0)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
195 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
196 v15 = 0;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
197 for (v14 = 0; v14 < this->uNumFrames - 1; ++v14)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
198 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
199 v16 = (int)&this->pFrames[v15];
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
200 if (!(*(char *)(v16 + 18) & 4))
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
201 this->pFrames[v14].uFlags |= 1;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
202 ++v15;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
203 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
204 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
205 for (k = 0; k < (signed int)this->uNumFrames; *(short *)(Argsa + 6) = v19)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
206 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
207 //v18 = this->pFrames;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
208 Argsa = (int)&this->pFrames[k];
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
209 v19 = *(short *)(Argsa + 4);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
210 if (this->pFrames[k].uFlags & 1)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
211 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
212 ++k;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
213 for (l = (int)&this->pFrames[k]; this->pFrames[k].uFlags & 1; l += 10)
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
214 {
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
215 v19 += *(short *)(l + 4);
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
216 ++k;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
217 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
218 LOWORD(v19) = this->pFrames[k].uAnimTime + v19;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
219 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
220 ++k;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
221 }
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
222 return 1;
68cdef6879a0 engine folder
Ritor1
parents:
diff changeset
223 }