HSPでoggを再生してみよう(第2回)
具体的にはどのようにしたらいいのでしょうか?
さて、Vox.dllのヘルプファイルを見てみましょう。
VoxHelp.CHMです。
今回使うのは、そこの中のC関数リファレンスです。(C++の方ではないことに注意)
たとえば、oggを再生したかったら、次のような関数が見つかります。
bool VoxPlay( int ID )再生を開始します。
引数
int ID VoxLoadで取得したドライバID返値
true 再生成功
false 再生失敗
となっていますね。そこで
#func (好きな命令の名前) "VoxPlay" int
とします。
私は
#func VoxPlay "VoxPlay" int
のようにDLLの関数と同じ命令名にすることおすすめしますが、
#func aaa "VoxPlay" int
のようにすることももちろん可能です。
また、返値とかいてあるところについては、
HSPのシステム変数statにはいるようです。よってそこを参照すればOKです。
※説明中の各色が対応しています。
このようにして、自分の使いたい関数を一通り定義しておきます。
あとは、それを使って普通のHSPの命令を書くときのように書いていけばよいだけです。
(DLLの定義部分だけをヘッダファイルとして作成し、includeするとシンプルになるかもしれません。)