-2

だから私はアセンブリ言語でゲームをしており、PlaySound()関数を使用してバックグラウンドソングを再生しています。ゲームで「死んだ」後、別のサウンドファイルがサウンドファイルの再生を開始し、同時に他のバックグラウンドソングを停止します。

4

1 に答える 1

1

ドキュメントを読んでください。

プレイサウンド機能

pszSound
再生するサウンドを指定する文字列。null ターミネータを含めた最大長は 256 文字です。このパラメーターが NULL の場合、現在再生中の波形サウンドはすべて停止します。非波形サウンドを停止するには、fdwSound パラメータに SND_PURGE を指定します。

...

fdwSound
サウンドを再生するためのフラグ。以下の値が定義されています。
...
SND_ASYNC
サウンドは非同期で再生され、PlaySound はサウンドの開始直後に戻ります。非同期で再生された波形サウンドを終了するには、pszSound を NULL に設定して PlaySound を呼び出します。

したがって、3 回呼び出す必要がありますPlaySound()。1 回はバックグラウンド ミュージックを開始するため、1 回は停止するため、もう 1 回は次のサウンドを再生するためです。

invoke PlaySound,offset "the name of the bkgnd file",NULL,SND_ASYNC
...
invoke PlaySound,NULL,NULL,SND_ASYNC
invoke PlaySound,offset "the name of the other file",NULL,SND_ASYNC
于 2015-06-06T06:06:55.247 に答える