rott/kf_sources/KFMapVoteV2/Classes/MVMapInfoPage.uc
2026-07-14 20:27:09 +07:00

71 lines
1.8 KiB
Ucode

//====================================================================
// Modified by Marco
// ====================================================================
class MVMapInfoPage extends MapInfoPage;
function ReadMapInfo(string MapName)
{
local string mDesc;
local int Index;
local Material Screenie;
local LevelSummary LS;
if(MapName == "")
return;
if (!Controller.bCurMenuInitialized)
return;
MapName = StripMapName(MapName);
Index = FindCacheRecordIndex(MapName);
if( Index==-1 )
{
LS = LevelSummary(DynamicLoadObject(MapName$".LevelSummary",Class'LevelSummary'));
if( LS==None )
{
sb_Main.Caption = MapName;
l_NoPreview.SetVisibility(true);
i_MapImage.SetVisibility(false);
lb_MapDesc.SetContent("Map not found.");
l_MapAuthor.Caption = "";
return;
}
sb_Main.Caption = LS.Title;
Screenie = LS.Screenshot;
l_MapPlayers.Caption = LS.IdealPlayerCountMin@"-"@LS.IdealPlayerCountMax;
mDesc = LS.Description;
l_MapAuthor.Caption = AuthorText$":"@LS.Author;
}
else
{
if (Maps[Index].FriendlyName != "")
sb_Main.Caption = Maps[Index].FriendlyName;
else sb_Main.Caption = MapName;
if ( Maps[Index].ScreenshotRef != "" )
Screenie = Material(DynamicLoadObject(Maps[Index].ScreenshotRef, class'Material'));
l_MapPlayers.Caption = Maps[Index].PlayerCountMin@"-"@Maps[Index].PlayerCountMax@PlayerText;
mDesc = Maps[Index].Description;
}
i_MapImage.Image = Screenie;
l_NoPreview.SetVisibility( Screenie == None );
i_MapImage.SetVisibility( Screenie != None );
if (mDesc == "")
mDesc = MessageNoInfo;
lb_MapDesc.SetContent( mDesc );
if (Maps[Index].Author != "")
l_MapAuthor.Caption = AuthorText$":"@Maps[Index].Author;
else l_MapAuthor.Caption = "";
}
defaultproperties
{
}