mirror of
https://github.com/zeldaret/tww.git
synced 2026-06-17 06:47:50 -04:00
f_pc_manager almost matches
This commit is contained in:
+40
-25
@@ -52,10 +52,16 @@ BOOL fpcM_IsCreating(unsigned int pID) {
|
||||
return fpcCt_IsCreatingByID(pID);
|
||||
}
|
||||
|
||||
struct BMG_INF1 : BlockHeader {
|
||||
/* 0x08 */ u8 m08[0x10 - 0x08];
|
||||
/* 0x10 */ u32 entries[6];
|
||||
};
|
||||
|
||||
/* 8003E3D0-8003E9F0 .text messageSet__FUl */
|
||||
void messageSet(unsigned long status) {
|
||||
const u32 * inf1_tbl = (u32*)&msg_data[0x30];
|
||||
const char * msg = (const char*)((&msg_data[0x68]) + inf1_tbl[status]);
|
||||
void messageSet(u32 status) {
|
||||
/* Nonmatching - TColor stack order and TWidth load */
|
||||
BMG_INF1* inf1 = (BMG_INF1*)&msg_data[0x20];
|
||||
const char * msg = (const char*)((u8*)inf1->getNext() + sizeof(BlockHeader) + inf1->entries[status]);
|
||||
|
||||
J2DTextBox * tpane = new J2DTextBox('TXT1', JGeometry::TBox2<f32>(0.0f, 0.0f, 660.0f, 200.0f), (ResFONT*)font_data, msg, HBIND_CENTER, VBIND_CENTER);
|
||||
JUT_ASSERT(0x141, tpane != 0);
|
||||
@@ -66,16 +72,23 @@ void messageSet(unsigned long status) {
|
||||
J2DPicture * ppane = new J2DPicture('PIC1', JGeometry::TBox2<f32>(0.0f, 0.0f, 665.0f, 530.0f), (ResTIMG*)black_tex, NULL);
|
||||
JUT_ASSERT(0x14e, ppane != 0);
|
||||
|
||||
tpane->setFontSize(27.0f, 27.0f);
|
||||
tpane->setCharColor(JUtility::TColor(0xFFC800FF));
|
||||
tpane->setGradColor(JUtility::TColor(0xFFB400FF));
|
||||
J2DTextBox::TFontSize size;
|
||||
size.mSizeX = 27.0f;
|
||||
size.mSizeY = 27.0f;
|
||||
tpane->setFontSize(size);
|
||||
JUtility::TColor charCol1 = JUtility::TColor(0xFF, 0xC8, 0x00, 0xFF);
|
||||
tpane->setCharColor(charCol1);
|
||||
JUtility::TColor gradCol1 = JUtility::TColor(0xFF, 0xB4, 0x00, 0xFF);
|
||||
tpane->setGradColor(gradCol1);
|
||||
tpane->setCharSpace(0.0f);
|
||||
tpane->setLineSpace(27.0f);
|
||||
tpane->setBlack(JUtility::TColor(0xFFFFFF00));
|
||||
tpane->setBlack(JUtility::TColor(0xFF, 0xFF, 0xFF, 0x00));
|
||||
|
||||
spane->setFontSize(27.0f, 27.0f);
|
||||
spane->setCharColor(JUtility::TColor(0x000000FF));
|
||||
spane->setGradColor(JUtility::TColor(0x000000FF));
|
||||
spane->setFontSize(size);
|
||||
JUtility::TColor charCol2 = JUtility::TColor(0x00, 0x00, 0x00, 0xC8);
|
||||
spane->setCharColor(charCol2);
|
||||
JUtility::TColor gradCol2 = JUtility::TColor(0x00, 0x00, 0x00, 0xC8);
|
||||
spane->setGradColor(gradCol2);
|
||||
spane->setCharSpace(0.0f);
|
||||
spane->setLineSpace(27.0f);
|
||||
|
||||
@@ -83,13 +96,16 @@ void messageSet(unsigned long status) {
|
||||
|
||||
JUTResFont * font = new JUTResFont((ResFONT*)font_data, NULL);
|
||||
|
||||
s32 height = 27;
|
||||
s32 curLine = 0;
|
||||
u8 ch;
|
||||
s16 height = 27;
|
||||
s32 ch;
|
||||
f32 maxWidth = 0.0f;
|
||||
f32 lineWidth[6] = {};
|
||||
for (; ch = *msg, ch != '\0'; msg++) {
|
||||
if (ch == '\n') {
|
||||
s32 curLine = 0;
|
||||
f32 lineWidth[6];
|
||||
for (s32 i = 0; i < (s32)ARRAY_SIZE(lineWidth); i++) {
|
||||
lineWidth[i] = 0.0f;
|
||||
}
|
||||
for (; ch = (u8)*msg, (s8)ch != '\0'; msg++) {
|
||||
if ((s8)ch == '\n') {
|
||||
height += 27;
|
||||
curLine++;
|
||||
continue;
|
||||
@@ -97,22 +113,21 @@ void messageSet(unsigned long status) {
|
||||
|
||||
JUTFont::TWidth wid;
|
||||
font->getWidthEntry(ch, &wid);
|
||||
lineWidth[curLine] += wid.field_0x0;
|
||||
lineWidth[curLine] += (int)wid.field_0x1;
|
||||
}
|
||||
|
||||
for (s32 i = 0; i < (s32)ARRAY_SIZE(lineWidth); i++) {
|
||||
f32 width = lineWidth[curLine];
|
||||
if (width > maxWidth)
|
||||
f32 width = lineWidth[i];
|
||||
if (maxWidth < width)
|
||||
maxWidth = width;
|
||||
}
|
||||
|
||||
f32 x = (659.0f - maxWidth) / 2.0f + -21.0f;
|
||||
f32 x = (659.0f - maxWidth) / 2.0f + -9.0f;
|
||||
f32 y = (524 - height) / 2.0f + -21.0f;
|
||||
|
||||
ppane->draw(-12.0f, -24.0f, 665.0f, 530.0f, false, false, false);
|
||||
y += 10.0f;
|
||||
spane->draw(x + 2.0f, y + 2.0f, 660.0f, HBIND_LEFT);
|
||||
tpane->draw(x, y, 660.0f, HBIND_LEFT);
|
||||
spane->draw(x + 2.0f, y + 10.0f + 2.0f, 660.0f, HBIND_LEFT);
|
||||
tpane->draw(x, y + 10.0f, 660.0f, HBIND_LEFT);
|
||||
|
||||
delete font;
|
||||
delete ppane;
|
||||
@@ -130,14 +145,14 @@ namespace JAInter {
|
||||
/* 8003E9F0-8003EBD4 .text drawDvdCondition__Fl */
|
||||
void drawDvdCondition(long status) {
|
||||
JFWDisplay::getManager()->setFader(NULL);
|
||||
GXColor backColor = mDoGph_gInf_c::getBackColor();
|
||||
JUtility::TColor backColor = mDoGph_gInf_c::getBackColor();
|
||||
JFWDisplay::getManager()->setClearColor(backColor);
|
||||
JFWDisplay::getManager()->beginRender();
|
||||
GXSetAlphaUpdate(GX_FALSE);
|
||||
j3dSys.drawInit();
|
||||
|
||||
J2DOrthoGraph draw2D(0.0f, 0.0f, 640.0f, 480.0f, -1.0f, 1.0);
|
||||
draw2D.setOrtho(-9.0f, -21.0f, 650.0f, 503.0f, -1.0f, 1.0f);
|
||||
draw2D.setOrtho(-9.0f, -21.0f, 659.0f, 524.0f, -1.0f, 1.0f);
|
||||
draw2D.setPort();
|
||||
dComIfGp_setCurrentGrafPort(&draw2D);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user