diff --git a/RhythmGameUtilities/Scripts/Utilities.cs b/RhythmGameUtilities/Scripts/Utilities.cs index 827072c..316138e 100644 --- a/RhythmGameUtilities/Scripts/Utilities.cs +++ b/RhythmGameUtilities/Scripts/Utilities.cs @@ -16,7 +16,7 @@ internal static class UtilitiesInternal #elif LINUX_BUILD || UNITY_EDITOR_LINUX || UNITY_STANDALONE_LINUX [DllImport("libRhythmGameUtilities.so", CallingConvention = CallingConvention.Cdecl)] #endif - public static extern float ConvertTickToPosition(float tick, int resolution); + public static extern float ConvertTickToPosition(int tick, int resolution); #if WINDOWS_BUILD || UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN [DllImport("libRhythmGameUtilities.dll", CallingConvention = CallingConvention.Cdecl)] @@ -35,7 +35,7 @@ public static extern int ConvertSecondsToTicksInternal(float seconds, int resolu #elif LINUX_BUILD || UNITY_EDITOR_LINUX || UNITY_STANDALONE_LINUX [DllImport("libRhythmGameUtilities.so", CallingConvention = CallingConvention.Cdecl)] #endif - public static extern bool IsOnTheBeat(float bpm, float currentTime); + public static extern bool IsOnTheBeat(int bpm, float currentTime); #if WINDOWS_BUILD || UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN [DllImport("libRhythmGameUtilities.dll", CallingConvention = CallingConvention.Cdecl)] @@ -79,7 +79,7 @@ public static class Utilities /// /// The tick. /// The resolution of the song. - public static float ConvertTickToPosition(float tick, int resolution) + public static float ConvertTickToPosition(int tick, int resolution) { return UtilitiesInternal.ConvertTickToPosition(tick, resolution); } @@ -103,7 +103,7 @@ public static int ConvertSecondsToTicks(float seconds, int resolution, Dictionar /// /// The base BPM for a song. /// A timestamp to compare to the BPM. - public static bool IsOnTheBeat(float bpm, float currentTime) + public static bool IsOnTheBeat(int bpm, float currentTime) { return UtilitiesInternal.IsOnTheBeat(bpm, currentTime); } diff --git a/UnityPackage/Scripts/Utilities.cs b/UnityPackage/Scripts/Utilities.cs index 827072c..316138e 100644 --- a/UnityPackage/Scripts/Utilities.cs +++ b/UnityPackage/Scripts/Utilities.cs @@ -16,7 +16,7 @@ internal static class UtilitiesInternal #elif LINUX_BUILD || UNITY_EDITOR_LINUX || UNITY_STANDALONE_LINUX [DllImport("libRhythmGameUtilities.so", CallingConvention = CallingConvention.Cdecl)] #endif - public static extern float ConvertTickToPosition(float tick, int resolution); + public static extern float ConvertTickToPosition(int tick, int resolution); #if WINDOWS_BUILD || UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN [DllImport("libRhythmGameUtilities.dll", CallingConvention = CallingConvention.Cdecl)] @@ -35,7 +35,7 @@ public static extern int ConvertSecondsToTicksInternal(float seconds, int resolu #elif LINUX_BUILD || UNITY_EDITOR_LINUX || UNITY_STANDALONE_LINUX [DllImport("libRhythmGameUtilities.so", CallingConvention = CallingConvention.Cdecl)] #endif - public static extern bool IsOnTheBeat(float bpm, float currentTime); + public static extern bool IsOnTheBeat(int bpm, float currentTime); #if WINDOWS_BUILD || UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN [DllImport("libRhythmGameUtilities.dll", CallingConvention = CallingConvention.Cdecl)] @@ -79,7 +79,7 @@ public static class Utilities /// /// The tick. /// The resolution of the song. - public static float ConvertTickToPosition(float tick, int resolution) + public static float ConvertTickToPosition(int tick, int resolution) { return UtilitiesInternal.ConvertTickToPosition(tick, resolution); } @@ -103,7 +103,7 @@ public static int ConvertSecondsToTicks(float seconds, int resolution, Dictionar /// /// The base BPM for a song. /// A timestamp to compare to the BPM. - public static bool IsOnTheBeat(float bpm, float currentTime) + public static bool IsOnTheBeat(int bpm, float currentTime) { return UtilitiesInternal.IsOnTheBeat(bpm, currentTime); } diff --git a/include/RhythmGameUtilities/Utilities.hpp b/include/RhythmGameUtilities/Utilities.hpp index 959de04..885049d 100644 --- a/include/RhythmGameUtilities/Utilities.hpp +++ b/include/RhythmGameUtilities/Utilities.hpp @@ -159,9 +159,9 @@ extern "C" * @public */ - PACKAGE_API float ConvertTickToPosition(float tick, int resolution) + PACKAGE_API float ConvertTickToPosition(int tick, int resolution) { - return tick / resolution; + return tick / (float)resolution; } /** @@ -172,9 +172,9 @@ extern "C" * @public */ - PACKAGE_API bool IsOnTheBeat(float bpm, float currentTime) + PACKAGE_API bool IsOnTheBeat(int bpm, float currentTime) { - auto beatInterval = SECONDS_PER_MINUTE / bpm; + auto beatInterval = SECONDS_PER_MINUTE / (float)bpm; auto beatFraction = currentTime / beatInterval;