Add QuaverChartConverter.
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
/*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
* Copyright (c) 2017-2019 Swan & The Quaver Team <support@quavergame.com>.
|
||||
*/
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Quaver.API.Maps.Structures
|
||||
{
|
||||
/// <summary>
|
||||
/// SoundEffects section of the .qua
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public class SoundEffectInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// The time at which to play the sound sample.
|
||||
/// </summary>
|
||||
public float StartTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The one-based index of the sound sample in the CustomAudioSamples array.
|
||||
/// </summary>
|
||||
public int Sample { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The volume of the sound sample. Defaults to 100.
|
||||
/// </summary>
|
||||
public int Volume { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// By-value comparer, auto-generated by Rider.
|
||||
/// </summary>
|
||||
private sealed class ByValueEqualityComparer : IEqualityComparer<SoundEffectInfo>
|
||||
{
|
||||
public bool Equals(SoundEffectInfo x, SoundEffectInfo y)
|
||||
{
|
||||
if (ReferenceEquals(x, y)) return true;
|
||||
if (ReferenceEquals(x, null)) return false;
|
||||
if (ReferenceEquals(y, null)) return false;
|
||||
if (x.GetType() != y.GetType()) return false;
|
||||
return x.StartTime.Equals(y.StartTime) && x.Sample == y.Sample && x.Volume == y.Volume;
|
||||
}
|
||||
|
||||
public int GetHashCode(SoundEffectInfo obj)
|
||||
{
|
||||
unchecked
|
||||
{
|
||||
var hashCode = obj.StartTime.GetHashCode();
|
||||
hashCode = (hashCode * 397) ^ obj.Sample;
|
||||
hashCode = (hashCode * 397) ^ obj.Volume;
|
||||
return hashCode;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static IEqualityComparer<SoundEffectInfo> ByValueComparer { get; } = new ByValueEqualityComparer();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user