u16 aKOI_obj_e_koinobori_a_pal[] = { #include "assets/aKOI_obj_e_koinobori_a_pal.inc" }; u16 obj_e_koinobori_b_pal[] = { #include "assets/obj_e_koinobori_b_pal.inc" }; static void aKOI_actor_draw(ACTOR* actor, GAME* game) { KOINOBORI_ACTOR* koinobori; GRAPH* graph; cKF_SkeletonInfo_R_c* keyframe; Mtx* mtx; u16* pal; Gfx* gfx; koinobori = (KOINOBORI_ACTOR*)actor; graph = game->graph; keyframe = &koinobori->structure_class.keyframe; mtx = GRAPH_ALLOC_TYPE(graph, Mtx, keyframe->skeleton->num_shown_joints); if (mtx != NULL) { pal = Common_Get(clip.structure_clip)->get_pal_segment_proc(aSTR_PAL_KOINOBORI_A); _texture_z_light_fog_prim_npc(graph); OPEN_DISP(graph); gfx = NOW_POLY_OPA_DISP; gSPSegment(gfx++, G_MWO_SEGMENT_8, pal); gSPSegment(gfx++, G_MWO_SEGMENT_9, &obj_e_koinobori_b_pal); gSPSegment(gfx++, G_MWO_SEGMENT_A, &aKOI_obj_e_koinobori_a_pal); SET_POLY_OPA_DISP(gfx); CLOSE_DISP(graph); cKF_Si3_draw_R_SV(game, keyframe, mtx, NULL, NULL, actor); (*Common_Get(clip).bg_item_clip->draw_shadow_proc)(game, &aKOI_shadow_data, FALSE); } }