@@ -12,43 +12,33 @@ public sealed class ModInfo
12
12
public IModVersion Version { get ; private set ; }
13
13
public string Website { get ; private set ; }
14
14
15
- public ModInfo ( global ::Mod mod ) : this ( mod . Path , mod . Name , mod . DisplayName , mod . Description , mod . Author , Parse ( mod . Version ) , mod . Website )
15
+ public ModInfo ( global ::Mod mod ) : this ( mod . Path , mod . Name , mod . DisplayName , mod . Description , mod . Author , new ModVersion ( mod . Version ) , mod . Website )
16
16
{
17
17
}
18
18
19
19
public ModInfo ( string path , string name , string displayName , string description , string author , IModVersion version , string website )
20
20
{
21
21
this . Path = path ;
22
22
this . Name = name ;
23
- this . DisplayName = displayName ;
23
+ this . DisplayName = string . IsNullOrEmpty ( displayName ) ? name : displayName ;
24
24
this . Description = description ;
25
25
this . Author = author ;
26
26
this . Version = version ;
27
27
this . Website = website ;
28
28
}
29
29
30
- private static IModVersion Parse ( System . Version version )
30
+ private sealed class ModVersion : IModVersion
31
31
{
32
- if ( version != null )
33
- {
34
- IModVersion modVersion = SemVer . Parse ( version . ToString ( ) ) ;
35
-
36
- if ( modVersion == null )
37
- modVersion = SemVer . Parse ( $ "{ version . Major } .{ version . Minor } .{ version . Build } -rev.{ version . Revision } ") ;
32
+ private readonly System . Version version ;
38
33
39
- return modVersion ;
40
- }
41
- else
34
+ public ModVersion ( System . Version version )
42
35
{
43
- return new UndefinedModVersion ( ) ;
36
+ this . version = version ;
44
37
}
45
- }
46
38
47
- private sealed class UndefinedModVersion : IModVersion
48
- {
49
39
public override string ToString ( )
50
40
{
51
- return "Undefined" ;
41
+ return this . version != null ? this . version . ToString ( ) : "Undefined" ;
52
42
}
53
43
}
54
44
}
0 commit comments