【解決済み】マリオのような当たり判定

inari
記事: 5
登録日時: 2018年10月29日(月) 23:27

【解決済み】マリオのような当たり判定

投稿記事by inari » 2021年10月23日(土) 14:17

書き込み失礼します、初めてツクールで、横ジャンプアクションのようなものを作りたいと思っています。
(※事前設定:「決定」ボタンを押すと「プレイヤー」が3マス決まった範囲をジャンプ。
横マップという概念がないので、全マス移動しないように見た目同じの行動不能タイルを貼って
横一列だけ「プレイヤー」が移動できるようにしています。)

質問なのですが、
①(ピクチャ表示でない)「プレイヤー」が敵の「上」から接触した場合にのみ敵を倒せる判定
②「側面」から(プレイヤー&敵どちらからも)当たるとダメージ(プレイヤー)判定
というマリオのようなイベント判定の作り方が分からず困っています。

わかる方がいらっしゃいましたら、回答よろしくお願い致します。

当たり判定.png
当たり判定.png (28.26 KiB) 閲覧数: 1412 回
最後に編集したユーザー inari on 2021年10月24日(日) 01:16 [ 編集 1 回目 ]

ゆわか
記事: 292
登録日時: 2015年11月10日(火) 20:08
連絡を取る:

Re: 【当たり判定】マリオのような当たり判定

投稿記事by ゆわか » 2021年10月23日(土) 21:25

プレイヤーと敵キャラは重なり合わず
方向はともかく、接触したかどうかの判定自体は出来ていると仮定して
どの方向から接触したかを分岐するなら
プレイヤーのY座標と接触したイベントのY座標を変数で取得して
数値が同じなら、横から接触。
それ以外なら上から接触(下から接触の可能性もある?)
ていうのはいかがでしょうか。
inari
記事: 5
登録日時: 2018年10月29日(月) 23:27

【解決済み】「当たり判定」マリオのような当たり判定

投稿記事by inari » 2021年10月24日(日) 01:14

回答ありがとうございます。
Y座標を基本命令を使って、変数取得がわからない…
また、コモンイベントで取得させておく?のか、
イベントで取得させておいて並列処理させるのか
「変数を使った処理方法」がツクール自体初めてでよく分からず悩んでいました。

(ジャンプ機能について)
本当につい先程気が付きました!1マスしか上方向に飛んでおらず、
『敵の頭上に当たれば倒せる』という事が出来なかったみたいです。
ジャンプ実装出来たという嬉しさで、全然気がついてませんでした。
(※画像がジャンプしている様子です、1マスしか上方向に飛べていませんでした
 敵の頭の上に乗って踏むことがそもそもできない)

本来の解決ではありませんが、ジャンプ機能は違う形で活用したいと思います。
(当たるとダメージを受ける 避ける専用とか?)

ご回答者様ありがとうございました。
またわからない事があれば調べてから質問したいと思います。
添付ファイル
Screenshot_8.png
ゆわか
記事: 292
登録日時: 2015年11月10日(火) 20:08
連絡を取る:

Re: 【解決済み】マリオのような当たり判定

投稿記事by ゆわか » 2021年10月24日(日) 18:48

一応解決ということですが
Y軸を変数に取得する方法がわからないままだと
今後何かと困りそうなので、参考までに取得方法だけ記載しておきますね。
返信は不要です。

変数の操作というイベントコマンドから行います。
ゲームデータの項目から、キャラクターを選び、マップYを選択。
例えばプレイヤーのY座標を取得するのは

◆変数の操作:#0001 = プレイヤーのマップY

です。
inari
記事: 5
登録日時: 2018年10月29日(月) 23:27

Re: 【解決済み】マリオのような当たり判定

投稿記事by inari » 2021年10月26日(火) 23:09

知り合いのツクール触っている人もY取得の方法を知らず
全然見つけれてませんでした、
こんな所にあったのか!と盲点でした。

返信不要との事でしたが、今後困る事は間違いないので
助かりました、回答&お時間頂きありがとうございました!

“MZ:質問” へ戻る