RPGツクール2000/自作戦闘
■ピクチャー放物線移動処理
(更新:2011/09/24)


ピクチャー画像(ボール)を放物線を描いて移動させる処理を設定します。



※このピクチャー放物線移動処理のイベント設定はかなり難しく、
 ツクールの初心者向けではありません。


動作見本用のサンプルデータ
サンプルのダウンロードは↓をクリックしてください。
サンプルのイベント設定状況を見る場合は、
ツクールの作品データが入っているフォルダを開いて、
その中にサンプルの作品データを入れてください。
【ツクールのフォルダの開き方を見る】
このサンプルデータのイベント設定をコピー&貼り付けして、
制作中の作品に使用する場合は、
イベントの処理構造を理解した上自己責任でご利用ください。

動作確認用のサンプル内では正常に動いていたイベントが、
制作中の作品にコピー&貼り付けしたら正常に動かなくなった場合は、
明らかにコピー&貼り付けの作業に問題があった事になります。



☆表示方法
放物線を描いて画像を表示させる方法は、
主に「ピクチャー型」と「マップイベント型」があります。



■ピクチャー型
ピクチャーの画像を放物線を描いて表示する方法です。
当ページではこのピクチャー型の制作方法を紹介します。

ピクチャー型の欠点としては、以下のものがあります。

*イベント設定が少々難しく、処理構造を理解するのが難しい。
*ピクチャーの画像がマップ上の画像よりも上に表示される。
*使用していないピクチャー番号が必要になる。
 ※設定例ではピクチャーを2枚使います。
*画面スクロールがある場合は、画面スクロールに対応した設定が必要になる。
 ※このページの設定は、固定画面(横20×縦15+ループなし)のマップのみに対応。

ピクチャー型は比較的欠点の少ない所が特徴ですが、
ピクチャーや変数の扱いに慣れていないと、ちょっと苦戦するかもしれません。



■マップイベント型
マップイベントの画像をキャラクターの動作指定にある
ジャンプ」を使って移動させる方法です。
設定は比較的簡単なのですが、様々な欠点(仕様)があり、
ピクチャー型に比べますと使い勝手は悪いです。

マップイベント型の欠点としては、以下のものがあります。

*全てのマップにマップイベントを設定する必要がある。
 ※コモンイベントでマップイベントを操作する場合は、
  全てのマップイベントのマップIDを揃える必要があります。
*画像サイズの最大が横24×縦32ピクセルである。
 ※複数のマップイベントを用意して同時に動かす設定を行えば、
  一応大きな画像にも対応する事はできます。
*影の表示ができない。
 ※影だけピクチャーで表示すれば一応可能。
*高さの設定ができない。
*移動途中(ジャンプ中)に移動方向が変えられない。
 ※移動途中に消す事は「イベント出現条件」をOFFにする方法で可能。
*移動する距離や方向のパターンの数だけ、
 キャラクターの動作指定を用意する必要がある。
 
※直線状に2〜5マスの4つの距離で4方向に飛ばせる場合は、
  4つの距離×4方向=16個キャラクターの動作指定が必要になります。
*他のイベントで「指定動作の全実行」や「指定動作の全解除」があると、
 正常に動かなくなる事がある。
*マップの範囲外(画面に映らない所)に移動する事ができない。
 ※3マス先まで飛ばせる場合は、
  マップの端の3マス以内に主人公が移動できないようにしたり、
  マップの端では飛ばす処理が実行されないようにしたりと、
  制作者側の工夫が必要になります。

上記欠点でも特に問題が無ければマップイベント型で設定されると良いでしょう。

なお、ジャンプの設定方法に関しては、↓をクリックして確認してください。
【ジャンプ処理に関するページを開く】



*補足*
一応戦闘アニメを使って放物線を描いて表示する方法もあります。
しかし使い勝手が悪いので、あまりお勧めできません。

主な欠点としては、以下のものがあります。

*2つ以上の戦闘アニメを同時に表示する事ができない。
*表示する基準キャラが必要である。
 ※放物線移動中に主人公が自由に動けるようにする場合は、
  戦闘アニメを表示するためのマップイベントが必要です。
*移動する画像がマップ上の画像よりも上に表示される。
*移動する距離や方向、画像の種類の数だけ戦闘アニメを用意する必要がある。

この条件ならば、ピクチャー型で表示した方が良いでしょう。
但し「使えるピクチャー番号が無い」など、
状況下によっては戦闘アニメを使う必要性も出てくるかもしれません。



☆スイッチ・変数の一覧
使用するスイッチ・変数は↓をクリックして確認してください。
【スイッチ・変数の一覧表を別ウィンドウで表示する】



☆ボールの画像について
今回は2種類のピクチャー画像を使用します。

ピクチャー番号 設定例の画像名 画像見本 画像サイズ 備考
1番 ボールの影 8×10 透明度60%で表示
11番 ボール 8×8  
  
※サンプルデータの中にピクチャー画像が一括で入っています。

ボールの影は、ボールと重なった時の事を考えて、
少し上の部分に透明の領域を残しています。

なお、ボールの影の表示が無くても、ボールの放物線移動は可能です。
しかしボールの影の表示が無いと現在の高さが分かりにくくなりますので、
今回の設定ではボールの影を設定しています。
▼影の有無の見本。特に上下に飛ばす時には影の存在が重要になります。



☆ボールの移動処理について
ボールは、主人公が向いている直線状2ピクセル単位で移動させます。

※ボールは60分の1秒単位(ウェイト:0.0秒単位)で移動します。


ボールの高さは、影の位置を基点に表示しています。


現在のボールの高さは、最大の高さの何パーセントの高さなのかで設定しています。
高さ0%影がある高さであり、ボールが地面に落ちた事になります。
高さ100%設定した高さの位置であり、
高さ100%になった所でボールの落下が始まります。

最大高さを「32ピクセル」に設定した場合は、以下のような感じになります。
高さ% ボールの影からの高さ
0% 0ピクセル
25% 8ピクセル
50% 16ピクセル
100% 32ピクセル


ボールの高さの設定では、主に3つの変数を使います。
変数[0006:高さ%合計]
変数[0107:ボール01:高さ%±]
変数[0108:ボール01:現在高さ%]



まず変数0107番半分の距離(ボールが最も高くなる距離)の移動回数を設定します。
移動回数とは、2ピクセルの移動を1回とカウントした時の移動回数であり、
1マス(16ピクセル)では8回の移動回数になります。

今回設定する値は、半分の距離なので、
1マス移動させる場合は4回の移動回数
3マス移動させる場合は12回の移動回数変数0107番に設定します。
イベントの設定では、
◆変数の操作:[0107:高さ%±]代入,変数[0004]の値
◆変数の操作:[0107:高さ%±]乗算,4

と設定しています。
※変数0004番には移動距離(マス単位)を設定しています。

変数0107番は、ボールが移動するごとに「減算1」になります。
そのため、1マス先まで飛ばす場合は、
-1-2-3 -4
と言った感じに変数0107番の値が変化します。
変数の値がプラス値からマイナス値になるのは、
プラス値=上昇
マイナス値=落下
と言った設定になっているためです。

▼1マス先へ飛ばす時の変数0107番の値の変化イメージ



変数0006番には、100%になるまでの変数0107番の合計数を設定します。
合計数とは、変数0107番が「0」になるまでの合計数であり、
1マス先まで飛ばす場合は「4+3+2+1」と言う事で、
変数0006番には「10」が設定されます。
もしも3マス先の場合は「12+11+10+9+8+7+6+5+4+3+2+1」となり、
変数0006番には「78」が設定されます。

距離別の変数0006番に設定する値
移動距離 設定する値
1マス先 10
2マス先 36
3マス先 78
4マス先 136
5マス先 210
6マス先 300
7マス先 406
8マス先 528
9マス先 666
 
※実際のボールの移動処理では、
 変数0006番の値をコピーした変数0106番を使用します。



変数0108番には、移動するごとに変数0107番の値が減算で設定されます。
1マス先まで移動する場合の変数0107番変数0108番の値の変化は以下の通りです。
移動ピクセル数 2 4 6 8 10 12 14 16 18
変数0107番 4 3 2 1 0 -1 -2 -3 -4
変数0108番 -4 -7 -9 -10 -10 -9 -7 -4 0
 
※1マス先は16ピクセルですが、
 処理の構造上+2ピクセル先まで移動してボールが消えます。
※変数0108番の値を減算する理由は、ボールが画面上に行くためには、
 Y表示位置を減算する必要があるためです。




☆初期設定について
ピクチャーは予め透明度100%で表示しておきます。
これはピクチャーの表示を実行すると処理落ちが発生するため、
処理落ち対策のために事前にピクチャーの表示を実行しておきます。

透明度100%のピクチャーを見える状態にする時には、
ピクチャーの移動透明度0%にして見える状態にします。

ピクチャーを消す時には、ピクチャーの消去を使わずに、
ピクチャーの移動で再び透明度100%にして、
ピクチャーが見えない状態にして、画面上から消します。


ボールを移動させる場合は、事前に以下の変数の設定が必要になります。
変数[0004:飛ばす距離(マス単位)]
変数[0005:飛ばす高さ(ドット単位)]
変数[0006:高さ%合計]


この変数の設定は、一度設定すれば飛距離や高さの設定が変わらない限り、
そのままの状態で何度もボールを飛ばす事ができます。



☆マップイベント「マップ右下」について
このページの設定では必要ないですが、
今後の敵キャラの設定画面スクロールの設定を行う場合、
マップイベント「マップ右下」の設定が必要になります。

このマップイベント「マップ右下」は、
その名の通り、マップの右下のマスに設定するマップイベントの事を言います。
もしかすると今後必要になる可能性がありますので、
先にマップの右下に空のマップイベントを設定してください。
※イベントID1番が望ましいです。
※複数のマップで設定する場合は必ず同じイベントIDにしてください。





☆イベントの基本設定
ピクチャーを放物線を描いて移動する処理は、コモンイベントに設定します。

コモンイベントは2つ設定します。
コモンイベント 内容
放物線移動:キー処理 決定キーを押すとボールを飛ばします。
放物線移動:ボール移動 ボールを移動する処理を設定します。
 
一応1つのコモンイベントにまとめて設定する事もできますが、
2つ分けた方が後々の改造がしやすくなりますので、
今回は2つのコモンイベントに分けて設定しています。


なお、キー押し続けの不具合対策として、キー入力の処理二重に設定されています。

■コモンイベント「放物線移動:キー処理」
イベント開始条件:定期的に並列処理する
◆ラベルの設定:1番
◆キー入力の処理:[0001:キー入力](決定/オプション:OFF)
◆ウェイト:0.0秒
◆条件分岐:変数[0001:キー入力]が0
 ◆キー入力の処理:[0001:キー入力](決定/オプション:OFF)
 ◆
:分岐終了
◆注釈:----------------------------
:  :初期設定
:  : 
◆変数の操作:[0002:現在のマップID]代入,主人公のマップID
◆条件分岐:変数[0003:前のマップID]がV[0002]以外<別のマップへ移動した時
 ◆変数の操作:[0003:前のマップID]代入,主人公のマップID
 ◆ピクチャーの表示:1,ボールの影,(160,120)(透明度:100%)<透明状態で表示
 ◆ピクチャーの表示:11,ボール,(160,120)(透明度:100%)<透明状態で表示
 ◆変数の操作:[0004:飛距離(マス単位)]代入,3<飛ばす距離(マス単位)を設定
 ◆変数の操作:[0005:最大の高さ(ドット単位)]代入,32<飛ばす高さ(ピクセル単位)を設定
 ◆変数の操作:[0006:高さ%合計]代入,78<3マス先の設定値
 ◆
:分岐終了
◆注釈:----------------------------
:  :ボール発射
:  : 

◆条件分岐:変数[0001:キー入力]が0<決定キーが押されていない時
 ◆スイッチの操作:[0001:決定キー押し]をOFFにする
 ◆指定ラベルへ飛ぶ:1番
 ◆
:分岐終了
◆条件分岐:スイッチ[0001:決定キー押し続け]がON<決定キーを押し続けている時
 ◆指定ラベルへ飛ぶ:1番
 ◆
:分岐終了
◆スイッチの操作:[0001:決定キー押し]をONにする
◆条件分岐:スイッチ[0011:移動中:ボール01]がOFF<ボール1が移動中ではない時(発射可能)
 ◆変数の操作:[0101:ボール01:現在位置X]代入,主人公の画面X<発射位置を設定
 ◆変数の操作:[0102:ボール01:現在位置Y]代入,主人公の画面Y<発射位置を設定
 ◆変数の操作:[0102:ボール01:現在位置Y]減算,8<発射位置をマスの中央に移動
 ◆変数の操作:[0103:ボール01:移動方向]代入,主人公の向き<発射方向を設定
 ◆変数の操作:[0104:ボール01:最大の高さ]代入,変数[0005]の値<最大の高さを代入
 ◆変数の操作:[0106:ボール01:高さ%合計]代入,変数[0006]の値<高さ%の合計を代入
 ◆変数の操作:[0107:ボール01:高さ%±]代入,変数[0004]の値<飛ばすマス数を代入
 ◆変数の操作:[0107:ボール01:高さ%±]乗算,4<乗算4で半分の移動回数にする
 ◆変数の操作:[0108:ボール01:現在高さ%]代入,0
 ◆スイッチの操作:[0011:移動中:ボール01]をONにする<ボールの移動開始
 ◆効果音の演奏:風7<投げる時の効果音
 ◆
:分岐終了
◆指定ラベルへ飛ぶ:1番




■コモンイベント「放物線移動:ボール移動」
イベント開始条件:定期的に並列処理する
◆ラベルの設定:10番
◆ウェイト:0.0秒
◆変数の操作:[0002:現在のマップID]代入,主人公のマップID
◆条件分岐:変数[0003:前のマップID]がV[0002]以外<別のマップへ移動した時
 ◆スイッチの操作:[0011:移動中:ボール01]をOFFにする
 ◆
:分岐終了
◆注釈:------------------------------------------------------------
:  :ボール1の移動処理
:  : 

◆条件分岐:スイッチ[0011:移動中:ボール01]がON(オプション:ON)<ボール1が移動中の時
 ◆注釈:----------------------------
 :  :ボールを2ピクセル移動
 :  : 

 ◆条件分岐:変数[0103:ボール01:移動方向]が2<発射時の主人公が下向きだった時
  ◆変数の操作:[0102:ボール01:現在位置Y]加算,2<ボールの位置を画面下に2ピクセル移動
  ◆
 :分岐終了
 ◆条件分岐:変数[0103:ボール01:移動方向]が4<発射時の主人公が左向きだった時
  ◆変数の操作:[0101:ボール01:現在位置X]減算,2<ボールの位置を画面左に2ピクセル移動
  ◆
 :分岐終了
 ◆条件分岐:変数[0103:ボール01:移動方向]が6<発射時の主人公が右向きだった時
  ◆変数の操作:[0101:ボール01:現在位置X]加算,2<ボールの位置を画面右に2ピクセル移動
  ◆
 :分岐終了
 ◆条件分岐:変数[0103:ボール01:移動方向]が8<発射時の主人公が上向きだった時
  ◆変数の操作:[0102:ボール01:現在位置Y]減算,2<ボールの位置を画面上に2ピクセル移動
  ◆
 :分岐終了
 ◆注釈:----------------------------
 :  :ボールの高さを変更
 :  : 

 ◆変数の操作:[0108:ボール01:現在高さ%]減算,変数[0107]の値<高さ%を変える
 ◆変数の操作:[0010:ボールの表示位置Y]代入,変数[0108]の値<現在高さ%を代入
 ◆変数の操作:[0010:ボールの表示位置Y]乗算,変数[0104]の値<最大の高さを乗算
 ◆変数の操作:[0010:ボールの表示位置Y]除算,変数[0106]の値<合計移動回数で除算
 ◆変数の操作:[0010:ボールの表示位置Y]加算,変数[0102]の値<影(地面)のY位置を加算
 ◆注釈:----------------------------
 :  :ボールの表示
 :  : 

 ◆ピクチャーの移動:1,(V[0101],V[0102]),0.0秒(透明度:60%)<影を表示
 ◆ピクチャーの移動:11,(V[0101],V[0010]),0.0秒(透明度:0%)<ボールを表示
 ◆注釈:----------------------------
 ◆変数の操作:[0107:ボール01:高さ%±]減算,1<高さを変える
 ◆条件分岐:変数[0108:ボール01:現在高さ%]が1以上<ボールが着弾した時
  ◆注釈:----------------------------
  :  :ボールが着弾(ボールを消す)
  :  : 

  ◆効果音の演奏:打撃6<着弾時の効果音
  ◆スイッチの操作:[0011:移動中:ボール01]をOFFにする
  ◆
 :分岐終了
 ◆
:それ以外の場合<ボール1が移動していない時
 ◆ピクチャーの移動:1,(160,120),0.0秒(透明度:100%)
 ◆ピクチャーの移動:11,(160,120),0.0秒(透明度:100%)
 ◆
:分岐終了
◆指定ラベルへ飛ぶ:10番



以上で設定完了です。



☆ボールが2個まで飛ばせるように改良
上記基本設定では、画面上に1個のボールしか表示する事ができません。
それを画面上に2個まで表示できるように改良します。

■コモンイベント「放物線移動:キー処理」
イベント開始条件:定期的に並列処理する
◆ラベルの設定:1番
◆キー入力の処理:[0001:キー入力](決定/オプション:OFF)
◆ウェイト:0.0秒
◆条件分岐:変数[0001:キー入力]が0
 ◆キー入力の処理:[0001:キー入力](決定/オプション:OFF)
 ◆
:分岐終了
◆注釈:----------------------------
:  :初期設定
:  : 
◆変数の操作:[0002:現在のマップID]代入,主人公のマップID
◆条件分岐:変数[0003:前のマップID]がV[0002]以外
 ◆変数の操作:[0003:前のマップID]代入,主人公のマップID
 ◆ピクチャーの表示:11,ボール,(160,120)(透明度:100%)
 ◆ピクチャーの表示:1,ボールの影,(160,120)(透明度:100%)
 ◆ピクチャーの表示:12,ボール,(160,120)(透明度:100%)
 ◆ピクチャーの表示:2,ボールの影,(160,120)
(透明度:100%)
 ◆変数の操作:[0004:飛距離(マス単位)]代入,3
 ◆変数の操作:[0005:最大の高さ(ドット単位)]代入,32
 ◆変数の操作:[0006:高さ%合計]代入,78
 ◆
:分岐終了
◆注釈:----------------------------
:  :ボール発射
:  : 

◆条件分岐:変数[0001:キー入力]が0
 ◆スイッチの操作:[0001:決定キー押し]をOFFにする
 ◆指定ラベルへ飛ぶ:1番
 ◆
:分岐終了
◆条件分岐:スイッチ[0001:決定キー押し続け]がON
 ◆指定ラベルへ飛ぶ:1番
 ◆
:分岐終了
◆スイッチの操作:[0001:決定キー押し]をONにする
◆条件分岐:スイッチ[0011:移動中:ボール01]がOFF
 ◆変数の操作:[0101:ボール01:現在位置X]代入,主人公の画面X
 ◆変数の操作:[0102:ボール01:現在位置Y]代入,主人公の画面Y
 ◆変数の操作:[0102:ボール01:現在位置Y]減算,8
 ◆変数の操作:[0103:ボール01:移動方向]代入,主人公の向き
 ◆変数の操作:[0104:ボール01:最大の高さ]代入,変数[0005]の値
 ◆変数の操作:[0106:ボール01:高さ%合計]代入,変数[0006]の値
 ◆変数の操作:[0107:ボール01:高さ%±]代入,変数[0004]の値
 ◆変数の操作:[0107:ボール01:高さ%±]乗算,4
 ◆変数の操作:[0108:ボール01:現在高さ%]代入,0
 ◆スイッチの操作:[0011:移動中:ボール01]をONにする
 ◆効果音の演奏:風7
 ◆指定ラベルへ飛ぶ:1番
 ◆
:分岐終了
◆条件分岐:スイッチ[0012:移動中:ボール02]がOFF<ボール1の設定をコピーして修正する
 ◆変数の操作:[0121:ボール02:現在位置X]代入,主人公の画面X
 ◆変数の操作:[0122:ボール02:現在位置Y]代入,主人公の画面Y
 ◆変数の操作:[0122:ボール02:現在位置Y]減算,8
 ◆変数の操作:[0123:ボール02:移動方向]代入,主人公の向き
 ◆変数の操作:[0124:ボール02:最大の高さ]代入,変数[0005]の値
 ◆変数の操作:[0126:ボール02:高さ%合計]代入,変数[0006]の値
 ◆変数の操作:[0127:ボール02:高さ%±]代入,変数[0004]の値
 ◆変数の操作:[0127:ボール02:高さ%±]乗算,4
 ◆変数の操作:[0128:ボール02:現在高さ%]代入,0
 ◆スイッチの操作:[0012:移動中:ボール02]をONにする
 ◆効果音の演奏:風7
 ◆
:分岐終了

◆指定ラベルへ飛ぶ:1番




■コモンイベント「放物線移動:ボール移動」
イベント開始条件:定期的に並列処理する
◆ラベルの設定:10番
◆ウェイト:0.0秒
◆変数の操作:[0002:現在のマップID]代入,主人公のマップID
◆条件分岐:変数[0003:前のマップID]がV[0002]以外
 ◆スイッチの操作:[0011〜0012]をOFFにする
 ◆
:分岐終了
◆注釈:------------------------------------------------------------
:  :ボール1の移動処理
:  : 

◆条件分岐:スイッチ[0011:移動中:ボール01]がON(オプション:ON)
 ◆注釈:----------------------------
 :  :ボールを2ピクセル移動
 :  : 

 ◆条件分岐:変数[0103:ボール01:移動方向]が2
  ◆変数の操作:[0102:ボール01:現在位置Y]加算,2
  ◆
 :分岐終了
 ◆条件分岐:変数[0103:ボール01:移動方向]が4
  ◆変数の操作:[0101:ボール01:現在位置X]減算,2
  ◆
 :分岐終了
 ◆条件分岐:変数[0103:ボール01:移動方向]が6
  ◆変数の操作:[0101:ボール01:現在位置X]加算,2
  ◆
 :分岐終了
 ◆条件分岐:変数[0103:ボール01:移動方向]が8
  ◆変数の操作:[0102:ボール01:現在位置Y]減算,2
  ◆
 :分岐終了
 ◆注釈:----------------------------
 :  :ボールの高さを変更
 :  : 

 ◆変数の操作:[0108:ボール01:現在高さ%]減算,変数[0107]の値
 ◆変数の操作:[0010:ボールの表示位置Y]代入,変数[0108]の値
 ◆変数の操作:[0010:ボールの表示位置Y]乗算,変数[0104]の値
 ◆変数の操作:[0010:ボールの表示位置Y]除算,変数[0106]の値
 ◆変数の操作:[0010:ボールの表示位置Y]加算,変数[0102]の値
 ◆注釈:----------------------------
 :  :ボールの表示
 :  : 

 ◆ピクチャーの移動:1,(V[0101],V[0102]),0.0秒(透明度:60%)
 ◆ピクチャーの移動:11,(V[0101],V[0010]),0.0秒(透明度:0%)
 ◆注釈:----------------------------
 ◆変数の操作:[0107:ボール01:高さ%±]減算,1
 ◆条件分岐:変数[0108:ボール01:現在高さ%]が1以上
  ◆注釈:----------------------------
  :  :ボールが着弾(ボールを消す)
  :  : 

  ◆効果音の演奏:打撃6
  ◆スイッチの操作:[0011:移動中:ボール01]をOFFにする
  ◆
 :分岐終了
 ◆
:それ以外の場合
 ◆ピクチャーの移動:1,(160,120),0.0秒(透明度:100%)
 ◆ピクチャーの移動:11,(160,120),0.0秒(透明度:100%)
 ◆
:分岐終了
◆注釈:------------------------------------------------------------
:  :ボール2の移動処理※ボール1の設定をコピーして修正する
:  : 

◆条件分岐:スイッチ[0012:移動中:ボール02]がON(オプション:ON)
 ◆注釈:----------------------------
 :  :ボールを2ピクセル移動
 :  : 

 ◆条件分岐:変数[0124:ボール02:移動方向]が2
  ◆変数の操作:[0122:ボール02:現在位置Y]加算,2
  ◆
 :分岐終了
 ◆条件分岐:変数[0124:ボール02:移動方向]が4
  ◆変数の操作:[0121:ボール02:現在位置X]減算,2
  ◆
 :分岐終了
 ◆条件分岐:変数[0124:ボール02:移動方向]が6
  ◆変数の操作:[0121:ボール02:現在位置X]加算,2
  ◆
 :分岐終了
 ◆条件分岐:変数[0124:ボール02:移動方向]が8
  ◆変数の操作:[0122:ボール02:現在位置Y]減算,2
  ◆
 :分岐終了
 ◆注釈:----------------------------
 :  :ボールの高さを変更
 :  : 

 ◆変数の操作:[0128:ボール02:現在高さ%]減算,変数[0127]の値
 ◆変数の操作:[0010:ボールの表示位置Y]代入,変数[0128]の値
 ◆変数の操作:[0010:ボールの表示位置Y]乗算,変数[0124]の値
 ◆変数の操作:[0010:ボールの表示位置Y]除算,変数[0126]の値
 ◆変数の操作:[0010:ボールの表示位置Y]加算,変数[0122]の値
 ◆注釈:----------------------------
 :  :ボールの表示
 :  : 

 ◆ピクチャーの移動:2,(V[0121],V[0122]),0.0秒(透明度:60%)
 ◆ピクチャーの移動:12,(V[0121],V[0010]),0.0秒(透明度:0%)
 ◆注釈:----------------------------
 ◆変数の操作:[0127:ボール02:高さ%±]減算,1
 ◆条件分岐:変数[0128:ボール02:現在高さ%]が1以上
  ◆注釈:----------------------------
  :  :ボールが着弾(ボールを消す)
  :  : 

  ◆効果音の演奏:打撃6
  ◆スイッチの操作:[0012:移動中:ボール02]をOFFにする
  ◆
 :分岐終了
 ◆
:それ以外の場合
 ◆ピクチャーの移動:2,(160,120),0.0秒(透明度:100%)
 ◆ピクチャーの移動:12,(160,120),0.0秒(透明度:100%)
 ◆
:分岐終了

◆指定ラベルへ飛ぶ:10番




☆補足
このページの設定は、
固定画面(横20×縦15+ループなし)のみで使用できる設定です。
固定画面では無いマップに対応させるには、
画面スクロール対応の設定も必要になります。



放物線移動処理のページ
基礎ページ まずはこのページの設定を行ってください。
飛距離を変える 装備状態や攻撃力などによって飛距離を変えます。
敵への当たり判定 敵(マップイベント)にボールが当たるようにします。
高低差(壁)の設定 高低差の設定を追加します。
画面スクロール対応 画面スクロールに対応できるように改良します。
 

YADOTトップ  このサイトは何?  気紛れな空間へ戻る  メール