Paper Mario DX
Paper Mario (N64) modding
 
Loading...
Searching...
No Matches
RedSwitch.c
Go to the documentation of this file.
1#include "common.h"
2#include "include_asset.h"
3
4#include "entity/model/RedSwitch_1.vtx.inc.c"
5#include "entity/model/RedSwitch_2.vtx.inc.c"
6#include "entity/model/RedSwitch_3.vtx.inc.c"
7
8INCLUDE_IMG("entity/model/RedSwitch_tex.png", D_0A0005D0_E63090);
9INCLUDE_PAL("entity/model/RedSwitch_tex.pal", D_0A0006D0_E63190);
11 gsDPSetTextureLUT(G_TT_RGBA16),
12 gsDPLoadTLUT_pal256(D_0A0006D0_E63190),
13 gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
14 gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
15 gsDPSetTextureDetail(G_TD_CLAMP),
16 gsDPSetTextureLOD(G_TL_TILE),
17 gsDPLoadTextureBlock(D_0A0005D0_E63090, G_IM_FMT_CI, G_IM_SIZ_8b, 16, 16, 0, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_CLAMP, 4, 4, G_TX_NOLOD, G_TX_NOLOD),
18 gsDPSetTexturePersp(G_TP_PERSP),
19 gsDPSetTextureFilter(G_TF_BILERP),
20 gsSPEndDisplayList(),
21};
22
23INCLUDE_IMG("entity/model/RedSwitch_exclamationMark.png", D_0A000978_E63438);
25 gsDPSetTextureLUT(G_TT_NONE),
26 gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
27 gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
28 gsDPSetTextureDetail(G_TD_CLAMP),
29 gsDPSetTextureLOD(G_TL_TILE),
30 gsDPLoadTextureBlock_4b(D_0A000978_E63438, G_IM_FMT_IA, 16, 32, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, 4, 5, G_TX_NOLOD, G_TX_NOLOD),
31 gsDPSetTexturePersp(G_TP_PERSP),
32 gsDPSetTextureFilter(G_TF_BILERP),
33 gsSPEndDisplayList(),
34};
35
37 1.000000, 0.000000, 0.000000, 0.000000,
38 0.000000, 1.000000, 0.000000, 6.000000,
39 0.000000, 0.000000, 1.000000, 0.000000,
40 0.000000, 0.000000, 0.000000, 1.000000
41);
42
44 1.000000, 0.000000, 0.000000, -0.026600,
45 0.000000, 1.000000, 0.000000, 5.000000,
46 0.000000, 0.000000, 1.000000, 0.609116,
47 0.000000, 0.000000, 0.000000, 1.000000
48);
49
50
52 gsDPPipeSync(),
53 gsDPSetCycleType(G_CYC_1CYCLE),
54 gsDPSetRenderMode(G_RM_AA_ZB_XLU_SURF, G_RM_AA_ZB_XLU_SURF2),
55 gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
56 gsSPTexture(0x0080, 0x0080, 0, G_TX_RENDERTILE, G_OFF),
57 gsSPClearGeometryMode(G_LIGHTING),
58 gsSPSetGeometryMode(G_CULL_BACK | G_SHADING_SMOOTH),
59 gsSPVertex(D_0A0003D0_E62E90, 30, 0),
60 gsSP2Triangles(0, 1, 2, 0, 0, 2, 3, 0),
61 gsSP2Triangles(3, 2, 4, 0, 3, 4, 5, 0),
62 gsSP2Triangles(1, 6, 7, 0, 1, 7, 2, 0),
63 gsSP2Triangles(2, 7, 8, 0, 2, 8, 4, 0),
64 gsSP2Triangles(4, 8, 9, 0, 4, 9, 10, 0),
65 gsSP2Triangles(5, 4, 10, 0, 5, 10, 11, 0),
66 gsSP2Triangles(12, 13, 6, 0, 12, 6, 1, 0),
67 gsSP2Triangles(13, 14, 15, 0, 13, 15, 6, 0),
68 gsSP2Triangles(6, 15, 16, 0, 6, 16, 7, 0),
69 gsSP2Triangles(17, 18, 19, 0, 17, 19, 20, 0),
70 gsSP2Triangles(17, 20, 16, 0, 17, 16, 15, 0),
71 gsSP2Triangles(17, 15, 14, 0, 17, 14, 21, 0),
72 gsSP2Triangles(7, 16, 20, 0, 7, 20, 8, 0),
73 gsSP2Triangles(22, 12, 1, 0, 22, 1, 0, 0),
74 gsSP2Triangles(23, 24, 13, 0, 23, 13, 12, 0),
75 gsSP2Triangles(24, 21, 14, 0, 24, 14, 13, 0),
76 gsSP2Triangles(25, 23, 12, 0, 25, 12, 22, 0),
77 gsSP2Triangles(8, 20, 19, 0, 8, 19, 9, 0),
78 gsSP2Triangles(26, 27, 24, 0, 26, 24, 23, 0),
79 gsSP2Triangles(28, 29, 27, 0, 28, 27, 26, 0),
80 gsSP2Triangles(29, 18, 17, 0, 29, 17, 27, 0),
81 gsSP2Triangles(27, 17, 21, 0, 27, 21, 24, 0),
82 gsSP2Triangles(10, 9, 29, 0, 10, 29, 28, 0),
83 gsSP2Triangles(9, 19, 18, 0, 9, 18, 29, 0),
84 gsSPVertex(&D_0A0003D0_E62E90[10], 2, 0),
85 gsSPVertex(&D_0A0003D0_E62E90[23], 1, 2),
86 gsSPVertex(&D_0A0003D0_E62E90[25], 2, 3),
87 gsSPVertex(&D_0A0003D0_E62E90[28], 1, 5),
88 gsSPVertex(&D_0A0003D0_E62E90[30], 2, 6),
89 gsSP2Triangles(6, 5, 4, 0, 6, 4, 7, 0),
90 gsSP2Triangles(7, 4, 2, 0, 7, 2, 3, 0),
91 gsSP2Triangles(1, 0, 5, 0, 1, 5, 6, 0),
92 gsSPEndDisplayList(),
93};
94
96 gsSPMatrix(&Entity_RedSwitch_mtxRedBubble, G_MTX_PUSH | G_MTX_MUL | G_MTX_MODELVIEW),
97 gsSPDisplayList(Entity_RedSwitch_RenderRedBubble),
98 gsSPPopMatrix(G_MTX_MODELVIEW),
99 gsSPEndDisplayList(),
100};
101
103 gsDPPipeSync(),
104 gsDPSetCycleType(G_CYC_1CYCLE),
105 gsDPSetRenderMode(G_RM_AA_ZB_TEX_EDGE, G_RM_AA_ZB_TEX_EDGE2),
106 gsSPDisplayList(Entity_RedSwitch_LoadExclMark),
107 gsSPClearGeometryMode(G_LIGHTING | G_SHADING_SMOOTH),
108 gsSPSetGeometryMode(G_CULL_BACK),
109 gsSPVertex(D_0A000390_E62E50, 4, 0),
110 gsSP2Triangles(0, 1, 2, 0, 0, 2, 3, 0),
111 gsSPEndDisplayList(),
112};
113
115 gsSPMatrix(&Entity_RedSwitch_mtxExclMark, G_MTX_PUSH | G_MTX_MUL | G_MTX_MODELVIEW),
116 gsSPDisplayList(Entity_RedSwitch_RenderExclMark),
117 gsSPPopMatrix(G_MTX_MODELVIEW),
118 gsSPEndDisplayList(),
119};
120
122 gsDPPipeSync(),
123 gsDPSetCycleType(G_CYC_1CYCLE),
124 gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2),
125 gsSPDisplayList(Entity_RedSwitch_LoadTexture),
126 gsSPClearGeometryMode(G_LIGHTING),
127 gsSPSetGeometryMode(G_CULL_BACK | G_SHADING_SMOOTH),
128 gsSPVertex(D_0A000000_E62AC0, 30, 0),
129 gsSP2Triangles(0, 1, 2, 0, 0, 2, 3, 0),
130 gsSP2Triangles(4, 5, 1, 0, 4, 1, 0, 0),
131 gsSP2Triangles(3, 2, 6, 0, 3, 6, 7, 0),
132 gsSP2Triangles(8, 9, 10, 0, 8, 10, 11, 0),
133 gsSP2Triangles(12, 13, 9, 0, 12, 9, 8, 0),
134 gsSP2Triangles(11, 10, 14, 0, 11, 14, 15, 0),
135 gsSP2Triangles(16, 17, 18, 0, 16, 18, 19, 0),
136 gsSP2Triangles(20, 21, 17, 0, 20, 17, 16, 0),
137 gsSP2Triangles(19, 18, 22, 0, 19, 22, 23, 0),
138 gsSP2Triangles(7, 6, 24, 0, 7, 24, 25, 0),
139 gsSP2Triangles(15, 14, 26, 0, 15, 26, 27, 0),
140 gsSP2Triangles(23, 22, 28, 0, 23, 28, 29, 0),
141 gsSPVertex(&D_0A000000_E62AC0[4], 2, 0),
142 gsSPVertex(&D_0A000000_E62AC0[12], 2, 2),
143 gsSPVertex(&D_0A000000_E62AC0[20], 2, 4),
144 gsSPVertex(&D_0A000000_E62AC0[24], 4, 6),
145 gsSPVertex(&D_0A000000_E62AC0[30], 13, 10),
146 gsSPVertex(&D_0A000000_E62AC0[44], 9, 23),
147 gsSP2Triangles(7, 6, 10, 0, 7, 10, 25, 0),
148 gsSP2Triangles(11, 26, 5, 0, 11, 5, 4, 0),
149 gsSP2Triangles(12, 19, 27, 0, 12, 27, 13, 0),
150 gsSP2Triangles(13, 27, 28, 0, 13, 28, 14, 0),
151 gsSP2Triangles(14, 28, 3, 0, 14, 3, 2, 0),
152 gsSP2Triangles(15, 24, 29, 0, 15, 29, 16, 0),
153 gsSP2Triangles(16, 29, 26, 0, 16, 26, 11, 0),
154 gsSP2Triangles(17, 30, 31, 0, 17, 31, 18, 0),
155 gsSP2Triangles(18, 31, 1, 0, 18, 1, 0, 0),
156 gsSP2Triangles(9, 8, 19, 0, 9, 19, 12, 0),
157 gsSP2Triangles(20, 21, 23, 0, 21, 22, 23, 0),
158 gsSP2Triangles(25, 10, 30, 0, 25, 30, 17, 0),
159 gsSPVertex(&D_0A000000_E62AC0[28], 2, 0),
160 gsSPVertex(&D_0A000000_E62AC0[35], 1, 2),
161 gsSPVertex(&D_0A000000_E62AC0[40], 1, 3),
162 gsSPVertex(&D_0A000000_E62AC0[42], 4, 4),
163 gsSPVertex(&D_0A000000_E62AC0[53], 4, 8),
164 gsSP2Triangles(4, 8, 6, 0, 5, 6, 11, 0),
165 gsSP2Triangles(6, 9, 11, 0, 6, 10, 9, 0),
166 gsSP2Triangles(6, 8, 10, 0, 5, 3, 6, 0),
167 gsSP2Triangles(1, 0, 7, 0, 1, 7, 2, 0),
168 gsSPEndDisplayList(),
169};
170
172 gsSPDisplayList(Entity_RedSwitch_RenderBase),
173 gsSPEndDisplayList(),
174};
175
177 gsSPDisplayList(Entity_RedSwitch_RenderBaseMain),
180 gsSPEndDisplayList(),
181};
182
184 gsSPDisplayList(Entity_RedSwitch_RenderMain),
185 gsSPEndDisplayList(),
186};
Gfx Entity_RedSwitch_RenderExclMark[]
Definition RedSwitch.c:102
Gfx Entity_RedSwitch_LoadExclMark[]
Definition RedSwitch.c:24
Gfx Entity_RedSwitch_RenderRotatedRedBubble[]
Definition RedSwitch.c:95
Gfx Entity_RedSwitch_RenderRedBubble[]
Definition RedSwitch.c:51
Gfx Entity_RedSwitch_Render[]
Definition RedSwitch.c:183
Gfx Entity_RedSwitch_RenderRotatedExclMark[]
Definition RedSwitch.c:114
Gfx Entity_RedSwitch_RenderBase[]
Definition RedSwitch.c:121
Mtx Entity_RedSwitch_mtxExclMark
Definition RedSwitch.c:36
Gfx Entity_RedSwitch_LoadTexture[]
Definition RedSwitch.c:10
Gfx Entity_RedSwitch_RenderBaseMain[]
Definition RedSwitch.c:171
Gfx Entity_RedSwitch_RenderMain[]
Definition RedSwitch.c:176
Mtx Entity_RedSwitch_mtxRedBubble
Definition RedSwitch.c:43
#define INCLUDE_PAL(FILENAME, SYMBOLNAME)
#define INCLUDE_IMG(FILENAME, SYMBOLNAME)
#define RDP_MATRIX( Ax, Bx, Cx, Dx, Ay, By, Cy, Dy, Az, Bz, Cz, Dz, Aw, Bw, Cw, Dw)
Definition macros.h:233