HSP3Dish
Version 3.6
Date 2020/09/03
Author onitama
Version 3.6
Date 2020/06/10
Author onitama
目次 (3 グループ / 62 ページ)
拡張マルチメディア制御命令
celputm
複数のセルをまとめて描画
整数型の配列変数に代入された座標、セルIDをもとにcelputと同様の表示を配列要素ごとに実行します。
配列に保存された複数の項目について、一度に処理が行なわれるため効率化と高速化につながります。
countで配列変数から取り出す項目の数を指定します。
setcls
画面クリア設定
redraw 0による画面初期化時に行なわれる画面クリアのための設定を行ないます。
mode値の設定により、画面クリアを行なうためのモードを設定します。
1を設定した場合はクリア、0の場合はクリアを行ないません。
拡張入出力制御命令
celbitmap
変数バッファを画像データとして適用する
変数バッファの内容を画像データとして指定されたオフスクリーンバッファを置き換えます。
あらかじめ、buffer命令により作成したオフスクリーンバッファと、置き換えるための変数バッファを初期化する必要があります。
devcontrol
デバイス制御を実行する
特定のOS、及びデバイスに依存したデバイス制御を実行します。
実行後に、正しく実行が行なわれた場合は、システム変数statが0以上の値になります。
パラメーターが存在しないか、エラーが発生した場合はシステム変数statがマイナスの値となります。
devinfo
デバイス情報文字列取得
特定のOS、及びデバイスに依存した情報を取得します。
文字列"name"で示された情報を、varで指定した変数に代入します。(代入される情報は文字列となります。)
実行後に、正しく情報が取得された場合は、システム変数statが0以上になります。
devinfoi
デバイス情報値取得
特定のOS、及びデバイスに依存した情報を取得します。
文字列"name"で示された情報を、varで指定した変数に代入します。(代入される情報は整数型の配列となります。)
実行後に、正しく情報が取得された場合は、システム変数statが0以上になります。
devprm
デバイス制御用のパラメーター設定
devcontrol命令によりデバイス制御する際のパラメーター(付加情報)を設定します。
実行後に、正しく実行が行なわれた場合は、システム変数statが0以上の値になります。
パラメーターが存在しないか、エラーが発生した場合はシステム変数statがマイナスの値となります。
getreq
システムリクエスト取得
HSP3Dishランタイムが保持するシステム設定を取得して変数に代入します。
設定タイプ名で指定できる名称は、setreq命令と同様です。
gfilter
テクスチャ補間の設定
HSP3Dishランタイムが描画を行なう際の、テクスチャ補間(フィルタリング)の設定を行ないます。
設定タイプ名で指定できる名称は、以下の通りです。
gmulcolor
テクスチャ乗算値の設定
画像(テクスチャ)コピーを行なう際のカラー乗算値を指定します。
p1,p2,p3がそれぞれ、R,G,Bの輝度になります。
gcopy,gzoom,celput,grotate(画像使用時)などでコピーされる画像に対して、指定したR,G,B値が乗算されます。
httpinfo
http通信の情報を取得
http通信に関する情報を取得します。
httpload命令による、http通信を行なった結果などを取得することができます。
p2で指定された取得モードに対応する内容を、p1で指定された変数に代入します。
取得モードの値は、以下の通りです。
httpload
http通信の開始
指定されたURLに対して、http通信を開始します。
この命令は、通信のリクエストを開始するだけで、すぐに結果は取得されません。
通信の結果は、httpinfo命令を使用して正しくデータを受信したことを確認した上で、取得する必要があります。
mtinfo
タッチ情報取得
指定されたポイントIDに関連付けられたタッチ情報を取得します。
タッチ情報は、varで指定した変数に配列として代入されます。
mtlist
ポイントIDリスト取得
現在タッチされている情報を持つポイントIDリストを取得します。
ポイントIDリストは、複数のポイントIDを返すもので、マルチタッチによる複数のポイントを含む情報になります。
setreq
システムリクエスト設定
HSP3Dishランタイムに対して様々なシステム設定を行ないます。
設定タイプ名で指定できるのは以下のシンボルです。
viewcalc
描画時の座標変換を設定
2D描画時のX,Y座標に任意の計算を適用します。
これにより、描画される表示物全体のスケーリングや移動、回転などを行うことができます。
p1パラメーターで設定モードを指定します。
設定モードにより、以降の設定される内容が変わります。
拡張画面制御命令
es_adir
スプライト移動方向設定
スプライトを自動的に移動させるための設定をします。
p1でスプライトNo.、p2で方向を指定します。 方向は、es_iniで指定した数値
までで指定します。0が真下となり、反時計回りに増加していきます。
p3で移動スピードを%で指定します。
es_aim
スプライト参照座標設定
es_aim命令は、 es_adir命令と同じく指定した方向にスプライトを移動させる
ためのものです。 es_aim命令では、方向の替わりに移動する目標となるX,Y座
標を指定します。スプライトは、現在の座標から、目標となる座標への方向を
計算し移動を開始します。
es_ang
角度取得
システム変数statに(p1,p2)から見た(p3,p4)の方向が返ります。
es_aimを使っても方向を得ることはできますが、この命令を使えばスプライト
を使わずに方向を得ることができます。
es_apos
スプライト移動設定
スプライトを自動的に移動させるための設定をします。
p1でスプライトNo.、p2,p3でX,Y方向の増分を指定します。
p4で移動スピードを%で指定します。p4を省略するか、100を指定した場合は、
100%のスピードとなり、1フレームに(p2,p3)で指定した増分だけ移動し続けます。
es_area
スプライト有効エリア設定
スプライトの有効エリア(ボーダー)を設定します。
スプライト座標が(p1,p2)-(p3,p4)の範囲内にないものは、 自動的に削除されます。
es_ini命令でスプライトの表示範囲が初期化されると自動的に、 スプライト有効エリアも再設定されます。
es_arot
スプライト自動回転ズーム設定
スプライトに設定された回転角度、X倍率、Y倍率を自動的に加算するための設定をします。
p1でスプライトNo.、p2に1フレームに加算する回転角度、p3,p4でX,Y方向にそれぞれ加算する倍率を指定します。
es_bgmap
BGマップを初期化
任意のサイズを持つBGマップを初期化します。
p1で初期化するBGNo.を指定します。BGNo.は0~15までを指定可能です。
p2にマップデータを格納する変数を指定します。
es_bgmes
BGマップに文字列を書き込み
指定されたBGNo.のBGマップに、"str"で指定された文字列のコードを書き込みます。
あらかじめes_bgmap命令でBGマップのサイズやパーツ情報などを初期化する必要があります。
es_bound
弾みやすさ設定
es_flag命令で自由落下移動をONにしたときに、 画面下部(または上部)で跳ね
返る際の弾みやすさを設定します。この値が大きいほど跳ね返り時に勢いが失
われなくなります。
p3は画面の上下端、あるいは左右端に当たった際に跳ね返りを行うか行わない
かを設定できます。
es_bye
スプライトシステム解放
標準スプライトシステムの切り離しをします。
確保されていたメモリをすべて解放します。 これは、クリーンアップ関数としてHSP終了時に自動的に呼び出されます。
通常は、特に記述する必要はありません。
es_check
衝突判定取得
スプライト同士の衝突判定を行ないます。
p2で指定されたスプライトNo.と衝突している(重なっている) スプライトを検
索して、p1で指定した変数に結果を代入します。
p3で衝突判定の対象となるtype値を指定することができます。
es_chr
chr値設定
p1で指定したスプライトのキャラクタNo.を変更します。
キャラクタNo.は、あらかじめes_pat命令で設定されている必要があります。
es_clear
複数スプライト削除
p1で指定したスプライトNo. 以降のスプライトが削除され未登録になります。
p2で削除されるスプライトの数を指定することができます。
p1とp2の指定を省略した場合は、すべてのスプライトが削除されます。
es_cos
三角関数
変数p1に、角度p2のコサインを代入します。
p2の範囲はes_iniで設定した値までです。
得られる値は、小数部10ビットの固定小数です。つまり、本来得られるべき値
を1024倍した整数が返ってきます。
es_dist
2点間距離算出
(p2,p3)から(p4,p5)までの距離を求め、変数p1に代入します。計算結果は小数
部8bitの固定小数です。
es_draw
スプライト描画
登録されているスプライトを画面に描画します。
通常は、 p1,p2のパラメータを省略して使用すれば、すべてのスプライトを描画することが可能です。必ずredraw 0~redraw 1の間に描画するようにしてください。
es_effect
スプライト特殊効果設定
スプライトを描画する際のエフェクト(特殊効果)を設定します。
p2で指定する値は、EP値と呼ばれ以下の意味を持っています。
es_exnew
新規スプライト取得
この命令は、スプライトNo.の中で使われていないNo.を検索します。
p2~p3で指定したNo.の間で空きのあるNo.を、p1で指定した変数に代入します。
空きがない場合は、-1が代入されます。
p4には検索するスプライトNo.の増分を指定します。
es_fade
スプライト点滅・フェード設定
p1で指定したスプライトにタイマーを設定して、一定時間だけ点滅やフェードなどを実行します。
p2でフェードモードを設定します。省略した場合は、1(ESSPF_TIMEWIPE)が選択されます。
es_find
スプライト検索
登録されているスプライトの中で指定したtype値を持つスプライトNo. を検索
します。
p2のtype値には、複数のtypeを同時に指定することができます。
たとえば、type1とtype4を対象にする場合は、1+4で5を指定します。
es_flag
flag値設定
p1で指定したスプライトのflag値を変更します。
flag値は、スプライトが有効になっている場合は、 $100(256)が自動的に設定されています。通常は特にいじる必要はありません。
flag値が示す値は以下の通りです。[]内は定義されているマクロ名です。
es_get
スプライト情報取得
p1で指定した変数名に、p2のスプライトNo.の情報を代入します。
情報の種類は、p3のinfo numberで指定します。以下の値を設定することができます。
es_getpos
スプライト座標取得
スプライト座標などのX,Y情報を取得して2つの変数に代入します。
p1でスプライトNo.を指定して、p2,p3パラメーターで代入される変数を設定します。
p4の設定オプションにより、どのような座標を取得するかを指定できます。
es_gravity
落下加速度設定
es_flag命令で自由落下移動をONにしたときの加速度を設定します。
p2、p3は1フレームごとに加算される移動量で、256で1ドットとなります。
p1に-1を指定すると、デフォルト値を設定することができます。
es_ini
システムの初期化
標準スプライトのシステム初期化を行ないます。
パラメータを省略すると、スプライトは512個まで、 キャラクタ定義数は1024個までを最大として
スプライトを初期化します。
es_ini命令は何度でも実行することができるので、スプライトをすべてクリアしたい時などにも使用可能です。
es_kill
スプライト削除
p1で指定したスプライトNo.を削除します。
es_link
アニメーション設定
キャラクタのループアニメーションを設定するための命令です。
p1で指定したキャラクタNo.が、指定されたフレームだけ表示した後に、 p2で
指定したキャラクタNo.に戻るように設定を行ないます。
es_modaxis
スプライト情報をまとめて変更
p1からp2までのNo.を持つスプライトに対して、まとめて座標を変化させます。
p1,p2の指定を省略した場合は、すべてのスプライトが対象となります。
p3でtype値を指定することができます。p3に4を指定した場合は、type値4を持つスプライトが対象となります。
es_new
新規スプライト取得
この命令は、スプライトNo.の中で使われていないNo.を検索します。
p2で指定したNo.以降で空きのあるNo.を、p1で指定した変数に代入します。空
きがない場合は、-1が代入されます。
この命令は、以前のバージョンとの互換性のために残された命令です。
es_offset
オフセット座標設定
すべてのスプライトの表示を、オフセット値で指定した数だけずらして表示し
ます。この命令で設定したオフセット値は、 es_draw命令で描画を行なった時
に反映されます。
es_opt
スプライト反発座標の設定
スプライトに重力を与えた際に、反発する地上の座標を設定します。
この設定を行わない場合、画面の最下段で反発します。
es_pat
キャラクタ画像定義
スプライトのキャラクタパターンを定義します。
p1で指定したキャラクタNo.に、 (p2,p3)の座標からes_sizeで設定した大きさのキャラクタが登録されます。
es_patanim
まとめてキャラクタ画像定義
スプライトのキャラクタパターンをまとめて定義します。
p1で指定したキャラクタNo.以降に、p2で指定した個数だけキャラクタパターンが登録されます。単一のキャラクタNo.を定義する場合は、es_pat命令を使用してください。
es_pos
スプライト座標設定
スプライト座標などの情報を変更します。
p1でスプライトNo.を指定して、(p2,p3)でX,Y座標を設定します。
p4の設定オプションにより、スプライトのX,Y座標以外を設定することができます。
es_put
キャラクタ画面表示
スプライト用のキャラクタパターンとして登録されているデータを、指定した座標に表示します。
この命令は、スプライトとは関係なく画面にキャラクタを表示する命令です。
es_putbg
BGマップを表示
指定されたBGNo.のBGマップを表示します。
あらかじめes_bgmap命令でBGマップのサイズやパーツ情報などを初期化する必要があります。
(p2,p3)パラメーターで画面上の表示開始位置(左上)を指定します。
es_set
スプライト設定
スプライトを登録します。
p1でスプライトNo.を指定して、(p2,p3)が画面上でのスプライトのX,Y座標になります。
この座標を左上として、p4で指定したキャラクタNo.が表示されます。
スプライト座標は、-32767~32767までの範囲が設定可能です。
es_setgosub
スプライト表示コールバック設定
p1で指定したスプライトの表示コールバックを設定します。
p2でサブルーチンのラベルを指定します。以降は、そのスプライトが表示されるごとにgosub命令と同様にサブルーチンが呼び出されます。
es_setp
スプライトパラメータ設定
スプライトの情報を直接変更します。
p1で指定されたスプライトNo.が持つp2のパラメーターを直接p3の値に書き換えます。
情報の種類は、p3のinfo numberで指定します。以下の値を設定することができます。
es_setparent
スプライトの親設定
指定したスプライトの親にあたるスプライトを設定します。
p2パラメーターに親のスプライトNo.を設定することにより、親の座標からの相対的な座標にスプライトが表示されるようになります。
p2にマイナス値を指定した場合は、親スプライトの設定を解除し、通常のスプライト表示に戻ります。
es_setpri
スプライト優先順位設定
スプライトの優先順位を変更します。
p1で指定したスプライトに、p2で指定した値を設定します。
実際に優先順位に従って描画を行う場合には、es_draw命令で表示するスプライトの優先順位設定パラメーターを指定する必要があります。
es_setrot
スプライト回転角度・表示倍率設定
p1で指定したスプライトの回転角度、及び表示倍率を変更します。
p2で指定した角度にスプライトが回転されます。p2の値は0以上の整数で大きい値ほど右回りに回転していきます。角度が一周する値は、es_ini命令で指定されます。
(p3,p4)パラメーターによりX,Y方向の表示倍率を変更します。
es_sin
三角関数
変数p1に、角度p2のサインを代入します。
p2の範囲はes_iniで設定した値までです。
得られる値は、小数部10ビットの固定小数です。つまり、本来得られるべき値
を1024倍した整数が返ってきます。
es_size
キャラクタサイズ指定
スプライトのキャラクタパターンを定義する際の、サイズを指定します。
(p1,p2)がキャラクタのX,Yサイズになります。
p3は当たり判定を行なう際のヒットチェック領域が、 何%になるかを指定します。100を指定すると、(p1,p2)で指定したサイズいっぱいにヒットチェックを行ないます。
es_type
type値設定
p1で指定したスプライトのtype値を変更します。
スプライトのtype値は、ユーザーが自由に設定することができ、ゲームなどで物体の識別をする時に有効に使うことができます。