mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-16 01:11:44 +00:00
Rename definegamename to setgamename and alter the "map" console command to show a listing of all available maps if no map name is given
git-svn-id: https://svn.eduke32.com/eduke32@987 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
63e5850a86
commit
da6b206673
6 changed files with 65 additions and 7 deletions
|
@ -43,6 +43,8 @@ char *OSD_GetFmt(char *ptr);
|
|||
char *OSD_GetTextPtr(void);
|
||||
char *OSD_GetFmtPtr(void);
|
||||
|
||||
int OSD_GetCols(void);
|
||||
|
||||
// initializes things
|
||||
void OSD_Init(void);
|
||||
|
||||
|
|
|
@ -194,6 +194,11 @@ char *OSD_GetFmt(char *ptr)
|
|||
return (ptr - &osdtext[0] + &osdfmt[0]);
|
||||
}
|
||||
|
||||
int OSD_GetCols(void)
|
||||
{
|
||||
return osdcols;
|
||||
}
|
||||
|
||||
int OSD_GetTextMode(void)
|
||||
{
|
||||
return osdtextmode;
|
||||
|
|
|
@ -464,7 +464,7 @@ const char *keyw[] =
|
|||
"loadmapstate", // 327
|
||||
"clearmapstate", // 328
|
||||
"scriptsize", // 329
|
||||
"definegamename", // 330
|
||||
"setgamename", // 330
|
||||
"cmenu", // 331
|
||||
"gettimedate", // 332
|
||||
"activatecheat", // 333
|
||||
|
@ -4554,7 +4554,7 @@ repeatcase:
|
|||
skill_names[j][i] = '\0';
|
||||
return 0;
|
||||
|
||||
case CON_DEFINEGAMENAME:
|
||||
case CON_SETGAMENAME:
|
||||
{
|
||||
char gamename[32];
|
||||
scriptptr--;
|
||||
|
|
|
@ -840,7 +840,7 @@ enum keywords
|
|||
CON_LOADMAPSTATE, // 327
|
||||
CON_CLEARMAPSTATE, // 328
|
||||
CON_SCRIPTSIZE, // 329
|
||||
CON_DEFINEGAMENAME, // 330
|
||||
CON_SETGAMENAME, // 330
|
||||
CON_CMENU, // 331
|
||||
CON_GETTIMEDATE, // 332
|
||||
CON_ACTIVATECHEAT, // 333
|
||||
|
|
|
@ -169,12 +169,63 @@ static int osdcmd_changelevel(const osdfuncparm_t *parm)
|
|||
return OSDCMD_OK;
|
||||
}
|
||||
|
||||
static CACHE1D_FIND_REC *findfiles = NULL;
|
||||
static int numfiles = 0;
|
||||
|
||||
static void clearfilenames(void)
|
||||
{
|
||||
klistfree(findfiles);
|
||||
findfiles = NULL;
|
||||
numfiles = 0;
|
||||
}
|
||||
|
||||
static int getfilenames(char *path)
|
||||
{
|
||||
CACHE1D_FIND_REC *r;
|
||||
|
||||
clearfilenames();
|
||||
findfiles = klistpath(path,"*.MAP",CACHE1D_FIND_FILE);
|
||||
for (r = findfiles; r; r=r->next) numfiles++;
|
||||
return(0);
|
||||
}
|
||||
|
||||
static int osdcmd_map(const osdfuncparm_t *parm)
|
||||
{
|
||||
int i;
|
||||
CACHE1D_FIND_REC *r;
|
||||
char filename[256];
|
||||
|
||||
if (parm->numparms != 1) return OSDCMD_SHOWHELP;
|
||||
if (parm->numparms != 1)
|
||||
{
|
||||
int maxwidth = 0;
|
||||
|
||||
getfilenames("/");
|
||||
|
||||
for (r=findfiles; r!=NULL; r=r->next)
|
||||
maxwidth = max((unsigned)maxwidth,Bstrlen(r->name));
|
||||
|
||||
if (maxwidth > 0)
|
||||
{
|
||||
int x = 0, count = 0;
|
||||
maxwidth += 3;
|
||||
OSD_Printf(OSDTEXT_RED "Map listing:\n");
|
||||
for (r=findfiles; r!=NULL; r=r->next)
|
||||
{
|
||||
OSD_Printf("%-*s",maxwidth,r->name);
|
||||
x += maxwidth;
|
||||
count++;
|
||||
if (x > OSD_GetCols() - maxwidth)
|
||||
{
|
||||
x = 0;
|
||||
OSD_Printf("\n");
|
||||
}
|
||||
}
|
||||
if (x) OSD_Printf("\n");
|
||||
OSD_Printf(OSDTEXT_RED "Found %d maps\n",numfiles);
|
||||
}
|
||||
|
||||
return OSDCMD_SHOWHELP;
|
||||
}
|
||||
|
||||
#if 0
|
||||
if (numplayers > 1)
|
||||
|
@ -1366,7 +1417,7 @@ int registerosdcommands(void)
|
|||
else
|
||||
{
|
||||
OSD_RegisterFunction("changelevel","changelevel <volume> <level>: warps to the given level", osdcmd_changelevel);
|
||||
OSD_RegisterFunction("map","map <mapfile>: loads the given user map", osdcmd_map);
|
||||
OSD_RegisterFunction("map","map <mapfile>: loads a map", osdcmd_map);
|
||||
}
|
||||
|
||||
OSD_RegisterFunction("addpath","addpath <path>: adds path to game filesystem", osdcmd_addpath);
|
||||
|
|
|
@ -49,14 +49,14 @@ static int done = -1, mode = TAB_CONFIG;
|
|||
static CACHE1D_FIND_REC *finddirs=NULL;
|
||||
static int numdirs=0;
|
||||
|
||||
void clearfilenames(void)
|
||||
static void clearfilenames(void)
|
||||
{
|
||||
klistfree(finddirs);
|
||||
finddirs = NULL;
|
||||
numdirs = 0;
|
||||
}
|
||||
|
||||
int getfilenames(char *path)
|
||||
static int getfilenames(char *path)
|
||||
{
|
||||
CACHE1D_FIND_REC *r;
|
||||
|
||||
|
|
Loading…
Reference in a new issue