diff --git a/polymer/build/src/cache1d.c b/polymer/build/src/cache1d.c index 9ddeebe38..181173053 100644 --- a/polymer/build/src/cache1d.c +++ b/polymer/build/src/cache1d.c @@ -918,7 +918,8 @@ CACHE1D_FIND_REC *klistpath(const char *_path, const char *mask, int type) searchpath_t *search = NULL; BDIR *dir; struct Bdirent *dirent; - const char *d = "."; + // Adjusted for the following "autoload" dir fix - NY00123 + const char *d = "./"; int stackdepth = CACHE1D_SOURCE_CURDIR; char buf[BMAX_PATH]; @@ -928,9 +929,10 @@ CACHE1D_FIND_REC *klistpath(const char *_path, const char *mask, int type) { if (!pathsearchmode) { - strcpy(buf, path); + // Fix for "autoload" dir in multi-user environments - NY00123 + strcpy(buf, d); + strcat(buf, path); if (*path) strcat(buf, "/"); - strcat(buf, d); } else strcpy(buf, d); dir = Bopendir(buf); diff --git a/polymer/build/src/mmulti.c b/polymer/build/src/mmulti.c index 0ce7d180b..d1ec092b4 100644 --- a/polymer/build/src/mmulti.c +++ b/polymer/build/src/mmulti.c @@ -898,7 +898,6 @@ int getexternaladdress(char *buffer, const char *host, int port) closesocket(mysock); j = Bstrlen(text); for (i=Bstrlen(tempbuf);i>0;i--) - { if (!Bstrncmp(&tempbuf[i], text, j)) { i += j; @@ -911,7 +910,6 @@ int getexternaladdress(char *buffer, const char *host, int port) ipaddr[j++] = '\0'; break; } - } Bmemcpy(buffer,&ipaddr,j); return(1); } diff --git a/polymer/eduke32/source/game.c b/polymer/eduke32/source/game.c index c6d0c1ec9..fa5f37c69 100644 --- a/polymer/eduke32/source/game.c +++ b/polymer/eduke32/source/game.c @@ -2357,9 +2357,9 @@ static void coolgaugetext(int snum) static void tics(void) { - #define AVERAGEFRAMES 128 - #define COLOR_RED 248 - #define COLOR_WHITE 31 +#define AVERAGEFRAMES 128 +#define COLOR_RED 248 +#define COLOR_WHITE 31 int i = totalclock; static int frameval[AVERAGEFRAMES], framecnt = 0; @@ -8518,10 +8518,8 @@ static void setup_rancid_net(const char *fn) Bstrcpy(tmp,strtok(tempbuf,".")); if (i == rancid_players && ((Bstrcmp(tmp,"192") == 0) || (Bstrcmp(tmp,"172") == 0) || (Bstrcmp(tmp,"169") == 0) || (Bstrcmp(tmp,"10") == 0))) { - int ii = getexternaladdress(tempbuf, "checkip.dyndns.org", 80); - - if (!ii) - ii = getexternaladdress(tempbuf, "checkip.dyndns.org", 8245); + int ii = getexternaladdress(tempbuf, "checkip.dyndns.org", 8245); + if (!ii) ii = getexternaladdress(tempbuf, "checkip.dyndns.org", 80); if (ii) { if (tempbuf[0]) diff --git a/polymer/eduke32/source/osdfuncs.c b/polymer/eduke32/source/osdfuncs.c index 099e5c13d..6905702df 100644 --- a/polymer/eduke32/source/osdfuncs.c +++ b/polymer/eduke32/source/osdfuncs.c @@ -72,23 +72,44 @@ int GAME_getrowheight(int w) return w>>3; } -void GAME_onshowosd(int shown) -{ - vscrn(); - if (numplayers == 1) - if ((shown && !ud.pause_on) || (!shown && ud.pause_on)) - KB_KeyDown[sc_Pause] = 1; -} - //#define BGTILE 311 //#define BGTILE 1156 #define BGTILE 1141 // BIGHOLE +#define BGTILE_SIZEX 128 +#define BGTILE_SIZEY 128 #define BORDTILE 3250 // VIEWBORDER #define BITSTH 1+32+8+16 // high translucency #define BITSTL 1+8+16 // low translucency #define BITS 8+16+64 // solid #define SHADE 16 #define PALETTE 4 + +void GAME_onshowosd(int shown) +{ + // fix for TCs like Layre which don't have the BGTILE for some reason + // most of this is copied from my dummytile stuff in defs.c + if (!tilesizx[BGTILE] || !tilesizy[BGTILE]) + { + extern char faketile[MAXTILES]; + int j; + + tilesizx[BGTILE] = BGTILE_SIZEX; + tilesizy[BGTILE] = BGTILE_SIZEY; + faketile[BGTILE] = 1; + picanm[BGTILE] = 0; + + j = 15; while ((j > 1) && (pow2long[j] > BGTILE_SIZEX)) j--; + picsiz[BGTILE] = ((char)j); + j = 15; while ((j > 1) && (pow2long[j] > BGTILE_SIZEY)) j--; + picsiz[BGTILE] += ((char)(j<<4)); + } + + vscrn(); + if (numplayers == 1) + if ((shown && !ud.pause_on) || (!shown && ud.pause_on)) + KB_KeyDown[sc_Pause] = 1; +} + void GAME_clearbackground(int c, int r) { int x, y, xsiz, ysiz, tx2, ty2; diff --git a/polymer/eduke32/source/player.c b/polymer/eduke32/source/player.c index 5cf1b6f28..ee7d147f7 100644 --- a/polymer/eduke32/source/player.c +++ b/polymer/eduke32/source/player.c @@ -3604,7 +3604,8 @@ void processinput(int snum) if (ud.config.ScreenWidth >= 800) adduserquote(tempbuf); else OSD_Printf("%s\n",tempbuf); - } else krand(); + } + else krand(); } else {