protected override void SubtypeWrite(DSBinaryWriter bin) { bin.Write(SubUnk1); bin.Write(SUB_CONST_1); bin.Write(SUB_CONST_2); bin.Write(SUB_CONST_3); Match match = Regex.Match(MapName.ToLower(), @"^m(\d\d|xx)_(\d\d|xx)_(\d\d|xx)_(\d\d|xx)$"); if (!match.Success) { InvalidNameException(); } string ms1 = match.Groups[1].Value.ToUpper(); string ms2 = match.Groups[2].Value.ToUpper(); string ms3 = match.Groups[3].Value.ToUpper(); string ms4 = match.Groups[4].Value.ToUpper(); sbyte m1 = (sbyte)(ms1 == "XX" ? -1 : sbyte.Parse(ms1)); sbyte m2 = (sbyte)(ms2 == "XX" ? -1 : sbyte.Parse(ms2)); sbyte m3 = (sbyte)(ms3 == "XX" ? -1 : sbyte.Parse(ms3)); sbyte m4 = (sbyte)(ms4 == "XX" ? -1 : sbyte.Parse(ms4)); bin.Write(m1); bin.Write(m2); bin.Write(m3); bin.Write(m4); bin.Write(SUB_CONST_4); bin.Write(SUB_CONST_5); }
public override bool Equals(object obj) { IStatsData stats = obj as IStatsData; if (stats != null) { return(GameFileID == stats.GameFileID && KillCount == stats.KillCount && TotalKills == stats.TotalKills && SecretCount == stats.SecretCount && TotalSecrets == stats.TotalSecrets && ItemCount == stats.ItemCount && TotalItems == stats.TotalItems && LevelTime == stats.LevelTime && MapName.ToLower() == stats.MapName.ToLower()); } return(false); }
public override int GetHashCode() { return(string.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8}", GameFileID, KillCount, TotalKills, SecretCount, TotalSecrets, ItemCount, TotalItems, LevelTime, MapName.ToLower()).GetHashCode()); }