デバックの小技アレコレ




苦労して苦労して苦労して……出来た!!
さあ、テストプレイだぜ!!

あ、あら……???

なんてコトはないですか?

スクリプト見直しても間違ってないのに!!

いやいや、間違ってるんです。
んじゃ、何処で間違ったのか?
そんなの解れば苦労しないよ!!
そんな方の為の打開策。


文章の表示を入れるのです。
なんて事ないですけど、コレがイイんだな。

形としては、
1、イベントを大まかに分けてみる
2、間に文章の表示命令をいれる。
3、実行。
まあまあ、見てみようじゃないですか。


◆条件分岐:スイッチ[小型船]がOFF=乗り物の数だけ条件分岐を用意します。
 ◆キー入力の処理:[キー入力小型船]=入力を許可するキーは数字のみに設定しています。
 ◆条件分岐:変数[キー入力小型船]が13=ココではテンキーの1を指定しています。
   ◆現在の場所を記憶:[現在位置MAP][現在位置X][現在位置Y]
  ◆条件分岐:主人公が上を向いている
   ◆変数の操作:[現在位置Y]減算1
   ◆
  :分岐終了
  ◆条件分岐:主人公が右を向いている
   ◆変数の操作:[現在位置X]加算1
   ◆
  :分岐終了
  ◆条件分岐:主人公が下を向いている
   ◆変数の操作:[現在位置Y]減算1
   ◆
  :分岐終了
  ◆条件分岐:主人公が左を向いている
   ◆変数の操作:[現在位置X]減算1
   ◆
  :分岐終了
  ◆指定位置の地形ID取得:(V[現在位置X],V[現在位置Y]),[地形ID]=小型船を置く場所が川、浅瀬か調べます。
  ◆条件分岐:変数[地形ID]が8=9はデフォルトで海・浅瀬のIDです。
   ◆乗り物の位置を設定:小型船,V[現在位置MAP],(V[現在位置X],V[現在位置Y])
   ◆乗り物の昇降
   ◆変数の操作:[キー入力小型船]代入,0
   ◆スイッチの操作:[小型船操作中]をONにする
   ◆
  :分岐終了
  ◆
 :分岐終了
 ◆
:分岐終了
◆






このスクリプトは、テク「ボタン1つで乗り物〜」のヤツですね。
テンキー1を押すことで小型船に乗れるようにしたいのですが、
コレが万が一、テンキー1を押しても乗れなかったとしたら?
なぜなぜどーして君です。というか、乗れません。

そこで、イベントの流れを考えてみませう。

1、今、小型船に乗っているかチェック
2、キーの入力
3、船の置く場所を計算
4、その場所の地形をチェック
5、船に乗る
……と、5段階に分けられますね。
次に、その段階の間に「文章の表示」命令です。
ただの空文章でもいいですが、「座標チェック」とか、「ここから〜」でも
書いといたほうが視覚的に解るのでイイです。

実行してみて、なんかおかしい!と思ったら
F9を押して、スイッチ、変数の確認をしてみましょう。
文章が表示されている間は当然イベントも進まないワケですから、
ゆっくり考えることが出来ます。
バグってのは原因は大抵スイッチ、変数のミスです。ココ重要。

実際に文章の命令を入れてみますよ。


◆文章:
   :小型船に乗ってる?
   :
   :
◆条件分岐:スイッチ[小型船]がOFF乗り物の数だけ条件分岐を用意します。
 ◆文章:
   :キー入力
   :
   :
 ◆キー入力の処理:[キー入力小型船]=入力を許可するキーは数字のみに設定しています。
 ◆文章:
   :キーチェック!!
   :
   :
 ◆条件分岐:変数[キー入力小型船]が13=ココではテンキーの1を指定しています。
   ◆文章:
   :現在位置
   :
   :
  ◆現在の場所を記憶:[現在位置MAP][現在位置X][現在位置Y]
  ◆条件分岐:主人公が上を向いている
   ◆変数の操作:[現在位置Y]減算1
   ◆
  :分岐終了
  ◆条件分岐:主人公が右を向いている
   ◆変数の操作:[現在位置X]加算1
   ◆
  :分岐終了
  ◆条件分岐:主人公が下を向いている
   ◆変数の操作:[現在位置Y]減算1
   ◆
  :分岐終了
  ◆条件分岐:主人公が左を向いている
   ◆変数の操作:[現在位置X]減算1
   ◆
  :分岐終了
  ◆文章:
   :目の前は浅瀬?
   :
   :
  ◆指定位置の地形ID取得:(V[現在位置X],V[現在位置Y]),[地形ID]=小型船を置く場所が川、浅瀬か調べます。
  ◆条件分岐:変数[地形ID]が8=9はデフォルトで海・浅瀬のIDです。
   ◆文章:
   :小型船に乗るよ
   :
   :
   ◆乗り物の位置を設定:小型船,V[現在位置MAP],(V[現在位置X],V[現在位置Y])
   ◆乗り物の昇降
   ◆変数の操作:[キー入力小型船]代入,0
   ◆スイッチの操作:[小型船操作中]をONにする
   ◆文章:
   :ここまで!!
   :
   :
   ◆
  :分岐終了
  ◆
 :分岐終了
 ◆
:分岐終了
◆
これを実行してみるとどうなるか?
答えはあなたの心の中に(オイ)。
因みに間違いは全部で3つ。
バグが取れたら文章の表示命令を消すのを忘れずにv


目次に戻る


Ads by TOK2