10 {{5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5}, {10, 9, 3, 1, 0, 0, 0, 0, 0, 0, 0, 0}},
11 {{5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5}, {8, 7, 6, 5, 4, 3, 2, 1, 0, 0, 0, 0}},
12 {{35, 5, 25, 5, 0, 25, 35, 5, 15, 0, 0, 0}, {10, 13, 15, 12, 11, 13, 10, 12, 5, 1, 0, 0}},
13 {{45, 15, 35, 15, 0, 35, 45, 55, 25, 5, 2, 0}, {13, 10, 12, 10, 13, 10, 13, 10, 12, 9, 5, 1}},
14 {{15, 15, 15, 15, 15, 15, 0, 15, 15, 5, 2, 0}, {14, 10, 15, 10, 13, 30, 32, 30, 24, 50, 40, 60}},
15 {{1, 5, 15, 15, 35, 45, 40, 35, 25, 5, 2, 0}, {4, 6, 10, 5, 8, 14, 6, 10, 14, 35, 50, 50}},
16 {{1, 15, 25, 15, 25, 35, 45, 40, 35, 15, 5, 0}, {2, 2, 23, 12, 8, 15, 15, 5, 6, 18, 38, 60}},
17 {{30, 25, 15, 5, 15, 15, 25, 30, 35, 25, 5, 0}, {3, 3, 3, 11, 3, 12, 4, 5, 2, 12, 42, 50}},
18 {{33, 33, 20, 12, 25, 17, 15, 20, 22, 20, 5, 0}, {3, 3, 3, 2, 10, 2, 2, 12, 2, 2, 2, 20}},
19 {{30, 30, 25, 25, 35, 20, 15, 10, 15, 15, 5, 0}, {2, 2, 2, 2, 2, 2, 6, 2, 2, 2, 6, 5}},
20 {{27, 27, 22, 22, 32, 17, 12, 7, 12, 12, 2, 0}, {2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0}},
24 {{25, 25, 25, 5, 25, 5, 25, 25, 5, 25, 25, 25}, {4, 3, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0}},
25 {{15, 15, 15, 25, 15, 15, 5, 25, 25, 15, 25, 25}, {4, 4, 4, 4, 4, 3, 2, 1, 0, 0, 0, 0}},
26 {{25, 25, 25, 5, 15, 25, 5, 5, 15, 5, 5, 0}, {4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 0, 0}},
27 {{25, 25, 25, 5, 25, 5, 25, 25, 5, 15, 5, 0}, {4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 6, 5}},
28 {{15, 15, 15, 45, 35, 45, 35, 35, 25, 35, 15, 0}, {4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 6, 5}},
29 {{45, 55, 35, 25, 55, 15, 45, 25, 45, 35, 15, 0}, {4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 6, 5}},
30 {{85, 25, 15, 75, 25, 65, 35, 45, 75, 85, 15, 0}, {4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 6, 5}},
31 {{85, 15, 35, 55, 65, 45, 25, 75, 35, 45, 35, 40}, {4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 6, 5}},
32 {{85, 15, 35, 55, 65, 45, 25, 75, 35, 45, 35, 40}, {4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 6, 5}},
33 {{85, 15, 35, 55, 65, 45, 25, 75, 35, 45, 35, 40}, {4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 6, 5}},
34 {{30, 30, 25, 25, 35, 20, 15, 10, 15, 15, 5, 0}, {4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 0}},
196 f32 deltaX, deltaY, deltaZ;
219 temp_a0 = lifetime - 1;
226 }
else if (temp_a0 < 8) {
228 }
else if (temp_a0 < 0x24) {
237 theta = (data->
unk_110 + (i - lifetime) * 10) % 120 - 60;
238 deltaPos = preset->
offset[i];
240 sinAngle =
sin_deg(theta) * deltaPos * 0.04;
241 cosAngle =
cos_deg(theta) * deltaPos * 0.04;
243 deltaX = avgDeltaX * cosAngle - avgDeltaY * sinAngle;
244 deltaY = avgDeltaX * sinAngle + avgDeltaY * cosAngle;
269 if (prevAngle - nextAngle > 180.0f) {
271 }
else if (prevAngle - nextAngle < -180.0f) {
274 temp = nextAngle + prevAngle;
278 if (prevAngle + nextAngle < 0.0f) {
284 edgeLength *= (widthScale * data->
edgeLength[i]);
285 texOffsetX = (128 - i * 12) * 32;
286 edgeDeltaX = edgeLength *
sin_deg(edgeAngle);
287 edgeDeltaY = edgeLength *
cos_deg(edgeAngle);
293 vtx->tc[0] = texOffsetX;
296 vtx->cn[1] = i * 120;
303 vtx->tc[0] = texOffsetX;
306 vtx->cn[1] = i * 120;
314 gSPClearGeometryMode(
gMainGfxPos++, G_SHADING_SMOOTH);
316 for (i = 0; i < quadCount - 1; i++) {
317 gSP2Triangles(
gMainGfxPos++, i * 2 + 1, i * 2 + 0, i * 2 + 2, 0,
318 i * 2 + 1, i * 2 + 2, i * 2 + 3, 0);