Example #1
0
 public int GetHashCodeOld()
 {
     unchecked
     {
         int result = (Title != null ? Title.GetHashCode() : 1);
         result = (result * 397) ^ (Subtitle != null ? Subtitle.GetHashCode() : 1);
         result = (result * 397) ^ (Artist != null ? Artist.GetHashCode() : 1);
         result = (result * 397) ^ BPMs.GetHashCode();
         foreach (var bpm in BPMs)
         {
             result = (result * 397) ^ bpm.Key.GetHashCode();
             result = (result * 397) ^ bpm.Value.GetHashCode();
         }
         foreach (var stop in Stops)
         {
             result = (result * 397) ^ stop.Key.GetHashCode();
             result = (result * 397) ^ stop.Value.GetHashCode();
         }
         foreach (var note in AddNotes)
         {
             result = (result * 397) ^ note.GetHashCode();
         }
         foreach (var note in RemoveNotes)
         {
             result = (result * 397) ^ note.GetHashCode();
         }
         foreach (var note in SuperNotes)
         {
             result = (result * 397) ^ note.GetHashCode();
         }
         result = (result * 397) ^ Offset.GetHashCode();
         result = (result * 397) ^ Length.GetHashCode();
         return(result);
     }
 }
Example #2
0
        public void Write(BinaryWriter w)
        {
            BPMs.Write(w);
            Phrases.Write(w);
            Chords.Write(w);
            ChordNotes.Write(w);
            Vocals.Write(w);

            if (Vocals.Count > 0)
            {
                SymbolsHeader.Write(w);
                SymbolsTexture.Write(w);
                SymbolsDefinition.Write(w);
            }

            PhraseIterations.Write(w);
            PhraseExtraInfo.Write(w);
            NLD.Write(w);
            Actions.Write(w);
            Events.Write(w);
            Tones.Write(w);
            DNAs.Write(w);
            Sections.Write(w);
            Arrangements.Write(w);
            Meta.Write(w);
        }
Example #3
0
        public override bool Equals(object obj)
        {
            var chart = obj as Chart;

            if (chart == null)
            {
                return(false);
            }

            return(
                KeyCount == chart.KeyCount &&
                BPMs.Equals(chart.BPMs) &&
                Objects.Equals(chart.Objects)
                );
        }