RPGツクール2000/自作戦闘【サイトトップへ戻る】
■ピクチャー放物線移動処理
(更新:2020/08/08)


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



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

ショートカット
■表示方法
■スイッチ・変数の一覧
■ボールの画像について
■ボールの移動処理について
■初期設定について
■マップイベント「マップ右下」について
■イベントの基本設定
■ボールが2個まで飛ばせるように改良
■補足

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

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


  
■表示方法

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



■ピクチャー型

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

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

イベント設定が少々難しく、処理構造を理解するのが難しい。
ピクチャーの画像がマップ上の画像よりも上に表示される。
使用していないピクチャー番号が必要になる。
 
※設定例ではピクチャーを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秒単位)で2ピクセル移動します。

1マスの距離は「16ピクセル」なので、
1マス移動するのに「60分の8秒(移動回数=8回)」になり、
3マス移動するのに「60分の24秒(移動回数=24回)」になります。



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



ボールは着弾地点の半分の距離の所で最大の高さになるため、
ちょうど半分の距離になった所で「高さ100%」になります。



移動途中のボールの高さは、最大の高さから何パーセントの高さなのかで設定します。

最大の高さを「32ピクセル」に設定した場合は、以下のような感じになります。

高さ% ボールの影からの高さ
0% 0ピクセル
25% 8ピクセル
50% 16ピクセル
100% 32ピクセル



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


まず変数0107番着弾地点の半分の距離の移動回数を設定します。
着弾が1マス先(移動8回)の場合は4回の移動回数
着弾が3マス先(移動24回)の場合は12回の移動回数変数0107番に設定します。

イベント設定では…
◆変数の操作:[0107:高さ%±]代入,変数[0004]の値
◆変数の操作:[0107:高さ%±]乗算,4
と設定しています。
※変数0004番には、着弾までのマス数を設定しています。



変数0107番はボールが移動するごとに「減算1」になります。

そのため、1マス先まで飛ばす場合は…
-1-2-3 -4
と言った感じに変数0107番の値が変化します。

変数の値がプラス値からマイナス値になるのは、
プラス値=上昇」「マイナス値=落下」と言った設定になっているためです。

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




変数0006番には100%になるまでの変数0107番の合計数を設定します。

例えば着弾が1マス先(移動回数8回)の場合は、
100%の高さになるのは「移動回数4回」なので、
4+3+2+1」と言う事で変数0006番には「10」が設定されます。

着弾が3マス先(移動回数24回)の場合は、
100%の高さになるのは「移動回数12回」なので、
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トップ  このサイトは何?  気紛れな空間へ戻る  メール