mirror of
https://github.com/kwsch/NHSE.git
synced 2026-04-19 23:17:24 -05:00
32 lines
1.0 KiB
C#
32 lines
1.0 KiB
C#
using System;
|
|
|
|
namespace NHSE.Core;
|
|
|
|
/// <summary>
|
|
/// Offset info and object retrieval logic for <see cref="Personal"/>
|
|
/// </summary>
|
|
public abstract class WhereAreNOffsets
|
|
{
|
|
public abstract int Poki { get; }
|
|
|
|
public static WhereAreNOffsets GetOffsets(FileHeaderInfo Info)
|
|
{
|
|
var rev = Info.GetKnownRevisionIndex();
|
|
return rev switch
|
|
{
|
|
22 => new WhereAreNOffsets20(),
|
|
23 => new WhereAreNOffsets20(),
|
|
24 => new WhereAreNOffsets20(),
|
|
25 => new WhereAreNOffsets20(),
|
|
26 => new WhereAreNOffsets20(),
|
|
27 => new WhereAreNOffsets20(),
|
|
28 => new WhereAreNOffsets20(),
|
|
29 => new WhereAreNOffsets20(),
|
|
30 => new WhereAreNOffsets20(),
|
|
31 => new WhereAreNOffsets20(),
|
|
32 => new WhereAreNOffsets20(),
|
|
33 => new WhereAreNOffsets20(),
|
|
_ => throw new IndexOutOfRangeException("Unknown revision!" + Environment.NewLine + Info),
|
|
};
|
|
}
|
|
} |