Add all GetCortBoxColor calls back (also I found a vanilla bug)

This commit is contained in:
Clownacy 2019-02-21 20:56:27 +00:00
parent 5754da507d
commit 3eca2d7cf3
3 changed files with 30 additions and 4 deletions

View file

@ -14,9 +14,13 @@
BACK gBack; BACK gBack;
int gWaterY; int gWaterY;
static unsigned long color_black;
BOOL InitBack(const char *fName, int type) BOOL InitBack(const char *fName, int type)
{ {
// Unused, hilariously
color_black = GetCortBoxColor(RGB(0, 0, 0x10));
//Get width and height //Get width and height
char path[PATH_LENGTH]; char path[PATH_LENGTH];
sprintf(path, "%s/%s.pbm", gDataPath, fName); sprintf(path, "%s/%s.pbm", gDataPath, fName);

View file

@ -267,6 +267,7 @@ int ModeTitle()
int anime = 0; int anime = 0;
int char_type = 0; int char_type = 0;
int time_counter = 0; int time_counter = 0;
unsigned long back_color = GetCortBoxColor(RGB(0x20, 0x20, 0x20));
//Set state //Set state
bContinue = IsProfile(); bContinue = IsProfile();
@ -356,7 +357,7 @@ int ModeTitle()
anime = 0; anime = 0;
//Draw title //Draw title
CortBox(&grcGame, 0x202020); CortBox(&grcGame, back_color);
//Draw version //Draw version
PutBitmap3(&grcGame, (WINDOW_WIDTH - 120) / 2, WINDOW_HEIGHT - 24, &rcVersion, SURFACE_ID_TEXT_BOX); PutBitmap3(&grcGame, (WINDOW_WIDTH - 120) / 2, WINDOW_HEIGHT - 24, &rcVersion, SURFACE_ID_TEXT_BOX);
@ -444,6 +445,8 @@ int ModeAction()
int frame_x = 0; int frame_x = 0;
int frame_y = 0; int frame_y = 0;
unsigned long color = GetCortBoxColor(RGB(0, 0, 0x20));
bool swPlay = true; bool swPlay = true;
//Reset stuff //Reset stuff
@ -525,7 +528,7 @@ int ModeAction()
} }
ProcFade(); ProcFade();
CortBox(&grcFull, 0x000020); CortBox(&grcFull, color);
GetFramePosition(&frame_x, &frame_y); GetFramePosition(&frame_x, &frame_y);
PutBack(frame_x, frame_y); PutBack(frame_x, frame_y);
PutStage_Back(frame_x, frame_y); PutStage_Back(frame_x, frame_y);

View file

@ -46,9 +46,17 @@ char text[0x100];
RECT gRect_line = {0, 0, 216, 16}; RECT gRect_line = {0, 0, 216, 16};
#ifdef FIX_BUGS
static unsigned long nod_color;
#endif
//Initialize and end tsc //Initialize and end tsc
BOOL InitTextScript2() BOOL InitTextScript2()
{ {
#ifdef FIX_BUGS
nod_color = GetCortBoxColor(RGB(0xFE, 0xFF, 0xFF));
#endif
//Clear flags //Clear flags
gTS.mode = 0; gTS.mode = 0;
g_GameFlags &= ~0x04; g_GameFlags &= ~0x04;
@ -456,7 +464,18 @@ void PutTextScript()
rect.top = gTS.ypos_line[gTS.line % 4] + gTS.rcText.top + gTS.offsetY; rect.top = gTS.ypos_line[gTS.line % 4] + gTS.rcText.top + gTS.offsetY;
rect.right = rect.left + 5; rect.right = rect.left + 5;
rect.bottom = rect.top + 11; rect.bottom = rect.top + 11;
CortBox(&rect, 0xFFFFFE); #ifdef FIX_BUGS
CortBox(&rect, nod_color);
// This is how the Linux port fixed this, but it isn't done
// the way Pixel would do it (he only calls GetCortBoxColor
// once, during init functions, so our fix does it that way
// instead).
// Also, the red/blue values are swapped for some reason.
//CortBox(&rect, GetCortBoxColor(RGB(0xFF, 0xFF, 0xFE));
#else
CortBox(&rect, RGB(0xFE, 0xFF, 0xFF));
#endif
} }
//Draw GIT //Draw GIT