mirror of
https://github.com/ZDoom/Raze.git
synced 2024-12-15 15:11:41 +00:00
f87e40131f
Parts of the sound system treat entry 0 as "no sound" so nothing placed there would play. This made the one custom sound in "The Way of Ira" not play because as the last sound being defined it ended up in the first, invalid slot.
65 lines
2.1 KiB
C
65 lines
2.1 KiB
C
//-------------------------------------------------------------------------
|
|
/*
|
|
Copyright (C) 2010-2019 EDuke32 developers and contributors
|
|
Copyright (C) 2019 Nuke.YKT
|
|
|
|
This file is part of NBlood.
|
|
|
|
NBlood is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public License version 2
|
|
as published by the Free Software Foundation.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
See the GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
*/
|
|
//-------------------------------------------------------------------------
|
|
#pragma once
|
|
|
|
#include "misc.h"
|
|
#include "raze_music.h"
|
|
#include "s_soundinternal.h"
|
|
|
|
BEGIN_BLD_NS
|
|
|
|
struct SFX
|
|
{
|
|
int relVol;
|
|
int pitch;
|
|
int pitchRange;
|
|
int format;
|
|
int loopStart;
|
|
char rawName[9];
|
|
};
|
|
|
|
int sndGetRate(int format);
|
|
bool sndCheckPlaying(unsigned int nSound);
|
|
void sndStopSample(unsigned int nSound);
|
|
void sndStartSample(const char *pzSound, int nVolume, int nChannel = -1);
|
|
void sndStartSample(unsigned int nSound, int nVolume, int nChannel = -1, bool bLoop = false, EChanFlags soundflags = CHANF_NONE);
|
|
void sndStartWavID(unsigned int nSound, int nVolume, int nChannel = -1);
|
|
void sndStartWavDisk(const char *pzFile, int nVolume, int nChannel = -1);
|
|
void sndKillAllSounds(void);
|
|
void sndProcess(void);
|
|
void sndTerm(void);
|
|
void sndInit(void);
|
|
|
|
void sfxPlay3DSound(int x, int y, int z, int soundId, int nSector);
|
|
void sfxPlay3DSound(spritetype *pSprite, int soundId, int a3 = -1, int a4 = 0);
|
|
void sfxPlay3DSoundCP(spritetype* pSprite, int soundId, int a3 = -1, int a4 = 0, int pitch = 0, int volume = 0);
|
|
void sfxKill3DSound(spritetype *pSprite, int a2 = -1, int a3 = -1);
|
|
void sfxKillAllSounds(void);
|
|
void sfxSetReverb(bool toggle);
|
|
void sfxSetReverb2(bool toggle);
|
|
|
|
void ambProcess(void);
|
|
void ambKillAll(void);
|
|
void ambInit(void);
|
|
|
|
END_BLD_NS
|