1 名前:名前は開発中のものです。 mailto:sage [2010/06/05(土) 01:49:44 ID:LuX88AyW] フリーソフトのRPG製作ソフトWOLF RPGエディターの質問者のためのスレッドです。 教えられる方はできる範囲で教えてあげてください。 ・質問初心者の方は、質問の仕方を学んでいってください。 ・質問の答えと合わせて、模範的な解決法が示されることもあります。 ・慣れたら公式で質問しましょう。 www.silversecond.com/WolfRPGEditor/BBStree/wforum.cgi?list=tree WOLF RPGエディター公式サイト www.silversecond.com/WolfRPGEditor/ 以下公式より。これらで自学自習も可能です。 【講座・テキスト】 ◆ウディタ講座 オススメ! su-labo.sakura.ne.jp/kouza/ 超初心者向けウディタ講座 これだけは必ず習得しましょう ◆サルディタ [ウディタ講座] sarudita.web.fc2.com/ 理解度に応じた処理の解説 - 解説テキスト - ◆困ったときは 【WOLF RPGエディター パーフェクトガイド】 www.silversecond.com/WolfRPGEditor/Guide/ 逆引き解説集です。分からないことがあれば、とにかくこれを見てください! まだまだ執筆途中ですが、初心者の人には十分に役に立つはずです。 ◆機能を知りたい人へ 【公式マニュアル】 [ウディタ機能仕様書] www.silversecond.com/WolfRPGEditor/Help/ レベル問わず、イベントコマンドの細かい仕様や裏技を知りたいならこちら!
133 名前:名前は開発中のものです。 mailto:sage [2010/07/04(日) 00:10:19 ID:Q+/kYNau] >>118 の考え方を汲みつつ、問題点、解決方法を述べる。 問題点 1/ 文字列変数をセルフ変数に代入している。 2/ 次のキャラ判別への送り方が間違っている。 解決方法 1/ セルフ変数に代入するのをセルフ文字列変数に代入すれば良い。 できれば一気に全員分取得するのではなく、逐一呼び出して取得すれば、最大2つしかセルフ文字列変数を使用しなくて済む。 2/ 最初から文字列変数を入れるのではなく、カウント用の変数を作り、それを利用してDBから読み込めば良い。 ex) Cself0 = 0 ; カウント用変数Cself0の初期化 ループ回数 i l DB読込: Cself5 = CDB[0:Cself0:0] ; Cself0番の主人公の名前をCself5に入れる。 l Cself1 = 0 ; カウント用変数Cself1の初期化 l ループ回数 j l l Cself2 = Cself1 + 10 ; 実際の敵の番号をCself2に入れる。 l l DB読込: Cself6 = CDB[8:Cself2:0] ; Cself2番の敵の名前をCself6に入れる。 l l ここでCself5とCself6の名前が同じか調べる。同じだった場合は仲間にする。 l l Cself1 += 1 ; 次の敵へ送る。 l ループ回数 j へ戻る。 l Cself0 += 1 ; 次の主人公へ送る。 ループ回数 iへ戻る。
134 名前:名前は開発中のものです。 mailto:sage [2010/07/04(日) 00:26:57 ID:Q+/kYNau] >>132 最初に呼び出してから数字を加算するのと、呼び出す前に数字を加算してから呼び出すのは全く違う。 例えばCself5 = うるふ;Cself6 = えでぃたー;という文字列変数があり、それぞれの文字列をCself7、Cself8に呼び出したいとする。 ここで、>>132 のやり方は 1/ Cself7 = Cself5; 2/ Cself8 = Cself5 + 1; となる。本来、2/行のような表現はできないが、それは無視する。 これでCself7,Cself8を呼び出した場合、次のようになる。 Cself7 = うるふ Cself8 = うるふ1 これを回避する為には、呼び出し値を呼ばずに加算して、その後呼び出せば良い。 1/ Cself7 = Cself5; 2/ Cself0 = 1600000 + 1; データを呼ばないにチェックを入れる。 3/ Cself8 = V[Cself0]; 本来、3/行のような表現は文字列変数ではできないが、それは無視する。 これでCself7,Cself8を呼び出した場合、次のようになる。 Cself7 = うるふ Cself8 = えでぃたー
135 名前:名前は開発中のものです。 mailto:sage [2010/07/04(日) 00:28:23 ID:Q+/kYNau] あ、ごめん、 2/ Cself0 = 1600000 + 1; データを呼ばないにチェックを入れる。 じゃなくて 2/ Cself0 = 1600005 + 1; データを呼ばないにチェックを入れる。 だわ
136 名前:名前は開発中のものです。 mailto:sage [2010/07/04(日) 00:32:19 ID:WYFNxaYN] >>132 コモンセルフ0にキャラ名を表す文字列のデータが入っていることを期待するのであれば、+100という操作は不可能になる 例えば "ウルファール" に 100 を足したら何になるだろうか +100 ってのは「変数呼び出し値を」+100したいわけだよね? ならば、コモンセルフ0には変数呼び出し値を表す「数値」が入っていないとおかしい もちろんそのまま比較はできないから >実際は1100000000番の変数の値との比較がしたいのだろうから、X番の変数呼出を挟む必要がある となる >どこらへんを触ればいいんですか? ユーザーデータベース触ればいいんじゃないの? 敵キャラのデータに直接増やしてもいいし、新しくタイプ増やしてもいい 新しく増やす場合はIDの設定方法をDB指定にするといいよ
137 名前:名前は開発中のものです。 mailto:sage [2010/07/04(日) 00:41:16 ID:WYFNxaYN] 文字列変数の場合「X番の呼び出し」じゃなくて「ロード位置を変数で指定」だった
138 名前:名前は開発中のものです。 mailto:sage [2010/07/04(日) 00:43:58 ID:Q+/kYNau] 間違って変数処理でやっているからややこしくなるだけで、文字列変数用の処理を混ぜたら別段ややこしくないよな。