31 for (
int i = 0; i < 5 + rand() % 6; ++i)
32 AddParticle(rand() % 33 +
x - 16, rand() % 33 +
y - 16, rand() % 33 +
z,
38 for (
uint i = 0; i < 100; ++i) {
50 for (
uint i = 0; i < 500; ++i)
157 if (
p->timeToLive <= time) {
162 p->timeToLive -= time;
171 p->flt_18 =
p->flt_18 - (double)(
signed int)time_ * 5.0;
174 v7 = (double)(
signed int)time_;
175 *(
float *)&
p->x += (
double)(rand() % 5 - 2) * v7 / 16.0
f;
176 *(
float *)&
p->y += (
double)(rand() % 5 - 2) * v7 / 16.0
f;
177 *(
float *)&
p->z += (
double)(rand() % 5 + 4) * v7 / 16.0
f;
179 v8 = (double)(
signed int)time_ / 128.0f;
182 p->x += v8 *
p->flt_10;
183 p->y += v8 *
p->flt_14;
184 p->z += v8 *
p->flt_18;
186 p->angle += time *
p->rotation_speed / 16;
187 v22 = 2 *
p->timeToLive;
188 if (v22 >= 255) v22 = 255;
190 p->uLightColor_bgr = ((
uint)floorf(
p->b * (v22 / 255.0f) + 0.5) << 16) |
191 ((
uint)floorf(
p->g * (v22 / 255.0f) + 0.5) << 8) |
192 ((
uint)floorf(
p->r * (v22 / 255.0f) + 0.5) << 0);
193 if (i < v19) v19 = i;
194 if (i > v20) v20 = i;
203 unsigned int uParticleID) {
213 x_int = floorf(pParticle->
x + 0.5f);
216 y_int_ = floorf(pParticle->
y + 0.5f);
219 z_int_ = floorf(pParticle->
z + 0.5f);
284 render->MakeParticleBillboardAndPush(
285 &v15, 0,
p->uLightColor_bgr,
p->angle);
293 1.0 - 1.0 / (
p->zbuffer_depth * 0.061758894);
306 1.0 - 1.0 / ((short)
p->sZValue2 * 0.061758894);
323 render->MakeParticleBillboardAndPush(
324 &v15,
p->texture,
p->uLightColor_bgr,
p->angle);
332 render->MakeParticleBillboardAndPush(
333 &v15,
p->texture,
p->uLightColor_bgr,
p->angle);