hmm.txt
Notes
Source: http://www.onionsoft.net/hsp/file/hmmdll.lzh under hmmdll1.4\manual\hmm.txt
Translation: In English
Contents
基本命令 ☆☆☆ HMMINIT p1 引数 p1:初期化モード p1の第1ビットを立てるとDirectSoundを初期化します。DS系の命令を使うために必要です。 p1の第2ビットを立てるとDirectMusicを初期化します。DM系の命令を使うために必要です。 p1の第3ビットを立てるとDirectInputを初期化します。DI系の命令を使うために必要です。 p1の第4ビットを立てるとDirectDrawを初期化します。DD系の命令を使うために必要です。 p1の第5ビットを立てるとDirectGraphicsを初期化します。DG系の命令を使うために必要です。 p1の第6ビットを立てるとDirectShowを初期化します。DSH系の命令を使うために必要です。 戻り値(stat) 成功:1 or HMM_OK 失敗:0 or HMM_ERR 機能 このプラグインを初期化します。使用時の一番初めに呼んでください。 使用例)hmminit 3 ;DirectSoundとDirectMusicを初期化します。 dsinit: dminit ;上の使用例と同じことをしている。どちらを使用してもかまわないです。 ☆☆☆ HMMEND 引数なし 戻り値(stat) 必ず1が返ってくる。 機能 このプラグインを終了させます。HSPが終了するときに、自動的に呼び出されるので特に意識しなくてもいいです。 ☆☆☆ HMMBITON p1, p2 引数 p1:操作したい整数型変数名 p2:操作したいビット番目 戻り値(stat) 常に1 機能 p1の変数のp2番目のビットを1にする。 使用例) int a a = 0 HMMBITON a, 2 ;2ビット目を1にする if a == 4 : dialog "2ビット目が立ってます" HMMBITON a, 0 if a == 5 : dialog "0ビット目を立てました" stop ☆☆☆ HMMBITOFF p1, p2 引数 p1:操作したい整数型変数名 p2:操作したいビット番目 戻り値(stat) 常に1 機能 p1の変数のp2番目のビットを0にする。 ☆☆☆ HMMBITCHECK p1, p2 引数 p1:調べたい整数型変数名 p2:調べたいビット番目 戻り値(stat) 立っていたら1 立っていなかったら0 機能 p1の変数のp2番目のビットが立っているか調べる。 ☆☆☆ HMMGETFPS p1 引数 p1:フレームレートを保持したい整数型変数名 戻り値(stat) 1が返る 機能 フレームレートを取得します。 ☆☆☆ HMMHITCHECK p1, p2, p3, p4, p5, p6, p7, p8, p9 引数 p1:当たり判定の結果を入れる変数 p2:当たり判定を調べたい配列変数1 p3:配列変数1の実際に検索したい番号 p4:1つのキャラクターを構成するのに必要なパラメーターの数 p5:当たり判定を調べたい配列変数2 p6:1つのキャラクターを構成するのに必要なパラメーターの数 p7:配列変数2の検索開始番号 p8:配列変数2の検索終了番号 p9:検索する対象のタイプ値(hspdx.dllのex_checkのp3パラメーターと同じ意味) 戻り値 常に1 機能 キャラクター同士の矩形の当たり判定処理をします。 ここでいうキャラクターとは、最低でも表示座標と当たり判定の領域と検索タイプ値の データが入っている1次元または2次元配列をさします。 1つのキャラで最低でも必要なパラメーターの内訳は 表示座標x, y(矩形の左上) 当たり判定の矩形の開始位置sx, sy 当たり判定の矩形の横幅と縦幅w, h 検索タイプ値type の7ぐのパラメーターが必要になります。 配列1のキャラクターと配列2のキャラクターが当たっている場合は、p1に配列2のキャラクターの 番号が帰ってきます。 当たりが1つもない場合はp1に-1が帰ります。 p9が0の時は配列2のキャラクター全てを検索します。 ※役立つかどうか微妙なので、サンプルなどを適当に見て使い方がわかる人だけ 使ってください。 ;例) dim sb, 7, 16 /* 自機の弾 構成するパラメーターの数は7個で16発まで発射可能 nはキャラクター番号 sb.0.n は表示x座標 sb.1.n は表示y座標 sb.2.n は当たり判定の矩形開始位置x座標 sb.3.n は当たり判定の矩形開始位置y座標 sb.4.n は当たり判定の矩形の横幅 sb.5.n は当たり判定の矩形の縦幅 sb.6.n は検索タイプ値 */ dim ene, 7*32 /* 敵 構成するパラメーターは7個で32匹まで登場可能 nはキャラクター番号 ene.(7*n) は表示x座標 ene.(7*n+1) は表示y座標 ene.(7*n+2) は当たり判定の矩形開始位置x座標 ene.(7*n+3) は当たり判定の矩形開始位置y座標 ene.(7*n+4) は当たり判定の矩形の横幅 ene.(7*n+5) は当たり判定の矩形の縦幅 ene.(7*n+6) は検索タイプ値 */ ;自機の弾と敵との当たり判定 repeat 16 hmmhitcheck res, sb, 7, cnt, ene, 7, 0, 0 if res == -1 : continue ;ここにくるということは自機の弾が敵に当たってる。 break loop ☆☆☆ HHMMHITCHECKSETINDEX p1, p2, p3 引数 p1:表示x座標のパラメターが入っている要素番号 p2:当たり判定の矩形の開始位置x座標のパラメターが入っている要素番号 p3:検索タイプ値のパラメターが入っている要素番号 戻り値 常に1 機能 当たり判定で使うパラメーターの入っている要素番号の位置を変更 ;例) hmmhitchecksetindex 5, 1, 0 dim sb, 7, 16 /* 自機の弾 構成するパラメーターの数は7個で16発まで発射可能 nはキャラクター番号 sb.0.n は検索タイプ値 sb.1.n は当たり判定の矩形開始位置x座標 sb.2.n は当たり判定の矩形開始位置y座標 sb.3.n は当たり判定の矩形の横幅 sb.4.n は当たり判定の矩形の縦幅 sb.5.n は表示x座標 sb.6.n は表示y座標 */