aboutsummaryrefslogtreecommitdiffstats
path: root/Game/Code/Classes/UFiles.pas
diff options
context:
space:
mode:
authorbrunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c>2010-11-20 13:02:32 +0000
committerbrunzelchen <brunzelchen@b956fd51-792f-4845-bead-9b4dfca2ff2c>2010-11-20 13:02:32 +0000
commit9792c8c1af8dc0733e3851a2f094897590b25605 (patch)
treeff0bee074b8dd9af8bb36ef6e54abdb317a5d7e8 /Game/Code/Classes/UFiles.pas
parentfffb5a40133622131d7077f1d8842c2c6b7b51ad (diff)
downloadusdx-9792c8c1af8dc0733e3851a2f094897590b25605.tar.gz
usdx-9792c8c1af8dc0733e3851a2f094897590b25605.tar.xz
usdx-9792c8c1af8dc0733e3851a2f094897590b25605.zip
added sorting by year (decade)
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/1.0.1 Challenge MOD@2744 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Game/Code/Classes/UFiles.pas')
-rw-r--r--Game/Code/Classes/UFiles.pas16
1 files changed, 12 insertions, 4 deletions
diff --git a/Game/Code/Classes/UFiles.pas b/Game/Code/Classes/UFiles.pas
index d6ec4254..382f39ff 100644
--- a/Game/Code/Classes/UFiles.pas
+++ b/Game/Code/Classes/UFiles.pas
@@ -153,7 +153,7 @@ begin
SetLength(Song.Edition, 1);
Song.Edition[0] := 'Unknown';
Song.Language := 'Unknown'; //Language Patch
- Song.Year := '';
+ Song.Year := -1;
//Required Information
Song.Mp3 := '';
@@ -404,7 +404,15 @@ begin
//Year Sorting
else if (Identifier = 'YEAR') then
begin
- Song.Year := Value;
+ Len := -1;
+ if (Length(Value)<>4) then
+ Log.LogError('YEAR-tag does not has 4 Digits in Song: ' + Song.Path + Song.FileName)
+ else if (not TryStrtoInt(Value, Len)) then
+ Log.LogError('YEAR-tag is not a Number in Song: ' + Song.Path + Song.FileName)
+ else if (Len<1000) or (Len>9999) then
+ Log.LogError('YEAR-tag is too low or too high in Song: ' + Song.Path + Song.FileName)
+ else
+ Song.Year := Len;
end
// Song Start
@@ -499,7 +507,7 @@ begin
if lWarnIfTagsNotFound then
begin
- Log.LogError('File Incomplete or not Ultrastar TxT: ' + Song.FileName);
+ Log.LogError('File Incomplete or not Ultrastar TxT: ' + Song.Path + Song.FileName);
end;
break;
@@ -1216,7 +1224,7 @@ begin
for C := 0 to Length(Song.Genre) - 1 do
if Song.Genre[C] <> 'Unknown' then WriteLn(SongFile, '#GENRE:' + Song.Genre[C]);
- if Song.Year <> '' then WriteLn(SongFile, '#YEAR:' + Song.Year);
+ if (Song.Year <> -1) then WriteLn(SongFile, '#YEAR:' + IntToStr(Song.Year));