index d0db4fed1fa09f7332b8b70cd4dd798127d8bbff..36d4932387d1f73e120a12368b460dc9079aba10 100644 (file)
function e_InitSoundSystem(NoOutput: Boolean = False): Boolean;
-function e_LoadSound(FileName: string; var ID: DWORD; bLoop: Boolean): Boolean;
-function e_LoadSoundMem(pData: Pointer; Length: Integer; var ID: DWORD; bLoop: Boolean): Boolean;
+function e_LoadSound(FileName: string; var ID: DWORD; isMusic: Boolean; ForceNoLoop: Boolean = False): Boolean;
+function e_LoadSoundMem(pData: Pointer; Length: Integer; var ID: DWORD; isMusic: Boolean; ForceNoLoop: Boolean = False): Boolean;
function e_PlaySound(ID: DWORD): Integer;
function e_PlaySoundPan(ID: DWORD; Pan: Single): Integer;
end;
end;
-function e_LoadSound(FileName: String; var ID: DWORD; bLoop: Boolean): Boolean;
+function e_LoadSound(FileName: String; var ID: DWORD; isMusic: Boolean; ForceNoLoop: Boolean = False): Boolean;
var
find_id: DWORD;
res: FMOD_RESULT;
find_id := FindESound();
- if bLoop then
+ if isMusic and not ForceNoLoop then
bt := FMOD_LOOP_NORMAL
else
bt := FMOD_LOOP_OFF;
- if not bLoop then
+ if not isMusic then
res := FMOD_System_CreateSound(F_System, PAnsiChar(FileName),
bt + FMOD_2D + FMOD_HARDWARE,
nil, e_SoundsArray[find_id].Sound)
end;
e_SoundsArray[find_id].Data := nil;
- e_SoundsArray[find_id].isMusic := bLoop;
+ e_SoundsArray[find_id].isMusic := isMusic;
e_SoundsArray[find_id].nRefs := 0;
ID := find_id;
Result := True;
end;
-function e_LoadSoundMem(pData: Pointer; Length: Integer; var ID: DWORD; bLoop: Boolean): Boolean;
+function e_LoadSoundMem(pData: Pointer; Length: Integer; var ID: DWORD; isMusic: Boolean; ForceNoLoop: Boolean = False): Boolean;
var
find_id: DWORD;
res: FMOD_RESULT;
soundExInfo.cbsize := sz;
soundExInfo.length := Length;
- if bLoop then
+ if isMusic and not ForceNoLoop then
bt := FMOD_LOOP_NORMAL
else
bt := FMOD_LOOP_OFF;
- if not bLoop then
+ if not isMusic then
res := FMOD_System_CreateSound(F_System, pData,
bt + FMOD_2D + FMOD_HARDWARE + FMOD_OPENMEMORY,
@soundExInfo, e_SoundsArray[find_id].Sound)
end;
e_SoundsArray[find_id].Data := pData;
- e_SoundsArray[find_id].isMusic := bLoop;
+ e_SoundsArray[find_id].isMusic := isMusic;
e_SoundsArray[find_id].nRefs := 0;
ID := find_id;