diff options
author | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2008-08-30 18:12:06 +0000 |
---|---|---|
committer | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2008-08-30 18:12:06 +0000 |
commit | 5f11f9f3e328f6818a42f0a3405404612399c64e (patch) | |
tree | 66f4cfcde3c1d4b0564ba47aceeb2d04082a7dfb /Game/Code/Screens/UScreenStatMain.pas | |
parent | d4ec88adaa7a93d1970c116ae3d621ff05683681 (diff) | |
download | usdx-5f11f9f3e328f6818a42f0a3405404612399c64e.tar.gz usdx-5f11f9f3e328f6818a42f0a3405404612399c64e.tar.xz usdx-5f11f9f3e328f6818a42f0a3405404612399c64e.zip |
Removed outdated 1.1 branch contents
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/1.1@1331 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Game/Code/Screens/UScreenStatMain.pas')
-rw-r--r-- | Game/Code/Screens/UScreenStatMain.pas | 288 |
1 files changed, 0 insertions, 288 deletions
diff --git a/Game/Code/Screens/UScreenStatMain.pas b/Game/Code/Screens/UScreenStatMain.pas deleted file mode 100644 index 53154d6e..00000000 --- a/Game/Code/Screens/UScreenStatMain.pas +++ /dev/null @@ -1,288 +0,0 @@ -unit UScreenStatMain; - -interface - -{$IFDEF FPC} - {$MODE Delphi} -{$ENDIF} - -{$I switches.inc} - -uses - UMenu, - SDL, - SysUtils, - UDisplay, - UMusic, - UIni, - UThemes; - -type - TScreenStatMain = class(TMenu) - private - //Some Stat Value that don't need to be calculated 2 times - SongswithVid: Cardinal; - public - TextOverview: integer; - constructor Create; override; - function ParseInput(PressedKey: Cardinal; ScanCode: byte; PressedDown: Boolean): Boolean; override; - procedure onShow; override; - procedure SetAnimationProgress(Progress: real); override; - - procedure SetOverview; - end; - -implementation - -uses UGraphic, - UDataBase, - USongs, - USong, - ULanguage, - UCommon, - {$IFDEF win32} - windows, - {$ELSE} - sysconst, - {$ENDIF} - ULog; - -function TScreenStatMain.ParseInput(PressedKey: Cardinal; ScanCode: byte; PressedDown: Boolean): Boolean; -begin - Result := true; - If (PressedDown) Then - begin // Key Down - case PressedKey of - SDLK_Q: - begin - Result := false; - end; - - SDLK_ESCAPE, - SDLK_BACKSPACE : - begin - Ini.Save; - AudioPlayback.PlaySound(SoundLib.Back); - FadeTo(@ScreenMain); - end; - SDLK_RETURN: - begin - //Exit Button Pressed - if Interaction = 4 then - begin - AudioPlayback.PlaySound(SoundLib.Back); - FadeTo(@ScreenMain); - end - else //One of the Stats Buttons Pressed - begin - AudioPlayback.PlaySound(SoundLib.Back); - ScreenStatDetail.Typ := Interaction; - FadeTo(@ScreenStatDetail); - end; - end; - SDLK_LEFT: - begin - InteractPrev; - end; - SDLK_RIGHT: - begin - InteractNext; - end; - SDLK_UP: - begin - InteractPrev; - end; - SDLK_DOWN: - begin - InteractNext; - end; - end; - end; -end; - -constructor TScreenStatMain.Create; -var - I: integer; -begin - inherited Create; - - TextOverview := AddText(Theme.StatMain.TextOverview); - - LoadFromTheme(Theme.StatMain); - - AddButton(Theme.StatMain.ButtonScores); - if (Length(Button[0].Text)=0) then - AddButtonText(14, 20, Theme.StatDetail.Description[0]); - - AddButton(Theme.StatMain.ButtonSingers); - if (Length(Button[1].Text)=0) then - AddButtonText(14, 20, Theme.StatDetail.Description[1]); - - AddButton(Theme.StatMain.ButtonSongs); - if (Length(Button[2].Text)=0) then - AddButtonText(14, 20, Theme.StatDetail.Description[2]); - - AddButton(Theme.StatMain.ButtonBands); - if (Length(Button[3].Text)=0) then - AddButtonText(14, 20, Theme.StatDetail.Description[3]); - - AddButton(Theme.StatMain.ButtonExit); - if (Length(Button[4].Text)=0) then - AddButtonText(14, 20, Theme.Options.Description[4]); - - Interaction := 0; - - //Set Songs with Vid - SongswithVid := 0; - For I := 0 to Songs.SongList.Count -1 do - if (TSong(Songs.SongList[I]).Video <> '') then - Inc(SongswithVid); -end; - -procedure TScreenStatMain.onShow; -begin - //Set Overview Text: - SetOverview; -end; - -procedure TScreenStatMain.SetOverview; -type - TwSystemTime = record - wYear, - wMonth, - wDayOfWeek, - wDay, - wHour, - wMinute, - wSecond, - wMilliseconds: Word; - end; -var - Overview, Formatstr: String; - I: Integer; - //Some Vars to Save Attributes to - A1, A2, A3: Integer; - A4, A5: String; - Result1, Result2: AStatResult; - ResetTime: TSystemTime; - - {$IFDEF MSWINDOWS} - function GetFileCreation(Filename: String): TSystemTime; - var - FindData: TWin32FindData; - Handle: THandle; - begin - Handle := FindFirstFile(PChar(Filename), FindData); - if Handle <> INVALID_HANDLE_VALUE then - begin - FileTimeToSystemTime(FindData.ftCreationTime, Result); - windows.FindClose(Handle); - end; - end; - - {$ELSE} - - function GetFileCreation(Filename: String): TSystemTime; - Var - F,D : Longint; - Begin - F:=FileCreate( Filename ); - try - D:=FileGetDate(F); - DateTimeToSystemTime( FileDateToDateTime(D) , result); - finally - FileClose(F); - end; - end; - {$ENDIF} - -begin - //Song Overview - - //Introduction - Formatstr := Language.Translate ('STAT_OVERVIEW_INTRO'); - (*Format: - %0:d Ultrastar Version - %1:d Day of Reset (A1) - %2:d Month of Reset (A2) - %3:d Year of Reset (A3)*) - - ResetTime := GetFileCreation(Database.Filename); - - {$IFDEF MSWINDOWS} - A1 := ResetTime.wDay; - A2 := ResetTime.wMonth; - A3 := ResetTime.wYear; - {$ELSE} - A1 := ResetTime.Day; - A2 := ResetTime.Month; - A3 := ResetTime.Year; - {$ENDIF} - - - try - Overview := Format(Formatstr, [Language.Translate('US_VERSION'), A1, A2, A3]); - except - on E: EConvertError do - Log.LogError('Error Parsing FormatString "STAT_OVERVIEW_INTRO": ' + E.Message); - end; - - Formatstr := Language.Translate ('STAT_OVERVIEW_SONG'); - {Format: - %0:d Count Songs (A1) - %1:d Count of Sung Songs (A2) - %2:d Count of UnSung Songs - %3:d Count of Songs with Video (A3) - %4:s Name of the most popular Song} - A1 := Songs.SongList.Count; - A2 := Database.GetTotalEntrys(2); - - A3 := SongswithVid; - - SetLength(Result1, 1); - Database.GetStats(Result1, 2, 1, 0, False); - A4 := Result1[0].Artist; - A5 := Result1[0].Title; - - try - Overview := Overview + '\n \n' + Format(Formatstr, [A1, A2, A1-A2, A3, A4, A5]); - except - on E: EConvertError do - Log.LogError('Error Parsing FormatString "STAT_OVERVIEW_SONG": ' + E.Message); - end; - - //Player Overview - Formatstr := Language.Translate ('STAT_OVERVIEW_PLAYER'); - {Format: - %0:d Count Players (A1) - %1:s Best Player (Result) - %2:d Best Players Score - %3:s Best Score Player (Result2) - %4:d Best Score} - A1 := Database.GetTotalEntrys(1); - - SetLength(Result1, 1); - Database.GetStats(Result1, 1, 1, 0, False); - - SetLength(Result2, 1); - Database.GetStats(Result2, 0, 1, 0, False); - - try - Overview := Overview + '\n \n' + Format(Formatstr, [A1, Result1[0].Player, Result1[0].AverageScore, Result2[0].Singer, Result2[0].Score]); - except - on E: EConvertError do - Log.LogError('Error Parsing FormatString "STAT_OVERVIEW_PLAYER": ' + E.Message); - end; - - Text[0].Text := Overview; -end; - - -procedure TScreenStatMain.SetAnimationProgress(Progress: real); -var I: Integer; -begin - For I := 0 to high(Button) do - Button[I].Texture.ScaleW := Progress; -end; - -end. |