//--------------------------- Sound
 PyObject* LMF_SoundLoad     (PyObject *self, PyObject *args){
	char* cPath;
	if (!PyArg_ParseTuple(args, "s", &cPath)) {
		ParsePyTupleError( __func__, __LINE__ );
		return nullptr;
	}
	int SoundID = SoundLoad(cPath);
	return Py_BuildValue("i", SoundID);
}
コード例 #2
0
ファイル: sound.cpp プロジェクト: KranX/Vangers
void LoadResourceSOUND(const char *path_name, int surface)
{
    int i;
    //if(MuteLog) return;

    EffectsOff();

    XBuffer buf;
    XStream ff(0);
    for(i = 0; i < EFF_MAX; i++) {

        if ((SndData[i].status & LOCAL_SOUND) && SndData[i].lpDSB && surface) {
            SoundRelease(SndData[i].lpDSB);
            SndData[i].lpDSB = NULL;
        }

        buf.init();
        if((i == EFF_DRIVING) || (i == EFF_START) || (i == EFF_STOP)) {
            if(EngineNoise) {
                buf < "resource/sound/effects" < "/" < SndData[i].fname < ".wav";
            } else {
                continue;
            }
        } else {
            buf < path_name < "/" < SndData[i].fname < ".wav";
        }

        if(ff.open(buf.GetBuf(),XS_IN)) {
            ff.close();
            if (SndData[i].lpDSB) {
                SoundRelease(SndData[i].lpDSB);
                SndData[i].lpDSB = NULL;
            }
            SoundLoad(buf.GetBuf(),&SndData[i].lpDSB);

        }
        //std::cout<<"file:"<<buf.GetBuf()<<" addr:"<<SndData[i].lpDSB<<std::endl;
    }
    EffectsOn(surface);

    sndBackgroundMax = sndStepMax = sndScratchMax = 0;
    for(i = EFF_BACKGROUND_0; i <= EFF_BACKGROUND_5; i++)
        if(SndData[i].lpDSB) sndBackgroundMax++;
    for(i = EFF_STEP0; i <= EFF_STEP2; i++)
        if(SndData[i].lpDSB) sndStepMax++;
    for(i = EFF_SCRATCH0; i <= EFF_SCRATCH1; i++)
        if(SndData[i].lpDSB) sndScratchMax++;
}
コード例 #3
0
ファイル: sound.cpp プロジェクト: KranX/Vangers
void LoadMotorSound(void) {
    XBuffer buf;
    XStream ff(0);
    for(int i = 0; i < 3; i++) {
        buf.init();

        if(EngineNoise)
            buf < "resource/sound/effects/" < "/" < SndData[i].fname < ".wav";

        if(ff.open(buf.GetBuf(),XS_IN)) {
            ff.close();
            if (SndData[i].lpDSB) {
                SoundStop(SndData[i].channel);
                SoundRelease(SndData[i].lpDSB);
                SndData[i].lpDSB = NULL;
            }
            SoundLoad(buf.GetBuf(),&SndData[i].lpDSB);
        }
    }	//  end for i
}
コード例 #4
0
ファイル: lt_sfx.c プロジェクト: jack9267/LaserTank-4
void SFxInit( void)
{
 SoundLoad("BRICKS"); SoundLoad("FIRE");
 SoundLoad("MOVE"); SoundLoad("HEAD");
 SoundLoad("TURN"); SoundLoad("ENDLEV");
 SoundLoad("DIE"); SoundLoad("ANTI1");
 SoundLoad("ANTI2"); SoundLoad("DEFLB");
 SoundLoad("LASER2"); SoundLoad("PUSH2");
 SoundLoad("PUSH1"); SoundLoad("ROTATE");
 SoundLoad("PUSH3"); SoundLoad("SINK");
 if (SFXError) MessageBox(0,"Loading Error","SFx Error",MB_OK);
}