> 回答ありがとうございます。> 都合がいい前者のやり方で早速試してみたのですが、戦闘で殴ろうとした時点でエラーが出てしまいました。> 「DB操作:データ番号がマイナスです!> 処理地点:【マップEv6コモンEv250行86】もし並列処理のエラーなら地点不明です」> (コモン250なのはコピーデータ使用のため)> また、撃破時点でも同じエラーが今日88〜91まで繰り返して抜けられません。> ここでいうデータ番号がマイナスというのは何を指してるのでしょうか?> HP表示補正X,Yは0にしてもプラスにしても同じエラーが出てしまいます。こんな感じに設定してみてください。■条件分岐(変数): 【1】 CSelf1[対象戦闘スロット] が 10 以上 -◇分岐: 【1】 [ CSelf1[対象戦闘スロット] が 10 以上 ]の場合↓ |■DB読込(可変): CSelf11[一時変数B] = 可変DB[ 10 : CSelf1[対象戦闘スロット] : 17 ] (×┏ 戦闘一時ステータス[基] : - : キャラクタ番号[1万以上は敵]) |■条件分岐(変数): 【1】 CSelf11[一時変数B] が 10000 以上 |-◇分岐: 【1】 [ CSelf11[一時変数B] が 10000 以上 ]の場合↓ | |■変数操作: CSelf11[一時変数B] %= 10000 + 0 | |■DB読込(ユーザ): CSelf66[HP位置X] += ユーザDB[ 9 : CSelf11[一時変数B] : HP表示補正X ] (敵キャラ個体データ : - : 26) | |■DB読込(ユーザ): CSelf67[HP位置Y] += ユーザDB[ 9 : CSelf11[一時変数B] : HP表示補正Y ] (敵キャラ個体データ : - : 27) | |■DB読込(ユーザ): CSelf70[HPゲージX] += ユーザDB[ 9 : CSelf11[一時変数B] : HP表示補正X ] (敵キャラ個体データ : - : 26) | |■DB読込(ユーザ): CSelf71[HPゲージY] += ユーザDB[ 9 : CSelf11[一時変数B] : HP表示補正Y ] (敵キャラ個体データ : - : 27) | |■ |◇分岐終了◇ |■◇分岐終了◇WoditorEvCOMMAND_START[111][4,0]<0>(1,1600001,10,1)()[401][1,0]<0>(1)()[250][5,4]<1>(10,1600001,17,4096,1600011)("","","","")[111][4,0]<1>(1,1600011,10000,1)()[401][1,0]<1>(1)()[121][4,0]<2>(1600011,10000,0,1280)()[250][5,4]<2>(9,1600011,26,266768,1600066)("","","","HP表示補正X")[250][5,4]<2>(9,1600011,27,266768,1600067)("","","","HP表示補正Y")[250][5,4]<2>(9,1600011,26,266768,1600070)("","","","HP表示補正X")[250][5,4]<2>(9,1600011,27,266768,1600071)("","","","HP表示補正Y")[0][0,0]<2>()()[499][0,0]<1>()()[0][0,0]<1>()()[499][0,0]<0>()()WoditorEvCOMMAND_END
回答ありがとうございます。都合がいい前者のやり方で早速試してみたのですが、戦闘で殴ろうとした時点でエラーが出てしまいました。「DB操作:データ番号がマイナスです!処理地点:【マップEv6コモンEv250行86】もし並列処理のエラーなら地点不明です」(コモン250なのはコピーデータ使用のため)また、撃破時点でも同じエラーが今日88〜91まで繰り返して抜けられません。ここでいうデータ番号がマイナスというのは何を指してるのでしょうか?HP表示補正X,Yは0にしてもプラスにしても同じエラーが出てしまいます。
> [やりたいこと]> 戦闘画面の、モンスターのHPなどが表示される欄の表示位置をモンスターごとに変更したい> > [やってみたこと]> X[戦]敵キャラ_単体描画で表示位置を色々弄ってみた> > [やってみた結果、どううまくいかないか]> 移動自体はなんとかできたものの、グループ内のモンスター全部がまとめて動いてしまう。> モンスター別に表示位置を動かしたいのだが、どうしたらいいか判らなくて手をこまねいている状態。例えばユーザーDB[9:敵キャラ個体データ]に新たな項目を2つ作る。[変数][HP表示補正X][初期値=0][変数][HP表示補正Y][初期値=0]そしてHPの表示位置を移動したい敵キャラの「HP表示補正X」「HP表示補正Y」に移動量を設定する。「HP表示補正X」にプラス値を設定すると通常のX表示位置から右へ移動し、マイナス値を設定すると左へ移動する。「HP表示補正Y」にプラス値を設定すると通常のY表示位置から下へ移動し、マイナス値を設定すると上へ移動する。コモンイベント[179:X[戦]敵キャラ_単体描画]の69行目に以下のイベントを追加。■DB読込(可変): CSelf11[一時変数B] = 可変DB[ 10 : CSelf1[対象戦闘スロット] : 17 ] (×┏ 戦闘一時ステータス[基] : - : キャラクタ番号[1万以上は敵])■変数操作: CSelf11[一時変数B] %= 10000 + 0■DB読込(ユーザ): CSelf66[HP位置X] += ユーザDB[ 9 : CSelf11[一時変数B] : HP表示補正X ] (敵キャラ個体データ : - : 26)■DB読込(ユーザ): CSelf67[HP位置Y] += ユーザDB[ 9 : CSelf11[一時変数B] : HP表示補正Y ] (敵キャラ個体データ : - : 27)■DB読込(ユーザ): CSelf70[HPゲージX] += ユーザDB[ 9 : CSelf11[一時変数B] : HP表示補正X ] (敵キャラ個体データ : - : 26)■DB読込(ユーザ): CSelf71[HPゲージY] += ユーザDB[ 9 : CSelf11[一時変数B] : HP表示補正Y ] (敵キャラ個体データ : - : 27)WoditorEvCOMMAND_START[250][5,4]<0>(10,1600001,17,4096,1600011)("","","","")[121][4,0]<0>(1600011,10000,0,1280)()[250][5,4]<0>(9,1600011,26,266768,1600066)("","","","HP表示補正X")[250][5,4]<0>(9,1600011,27,266768,1600067)("","","","HP表示補正Y")[250][5,4]<0>(9,1600011,26,266768,1600070)("","","","HP表示補正X")[250][5,4]<0>(9,1600011,27,266768,1600071)("","","","HP表示補正Y")WoditorEvCOMMAND_END敵グループ単位で補正する場合は、まずユーザーDB[13:敵グループ]に以下の項目を追加。[変数][敵1HP補正X][初期値=0][変数][敵1HP補正Y][初期値=0][変数][敵2HP補正X][初期値=0][変数][敵2HP補正Y][初期値=0][変数][敵3HP補正X][初期値=0][変数][敵3HP補正Y][初期値=0][変数][敵4HP補正X][初期値=0][変数][敵4HP補正Y][初期値=0][変数][敵5HP補正X][初期値=0][変数][敵5HP補正Y][初期値=0][変数][敵6HP補正X][初期値=0][変数][敵6HP補正Y][初期値=0][変数][敵7HP補正X][初期値=0][変数][敵7HP補正Y][初期値=0]コモンイベント[179:X[戦]敵キャラ_単体描画]の69行目に以下のイベントを追加。■変数操作: CSelf12[一時変数C] = CSelf1[対象戦闘スロット] - 10■変数操作: CSelf12[一時変数C] *= 2 + 0■変数操作: CSelf12[一時変数C] += 12 + 0■DB読込(ユーザ): CSelf66[HP位置X] += ユーザDB[ 13 : 可変DB(18,72,0)[[戦闘]敵グループ番号 数値 ] : CSelf12[一時変数C] ] (敵グループ : - : -)■DB読込(ユーザ): CSelf70[HPゲージX] += ユーザDB[ 13 : 可変DB(18,72,0)[[戦闘]敵グループ番号 数値 ] : CSelf12[一時変数C] ] (敵グループ : - : -)■変数操作: CSelf12[一時変数C] += 1 + 0■DB読込(ユーザ): CSelf67[HP位置Y] += ユーザDB[ 13 : 可変DB(18,72,0)[[戦闘]敵グループ番号 数値 ] : CSelf12[一時変数C] ] (敵グループ : - : -)■DB読込(ユーザ): CSelf71[HPゲージY] += ユーザDB[ 13 : 可変DB(18,72,0)[[戦闘]敵グループ番号 数値 ] : CSelf12[一時変数C] ] (敵グループ : - : -)WoditorEvCOMMAND_START[121][4,0]<0>(1600012,1600001,10,4096)()[121][4,0]<0>(1600012,2,0,768)()[121][4,0]<0>(1600012,12,0,256)()[250][5,4]<0>(13,1118007200,1600012,4624,1600066)("","","","")[250][5,4]<0>(13,1118007200,1600012,4624,1600070)("","","","")[121][4,0]<0>(1600012,1,0,256)()[250][5,4]<0>(13,1118007200,1600012,4624,1600067)("","","","")[250][5,4]<0>(13,1118007200,1600012,4624,1600071)("","","","")WoditorEvCOMMAND_END上記の設定例は、ユーザーDB[13:敵グループ]に追加した項目番号が「12〜25」の時の設定です。追加した項目番号が「13〜26」の時には、上記の「12 + 0」の設定を「13 + 0」に変えてください。ちなみに敵キャラごとの補正と敵グループごとの補正の両方を設定する事もできます。
[やりたいこと]戦闘画面の、モンスターのHPなどが表示される欄の表示位置をモンスターごとに変更したい[やってみたこと]X[戦]敵キャラ_単体描画で表示位置を色々弄ってみた[やってみた結果、どううまくいかないか]移動自体はなんとかできたものの、グループ内のモンスター全部がまとめて動いてしまう。モンスター別に表示位置を動かしたいのだが、どうしたらいいか判らなくて手をこまねいている状態。
遅くなりましたが、恙無く想定どおりの動きをさせることができました。ありがとうございました。
回答の確認遅くなりまして誠にすみません。改行に応じての調整が必要になるのですね。現在出先にいるためすぐに確かめることができませんが、戻り次第色々弄ってみようと思います。回答、ありがとうございました!
書いていただいた行数には違う項目が書かれていたので、| |■イベントの挿入[名]: ["X[移]キャラクター欄描画"] <コモンEv 90> / 3:表示[瞬間表示] / CSelf11[ターゲット] / CSelf14[対象ID]これを探し出し、| |■イベントの挿入[名]: ["X[移]キャラクター欄_座標算出"] <コモンEv 91> / CSelf11[ターゲット]を直前に挿入したところ、正常に作動しました。ありがとうございました。
(21:15全文修正)すみません、まるっきり間違いを書いていました。サンプル素材の規約は、同梱の「サンプルゲーム説明書」にあります。> ・グラフィック素材:二次利用可・改造可・ウディタ以外への利用可> ただし、「素材そのものの販売は禁止」させていただきます。とのことですので、ステルスさんのおっしゃる用途であれば利用制限はないと思われます。
へんぷくさん、はるししさん、ご返答ありがとうございます!やはりピクチャに置き換えないと、斜め移動の角度変更は出来ないんですね。なんとなくイメージが沸いて、納得できました。また、はるししさん。ご丁寧に、コモンの組み立てありがとうございます…!ご自分で、パッと作れてしまうなんて、すごいですね!!皆様のコモン頼りの私にとっては、本当にありがたいです…(o_ _)o!パッと読んだ感じでは、すぐに理解が出来なかったのですが、ひとつづつゆっくりと確認しながら、確かめてみたいと思います…!(なん箇所か意味が分かるところもあるので、さらに調べつつ試しつつ、頑張ります!)ご尽力くださり、感謝いたします!
はじめまして。クォータービュー用のマップチップを表示できているようなので、ある程度ウディタが扱える、という前提で簡単に手順をまとめてみました。1)主人公の情報を取得 ・主人公画面X座標 ・主人公画面Y座標 ・主人公の向き ・主人公のアニメパターン2)クォータービュー用に座標や向きを変換 a)使用しているマップチップ表示コモンがあれば、その座標変換計算式を使う 一般的なものであれば以下のような計算式になっていると思います たいていの場合、表示座標を合わせるためになにかしらの補正が入ります ・変換座標X = 画面座標X + 画面座標Y ・変換座標Y = 画面座標Y - 画面座標X b)向きの変換 4方向のキャラチップのパターン番号を8方向のキャラチップのパターン番号に変換する 例えば、4方向で左向きなら8方向で左下向きになる等 c)アニメーションを反映 変換後の向きに応じたアニメパターンになるように補正する3)ピクチャで表示このコモンを並列実行(常時)で実行すればとりあえず近いものになると思います。お使いのマップチップに合わせて変換座標とピクチャ番号は調整してください。■ウェイト:1 フレーム■変数操作: CSelf10[ピクチャ番号] = 10000 + 0 ▼ 主人公の情報を取得■変数操作+: CSelf20[画面座標X] = 主人公 の 画面X座標■変数操作+: CSelf21[画面座標Y] = 主人公 の 画面Y座標■変数操作+: CSelf22[主人公向き] = 主人公 の 向き(1〜9)■変数操作+: CSelf23[アニメパターン] = 主人公 の アニメパターン[0-4]▼ クォータービュー用に変換■変数操作: CSelf40[変換座標X] = CSelf20[画面座標X] + CSelf21[画面座標Y] ■変数操作: CSelf40[変換座標X] /= 3 + 0 ■変数操作: CSelf40[変換座標X] += 100 + 0 ■変数操作: CSelf41[変換座標Y] = CSelf21[画面座標Y] - CSelf20[画面座標X] ■変数操作: CSelf41[変換座標Y] /= 3 + 0 ■変数操作: CSelf41[変換座標Y] += 130 + 0 ■条件分岐(変数): 【1】 CSelf22[主人公向き] が 2 と同じ -◇分岐: 【1】 [ CSelf22[主人公向き] が 2 と同じ ]の場合↓ |■変数操作: CSelf42[変換向き] = 10 + 0 |■◇分岐終了◇■条件分岐(変数): 【1】 CSelf22[主人公向き] が 4 と同じ -◇分岐: 【1】 [ CSelf22[主人公向き] が 4 と同じ ]の場合↓ |■変数操作: CSelf42[変換向き] = 4 + 0 |■◇分岐終了◇■条件分岐(変数): 【1】 CSelf22[主人公向き] が 6 と同じ -◇分岐: 【1】 [ CSelf22[主人公向き] が 6 と同じ ]の場合↓ |■変数操作: CSelf42[変換向き] = 22 + 0 |■◇分岐終了◇■条件分岐(変数): 【1】 CSelf22[主人公向き] が 8 と同じ -◇分岐: 【1】 [ CSelf22[主人公向き] が 8 と同じ ]の場合↓ |■変数操作: CSelf42[変換向き] = 16 + 0 |■◇分岐終了◇■変数操作: CSelf42[変換向き] += CSelf23[アニメパターン] + 0 ▼ ピクチャで表示■ピクチャ表示:CSelf10[ピクチャ番号] [中心]ファイル「CharaChip/[Special]Wolfarl.png」 X:CSelf40[変換座標X] Y:CSelf41[変換座標Y] / 0(0)フレーム / パターン CSelf42[変換向き] / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]WoditorEvCOMMAND_START[180][1,0]<0>(1)()[121][4,0]<0>(1600010,10000,0,0)()[103][0,1]<0>()("主人公の情報を取得")[124][4,0]<0>(1600020,4096,-2,6)()[124][4,0]<0>(1600021,4096,-2,7)()[124][4,0]<0>(1600022,4096,-2,5)()[124][4,0]<0>(1600023,4096,-2,16)()[103][0,1]<0>()("クォータービュー用に変換")[121][4,0]<0>(1600040,1600020,1600021,0)()[121][4,0]<0>(1600040,3,0,1024)()[121][4,0]<0>(1600040,100,0,256)()[121][4,0]<0>(1600041,1600021,1600020,4096)()[121][4,0]<0>(1600041,3,0,1024)()[121][4,0]<0>(1600041,130,0,256)()[111][4,0]<0>(1,1600022,2,2)()[401][1,0]<0>(1)()[121][4,0]<1>(1600042,10,0,0)()[0][0,0]<1>()()[499][0,0]<0>()()[111][4,0]<0>(1,1600022,4,2)()[401][1,0]<0>(1)()[121][4,0]<1>(1600042,4,0,0)()[0][0,0]<1>()()[499][0,0]<0>()()[111][4,0]<0>(1,1600022,6,2)()[401][1,0]<0>(1)()[121][4,0]<1>(1600042,22,0,0)()[0][0,0]<1>()()[499][0,0]<0>()()[111][4,0]<0>(1,1600022,8,2)()[401][1,0]<0>(1)()[121][4,0]<1>(1600042,16,0,0)()[0][0,0]<1>()()[499][0,0]<0>()()[121][4,0]<0>(1600042,1600023,0,256)()[103][0,1]<0>()("ピクチャで表示")[150][11,1]<0>(4096,1600010,0,6,4,1600042,255,1600040,1600041,100,0)("CharaChip/[Special]Wolfarl.png")WoditorEvCOMMAND_END