260 {
262 s32 type = part->
type;
263 s32 temp_t0 = part->
unk_40;
267 s32 spD8;
268 s32 spDC;
269 s32 temp_lo;
270 s32 envAlpha;
271 Gfx* dlist1;
272 Gfx* dlist2;
273 s32 phi_a0;
274 s32 temp;
275 s32 i;
276
277 envAlpha = (temp_t0 & 0x38) * 4;
278
279 dlist1 = sDlists[type];
280 dlist2 = sDlists2[type];
281
285
286 spD8 = temp_t0 & 7;
287 spDC = temp_t0 & 0x40;
288
293
296
297 switch (type) {
298 case 0:
299 case 1:
300 gDPSetPrimColor(
gMainGfxPos++, 0, 0, 230, 222, 222, 110);
302 break;
303 case 2:
304 case 3:
305 case 4:
306 gDPSetPrimColor(
gMainGfxPos++, 0, 0, 230, 222, 222, 130);
308 break;
309 }
310
311 if (type == 0) {
312 phi_a0 = 24;
313 } else {
314 phi_a0 = 32;
315 }
316
317 temp_lo = spD8 * phi_a0;
318 temp = temp_lo + phi_a0;
319
320 gDPSetTileSize(
gMainGfxPos++, G_TX_RENDERTILE, temp_lo * 4, 0, temp * 4, phi_a0 * 4);
321
322 if (spDC) {
323 gDPSetTileSize(
gMainGfxPos++, 1, temp * 4, phi_a0 * 4, (temp_lo + (phi_a0 * 2)) * 4, phi_a0 * 8);
324 } else {
325 gDPSetTileSize(
gMainGfxPos++, 1, temp * 4, 0, (temp_lo + (phi_a0 * 2)) * 4, phi_a0 * 4);
326 }
327
328 if (type == 2) {
330 }
331
332 part++;
333
334 for (i = 1; i < ((
EffectInstance*)effect)->numParts; i++, part++) {
338 G_MTX_PUSH | G_MTX_MUL | G_MTX_MODELVIEW);
341 }
342
345}
#define VIRTUAL_TO_PHYSICAL(addr)
DisplayContext * gDisplayContext