【ツクールMV】敵イベントの座標拡大方法(並列処理限定)

アクションRPGの基本ですが逃げゲーとかにも使えます。

■用意するもの
・FloatVariables(トリアコンタンさん)
・HalfMove(トリアコンタンさん)

・やる気と根気

トリアコンタンさんのプラグインを使うので各自でググってダウンロードして下さい。

イベントの実行内容を以下の通りに設定します。起動条件(トリガー)は並列処理です。
まず変数を4つ用意します。私の場合は1000番台の変数を使っていますが番号はどれでも良いです。

新規キャンバス6

上から順に説明します。

$gameVariables.setValue(1015,this.character(0).x +0.0)
$gameVariables.setValue(1016,this.character(0).y +0.0)
$gameVariables.setValue(1017,this.character(0).x -0.0)
$gameVariables.setValue(1018,this.character(0).y -0.0)


このスクリプトはマップ上のイベントの座標を取得するためのものです。
元々の形は$gameVariables.setValue(変数番号,数値)ですね。イベントコマンドで処理をすると変数を取得してそこに座標の変更というような二度手間が発生するので、今回は出来るだけ短くという形をとるためスクリプトで一括して代入しています。

次が取得したデータからの座標判定です。
座標判定は条件分岐を使います。HalfMoveを使っているので判定は半歩ごとになっていますので1マス48pxの半分で24pxごとです。デフォルトが半マスなので当たり判定を大きくしたい場合はスクリプトの値を変える必要があります。

例えば右に当たり判定を大きくしたい場合は1015番の変数なので
$gameVariables.setValue(1015,this.character(0).x +2.0)
という感じで大きくできます。

肝心の条件判定のスクリプトですが
$gameVariables.value(1015) >= this.character(-1).x && $gameVariables.value(1016) >= this.character(-1).y && $gameVariables.value(1017) <= this.character(-1).x && $gameVariables.value(1018) <= this.character(-1).y
となっています。このままコピペして条件分岐のスクリプト欄に入れて下さい。

後は接触したときの判定を各自で好きなように入力して下さい。

※注意点

座標を拡大する場合、どこからが基点になるのかな?と考える人が多いかと思います。答えは下の真ん中48pxの中心です。


ツクールのシステムではあくまで判定は1マス単位です。プライオリティを通常キャラと同じにして接触してみればわかると思いますが$を付けた大きなファイルの場合当たり判定が真ん中に来ることはありません。必ずキャラクターの下のマスに接触範囲がくるので拡大する場合は間違いのないようにしましょう。

$gameVariables.setValue(1015,this.character(0).x +1.0)
$gameVariables.setValue(1016,this.character(0).y +0.5)
$gameVariables.setValue(1017,this.character(0).x -1.0)
$gameVariables.setValue(1018,this.character(0).y -1.5)

↑こんな感じにすると良さげです。

web拍手 by FC2
[ 2017/09/02 15:10 ] RPGツクールMV | コメント(0)

【ツクールMV】歩数カウントで爆発させてみよう

コモンイベントに↓の内容を入力します。


マップにイベントを配置してスイッチ1番をONにします。


10マス歩くと無事爆発してゲームオーバーになることができます。やったね☆

web拍手 by FC2
[ 2017/09/02 11:45 ] RPGツクールMV | コメント(0)