Browse Source

Merge pull request #2011 from galaxyhaxz/CatsButtOnAPlaque

Metallic hydrogen neural array
pull/647/head
Robin Eklind 6 years ago committed by GitHub
parent
commit
3abaf0ff8c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 302
      Source/automap.cpp
  2. 16
      Source/automap.h
  3. 28
      Source/control.cpp
  4. 8
      Source/control.h
  5. 16
      Source/diablo.cpp
  6. 2
      Source/error.cpp
  7. 26
      Source/gamemenu.cpp
  8. 8
      Source/gamemenu.h
  9. 12
      Source/gmenu.cpp
  10. 6
      Source/gmenu.h
  11. 2
      Source/help.cpp
  12. 2
      Source/inv.cpp
  13. 2
      Source/items.cpp
  14. 2
      Source/player.cpp
  15. 2
      Source/plrmsg.cpp
  16. 2
      Source/quests.cpp
  17. 4
      Source/scrollrt.cpp
  18. 4
      Source/stores.cpp
  19. 28
      comparer-config/diablo.toml
  20. 28
      comparer-config/spawn.toml

302
Source/automap.cpp

@ -2,19 +2,19 @@
// BUGFIX: only the first 256 elements are ever read
WORD automaptype[512];
static int MapX;
static int MapY;
static int AutoMapX;
static int AutoMapY;
BOOL automapflag;
char AmShiftTab[32]; // [31]?
char AmShiftTab[31];
BOOLEAN automapview[DMAXX][DMAXY];
int AutoMapScale;
int AutoMapXOfs;
int AutoMapYOfs;
int AutoMapPosBits;
int AutoMapXPos;
int AutoMapYPos;
int AMPlayerX;
int AMPlayerY;
int AmLine64;
int AmLine32;
int AmLine16;
int AmLine8;
int AmLine4;
// color used to draw the player's arrow
#define COLOR_PLAYER (PAL8_ORANGE + 1)
@ -31,18 +31,18 @@ int AMPlayerY;
#define MAPFLAG_HORZARCH 0x08
#define MAPFLAG_VERTGRATE 0x10
#define MAPFLAG_HORZGRATE 0x20
#define MAPFLAG_SQUARE 0x40
#define MAPFLAG_DIRT 0x40
#define MAPFLAG_STAIRS 0x80
void InitAutomapOnce()
{
automapflag = FALSE;
AutoMapScale = 50;
AutoMapPosBits = 32;
AutoMapXPos = 16;
AutoMapYPos = 8;
AMPlayerX = 4;
AMPlayerY = 2;
AmLine64 = 32;
AmLine32 = 16;
AmLine16 = 8;
AmLine8 = 4;
AmLine4 = 2;
}
void InitAutomap()
@ -138,11 +138,11 @@ void AutomapZoomIn()
{
if (AutoMapScale < 200) {
AutoMapScale += 5;
AutoMapPosBits = (AutoMapScale << 6) / 100;
AutoMapXPos = AutoMapPosBits >> 1;
AutoMapYPos = AutoMapXPos >> 1;
AMPlayerX = AutoMapYPos >> 1;
AMPlayerY = AMPlayerX >> 1;
AmLine64 = (AutoMapScale << 6) / 100;
AmLine32 = AmLine64 >> 1;
AmLine16 = AmLine32 >> 1;
AmLine8 = AmLine16 >> 1;
AmLine4 = AmLine8 >> 1;
}
}
@ -150,11 +150,11 @@ void AutomapZoomOut()
{
if (AutoMapScale > 50) {
AutoMapScale -= 5;
AutoMapPosBits = (AutoMapScale << 6) / 100;
AutoMapXPos = AutoMapPosBits >> 1;
AutoMapYPos = AutoMapXPos >> 1;
AMPlayerX = AutoMapYPos >> 1;
AMPlayerY = AMPlayerX >> 1;
AmLine64 = (AutoMapScale << 6) / 100;
AmLine32 = AmLine64 >> 1;
AmLine16 = AmLine32 >> 1;
AmLine8 = AmLine16 >> 1;
AmLine4 = AmLine8 >> 1;
}
}
@ -166,46 +166,46 @@ void DrawAutomap()
int mapx, mapy;
if (leveltype == DTYPE_TOWN) {
DrawAutomapGame();
DrawAutomapText();
return;
}
gpBufEnd = &gpBuffer[(PANEL_Y)*BUFFER_WIDTH];
MapX = (ViewX - 16) >> 1;
while (MapX + AutoMapXOfs < 0)
AutoMapX = (ViewX - 16) >> 1;
while (AutoMapX + AutoMapXOfs < 0)
AutoMapXOfs++;
while (MapX + AutoMapXOfs >= DMAXX)
while (AutoMapX + AutoMapXOfs >= DMAXX)
AutoMapXOfs--;
MapX += AutoMapXOfs;
AutoMapX += AutoMapXOfs;
MapY = (ViewY - 16) >> 1;
while (MapY + AutoMapYOfs < 0)
AutoMapY = (ViewY - 16) >> 1;
while (AutoMapY + AutoMapYOfs < 0)
AutoMapYOfs++;
while (MapY + AutoMapYOfs >= DMAXY)
while (AutoMapY + AutoMapYOfs >= DMAXY)
AutoMapYOfs--;
MapY += AutoMapYOfs;
AutoMapY += AutoMapYOfs;
cells = AmShiftTab[(AutoMapScale - 50) / 5];
if (ScrollInfo._sxoff + ScrollInfo._syoff)
cells++;
mapx = MapX - cells;
mapy = MapY - 1;
mapx = AutoMapX - cells;
mapy = AutoMapY - 1;
if (cells & 1) {
sx = 384 - AutoMapPosBits * ((cells - 1) >> 1);
sy = 336 - AutoMapXPos * ((cells + 1) >> 1);
sx = 384 - AmLine64 * ((cells - 1) >> 1);
sy = 336 - AmLine32 * ((cells + 1) >> 1);
} else {
sx = 384 - AutoMapPosBits * (cells >> 1) + AutoMapXPos;
sy = 336 - AutoMapXPos * (cells >> 1) - AutoMapYPos;
sx = 384 - AmLine64 * (cells >> 1) + AmLine32;
sy = 336 - AmLine32 * (cells >> 1) - AmLine16;
}
if (ViewX & 1) {
sx -= AutoMapYPos;
sy -= AMPlayerX;
sx -= AmLine16;
sy -= AmLine8;
}
if (ViewY & 1) {
sx += AutoMapYPos;
sy -= AMPlayerX;
sx += AmLine16;
sy -= AmLine8;
}
sx += AutoMapScale * ScrollInfo._sxoff / 100 >> 1;
@ -224,26 +224,26 @@ void DrawAutomap()
for (j = 0; j < cells; j++) {
WORD maptype = GetAutomapType(mapx + j, mapy - j, TRUE);
if (maptype)
DrawAutomapType(x, sy, maptype);
x += AutoMapPosBits;
DrawAutomapTile(x, sy, maptype);
x += AmLine64;
}
mapy++;
x = sx - AutoMapXPos;
y = sy + AutoMapYPos;
x = sx - AmLine32;
y = sy + AmLine16;
for (j = 0; j <= cells; j++) {
WORD maptype = GetAutomapType(mapx + j, mapy - j, TRUE);
if (maptype)
DrawAutomapType(x, y, maptype);
x += AutoMapPosBits;
DrawAutomapTile(x, y, maptype);
x += AmLine64;
}
mapx++;
sy += AutoMapXPos;
sy += AmLine32;
}
DrawAutomapPlr();
DrawAutomapGame();
DrawAutomapText();
}
void DrawAutomapType(int sx, int sy, WORD automap_type)
void DrawAutomapTile(int sx, int sy, WORD automap_type)
{
BOOL do_vert;
BOOL do_horz;
@ -253,30 +253,30 @@ void DrawAutomapType(int sx, int sy, WORD automap_type)
BYTE flags = automap_type >> 8;
if (flags & MAPFLAG_SQUARE) {
if (flags & MAPFLAG_DIRT) {
ENG_set_pixel(sx, sy, COLOR_DIM);
ENG_set_pixel(sx - AMPlayerX, sy - AMPlayerY, COLOR_DIM);
ENG_set_pixel(sx - AMPlayerX, sy + AMPlayerY, COLOR_DIM);
ENG_set_pixel(sx + AMPlayerX, sy - AMPlayerY, COLOR_DIM);
ENG_set_pixel(sx + AMPlayerX, sy + AMPlayerY, COLOR_DIM);
ENG_set_pixel(sx - AutoMapYPos, sy, COLOR_DIM);
ENG_set_pixel(sx + AutoMapYPos, sy, COLOR_DIM);
ENG_set_pixel(sx, sy - AMPlayerX, COLOR_DIM);
ENG_set_pixel(sx, sy + AMPlayerX, COLOR_DIM);
ENG_set_pixel(sx + AMPlayerX - AutoMapXPos, sy + AMPlayerY, COLOR_DIM);
ENG_set_pixel(sx - AMPlayerX + AutoMapXPos, sy + AMPlayerY, COLOR_DIM);
ENG_set_pixel(sx - AutoMapYPos, sy + AMPlayerX, COLOR_DIM);
ENG_set_pixel(sx + AutoMapYPos, sy + AMPlayerX, COLOR_DIM);
ENG_set_pixel(sx - AMPlayerX, sy + AutoMapYPos - AMPlayerY, COLOR_DIM);
ENG_set_pixel(sx + AMPlayerX, sy + AutoMapYPos - AMPlayerY, COLOR_DIM);
ENG_set_pixel(sx, sy + AutoMapYPos, COLOR_DIM);
ENG_set_pixel(sx - AmLine8, sy - AmLine4, COLOR_DIM);
ENG_set_pixel(sx - AmLine8, sy + AmLine4, COLOR_DIM);
ENG_set_pixel(sx + AmLine8, sy - AmLine4, COLOR_DIM);
ENG_set_pixel(sx + AmLine8, sy + AmLine4, COLOR_DIM);
ENG_set_pixel(sx - AmLine16, sy, COLOR_DIM);
ENG_set_pixel(sx + AmLine16, sy, COLOR_DIM);
ENG_set_pixel(sx, sy - AmLine8, COLOR_DIM);
ENG_set_pixel(sx, sy + AmLine8, COLOR_DIM);
ENG_set_pixel(sx + AmLine8 - AmLine32, sy + AmLine4, COLOR_DIM);
ENG_set_pixel(sx - AmLine8 + AmLine32, sy + AmLine4, COLOR_DIM);
ENG_set_pixel(sx - AmLine16, sy + AmLine8, COLOR_DIM);
ENG_set_pixel(sx + AmLine16, sy + AmLine8, COLOR_DIM);
ENG_set_pixel(sx - AmLine8, sy + AmLine16 - AmLine4, COLOR_DIM);
ENG_set_pixel(sx + AmLine8, sy + AmLine16 - AmLine4, COLOR_DIM);
ENG_set_pixel(sx, sy + AmLine16, COLOR_DIM);
}
if (flags & MAPFLAG_STAIRS) {
DrawLine(sx - AMPlayerX, sy - AMPlayerX - AMPlayerY, sx + AMPlayerX + AutoMapYPos, sy + AMPlayerY, COLOR_BRIGHT);
DrawLine(sx - AutoMapYPos, sy - AMPlayerX, sx + AutoMapYPos, sy + AMPlayerX, COLOR_BRIGHT);
DrawLine(sx - AutoMapYPos - AMPlayerX, sy - AMPlayerY, sx + AMPlayerX, sy + AMPlayerX + AMPlayerY, COLOR_BRIGHT);
DrawLine(sx - AutoMapXPos, sy, sx, sy + AutoMapYPos, COLOR_BRIGHT);
DrawLine(sx - AmLine8, sy - AmLine8 - AmLine4, sx + AmLine8 + AmLine16, sy + AmLine4, COLOR_BRIGHT);
DrawLine(sx - AmLine16, sy - AmLine8, sx + AmLine16, sy + AmLine8, COLOR_BRIGHT);
DrawLine(sx - AmLine16 - AmLine8, sy - AmLine4, sx + AmLine8, sy + AmLine8 + AmLine4, COLOR_BRIGHT);
DrawLine(sx - AmLine32, sy, sx, sy + AmLine16, COLOR_BRIGHT);
}
do_vert = FALSE;
@ -285,10 +285,10 @@ void DrawAutomapType(int sx, int sy, WORD automap_type)
do_cave_vert = FALSE;
switch (automap_type & MAPFLAG_TYPE) {
case 1: // stand-alone column or other unpassable object
x1 = sx - AutoMapYPos;
y1 = sy - AutoMapYPos;
x2 = x1 + AutoMapXPos;
y2 = sy - AMPlayerX;
x1 = sx - AmLine16;
y1 = sy - AmLine16;
x2 = x1 + AmLine32;
y2 = sy - AmLine8;
DrawLine(sx, y1, x1, y2, COLOR_DIM);
DrawLine(sx, y1, x2, y2, COLOR_DIM);
DrawLine(sx, sy, x1, y2, COLOR_DIM);
@ -328,27 +328,27 @@ void DrawAutomapType(int sx, int sy, WORD automap_type)
if (do_vert) { // right-facing obstacle
if (flags & MAPFLAG_VERTDOOR) { // two wall segments with a door in the middle
x1 = sx - AutoMapXPos;
x2 = sx - AutoMapYPos;
y1 = sy - AutoMapYPos;
y2 = sy - AMPlayerX;
x1 = sx - AmLine32;
x2 = sx - AmLine16;
y1 = sy - AmLine16;
y2 = sy - AmLine8;
DrawLine(sx, y1, sx - AMPlayerX, y1 + AMPlayerY, COLOR_DIM);
DrawLine(x1, sy, x1 + AMPlayerX, sy - AMPlayerY, COLOR_DIM);
DrawLine(sx, y1, sx - AmLine8, y1 + AmLine4, COLOR_DIM);
DrawLine(x1, sy, x1 + AmLine8, sy - AmLine4, COLOR_DIM);
DrawLine(x2, y1, x1, y2, COLOR_BRIGHT);
DrawLine(x2, y1, sx, y2, COLOR_BRIGHT);
DrawLine(x2, sy, x1, y2, COLOR_BRIGHT);
DrawLine(x2, sy, sx, y2, COLOR_BRIGHT);
}
if (flags & MAPFLAG_VERTGRATE) { // right-facing half-wall
DrawLine(sx - AutoMapYPos, sy - AMPlayerX, sx - AutoMapXPos, sy, COLOR_DIM);
DrawLine(sx - AmLine16, sy - AmLine8, sx - AmLine32, sy, COLOR_DIM);
flags |= MAPFLAG_VERTARCH;
}
if (flags & MAPFLAG_VERTARCH) { // window or passable column
x1 = sx - AutoMapYPos;
y1 = sy - AutoMapYPos;
x2 = x1 + AutoMapXPos;
y2 = sy - AMPlayerX;
x1 = sx - AmLine16;
y1 = sy - AmLine16;
x2 = x1 + AmLine32;
y2 = sy - AmLine8;
DrawLine(sx, y1, x1, y2, COLOR_DIM);
DrawLine(sx, y1, x2, y2, COLOR_DIM);
@ -356,32 +356,32 @@ void DrawAutomapType(int sx, int sy, WORD automap_type)
DrawLine(sx, sy, x2, y2, COLOR_DIM);
}
if (!(flags & (MAPFLAG_VERTDOOR | MAPFLAG_VERTGRATE | MAPFLAG_VERTARCH)))
DrawLine(sx, sy - AutoMapYPos, sx - AutoMapXPos, sy, COLOR_DIM);
DrawLine(sx, sy - AmLine16, sx - AmLine32, sy, COLOR_DIM);
}
if (do_horz) { // left-facing obstacle
if (flags & MAPFLAG_HORZDOOR) {
x1 = sx + AutoMapYPos;
x2 = sx + AutoMapXPos;
y1 = sy - AutoMapYPos;
y2 = sy - AMPlayerX;
x1 = sx + AmLine16;
x2 = sx + AmLine32;
y1 = sy - AmLine16;
y2 = sy - AmLine8;
DrawLine(sx, y1, sx + AMPlayerX, y1 + AMPlayerY, COLOR_DIM);
DrawLine(x2, sy, x2 - AMPlayerX, sy - AMPlayerY, COLOR_DIM);
DrawLine(sx, y1, sx + AmLine8, y1 + AmLine4, COLOR_DIM);
DrawLine(x2, sy, x2 - AmLine8, sy - AmLine4, COLOR_DIM);
DrawLine(x1, y1, sx, y2, COLOR_BRIGHT);
DrawLine(x1, y1, x2, y2, COLOR_BRIGHT);
DrawLine(x1, sy, sx, y2, COLOR_BRIGHT);
DrawLine(x1, sy, x2, y2, COLOR_BRIGHT);
}
if (flags & MAPFLAG_HORZGRATE) {
DrawLine(sx + AutoMapYPos, sy - AMPlayerX, sx + AutoMapXPos, sy, COLOR_DIM);
DrawLine(sx + AmLine16, sy - AmLine8, sx + AmLine32, sy, COLOR_DIM);
flags |= MAPFLAG_HORZARCH;
}
if (flags & MAPFLAG_HORZARCH) {
x1 = sx - AutoMapYPos;
y1 = sy - AutoMapYPos;
x2 = x1 + AutoMapXPos;
y2 = sy - AMPlayerX;
x1 = sx - AmLine16;
y1 = sy - AmLine16;
x2 = x1 + AmLine32;
y2 = sy - AmLine8;
DrawLine(sx, y1, x1, y2, COLOR_DIM);
DrawLine(sx, y1, x2, y2, COLOR_DIM);
@ -389,42 +389,42 @@ void DrawAutomapType(int sx, int sy, WORD automap_type)
DrawLine(sx, sy, x2, y2, COLOR_DIM);
}
if (!(flags & (MAPFLAG_HORZDOOR | MAPFLAG_HORZGRATE | MAPFLAG_HORZARCH)))
DrawLine(sx, sy - AutoMapYPos, sx + AutoMapXPos, sy, COLOR_DIM);
DrawLine(sx, sy - AmLine16, sx + AmLine32, sy, COLOR_DIM);
}
// for caves the horz/vert flags are switched
if (do_cave_horz) {
if (flags & MAPFLAG_VERTDOOR) {
x1 = sx - AutoMapXPos;
x2 = sx - AutoMapYPos;
y1 = sy + AutoMapYPos;
y2 = sy + AMPlayerX;
x1 = sx - AmLine32;
x2 = sx - AmLine16;
y1 = sy + AmLine16;
y2 = sy + AmLine8;
DrawLine(sx, y1, sx - AMPlayerX, y1 - AMPlayerY, COLOR_DIM);
DrawLine(x1, sy, x1 + AMPlayerX, sy + AMPlayerY, COLOR_DIM);
DrawLine(sx, y1, sx - AmLine8, y1 - AmLine4, COLOR_DIM);
DrawLine(x1, sy, x1 + AmLine8, sy + AmLine4, COLOR_DIM);
DrawLine(x2, y1, x1, y2, COLOR_BRIGHT);
DrawLine(x2, y1, sx, y2, COLOR_BRIGHT);
DrawLine(x2, sy, x1, y2, COLOR_BRIGHT);
DrawLine(x2, sy, sx, y2, COLOR_BRIGHT);
} else
DrawLine(sx, sy + AutoMapYPos, sx - AutoMapXPos, sy, COLOR_DIM);
DrawLine(sx, sy + AmLine16, sx - AmLine32, sy, COLOR_DIM);
}
if (do_cave_vert) {
if (flags & MAPFLAG_HORZDOOR) {
x1 = sx + AutoMapYPos;
x2 = sx + AutoMapXPos;
y1 = sy + AutoMapYPos;
y2 = sy + AMPlayerX;
x1 = sx + AmLine16;
x2 = sx + AmLine32;
y1 = sy + AmLine16;
y2 = sy + AmLine8;
DrawLine(sx, y1, sx + AMPlayerX, y1 - AMPlayerY, COLOR_DIM);
DrawLine(x2, sy, x2 - AMPlayerX, sy + AMPlayerY, COLOR_DIM);
DrawLine(sx, y1, sx + AmLine8, y1 - AmLine4, COLOR_DIM);
DrawLine(x2, sy, x2 - AmLine8, sy + AmLine4, COLOR_DIM);
DrawLine(x1, y1, sx, y2, COLOR_BRIGHT);
DrawLine(x1, y1, x2, y2, COLOR_BRIGHT);
DrawLine(x1, sy, sx, y2, COLOR_BRIGHT);
DrawLine(x1, sy, x2, y2, COLOR_BRIGHT);
} else
DrawLine(sx, sy + AutoMapYPos, sx + AutoMapXPos, sy, COLOR_DIM);
DrawLine(sx, sy + AmLine16, sx + AmLine32, sy, COLOR_DIM);
}
}
@ -447,55 +447,55 @@ void DrawAutomapPlr()
px = x - 2 * AutoMapXOfs - ViewX;
py = y - 2 * AutoMapYOfs - ViewY;
x = (plr[myplr]._pxoff * AutoMapScale / 100 >> 1) + (ScrollInfo._sxoff * AutoMapScale / 100 >> 1) + (px - py) * AutoMapYPos + 384;
y = (plr[myplr]._pyoff * AutoMapScale / 100 >> 1) + (ScrollInfo._syoff * AutoMapScale / 100 >> 1) + (px + py) * AMPlayerX + 336;
x = (plr[myplr]._pxoff * AutoMapScale / 100 >> 1) + (ScrollInfo._sxoff * AutoMapScale / 100 >> 1) + (px - py) * AmLine16 + 384;
y = (plr[myplr]._pyoff * AutoMapScale / 100 >> 1) + (ScrollInfo._syoff * AutoMapScale / 100 >> 1) + (px + py) * AmLine8 + 336;
if (invflag || sbookflag)
x -= 160;
if (chrflag || questlog)
x += 160;
y -= AMPlayerX;
y -= AmLine8;
switch (plr[myplr]._pdir) {
case DIR_N:
DrawLine(x, y, x, y - AutoMapYPos, COLOR_PLAYER);
DrawLine(x, y - AutoMapYPos, x - AMPlayerY, y - AMPlayerX, COLOR_PLAYER);
DrawLine(x, y - AutoMapYPos, x + AMPlayerY, y - AMPlayerX, COLOR_PLAYER);
DrawLine(x, y, x, y - AmLine16, COLOR_PLAYER);
DrawLine(x, y - AmLine16, x - AmLine4, y - AmLine8, COLOR_PLAYER);
DrawLine(x, y - AmLine16, x + AmLine4, y - AmLine8, COLOR_PLAYER);
break;
case DIR_NE:
DrawLine(x, y, x + AutoMapYPos, y - AMPlayerX, COLOR_PLAYER);
DrawLine(x + AutoMapYPos, y - AMPlayerX, x + AMPlayerX, y - AMPlayerX, COLOR_PLAYER);
DrawLine(x + AutoMapYPos, y - AMPlayerX, x + AMPlayerX + AMPlayerY, y, COLOR_PLAYER);
DrawLine(x, y, x + AmLine16, y - AmLine8, COLOR_PLAYER);
DrawLine(x + AmLine16, y - AmLine8, x + AmLine8, y - AmLine8, COLOR_PLAYER);
DrawLine(x + AmLine16, y - AmLine8, x + AmLine8 + AmLine4, y, COLOR_PLAYER);
break;
case DIR_E:
DrawLine(x, y, x + AutoMapYPos, y, COLOR_PLAYER);
DrawLine(x + AutoMapYPos, y, x + AMPlayerX, y - AMPlayerY, COLOR_PLAYER);
DrawLine(x + AutoMapYPos, y, x + AMPlayerX, y + AMPlayerY, COLOR_PLAYER);
DrawLine(x, y, x + AmLine16, y, COLOR_PLAYER);
DrawLine(x + AmLine16, y, x + AmLine8, y - AmLine4, COLOR_PLAYER);
DrawLine(x + AmLine16, y, x + AmLine8, y + AmLine4, COLOR_PLAYER);
break;
case DIR_SE:
DrawLine(x, y, x + AutoMapYPos, y + AMPlayerX, COLOR_PLAYER);
DrawLine(x + AutoMapYPos, y + AMPlayerX, x + AMPlayerX + AMPlayerY, y, COLOR_PLAYER);
DrawLine(x + AutoMapYPos, y + AMPlayerX, x + AMPlayerX, y + AMPlayerX, COLOR_PLAYER);
DrawLine(x, y, x + AmLine16, y + AmLine8, COLOR_PLAYER);
DrawLine(x + AmLine16, y + AmLine8, x + AmLine8 + AmLine4, y, COLOR_PLAYER);
DrawLine(x + AmLine16, y + AmLine8, x + AmLine8, y + AmLine8, COLOR_PLAYER);
break;
case DIR_S:
DrawLine(x, y, x, y + AutoMapYPos, COLOR_PLAYER);
DrawLine(x, y + AutoMapYPos, x + AMPlayerY, y + AMPlayerX, COLOR_PLAYER);
DrawLine(x, y + AutoMapYPos, x - AMPlayerY, y + AMPlayerX, COLOR_PLAYER);
DrawLine(x, y, x, y + AmLine16, COLOR_PLAYER);
DrawLine(x, y + AmLine16, x + AmLine4, y + AmLine8, COLOR_PLAYER);
DrawLine(x, y + AmLine16, x - AmLine4, y + AmLine8, COLOR_PLAYER);
break;
case DIR_SW:
DrawLine(x, y, x - AutoMapYPos, y + AMPlayerX, COLOR_PLAYER);
DrawLine(x - AutoMapYPos, y + AMPlayerX, x - AMPlayerY - AMPlayerX, y, COLOR_PLAYER);
DrawLine(x - AutoMapYPos, y + AMPlayerX, x - AMPlayerX, y + AMPlayerX, COLOR_PLAYER);
DrawLine(x, y, x - AmLine16, y + AmLine8, COLOR_PLAYER);
DrawLine(x - AmLine16, y + AmLine8, x - AmLine4 - AmLine8, y, COLOR_PLAYER);
DrawLine(x - AmLine16, y + AmLine8, x - AmLine8, y + AmLine8, COLOR_PLAYER);
break;
case DIR_W:
DrawLine(x, y, x - AutoMapYPos, y, COLOR_PLAYER);
DrawLine(x - AutoMapYPos, y, x - AMPlayerX, y - AMPlayerY, COLOR_PLAYER);
DrawLine(x - AutoMapYPos, y, x - AMPlayerX, y + AMPlayerY, COLOR_PLAYER);
DrawLine(x, y, x - AmLine16, y, COLOR_PLAYER);
DrawLine(x - AmLine16, y, x - AmLine8, y - AmLine4, COLOR_PLAYER);
DrawLine(x - AmLine16, y, x - AmLine8, y + AmLine4, COLOR_PLAYER);
break;
case DIR_NW:
DrawLine(x, y, x - AutoMapYPos, y - AMPlayerX, COLOR_PLAYER);
DrawLine(x - AutoMapYPos, y - AMPlayerX, x - AMPlayerX, y - AMPlayerX, COLOR_PLAYER);
DrawLine(x - AutoMapYPos, y - AMPlayerX, x - AMPlayerY - AMPlayerX, y, COLOR_PLAYER);
DrawLine(x, y, x - AmLine16, y - AmLine8, COLOR_PLAYER);
DrawLine(x - AmLine16, y - AmLine8, x - AmLine8, y - AmLine8, COLOR_PLAYER);
DrawLine(x - AmLine16, y - AmLine8, x - AmLine4 - AmLine8, y, COLOR_PLAYER);
break;
}
}
@ -505,18 +505,18 @@ WORD GetAutomapType(int x, int y, BOOL view)
WORD rv;
if (view && x == -1 && y >= 0 && y < DMAXY && automapview[0][y]) {
if (GetAutomapType(0, y, FALSE) & (MAPFLAG_SQUARE << 8)) {
if (GetAutomapType(0, y, FALSE) & (MAPFLAG_DIRT << 8)) {
return 0;
} else {
return MAPFLAG_SQUARE << 8;
return MAPFLAG_DIRT << 8;
}
}
if (view && y == -1 && x >= 0 && x < DMAXY && automapview[x][0]) {
if (GetAutomapType(x, 0, FALSE) & (MAPFLAG_SQUARE << 8)) {
if (GetAutomapType(x, 0, FALSE) & (MAPFLAG_DIRT << 8)) {
return 0;
} else {
return MAPFLAG_SQUARE << 8;
return MAPFLAG_DIRT << 8;
}
}
@ -541,7 +541,7 @@ WORD GetAutomapType(int x, int y, BOOL view)
return rv;
}
void DrawAutomapGame()
void DrawAutomapText()
{
char desc[256];
int nextline = 20;
@ -640,9 +640,9 @@ void AutomapZoomReset()
{
AutoMapXOfs = 0;
AutoMapYOfs = 0;
AutoMapPosBits = (AutoMapScale << 6) / 100;
AutoMapXPos = AutoMapPosBits >> 1;
AutoMapYPos = AutoMapXPos >> 1;
AMPlayerX = AutoMapYPos >> 1;
AMPlayerY = AMPlayerX >> 1;
AmLine64 = (AutoMapScale << 6) / 100;
AmLine32 = AmLine64 >> 1;
AmLine16 = AmLine32 >> 1;
AmLine8 = AmLine16 >> 1;
AmLine4 = AmLine8 >> 1;
}

16
Source/automap.h

@ -4,16 +4,16 @@
extern WORD automaptype[512];
extern BOOL automapflag;
extern char AmShiftTab[32];
extern char AmShiftTab[31];
extern BOOLEAN automapview[DMAXX][DMAXY];
extern int AutoMapScale;
extern int AutoMapXOfs;
extern int AutoMapYOfs;
extern int AutoMapPosBits;
extern int AutoMapXPos;
extern int AutoMapYPos;
extern int AMPlayerX;
extern int AMPlayerY;
extern int AmLine64;
extern int AmLine32;
extern int AmLine16;
extern int AmLine8;
extern int AmLine4;
void InitAutomapOnce();
void InitAutomap();
@ -25,10 +25,10 @@ void AutomapRight();
void AutomapZoomIn();
void AutomapZoomOut();
void DrawAutomap();
void DrawAutomapType(int screen_x, int screen_y, WORD automap_type);
void DrawAutomapTile(int screen_x, int screen_y, WORD automap_type);
void DrawAutomapPlr();
WORD GetAutomapType(int x, int y, BOOL view);
void DrawAutomapGame();
void DrawAutomapText();
void SetAutomapView(int x, int y);
void AutomapZoomReset();

28
Source/control.cpp

@ -619,7 +619,7 @@ void ToggleSpell(int slot)
* @param nCel Number of letter in Windows-1252
* @param col text_color color value
*/
void CPrintString(int nOffset, int nCel, char col)
void PrintChar(int nOffset, int nCel, char col)
{
/// ASSERT: assert(gpBuffer);
@ -1286,7 +1286,7 @@ void InitControlPan()
nGoldFrame = 1;
}
void ClearCtrlPan()
void DrawCtrlPan()
{
DrawPanelBox(0, sgbPlrTalkTbl + 16, PANEL_WIDTH, PANEL_HEIGHT, PANEL_X, PANEL_Y);
DrawInfoBox();
@ -1296,7 +1296,7 @@ void ClearCtrlPan()
* Draws the control panel buttons in their current state. If the button is in the default
* state draw it from the panel cel(extract its sub-rect). Else draw it from the buttons cel.
*/
void DrawCtrlPan()
void DrawCtrlBtns()
{
int i;
@ -1706,10 +1706,10 @@ void DrawInfoBox()
}
}
if (infostr[0] || pnumlines)
control_draw_info_str();
PrintInfo();
}
void control_draw_info_str()
void PrintInfo()
{
int yo, lo, i;
@ -1717,18 +1717,18 @@ void control_draw_info_str()
yo = 0;
lo = 1;
if (infostr[0]) {
control_print_info_str(0, infostr, TRUE, pnumlines);
CPrintString(0, infostr, TRUE, pnumlines);
yo = 1;
lo = 0;
}
for (i = 0; i < pnumlines; i++) {
control_print_info_str(i + yo, panelstr[i], pstrjust[i], pnumlines - lo);
CPrintString(i + yo, panelstr[i], pstrjust[i], pnumlines - lo);
}
}
}
void control_print_info_str(int y, char *str, BOOL center, int lines)
void CPrintString(int y, char *str, BOOL center, int lines)
{
BYTE c;
char *tmp;
@ -1753,7 +1753,7 @@ void control_print_info_str(int y, char *str, BOOL center, int lines)
lineOffset += fontkern[c] + 2;
if (c) {
if (lineOffset < 288) {
CPrintString(lineStart, c, infoclr);
PrintChar(lineStart, c, infoclr);
}
}
lineStart += fontkern[c] + 2;
@ -1769,7 +1769,7 @@ void PrintGameStr(int x, int y, char *str, int color)
c = gbFontTransTbl[(BYTE)*str++];
c = fontframe[c];
if (c)
CPrintString(off, c, color);
PrintChar(off, c, color);
off += fontkern[c] + 1;
}
}
@ -2006,7 +2006,7 @@ void ADD_PlrStringXY(int x, int y, int width, char *pszStr, char col)
line += fontkern[c] + 1;
if (c) {
if (line < widthOffset)
CPrintString(nOffset, c, col);
PrintChar(nOffset, c, col);
}
nOffset += fontkern[c] + 1;
}
@ -2045,7 +2045,7 @@ void MY_PlrStringXY(int x, int y, int endX, char *pszStr, char col, int base)
line += fontkern[c] + base;
if (c) {
if (line < widthOffset)
CPrintString(nOffset, c, col);
PrintChar(nOffset, c, col);
}
nOffset += fontkern[c] + base;
}
@ -2386,7 +2386,7 @@ void PrintSBookStr(int x, int y, BOOL cjustflag, char *pszStr, char col)
line += fontkern[c] + 1;
if (c) {
if (line <= 222)
CPrintString(width, c, col);
PrintChar(width, c, col);
}
width += fontkern[c] + 1;
}
@ -2606,7 +2606,7 @@ char *control_print_talk_msg(char *msg, int x, int y, int *nOffset, int color)
return msg;
msg++;
if (c) {
CPrintString(*nOffset, c, color);
PrintChar(*nOffset, c, color);
}
*nOffset += fontkern[c] + 1;
}

8
Source/control.h

@ -60,7 +60,7 @@ void DrawSpellList();
void SetSpell();
void SetSpeedSpell(int slot);
void ToggleSpell(int slot);
void CPrintString(int nOffset, int nCel, char col);
void PrintChar(int nOffset, int nCel, char col);
void AddPanelString(char *str, BOOL just);
void ClearPanel();
void DrawPanelBox(int x, int y, int w, int h, int sx, int sy);
@ -73,8 +73,8 @@ void DrawManaFlask();
void control_update_life_mana();
void UpdateManaFlask();
void InitControlPan();
void ClearCtrlPan();
void DrawCtrlPan();
void DrawCtrlBtns();
void DoSpeedBook();
void DoPanBtn();
void control_set_button_down(int btn_id);
@ -85,8 +85,8 @@ void CheckBtnUp();
void FreeControlPan();
BOOL control_WriteStringToBuffer(BYTE *str);
void DrawInfoBox();
void control_draw_info_str();
void control_print_info_str(int y, char *str, BOOL center, int lines);
void PrintInfo();
void CPrintString(int y, char *str, BOOL center, int lines);
void PrintGameStr(int x, int y, char *str, int color);
void DrawChr();
void ADD_PlrStringXY(int x, int y, int width, char *pszStr, char col);

16
Source/diablo.cpp

@ -787,7 +787,7 @@ BOOL LeftMouseDown(int wParam)
} else if (stextflag) {
CheckStoreBtn();
} else if (MouseY < PANEL_TOP) {
if (!gmenu_exception() && !TryIconCurs()) {
if (!gmenu_is_active() && !TryIconCurs()) {
if (questlog && MouseX > 32 && MouseX < 288 && MouseY > 32 && MouseY < 308) {
QuestlogESC();
} else if (qtextflag) {
@ -813,7 +813,7 @@ BOOL LeftMouseDown(int wParam)
}
}
} else {
if (!talkflag && !dropGoldFlag && !gmenu_exception())
if (!talkflag && !dropGoldFlag && !gmenu_is_active())
CheckInvScrn();
DoPanBtn();
if (pcurs > CURSOR_HAND && pcurs < CURSOR_FIRSTITEM)
@ -946,7 +946,7 @@ void LeftMouseUp()
void RightMouseDown()
{
if (!gmenu_exception() && sgnTimeoutCurs == CURSOR_NONE && PauseMode != 2 && !plr[myplr]._pInvincible) {
if (!gmenu_is_active() && sgnTimeoutCurs == CURSOR_NONE && PauseMode != 2 && !plr[myplr]._pInvincible) {
if (doomflag) {
doom_close();
} else if (!stextflag) {
@ -969,7 +969,7 @@ void RightMouseDown()
BOOL PressSysKey(int wParam)
{
if (gmenu_exception() || wParam != VK_F10)
if (gmenu_is_active() || wParam != VK_F10)
return FALSE;
diablo_hotkey_msg(1);
return TRUE;
@ -1037,7 +1037,7 @@ void PressKey(int vkey)
if (vkey == VK_ESCAPE) {
if (!PressEscKey()) {
track_repeat_walk(FALSE);
gamemenu_previous();
gamemenu_on();
}
return;
}
@ -1225,7 +1225,7 @@ void diablo_pause_game()
/* NOTE: `return` must be used instead of `break` to be bin exact as C++ */
void PressChar(int vkey)
{
if (gmenu_exception() || control_talk_last_key(vkey) || sgnTimeoutCurs != 0 || deathflag) {
if (gmenu_is_active() || control_talk_last_key(vkey) || sgnTimeoutCurs != 0 || deathflag) {
return;
}
if ((char)vkey == 'p' || (char)vkey == 'P') {
@ -1831,12 +1831,12 @@ void game_logic()
if (PauseMode == 1) {
PauseMode = 2;
}
if (gbMaxPlayers == 1 && gmenu_exception()) {
if (gbMaxPlayers == 1 && gmenu_is_active()) {
force_redraw |= 1;
return;
}
if (!gmenu_exception() && sgnTimeoutCurs == 0) {
if (!gmenu_is_active() && sgnTimeoutCurs == 0) {
CheckCursMove();
track_process();
}

2
Source/error.cpp

@ -127,7 +127,7 @@ void DrawDiabloMsg()
for (i = 0; i < len; i++) {
c = fontframe[gbFontTransTbl[(BYTE)tempstr[i]]];
if (c != '\0') {
CPrintString(off, c, COL_GOLD);
PrintChar(off, c, COL_GOLD);
}
off += fontkern[c] + 1;
}

26
Source/gamemenu.cpp

@ -28,7 +28,7 @@ TMenuItem sgOptionsMenu[6] = {
{ GMENU_ENABLED | GMENU_SLIDER, NULL, &gamemenu_sound_volume },
{ GMENU_ENABLED | GMENU_SLIDER, "Gamma", &gamemenu_gamma },
{ GMENU_ENABLED , NULL, &gamemenu_color_cycling },
{ GMENU_ENABLED , "Previous Menu", &j_gamemenu_previous },
{ GMENU_ENABLED , "Previous Menu", &gamemenu_previous },
{ GMENU_ENABLED , NULL, NULL }
// clang-format on
};
@ -36,23 +36,23 @@ char *music_toggle_names[] = { "Music", "Music Disabled" };
char *sound_toggle_names[] = { "Sound", "Sound Disabled" };
char *color_cycling_toggle_names[] = { "Color Cycling Off", "Color Cycling On" };
void gamemenu_previous()
void gamemenu_on()
{
void (*proc)(TMenuItem *);
TMenuItem *item;
if (gbMaxPlayers == 1) {
proc = gamemenu_enable_single;
proc = gamemenu_update_single;
item = sgSingleMenu;
} else {
proc = gamemenu_enable_multi;
proc = gamemenu_update_multi;
item = sgMultiMenu;
}
gmenu_call_proc(item, proc);
gmenu_set_items(item, proc);
PressEscKey();
}
void gamemenu_enable_single(TMenuItem *pMenuItems)
void gamemenu_update_single(TMenuItem *pMenuItems)
{
BOOL enable;
@ -65,27 +65,27 @@ void gamemenu_enable_single(TMenuItem *pMenuItems)
gmenu_enable(sgSingleMenu, enable);
}
void gamemenu_enable_multi(TMenuItem *pMenuItems)
void gamemenu_update_multi(TMenuItem *pMenuItems)
{
gmenu_enable(&sgMultiMenu[2], deathflag);
}
void gamemenu_off()
{
gmenu_call_proc(0, NULL);
gmenu_set_items(0, NULL);
}
void gamemenu_handle_previous()
{
if (gmenu_exception())
if (gmenu_is_active())
gamemenu_off();
else
gamemenu_previous();
gamemenu_on();
}
void j_gamemenu_previous(BOOL bActivate)
void gamemenu_previous(BOOL bActivate)
{
gamemenu_previous();
gamemenu_on();
}
void gamemenu_new_game(BOOL bActivate)
@ -166,7 +166,7 @@ void gamemenu_options(BOOL bActivate)
gamemenu_get_sound();
gamemenu_get_gamma();
gamemenu_get_color_cycling();
gmenu_call_proc(sgOptionsMenu, NULL);
gmenu_set_items(sgOptionsMenu, NULL);
}
void gamemenu_get_music()

8
Source/gamemenu.h

@ -2,12 +2,12 @@
#ifndef __GAMEMENU_H__
#define __GAMEMENU_H__
void gamemenu_previous();
void gamemenu_enable_single(TMenuItem *pMenuItems);
void gamemenu_enable_multi(TMenuItem *pMenuItems);
void gamemenu_on();
void gamemenu_update_single(TMenuItem *pMenuItems);
void gamemenu_update_multi(TMenuItem *pMenuItems);
void gamemenu_off();
void gamemenu_handle_previous();
void j_gamemenu_previous(BOOL bActivate);
void gamemenu_previous(BOOL bActivate);
void gamemenu_new_game(BOOL bActivate);
void gamemenu_quit_game(BOOL bActivate);
void gamemenu_load_game(BOOL bActivate);

12
Source/gmenu.cpp

@ -84,12 +84,12 @@ void gmenu_init_menu()
optbar_cel = LoadFileInMem("Data\\optbar.CEL", NULL);
}
BOOL gmenu_exception()
BOOL gmenu_is_active()
{
return sgpCurrentMenu != 0;
}
void gmenu_call_proc(TMenuItem *pItem, void (*gmFunc)(TMenuItem *))
void gmenu_set_items(TMenuItem *pItem, void (*gmFunc)(TMenuItem *))
{
int i;
@ -238,7 +238,7 @@ BOOL gmenu_presskeys(int vkey)
break;
case VK_ESCAPE:
PlaySFX(IS_TITLEMOV);
gmenu_call_proc(0, 0);
gmenu_set_items(0, 0);
break;
case VK_SPACE:
return FALSE;
@ -285,7 +285,7 @@ BOOL gmenu_on_mouse_move()
if (!mouseNavigation)
return FALSE;
gmenu_valid_mouse_pos(&step);
gmenu_get_mouse_slider(&step);
nSteps = (int)(sgpCurrItem->dwFlags & 0xFFF000) >> 12;
step *= nSteps;
step /= 256;
@ -296,7 +296,7 @@ BOOL gmenu_on_mouse_move()
return TRUE;
}
BOOLEAN gmenu_valid_mouse_pos(int *plOffset)
BOOLEAN gmenu_get_mouse_slider(int *plOffset)
{
*plOffset = 282;
if (MouseX < 282 + PANEL_LEFT) {
@ -353,7 +353,7 @@ BOOL gmenu_left_mouse(BOOL isDown)
sgpCurrItem = pItem;
PlaySFX(IS_TITLEMOV);
if (pItem->dwFlags & GMENU_SLIDER) {
mouseNavigation = gmenu_valid_mouse_pos(&dummy);
mouseNavigation = gmenu_get_mouse_slider(&dummy);
gmenu_on_mouse_move();
} else {
sgpCurrItem->fnMenu(TRUE);

6
Source/gmenu.h

@ -17,8 +17,8 @@ void gmenu_draw_pause();
void gmenu_print_text(int x, int y, char *pszStr);
void FreeGMenu();
void gmenu_init_menu();
BOOL gmenu_exception();
void gmenu_call_proc(TMenuItem *pItem, void (*gmFunc)(TMenuItem *));
BOOL gmenu_is_active();
void gmenu_set_items(TMenuItem *pItem, void (*gmFunc)(TMenuItem *));
void gmenu_up_down(BOOL isDown);
void gmenu_draw();
void gmenu_draw_menu_item(TMenuItem *pItem, int y);
@ -27,7 +27,7 @@ int gmenu_get_lfont(TMenuItem *pItem);
BOOL gmenu_presskeys(int vkey);
void gmenu_left_right(BOOL isRight);
BOOL gmenu_on_mouse_move();
BOOLEAN gmenu_valid_mouse_pos(int *plOffset);
BOOLEAN gmenu_get_mouse_slider(int *plOffset);
BOOL gmenu_left_mouse(BOOL isDown);
void gmenu_enable(TMenuItem *pMenuItem, BOOL enable);
void gmenu_slider_set(TMenuItem *pItem, int min, int max, int gamma);

2
Source/help.cpp

@ -545,7 +545,7 @@ void DrawHelpLine(int always_0, int help_line_nr, char *text, char color)
width += fontkern[c] + 1;
if (c) {
if (width <= 577)
CPrintString(off, c, color);
PrintChar(off, c, color);
}
off += fontkern[c] + 1;
}

2
Source/inv.cpp

@ -451,7 +451,7 @@ void DrawInvBelt()
&& plr[myplr].SpdList[i]._itype != ITYPE_GOLD) {
fi = i + 49;
ff = fontframe[gbFontTransTbl[fi]];
CPrintString(InvRect[i + SLOTXY_BELT_FIRST].X + SCREEN_X + PitchTbl[InvRect[i + SLOTXY_BELT_FIRST].Y + SCREEN_Y - 1] - fontkern[ff] + 28, ff, 0);
PrintChar(InvRect[i + SLOTXY_BELT_FIRST].X + SCREEN_X + PitchTbl[InvRect[i + SLOTXY_BELT_FIRST].Y + SCREEN_Y - 1] - fontkern[ff] + 28, ff, 0);
}
}
}

2
Source/items.cpp

@ -2942,7 +2942,7 @@ void PrintUString(int x, int y, BOOL cjustflag, char *str, int col)
c = fontframe[gbFontTransTbl[(BYTE)str[i]]];
k += fontkern[c] + 1;
if (c && k <= 257) {
CPrintString(off, c, col);
PrintChar(off, c, col);
}
off += fontkern[c] + 1;
}

2
Source/player.cpp

@ -2968,7 +2968,7 @@ BOOL PM_DoDeath(int pnum)
if (deathdelay == 1) {
deathflag = TRUE;
if (gbMaxPlayers == 1) {
gamemenu_previous();
gamemenu_on();
}
}
}

2
Source/plrmsg.cpp

@ -133,7 +133,7 @@ void PrintPlrMsg(DWORD x, DWORD y, DWORD width, const char *str, BYTE col)
c = gbFontTransTbl[(BYTE)*str++];
c = fontframe[c];
if (c)
CPrintString(screen, c, col);
PrintChar(screen, c, col);
screen += fontkern[c] + 1;
}

2
Source/quests.cpp

@ -720,7 +720,7 @@ void PrintQLString(int x, int y, BOOL cjustflag, char *str, int col)
c = fontframe[gbFontTransTbl[(BYTE)str[i]]];
k += fontkern[c] + 1;
if (c && k <= 257) {
CPrintString(off, c, col);
PrintChar(off, c, col);
}
off += fontkern[c] + 1;
}

4
Source/scrollrt.cpp

@ -2898,7 +2898,7 @@ void DrawAndBlit()
T_DrawView(ViewX, ViewY);
}
if (ctrlPan) {
ClearCtrlPan();
DrawCtrlPan();
}
if (drawhpflag) {
UpdateLifeFlask();
@ -2907,7 +2907,7 @@ void DrawAndBlit()
UpdateManaFlask();
}
if (drawbtnflag) {
DrawCtrlPan();
DrawCtrlBtns();
}
if (drawsbarflag) {
DrawInvBelt();

4
Source/stores.cpp

@ -173,7 +173,7 @@ void PrintSString(int x, int y, BOOL cjustflag, char *str, char col, int val)
c = fontframe[gbFontTransTbl[(BYTE)str[i]]];
k += fontkern[c] + 1;
if (c && k <= yy) {
CPrintString(off, c, col);
PrintChar(off, c, col);
}
off += fontkern[c] + 1;
}
@ -184,7 +184,7 @@ void PrintSString(int x, int y, BOOL cjustflag, char *str, char col, int val)
c = fontframe[gbFontTransTbl[(BYTE)valstr[i]]];
off -= fontkern[c] + 1;
if (c) {
CPrintString(off, c, col);
PrintChar(off, c, col);
}
}
}

28
comparer-config/diablo.toml

@ -153,7 +153,7 @@ addr = 0x401FBD
size = 0x276
[[func]]
name = "DrawAutomapType"
name = "DrawAutomapTile"
addr = 0x402233
size = 0x745
@ -168,7 +168,7 @@ addr = 0x402D83
size = 0xC7
[[func]]
name = "DrawAutomapGame"
name = "DrawAutomapText"
addr = 0x402E4A
size = 0xDD
@ -273,7 +273,7 @@ addr = 0x404017
size = 0xC3
[[func]]
name = "CPrintString"
name = "PrintChar"
addr = 0x4040DA
size = 0x13E
@ -333,12 +333,12 @@ addr = 0x404616
size = 0x31E
[[func]]
name = "ClearCtrlPan"
name = "DrawCtrlPan"
addr = 0x404934
size = 0x25
[[func]]
name = "DrawCtrlPan"
name = "DrawCtrlBtns"
addr = 0x404959
size = 0xB1
@ -393,12 +393,12 @@ addr = 0x4052C8
size = 0x289
[[func]]
name = "control_draw_info_str"
name = "PrintInfo"
addr = 0x405551
size = 0x6B
[[func]]
name = "control_print_info_str"
name = "CPrintString"
addr = 0x4055BC
size = 0xC5
@ -2078,17 +2078,17 @@ addr = 0x418860
size = 0x6
[[func]]
name = "gamemenu_previous"
name = "gamemenu_on"
addr = 0x418866
size = 0x29
[[func]]
name = "gamemenu_enable_single"
name = "gamemenu_update_single"
addr = 0x41888F
size = 0x39
[[func]]
name = "gamemenu_enable_multi"
name = "gamemenu_update_multi"
addr = 0x4188C8
size = 0x10
@ -2103,7 +2103,7 @@ addr = 0x4188E1
size = 0x13
[[func]]
name = "j_gamemenu_previous"
name = "gamemenu_previous"
addr = 0x4188F4
size = 0x5
@ -2323,12 +2323,12 @@ addr = 0x419F70
size = 0x78
[[func]]
name = "gmenu_exception"
name = "gmenu_is_active"
addr = 0x419FE8
size = 0xC
[[func]]
name = "gmenu_call_proc"
name = "gmenu_set_items"
addr = 0x419FF4
size = 0x5A
@ -2373,7 +2373,7 @@ addr = 0x41A37A
size = 0x58
[[func]]
name = "gmenu_valid_mouse_pos"
name = "gmenu_get_mouse_slider"
addr = 0x41A3D2
size = 0x2F

28
comparer-config/spawn.toml

@ -153,7 +153,7 @@ addr = 0x401FBD
size = 0x276
[[func]]
name = "DrawAutomapType"
name = "DrawAutomapTile"
addr = 0x402233
size = 0x745
@ -168,7 +168,7 @@ addr = 0x402D83
size = 0xC7
[[func]]
name = "DrawAutomapGame"
name = "DrawAutomapText"
addr = 0x402E4A
size = 0xDD
@ -273,7 +273,7 @@ addr = 0x404017
size = 0xC3
[[func]]
name = "CPrintString"
name = "PrintChar"
addr = 0x4040DA
size = 0x13E
@ -333,12 +333,12 @@ addr = 0x404616
size = 0x2FC
[[func]]
name = "ClearCtrlPan"
name = "DrawCtrlPan"
addr = 0x404912
size = 0x25
[[func]]
name = "DrawCtrlPan"
name = "DrawCtrlBtns"
addr = 0x404937
size = 0xB1
@ -393,12 +393,12 @@ addr = 0x4052A6
size = 0x289
[[func]]
name = "control_draw_info_str"
name = "PrintInfo"
addr = 0x40552F
size = 0x6B
[[func]]
name = "control_print_info_str"
name = "CPrintString"
addr = 0x40559A
size = 0xC5
@ -1548,17 +1548,17 @@ addr = 0x4106D0
size = 0x6
[[func]]
name = "gamemenu_previous"
name = "gamemenu_on"
addr = 0x4106D6
size = 0x29
[[func]]
name = "gamemenu_enable_single"
name = "gamemenu_update_single"
addr = 0x4106FF
size = 0x39
[[func]]
name = "gamemenu_enable_multi"
name = "gamemenu_update_multi"
addr = 0x410738
size = 0x10
@ -1573,7 +1573,7 @@ addr = 0x410751
size = 0x13
[[func]]
name = "j_gamemenu_previous"
name = "gamemenu_previous"
addr = 0x410764
size = 0x5
@ -1763,12 +1763,12 @@ addr = 0x4115EC
size = 0x78
[[func]]
name = "gmenu_exception"
name = "gmenu_is_active"
addr = 0x411664
size = 0xC
[[func]]
name = "gmenu_call_proc"
name = "gmenu_set_items"
addr = 0x411670
size = 0x5A
@ -1813,7 +1813,7 @@ addr = 0x4119F6
size = 0x58
[[func]]
name = "gmenu_valid_mouse_pos"
name = "gmenu_get_mouse_slider"
addr = 0x411A4E
size = 0x2F

Loading…
Cancel
Save