[過去ログ] WOLF RPGエディター 質問スレ 其の11 [無断転載禁止]©2ch.net (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
149
(1): 名前は開発中のものです。 [sage] 2018/01/17(水) 12:56:17.92 ID:lbus18Za(1) AAS
四隅の座標を計算して回せばいいやん
計算できないなら数学やり直すことから始めようか
178
(1): 名前は開発中のものです。 [sage] 2018/01/27(土) 00:45:03.92 ID:vvSBp518(1) AAS
>>177
177(1): 名前は開発中のものです。 [sage] 2018/01/26(金) 03:18:57.90 ID:6mk8RX64(1) AAS
・キャラ画像4方向移動方向4方向の場合

マップイベントの方向 + 主人公の方向 が10の場合は正面同士の接触
マップイベントの方向 = 主人公の方向 の場合は正面&背面の接触(バックアタック)
それ以外は正面&側面での接触(サイドアタック)

あとは主人公の座標+向いている方向から、正面1マスの座標を取得。そこに対象のマップイベントがいれば主人公側の↑の処理
いなければマップイベント側の↑の処理

・キャラ画像4方向移動方向8方向の場合

(1) マップイベントに対して主人公がどの方向にいるかを角度で算出する(arctanを使うのが一番簡単)
(2) マップイベントの向いている方向を角度に変換(2の場合は90等。自力で打ち込み作業)

(1)と(2)の角度の差θからマップイベントが主人公に対して前面、背面、側面のどちらを向いているか判断(-45≦θ≦45なら前面など)

前面以外は主人公側からの接触。バックアタックやサイドアタックなど
前面での接触だった場合、主人公側について(1) (2)の作業をして前面、側面、背面のどの方向を向けているか調べる

※ちなみにウディタのマップイベントは起動時に自動的にプレイヤーの方向を向くため、
方向固定解除→1マス移動→方向固定 のルーチンでマップイベントを移動させないと、マップイベントとの接触時の互いの向きによる判定ができない

だけど何故かマップイベントのカスタムルート設定からだとこのルーチンが組めなくて
コモンイベントからのイベント制御だとこのルーチンが組める
そのためマップイベントの移動なんかをコモンイベントで一括で行わないといけない
衝突判定はそれでバッチリ行けました!
行数もスッキリして感動です
詳しい説明ありがとうございます

で、次は衝突時にマップイベントが主人公側を向くのを改造するところでつまずきました
解説いただいたように下記の並列処理のコモンを作って動かしたのですが、

---
■動作指定:Ev0 / 向き固定OFF / 主人公に接近 / 向き固定ON
---

今度はマップイベント側の起動条件「イベント接触」が起動しなくなりました
現状では主人公側から接触すると起動するけど、モンスター側からは起動せずずっと主人公の後を付いてくるだけになってます
185: 名前は開発中のものです。 [sage] 2018/01/28(日) 01:31:07.92 ID:OKXGhkLN(2/2) AAS
>>181
181(1): 名前は開発中のものです。 [sage] 2018/01/27(土) 12:24:27.65 ID:wBqyuzFu(1/3) AAS
>>178
あ、ごめん忘れてた
コモンイベントの動作指定の場合、接触範囲拡張+イベント接触以外だとイベント側からの起動ができないんだった

マップイベントのカスタムルートで

移動頻度を設定 => 0 (以降の処理を毎フレーム処理)
向き固定OFF
主人公に接近
向き固定ON
移動頻度を設定 => 3 (任意の移動速度に戻す)

でできるはず
と思ったけど、半歩移動の設定の時に、イベントが上側から接触した場合は起動しないバグって治ってないんだな
行けました!
つまりこれはモンスターに移動命令を出したのに移動してないということは障害物があるんだから接触判定をしろってことですね
汎用性もあるのでこれを元に組んで行こうと思います

マップイベント内での処理だと後々に仕様変更したときにメンテナンスが大変なので、これだとコモン側で処理をコントロールできるのも素晴らしいです

加えてデバッグ文の使い方もこれで分かったので感謝感謝です!
404: 名前は開発中のものです。 [] 2018/09/10(月) 21:29:18.92 ID:2Vj0bNDT(1) AAS
マップイベントなら各イベント変数に保存しちゃってもいいと思う
イベントごとに必要なデータって多分そんなに多くないでしょ
位置やステータスはその都度呼び出すだろうし
498
(2): 名前は開発中のものです。 [sage] 2019/03/25(月) 17:42:51.92 ID:Sty5jDlN(1/2) AAS
>>496
496(1): 名前は開発中のものです。 [sage] 2019/03/23(土) 22:42:17.52 ID:jrobB4wY(1) AAS
装備欄を1つにしたのですが武器でなく防具装備用にしたいです
コモン106、107で装備中の武器と防具の行を入れ替えてもうまく行きませんでした
具体的には装備欄にcdbに入れた装備が表示されず、右の装備選択画面は武器のままです
どこをいじったらいいでしょうか
個人的には専用装備として外せない武器を装備させておいたほうが楽で良いと思う。下手に改造すると戦闘のステータス計算とかでエラー吐きそう

どうして装備欄を1つだけにしたいなら、武器と防具を装備可能にして、武器は選択できない&表示しないようにするぐらいかな
その場合はコモン93と109を改造する感じかな。106と107は戻したほうが良いよ。

>>497
497(1): 名前は開発中のものです。 [] 2019/03/24(日) 21:47:50.69 ID:HawZTbmP(1) AAS
少し長いです。
無知ゆえにおかしなことを言っていたらごめんなさい。
敵に負けてゲームオーバーになった後、ロードしたらある文章メッセージが表示されるようにしたいと思っています。
ロードしたらメッセージが表示されるところまでは自分でできたのですが、そこからあとが詰まりました。
ゲームオーバーイベントの最後に
■セーブデータに読み込み:セーブデータ[99]のV7[メッセ用]=1
を挿入し、
ロードしたらメッセージを表示するイベントの所に手を加えて
■セーブデータの内容読み込み:Cself0=セーブデータ[99]のV7[メッセ]
■条件分岐(変数):【1】Cself0 が 1と同じ
-◇分岐:【1】[Cself0 が 1と同じ ]の場合↓
|■ウェイト:7フレーム
|■文章:あいうえお
-◇上記以外
|■
◇分岐終了◇
としました。
すると、メニューからセーブをするとなんというか、ロード画面を残してほかのメニュー画面が消えてしまっておかしなことになったり(どうも消去するシステムが勝手に働いているようです。
因みにセーブロードの操作を入れる前は消えることはありませんでした)、タイトル画面からロードするとまだフラグをロードしていないのに文章が表示されたり、
■セーブデータに読み込み:セーブデータ[99]のV7[メッセ用]=1
を読み込んだら読み込んだで
「【可変DB】エラー:存在しないタイプ番号6を読みに行っています
処理地点:【コモンEv94行365】 ※もし並列処理のエラーなら地点不明です」
と出ます。
ちなみにコモン94の365行目は私の場合少し手を加えているので(この変更部分はこのシステムとは関係ないです)、▼主人公IDを取得の下の
■セーブデータの内容読込み:Cself11[一時変数B]=セーブデータ[Cself5[注目セーブ番号]]の V[Cself62[DB読み込み先一時変数]]
という行になります。
この場合、どのような対策をすればこのエラーが出なくなるでしょうか?
変数をセーブするデータ番号を変えてもダメでした。
最後のエラーメッセージが出るエラーだけでも解決策を知りたいです。
お知恵をお借りできると嬉しいです。
ロード関係がダメ
ロードした時に実行される処理は>>234-240の流れで説明されているから、これ見て作って
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.044s