2
0
Эх сурвалжийг харах

Added getLength() for mods.

Brucey 3 жил өмнө
parent
commit
13910c909e

+ 2 - 2
modloader.mod/common.bmx

@@ -28,8 +28,7 @@ Import "../soloud.mod/soloud/include/*.h"
 
 
 ' audiosource - openmpt
 ' audiosource - openmpt
 Import "../soloud.mod/soloud/src/audiosource/openmpt/soloud_openmpt.cpp"
 Import "../soloud.mod/soloud/src/audiosource/openmpt/soloud_openmpt.cpp"
-
-Import "openmptloader.cpp"
+Import "../soloud.mod/soloud/src/c_api/soloud_c_openmpt.cpp"
 
 
 Extern
 Extern
 	' Openmpt
 	' Openmpt
@@ -53,4 +52,5 @@ Extern
 	Function Openmpt_setInaudibleBehavior(aOpenmpt:Byte Ptr, aMustTick:Int, aKill:Int)
 	Function Openmpt_setInaudibleBehavior(aOpenmpt:Byte Ptr, aMustTick:Int, aKill:Int)
 	Function Openmpt_setFilter(aOpenmpt:Byte Ptr, aFilterId:Int, aFilter:Byte Ptr)
 	Function Openmpt_setFilter(aOpenmpt:Byte Ptr, aFilterId:Int, aFilter:Byte Ptr)
 	Function Openmpt_stop(aOpenmpt:Byte Ptr)
 	Function Openmpt_stop(aOpenmpt:Byte Ptr)
+	Function Openmpt_getLength:Double(aOpenmpt:Byte Ptr) 
 End Extern
 End Extern

+ 7 - 0
modloader.mod/modloader.bmx

@@ -169,6 +169,13 @@ Type TSLOpenmpt Extends TSLLoadableAudioSource
 		Openmpt_stop(asPtr)
 		Openmpt_stop(asPtr)
 	End Method
 	End Method
 
 
+	Rem
+	bbdoc: Returns the length of the audio source, in seconds.
+	End Rem
+	Method getLength:Double() Override
+		Return Openmpt_getLength(asPtr)
+	End Method
+
 	Method destroy() Override
 	Method destroy() Override
 		If asPtr Then
 		If asPtr Then
 			Openmpt_destroy(asPtr)
 			Openmpt_destroy(asPtr)