void XonoticMapList_draw(entity me)
{
if(me.startButton)
- me.startButton.disabled = ((me.selectedItem < 0) || (me.selectedItem >= me.nItems));
+ me.startButton.disabled = ((me.selectedItem < 0) || (me.selectedItem >= me.nItems)
+ || ((gamestatus & (GAME_ISSERVER | GAME_CONNECTED)) && cvar("g_campaign")));
SUPER(XonoticMapList).draw(me);
}
}
if(draw_PictureSize(strcat("/maps/", MapInfo_Map_bspname)) == '0 0 0')
- draw_Picture(me.columnPreviewOrigin * eX, "nopreview_map", me.columnPreviewSize * eX + eY, '1 1 1', theAlpha);
+ {
+ if(!draw_PictureExists(strcat("/levelshots/", MapInfo_Map_bspname)))
+ draw_Picture(me.columnPreviewOrigin * eX, "nopreview_map", me.columnPreviewSize * eX + eY, '1 1 1', theAlpha);
+ else
+ draw_Picture(me.columnPreviewOrigin * eX, strcat("/levelshots/", MapInfo_Map_bspname), me.columnPreviewSize * eX + eY, '1 1 1', theAlpha);
+ }
else
draw_Picture(me.columnPreviewOrigin * eX, strcat("/maps/", MapInfo_Map_bspname), me.columnPreviewSize * eX + eY, '1 1 1', theAlpha);
{
float i, n;
n = strlen(me.g_maplistCache);
- for (i = 0 ; i < n; i++)
+ for (i = 0 ; i < n; ++i)
{
if (!me.g_maplistCacheQuery(me, i))
me.g_maplistCacheToggle(me, i);
{
float i, n;
n = strlen(me.g_maplistCache);
- for (i = 0 ; i < n; i++)
+ for (i = 0 ; i < n; ++i)
{
if (me.g_maplistCacheQuery(me, i))
me.g_maplistCacheToggle(me, i);
if(MapInfo_FindName_firstResult >= 0)
me.setSelected(me, MapInfo_FindName_firstResult);
}
- else if(shift & S_CTRL && scan == 'f') // ctrl-f (as in "F"ind)
+ else if((shift & S_CTRL) && scan == 'f') // ctrl-f (as in "F"ind)
{
me.parent.setFocus(me.parent, me.stringFilterBox);
}
- else if(shift & S_CTRL && scan == 'u') // ctrl-u (remove stringFilter line
+ else if((shift & S_CTRL) && scan == 'u') // ctrl-u (remove stringFilter line
{
me.stringFilterBox.setText(me.stringFilterBox, "");
MapList_StringFilterBox_Change(me.stringFilterBox, me);