itemblock setParam()関数記述リファレンス

目次

テストモード
各種パーツの色指定
ゲーム内容に関する設定
背景画像及び服画像
フレームインターバル
アイテムアニメーション
アイテムタイプ
アイテム
ターゲットアニメーション
ターゲット
露出レベル
露出レベル及びアイテムとターゲットとの接続
レイヤ機能


テストモード

変数説明
test_mode test_mode=true;
とする事により、テストモードになります。
テストモードではボールが勝手に動かず、マウスクリックにより移動します。
服ブロックは枠がついて表示され、識別しやすくなります。

通常モードにする場合は、setParam関数内での本変数の値設定を省略します。


各種パーツの色指定

変数説明
ballColor ボールの色。
barColor ボールを反射させる為にマウスで動かすバーの色。
itemBarColor アイテムを支える棒の色。
itemBlockColor アイテムの蓋のブロックの色。
blockBorderColor 蓋のブロックの縁に現れる境界線の色
backgroundColor 背景色。
messageColor 画面上に表示されるメッセージの色。

色の名前としては、以下のものが指定可能です。

black,blue,cyan,darkGray,gray,green,lightGray,magenta,orange,pink,red,white,yellow

例:
ballColor="orange";

また、次の例のように、色のR,G,Bの成分を順に並べて指定する事もできます。
各成分は0〜255の整数です。

例:
ballColor="rgb(255,128,0)";


ゲーム内容に関する設定

変数説明
clothBlockW服ブロックの幅
clothBlockH服ブロックの高さ
itemBlockWアイテムブロックの幅
itemBlockHアイテムブロックの高さ
ballWボールの幅
ballHボールの高さ
barWバーの幅
barHバーの高さ
ballVX ボールの横方向の速度(ドット/フレーム)
ballVY ボールの縦方向の速度(ドット/フレーム)
life ライフ数。
負の数を指定すると無制限となります。


背景画像及び服画像

変数説明
nakedImg 服を着ていない人物を含む背景の画像ファイル名です。
透明セルや不透明セルを含まないGIF、PNG又はJPEGファイルです。
clothImg 服画像です。透過GIFまたはPNGです。
画像はClothBlockW及びClothBlockHで指定したブロックサイズ毎の升目に分割され、α成分が128以上であるドットを含む升目が服ブロックとなります。

服が必要ない場合は、setParam関数内での本変数の値設定を省略します。


フレームインターバル
変数説明
frameInterval 1フレームが何ミリ秒表示されるかを示します。
ただし、あまり正確ではないので、あくまでも目安として考えて下さい

アイテムアニメーション

設定関数説明
setItemAnmNum(n) アイテムアニメーションがいくつ存在するかを設定します。
アイテムアニメーション番号は0〜n-1となります。
setItemAnmImgNum(i,n) アイテムアニメーションiで順次切り替わる画像の枚数をnで指定します。
setItemImgPr(i,j,fname,k) アニメーションiの画像jのファイル名をfnameで、何フレーム継続するかをkで指定します。


アイテムタイプ

アイテムはそれぞれアイテムタイプを持ちます。
アイテムタイプは、アイテムの外見を定義するものであり、起動してから目的地に着くまでの間(状態0)及び目的地で往復している間(状態1)とでそれぞれどのアニメーション表示を行うかを指定します。
また、アニメーションと棒の接続点の座標も指定します。

設定関数説明
setItemTypeNum(n)アイテムタイプの数をnで指定します。アイテムタイプ番号は、0〜n-1となります。

設定関数setItemType(i,j1,j2,x,y);
引数説明
iアイテムタイプ番号
j1アイテムタイプiにおける状態0(稼動を開始してから目標に向かって移動する間の状態)におけるアイテムアニメーションのアニメーション番号です。
アニメーションを表示しない場合は負の数を指定します。
j2アイテムタイプiにおける状態1(目標上で往復している状態)におけるアイテムアニメーションのアニメーション番号です。
アニメーションを表示しない場合は負の数を指定します。
x アイテムタイプiにおけるアニメーション画像とアイテムバーとの接続点の、画像の左上隅のX座標です。
以下の説明で「アイテムの画面上の座標」という言葉が出てきますが、その正確な座標はここで指定したアイテムバーとの接続点の画面上の座標となります。
y アイテムタイプiにおけるアニメーション画像とアイテムバーとの接続点の、画像の左上隅のY座標です。
以下の説明で「アイテムの画面上の座標」という言葉が出てきますが、その正確な座標はここで指定したアイテムバーとの接続点の画面上の座標となります。


アイテム

設定関数説明
setItemNum(n)アイテムの数をnで指定します。アイテム番号は0〜n-1となります。

設定関 setItemPr(i,iType,bX,bY,bW,bH,oX,oY,mX0,mY0,mX1,mY1,mFrmNum,initFrm,fName,il,bl,bal)
パラメータ説明
iアイテム番号
iType アイテムiのアイテムタイプ番号を示します。
アイテムタイプを持たない場合(アイテムアニメーションが必要ない場合)は、負の数を指定します。
bX アイテムiのアイテムブロック群の左上のX座標です。
bY アイテムiのアイテムブロック群の左上のY座標です。
bW アイテムiのアイテムブロック群の横方向の列数です。
bH アイテムiのアイテムブロック群の縦方向の列数です。
oX アイテムiを支える棒のX座標です。-1にすると、ブロック群の中心のX座標となります。
oY アイテムiを支える棒のY座標です。-1にすると、ブロック群の中心のY座標となります。
mX0 アイテムiが稼動開始してから最初に向かう目的地のX座標です。
mY0 アイテムiが稼動開始してから最初に向かう目的地のY座標です。
mX1 アイテムiが(mx0,my0)に到着してから往復動作を行う際の、往復先のX座標です。
mY1 アイテムiが(mx0,my0)に到着してから往復動作を行う際の、往復先のY座標です。
mFrmNum アイテムiの往復にかかるフレーム数です。
initFrm アイテムiが稼働を開始してから(mx0,my0)に到着するまでのフレーム数です。
fName アイテムiのアイテムブロック群の画像ファイル名です。
省略した場合は、itemBlockColorで指定した色の矩形塗りつぶしとなります。
il アイテムiのレイヤ番号です。通常は0を指定します。
bl アイテムiのアイテムブロックのレイヤ番号です。通常は0を指定します。
bal アイテムiのアイテムブロックエリア(ブロックになる前の状態)のレイヤ番号です。通常は0を指定します。


ターゲットアニメーション

設定関数説明
setTgAnmNum(n)ターゲットアニメーション数をnで指定します。
ターゲットアニメーション番号は0〜n-1となります。
setTgAnmScnNum(i,n) ターゲットアニメーションiのシーン数がnである事を示します。
setTgAnmScnImgNumFrm(i,j,n,frm) ターゲットアニメーションiのシーンjは、使用画像枚数がn枚で、継続フレーム数がfrmである事を示します。
setTgAnmScnImgPr(i,j,k,fName,imgX,imgY) ターゲットアニメーションiのシーンjの画像kのファイル名がfNameであり、表示する座標が(imgX,imgY)である事を示します。

配列説明デフォルト
tgAnmScnLoop[i]ターゲットアニメーションiの最後のシーンの後の戻り先シーンの番号を指定します。
例:
tgAnmScnLoop[0]=1;
0


ターゲット
設定関数説明
setTgNum(n)ターゲット数がnである事を示します。
setTgRVecNumENum(i,n,en) ターゲットiの参照ベクトル数がnで、次元数がenである事を示します。
setTgRVecAnm(i,j,sv,ia) ターゲットiのj番目の参照ベクトルがsvで、対応するターゲットアニメーションの番号がiaである事を示します。
svは、各成分の値をカンマで区切って並べた文字列として指定します。
この参照ベクトルが選択された時にアニメーションを表示しない場合は、iaに負の数を指定します。

露出レベル

服ブロックの消えた度合いを、「露出レベル」と呼び、それが何段階あるかを「露出レベル数」と言います。

設定関数説明
setNkLvNum(n,m)露出レベル数をn,最大露出レベルをmで指定します。
nは1以上でなければなりません。

ある時点での露出レベルは、以下の式で計算します。

露出レベル=n×消えた服ブロック数÷初期服ブロック数(小数点以下切捨て)

ただし、計算して出た値がm以上である場合は、mを露出レベルとします。
clothImg指定を省略した場合、露出レベルは常にmとなります。


露出レベル及びアイテムとターゲットとの接続

設定関数説明
addNkLvTgVec(iLv,iTg,sv) 露出レベルがiLvの時にターゲットiTgに与える影響ベクトルがsvである事を示します。
svは、要素の値をsetTgRVecNumENum()で指定したターゲットiTgの参照ベクトルの次元数だけカンマで並べた文字列として指定します。
addItemTgVec(iItem,iTg,iSt,sv) アイテムiItemが状態iTgへ、状態iStで稼働中の時に与える影響ベクトルがsvである事を示します。
iStは0又は1です。
svは、要素の値をsetTgRVecNumENum()で指定したターゲットiTgの参照ベクトルの次元数だけカンマで並べた文字列として指定します。

各ターゲットは、現在の露出レベルによるターゲットへの影響ベクトルと、アイテムの現在の状態によるターゲットへの影響ベクトルを合計し、それがどの参照ベクトルに最も近いかを調べ、選択します(最も近い参照ベクトルが複数ある場合は、番号の若いものを優先します)。
そして、選択された参照ベクトルに対応するアニメーションを表示します。

複数の参照ベクトルに一つのアニメーションが対応している場合、選択される参照ベクトルが変化しても、対応するアニメーションが変わらなければ、アニメーションの表示状態(何番のシーンを何フレーム表示したか)はリセットされません。


レイヤ機能

変数説明デフォルト
layerNum レイヤーの数を示します。
有効なレイヤー番号は、0〜layerNum-1となります。
-
tgAnmScnImgLayer[i][j][k] ターゲットアニメーションiのシーンjの画像kを描くレイヤー番号を設定します。
この変数の設定は、setTgAnmScnImgPr()関数による設定の後に行います。
0
clothBlockLayer 服ブロックを何番のレイヤに描くかを示します。 0

全体の描画の順番は、以下のとおりです。