Fix Jennell Jaquays' name in credits and quit screen

the latter is done by identifying the baseq2 pics/quit.pcx in LoadPCX()
and changing some pixels
This commit is contained in:
Daniel Gibson 2017-06-12 18:21:09 +02:00
parent 4c8d504cf7
commit 1da7ff5594
4 changed files with 107 additions and 5 deletions

View file

@ -431,6 +431,7 @@ set(GL1-Source
${GL_SRC_DIR}/files/stb.c ${GL_SRC_DIR}/files/stb.c
${GL_SRC_DIR}/files/wal.c ${GL_SRC_DIR}/files/wal.c
${COMMON_SRC_DIR}/shared/shared.c ${COMMON_SRC_DIR}/shared/shared.c
${COMMON_SRC_DIR}/md4.c
) )
set(GL1-Header set(GL1-Header
@ -465,6 +466,7 @@ set(GL3-Source
${GL_SRC_DIR}/files/stb.c ${GL_SRC_DIR}/files/stb.c
${GL_SRC_DIR}/files/wal.c ${GL_SRC_DIR}/files/wal.c
${COMMON_SRC_DIR}/shared/shared.c ${COMMON_SRC_DIR}/shared/shared.c
${COMMON_SRC_DIR}/md4.c
) )
set(GL3-Header set(GL3-Header

View file

@ -816,7 +816,8 @@ REFGL1_OBJS_ := \
src/client/refresh/files/pcx.o \ src/client/refresh/files/pcx.o \
src/client/refresh/files/stb.o \ src/client/refresh/files/stb.o \
src/client/refresh/files/wal.o \ src/client/refresh/files/wal.o \
src/common/shared/shared.o src/common/shared/shared.o \
src/common/md4.o
ifeq ($(YQ2_OSTYPE), Windows) ifeq ($(YQ2_OSTYPE), Windows)
REFGL1_OBJS_ += \ REFGL1_OBJS_ += \
@ -847,7 +848,8 @@ REFGL3_OBJS_ := \
src/client/refresh/files/pcx.o \ src/client/refresh/files/pcx.o \
src/client/refresh/files/stb.o \ src/client/refresh/files/stb.o \
src/client/refresh/files/wal.o \ src/client/refresh/files/wal.o \
src/common/shared/shared.o src/common/shared/shared.o \
src/common/md4.o
ifeq ($(YQ2_OSTYPE), Windows) ifeq ($(YQ2_OSTYPE), Windows)
REFGL3_OBJS_ += \ REFGL3_OBJS_ += \

View file

@ -1509,7 +1509,7 @@ static const char *idcredits[] = {
"Tim Willits", "Tim Willits",
"American McGee", "American McGee",
"Christian Antkow", "Christian Antkow",
"Paul Jaquays", "Jennell Jaquays",
"Brandon James", "Brandon James",
"", "",
"+BIZ", "+BIZ",
@ -1667,7 +1667,7 @@ static const char *xatcredits[] =
"Paul Steed", "Paul Steed",
"Tim Willits", "Tim Willits",
"Christian Antkow", "Christian Antkow",
"Paul Jaquays", "Jennell Jaquays",
"Brandon James", "Brandon James",
"Todd Hollenshead", "Todd Hollenshead",
"Barrett (Bear) Alexander", "Barrett (Bear) Alexander",
@ -1791,7 +1791,7 @@ static const char *roguecredits[] =
"Paul Steed", "Paul Steed",
"Tim Willits", "Tim Willits",
"Christian Antkow", "Christian Antkow",
"Paul Jaquays", "Jennell Jaquays",
"Brandon James", "Brandon James",
"Todd Hollenshead", "Todd Hollenshead",
"Barrett (Bear) Alexander", "Barrett (Bear) Alexander",

View file

@ -26,6 +26,96 @@
#include "../ref_shared.h" #include "../ref_shared.h"
// Fix Jennell Jaquays' name in the Quitscreen
// this is 98x11 pixels, each value an index
// into the standard baseq2/pak0/pics/quit.pcx colormap
static unsigned char quitscreenfix[] = {
191,191,191,47,28,39,4,4,39,1,47,28,47,28,29,1,
28,28,47,31,31,1,29,31,1,28,47,47,47,47,29,28,
47,31,30,28,40,40,4,28,28,40,39,40,29,102,102,245,
28,39,4,4,39,103,40,40,1,1,102,94,47,47,1,94,
94,94,94,47,102,245,103,103,103,47,1,102,1,102,29,29,
29,29,47,28,245,31,31,31,47,1,28,1,28,47,1,102, 102,102,
191,191,142,47,4,8,8,8,8,4,47,28,1,28,29,28,
29,29,31,1,47,245,47,47,28,28,31,47,28,1,31,1,
1,245,47,39,8,8,8,40,39,8,8,8,39,1,1,47,
4,8,8,8,8,4,47,29,28,31,28,28,29,28,28,28,
29,28,31,28,47,29,1,28,31,47,1,28,1,1,29,29,
29,47,28,1,28,28,245,28,28,28,28,47,29,28,47,102,102,103,
191,191,142,31,29,36,8,8,36,31,40,39,40,4,1,1,
39,40,39,40,40,31,28,40,40,4,39,40,28,47,31,40,
39,40,4,1,36,8,8,4,47,36,8,8,39,1,1,1,
29,36,8,8,36,4,4,39,40,4,47,1,47,40,40,39,
39,40,28,40,40,47,45,39,40,28,4,39,40,4,39,1,
28,4,40,28,28,4,39,28,47,40,40,39,40,39,28,28,1,103,
1,142,29,142,28,39,8,8,36,36,8,8,8,8,36,1,
8,8,8,8,8,36,39,8,8,8,8,8,36,40,36,8,
8,8,8,36,40,8,8,40,1,4,8,8,40,1,1,31,
28,39,8,8,36,8,8,8,8,8,36,31,36,8,8,8,
8,8,36,8,8,4,40,8,8,36,8,8,8,8,8,36,
40,8,8,40,39,8,8,40,36,8,8,8,8,8,39,29,28,29,
103,191,142,47,28,40,8,8,40,8,8,33,33,8,8,36,
8,8,36,36,8,8,36,8,8,36,36,8,8,36,8,8,
33,33,8,8,36,8,8,4,47,40,8,8,39,47,28,245,
28,40,8,8,40,40,36,36,33,8,8,36,8,8,36,36,
8,8,36,8,8,40,40,8,8,40,4,36,36,33,8,8,
36,8,8,39,39,8,8,36,8,8,33,36,36,39,28,1,47,28,
103,246,1,47,1,39,8,8,40,8,8,8,8,8,8,36,
8,8,4,40,8,8,36,8,8,40,4,8,8,36,8,8,
8,8,8,8,36,8,8,40,29,39,8,8,39,1,1,47,
1,39,8,8,40,36,8,8,8,8,8,36,8,8,4,40,
8,8,36,8,8,40,39,8,8,40,36,8,8,8,8,8,
36,8,8,39,40,8,8,40,36,8,8,8,8,36,28,1,1,29,
103,47,40,40,4,36,8,8,36,8,8,33,36,36,36,4,
8,8,39,4,8,8,36,8,8,4,40,8,8,36,8,8,
33,36,36,36,36,8,8,40,31,40,8,8,40,47,40,40,
4,36,8,8,36,8,8,33,33,8,8,36,8,8,36,36,
8,8,36,8,8,36,36,8,8,36,8,8,33,33,8,8,
36,8,8,36,36,8,8,4,39,36,36,33,8,8,4,40,4,31,
191,40,8,8,8,8,8,36,29,36,8,8,8,8,8,40,
8,8,40,4,8,8,36,8,8,40,39,8,8,39,36,8,
8,8,8,8,39,8,8,39,45,4,8,8,40,40,8,8,
8,8,8,36,29,36,8,8,8,8,8,40,36,8,8,8,
8,8,40,36,8,8,8,8,8,40,36,8,8,8,8,8,
40,36,8,8,8,8,8,36,8,8,8,8,8,36,4,8,8,4,
47,45,40,39,40,39,39,245,246,1,40,40,40,39,4,47,
40,4,28,29,39,40,30,39,39,1,28,40,4,28,1,40,
40,40,39,4,29,40,39,1,1,1,4,4,47,45,40,39,
40,39,39,245,246,29,39,40,40,40,4,47,28,39,39,36,
8,8,4,1,39,40,4,40,40,1,29,4,39,4,40,39,
1,39,36,36,33,8,8,4,39,4,39,4,40,47,36,8,8,40,
1,28,47,28,28,29,1,28,47,28,31,28,28,27,47,28,
45,246,30,28,245,29,47,47,29,30,28,47,27,1,246,47,
47,47,1,28,47,28,47,1,47,47,1,29,29,47,47,28,
28,29,1,47,1,47,47,28,31,47,47,31,47,47,47,4,
8,8,39,245,1,47,28,245,28,47,31,28,47,28,28,28,
40,8,8,8,8,8,36,47,28,1,246,47,1,40,8,8,36,1,
47,1,102,1,102,102,47,94,94,102,47,47,102,102,102,102,
94,1,94,47,102,1,102,47,30,30,102,27,47,102,94,1,
102,47,1,94,102,103,1,102,103,103,47,47,47,29,1,29,
28,28,29,28,1,47,28,31,29,1,47,29,28,1,1,47,
4,39,1,47,47,1,28,28,28,47,1,28,45,28,47,47,
1,40,4,4,40,4,29,28,31,45,47,28,47,47,4,40,28,28
};
static void
fixQuitScreen(byte* px)
{
// overwrite 11 lines, 98 pixels each, from quitscreenfix[]
// starting at line 140, column 188
// quitscreen is 320x240 px
int r, qsIdx = 0;
px += 140*320; // go to line 140
px += 188; // to colum 188
for(r=0; r<11; ++r)
{
memcpy(px, quitscreenfix+qsIdx, 98);
qsIdx += 98;
px += 320;
}
}
void void
LoadPCX(char *origname, byte **pic, byte **palette, int *width, int *height) LoadPCX(char *origname, byte **pic, byte **palette, int *width, int *height)
{ {
@ -134,6 +224,14 @@ LoadPCX(char *origname, byte **pic, byte **palette, int *width, int *height)
free(*pic); free(*pic);
*pic = NULL; *pic = NULL;
} }
else if(pcx->xmax == 319 && pcx->ymax == 239
&& Q_strcasecmp(origname, "pics/quit.pcx") == 0
&& Com_BlockChecksum(pcx, len) == 3329419434u)
{
// it's the quit screen, and the baseq2 one (identified by checksum)
// so fix it
fixQuitScreen(*pic);
}
ri.FS_FreeFile(pcx); ri.FS_FreeFile(pcx);
} }