MCPcopy Create free account
hub / github.com/doldecomp/mkdd / draw_private

Method draw_private

libs/JSystem/J2DGraph/J2DWindowEx.cpp:138–308  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

136}
137
138void J2DWindowEx::draw_private(const JGeometry::TBox2<f32>& p1, const JGeometry::TBox2<f32>& p2)
139{
140 if (p1.getWidth() >= mMinWidth && p1.getHeight() >= mMinHeight) {
141 JUTTexture* textures[4];
142 bool anyFrameMaterialNull = false;
143 for (int i = 0; i < 4; i++) {
144 if (mFrameMaterials[i] == nullptr) {
145 return;
146 }
147 J2DTevBlock* block = mFrameMaterials[i]->getTevBlock();
148 if (block == nullptr) {
149 return;
150 }
151
152 textures[i] = block->getTexture(0);
153 if (textures[i] == nullptr) {
154 anyFrameMaterialNull = true;
155 }
156 }
157
158 JGeometry::TBox2<f32> aTStack_b8(p2);
159 aTStack_b8.addPos(p1.i);
160 drawContents(aTStack_b8);
161 GXClearVtxDesc();
162 GXSetVtxDesc(GX_VA_POS, GX_DIRECT);
163 GXSetVtxDesc(GX_VA_CLR0, GX_DIRECT);
164 GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT);
165
166 if (!anyFrameMaterialNull) {
167 f32 dVar16 = p1.i.x;
168 f32 dVar15 = p1.i.y;
169 f32 dVar18 = p1.f.x - textures[3]->getWidth();
170 f32 dVar17 = p1.f.y - textures[3]->getHeight();
171 f32 dVar14 = dVar16 + textures[0]->getWidth();
172 f32 dVar12 = dVar15 + textures[0]->getHeight();
173 u16 local_c4;
174 if (mWrapFlags & 0x80) {
175 local_c4 = 0;
176 } else {
177 local_c4 = 0x8000;
178 }
179 u16 local_c6;
180 if (mWrapFlags & 0x40) {
181 local_c6 = 0;
182 } else {
183 local_c6 = 0x8000;
184 }
185
186 drawFrameTexture(dVar16, dVar15, textures[0]->getWidth(), textures[0]->getHeight(), local_c4, local_c6, 0x8000 - local_c4,
187 0x8000 - local_c6, mFrameMaterials[0], true);
188 bool r9 = mFrameMaterials[1] != mFrameMaterials[0];
189 u16 local_c8;
190 if (mWrapFlags & 0x20) {
191 local_c8 = 0;
192 } else {
193 local_c8 = 0x8000;
194 }
195 u16 local_ca;

Callers

nothing calls this directly

Calls 5

addPosMethod · 0.80
getWidthMethod · 0.45
getHeightMethod · 0.45
getTevBlockMethod · 0.45
getTextureMethod · 0.45

Tested by

no test coverage detected