■■ b2エディタ イベント記述リファレンスマニュアル
本リファレンスが想定しているバージョンは
b2edit.exe | version 1.1d |
b2.swf | version 1.03 |
です。
■概要
[文法]
イベントの記述は、条件文と実行文の対によって記述されます。
例えば、「全体の8割のブロックを壊した時点で」「ゲームクリアにする」とか、
「指定のブロックにぶつかったときに」「アニメーションを行う」などです。
ここで条件文と実行文は1対1には限りません。例えば「アニメーションを行う」の
実現としてアニメーションを構成する絵を表示させると同時に以前の絵を消します。
したがって、記述は概ね以下の形になります。
条件文
実行文
実行文
実行文
条件文
実行文
:
条件文は、On〜の形式のシンタックスになっていますが、複数の条件が同時に成り立つ
ときに実行したい場合は、2項目目以降の条件分をAnd〜の形にします。
例)
OnFlag〜
AndTimer〜
removePic〜
loadPic〜
:
Flag条件とTimer条件が両方とも揃ったときにのみ続く文を実行
パラメータ(引数)の区切りには|(縦棒)を用います。
いずれの記述も半角で行い、大文字小文字は区別されます。
[パラメータの説明]
周期とは一定のスパンで繰り返し実行される条件を表します。
1万点を超えたら2万点ごとにアイテムを出現させる、とか、
10秒ごとにアニメーションを繰り返す、とかいう場合に用います。
0を指定することで周期性を持たないことを示します。
座標とは横方向(x座標)、縦方向(y座標)の組で、ピクセル値で指定されます。
ゲーム内左上隅の座標が(0,0)になり、右下に行くにしたがって大きくなります。
120、75と指定すると左から120ピクセル、上から75ピクセルの位置になります。
ブロック位置とは左上隅のブロックを(0,0)としたときの、横方向のブロック数と
縦方向のブロック数の組です。12、9と指定すると左から13個目、上から10個目の
ブロックを指定したことになります。
[URLエンコードについて]
データ内の文字列として日本語等を用いる場合はURLエンコードを行う必要が
あります。URLエンコードについては付属のescapeCode.swfや同exeを用いて
変換を行い、コピー&ペーストしてください。
■条件文
OnAmount
文法 OnAmount p1|p2
引数 p1 破壊ブロック数
この引数の先頭にpを付けるとブロック全体の割合を
百分率で指定することができます。
p2 周期
説明 ブロックを指定数(率)破壊したときに実行されます。
例 OnAmount 100|20 //100ブロック以降20ブロックごとに実行
OnAmount p60|0 //全体の60%を破壊した時点で実行
OnClick
文法 OnClick
引数 なし
説明 未実装
OnEndPreLoad
文法 OnPreLoad
引数 なし
説明 未実装
OnFlag
文法 OnFlag p1|p2
引数 p1 フラグナンバー
p2 指定フラグがこの値に等しいときに実行
説明 p1で指定したフラグがp2の値を持つときに実行されます。
例 OnFlag 2|1 //フラグ2が1のときに実行
OnHit
文法 OnHit p1|p2|p3
引数 p1|p2 ブロックの横および縦位置
p3 0…破壊時 1…衝突時
説明 指定したブロックにボールが衝突したときに実行されます。
例 OnHit 13|10|0 //左から14個目上から11個目のブロックが破壊されたときに実行
OnLifeRest
文法 OnLifeRest p1|p2
引数 p1 残機数
p2 周期
説明 ボールをロストしたときに、残っている機数が指定と一致する場合実行されます。
実行後機数が増加して、その後条件が満たされたときは再び実行されます。
周期p2の指定はp1の値に対して、(残機数-p1)をp2で割った剰余が0になる場合
という形で実装されています。
例 OnLifeRest 1 //最後の1機のときに実行
OnLifeRest 1|3 //1、4、7…機のときに実行
OnMiss
文法 OnMiss
引数 なし
説明 未実装
OnPreGame
文法 OnPreGame
引数 なし
説明 ゲーム開始前、NowLoadingの途中に実行されます。
初期コマンドやアニメーションの素材等を予め読みこむ時などに使います。
例 OnPreGame //NowLoading中に実行
OnProbability
文法 OnProbability p1|p2
引数 p1 確率(0〜100:百分率)
p2 0…破壊時 1…衝突時
説明 任意のブロックに衝突(破壊)したときにp1の確率で実行されます。
例 OnProbability 20|0 //どこかのブロックが破壊されると20%の確率で実行
OnScore
文法 OnScore p1|p2
引数 p1 スコア
p2 周期
説明 スコアがp1になると実行され、以降p2の値増加する毎に実行されます。
例 OnScore 10000 //1万点で実行
OnScore 2000|1000 //2000点から1000点ごとに実行
OnThrow
文法 OnThrow
引数 なし
説明 未実装
OnTimer
文法 OnTimer p1|p2
引数 p1 ゲーム開始からの時間(ミリ秒単位)
p2 周期(ミリ秒単位)
説明 ゲーム開始からp1(ミリ秒)後、p2(ミリ秒)の周期で実行されます
ミリ秒の単位で指定できますが、実際にはゲーム時のフレームレートの
精度で実行されることに注意してください。
ボール発射待ち等の待ち時間は秒数に加算されません。
例 OnTimer 12000|5000 //ゲームを12秒間プレイしたら以降5秒ごとに実行
OnUpside
文法 OnUpside
引数 なし
説明 ボールが画面上端に衝突するときに実行されます。
例 OnUpside //ボールが画面上端に衝突するときに実行
■実行文
ballBe
文法 ballBe p1
引数 p1 ボール種 1…通常弾 2…加速貫通弾
説明 ボールの状態を変化させます。
ボールはパドルに衝突すると通常弾に戻ります。
例 ballBe 2 //ボールを貫通弾にします
blockBe
文法 blockBe p1|p2|p3
引数 p1|p2 ブロックの横および縦位置
p3 0…消滅 1〜…変化後のブロック種
説明 未実装
comexec
文法 comexec p1|p2
引数 p1 実行コマンド
p2 画像番号 1…背景画像 2…前景画像
説明 swfの画像ファイルにコマンドを発信します。
実際には画像swfのルートのcomexec(p1)が実行されます。
comexec wink|1とすると背景画像に指定したswfの
_rootに定義されたfunction comexec(a){〜}が実行され、
引き数aの値はwinkとなります。winkの動作はcomexec()内で
指定してください。
画像ファイルがJPEGの場合はこのコマンドは無効です。
※このコマンドは動作未確認です。
例 comexec wink|1 //背景画像にウインクを行うようコマンドを発信する。
drawRect
文法 drawRect p1|p2|p3|p4|p5|p6
引数 p1|p2 描画する長方形の左端および上端の座標
p3|p4 幅および高さの指定(ピクセル)
p5 枠種別 1…矩形 2…円 3…1行用角丸矩形
4…正方形用角丸矩形
p6 指定時間後(ミリ秒)消滅
説明 枠のある長方形や円等を表示します。
既に長方形が表示されている状態でdrawRectを行うと、
前の長方形は消されて新しい長方形が描かれます。
同時に複数の長方形を表示することはできません。
例 drawRect 100|120|300|40|3|2000
//(100,120)の位置に幅300高さ40角丸の矩形を2秒間表示します
gameClear
文法 gameClear
引数 なし
説明 ゲームクリアにします。
例 gameClear //コングラッチュレーションの表示になります
gameOver
文法 gameOver
引数 なし
説明 ゲームオーバーにします。
例 gameOver //ゲームオーバーの画面になります
jumpURL
文法 jumpURL p1
引数 p1 ジャンプ先URL
説明 ブラウザを指定したURLのページの表示にジャンプさせます。
この際実行中のゲームは停止状態になります。
例 jumpURL clear.html //クリアページにジャンプします
jumpURL http://www.t-cnet.or.jp/~nix/ //任意のページにジャンプします
loadPic
文法 loadPic p1|p2|p3
引数 p1 pic番号
p2|p3 表示する位置を示す横および縦座標
説明 preLoadで読み込んだJPEG画像を指定位置に表示させます
注) 同じpic番号の画像を同時に複数表示させることはできません。
例 loadPic 1|120|75 //(120,75)を左上頂点としてpic番号1の画像を表示
nextLevel
文法 nextLevel p1|p2
引数 p1 設定ファイルのファイル名
p2 0…NOWLOADING画面で前景・背景ともに新規で読み直します
1…現在の背景を前面に表示させた状態で次のデータを読み込みます
説明 次のレベルへ進みます。このときスコア、プレイヤー残機、ゲーム時間、
各オプションは引き継がれます。p1でその他の情報を含んだ新たな設定
ファイル(config.txt等)を指定します。
例 nextLevel config2.txt|1 //現在の背景を前景にしたconfig2.txtを読みます
picNumber
文法 picNumber p1
引数 p1 確保するpreLoadpicの枚数
説明 preLoadを行う前に使用するpic数を指定して、必要分のpic番号を確保します。
例 picNumber 8 //8枚分のpic番号を用意します
play
文法 play
引数 なし
説明 未実装
playSound
文法 playSound p1
引数 p1
説明 未実装
preLoad
文法 preLoad p1|p2
引数 p1 ファイル名
p2 pic番号
説明 JPEG画像を読み込みます。ここで読み込んだ画像はこの時点では表示
されず、loadJPEGでpic番号を指定することによって表示されます。
一般的に、ゲーム中に使用する画像をOnPreGame内で予め読んでおきます。
注) preLoadを実行する前にpicNumberでpic番号を確保する必要があります。
例 preLoad g1.jpg|2 //"g1.jpg"をpic番号2にロードしておきます
putItem
文法 putItem p1|p2|p3
引数 p1 アイテム種
p2|p3 位置
説明 未実装
resetTimer
文法 resetTimer p1
引数 p1 セットする時間(ミリ秒)
説明 ゲーム時間をリセットします。
主にレベル進行先でOnTimerを用いている場合の初期化を行います。
例 resetTimer //経過時間を00:00″00にします
removePic
文法 removePic p1
引数 p1 pic番号
説明 指定したpic番号の画像を消去します。
画面から消すだけで内容は破棄されませんので、loadPicを行うことで
ファイルを指定しないで再度表示することができます。
例 removePic 2 //pic番号2の画像を画面から消します
setFlag
文法 setFlag p1|p2
引数 p1 フラグナンバー
p2 0〜…指定フラグをこの値にする
説明 p1で指定したフラグをp2の値にします。
例 setFlag 1|0 //フラグ1を0にします
scroll
文法 scroll p1|p2|p3|p4
引数 p1|p2 最終移動量
p3|p4 移動単位量
説明 未実装(実行に当たっては動作の著しく重くなることが予想されます)
stop
文法 stop
引数 なし
説明 ゲームを強制的に停止させます。
例 stop //ゲームを停止します
text
文法 text p1|p2|p3|p4|p5|p6
引数 p1 表示文
p2|p3 表示テキストの左端および上端の座標
p4|p5 幅および高さ
p6 指定時間後(ミリ秒)消滅
説明 文を表示します。幅、高さの指定による縦横比の変化はないので注意して
ください。また、日本語文字等半角英数字(&や%、=等を含まない)以外を
用いる場合はURLエンコードして記述する必要があります。
URLエンコードについてはこのリファレンスの冒頭、概要をご覧下さい。
既にテキストが表示されている状態でtextを行うと、
前のテキストは消されて新しいテキストが表示されます。
同時に複数のテキストを表示することはできません。
例 text SaveMe|100|120|300|40|2000
//(100,120)の位置に幅300高さ40の範囲でSaveMeと2秒間表示します。
throw
文法 throw
引数 なし
説明 未実装
warp
文法 warp p1|p2
引数 p1|p2 座標
説明 未実装
■注意事項
本イベント記述文法および未実装の予定項目は、バージョンアップにあたって
予告無く変更されることがあります。ご了承ください。