3DダンジョンRPGエディタを作るスレ (587レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
552: 520 [sage] 2016/02/28(日) 21:40:29.87 ID:fYTROrM4(1/2) AAS
引き続き、その「仲魔登録クラス」の利用方法について検討する。

戦闘状態で交渉に成功したときに、登録エントリーの末尾に新規登録するのは
特に問題はないと思われる。

COMP→よぶコマンドを実行したときには、
「登録している仲魔のうち、まだ召喚していない悪魔」の選択リストを作る操作と、
その選択画面でカーソルを動かしたとき、呼び出しコストの見積もり表示を更新する
処理が必要になる。
この処理の実装に、汎用的なメッセージウィンドウを流用するのが困難であれば、
専用の選択ダイアログを作る価値はあると思う。
画像リンク


COMP→もどすコマンドを実行したときには、
仲魔登録クラス側のHP,MPを更新し、回復の泉での代金計算に利用する。

最後に重要なのが、邪教の館での合体対象の選択UIで、
これは合体表(実質的にはドリアード確認表)を示して
合体対象の悪魔2体を選択するウィンドウである。
これも、この選択専用に作ったほうが容易である。
画像リンク


合体を実行したときには、
(1)選択した2体の悪魔が召喚中なら帰還させ、仲間登録エントリから抹消し、
(2)合体結果の悪魔を、エントリの末尾に登録する
という操作を行う。
553: 520 [sage] 2016/02/28(日) 21:57:23.90 ID:fYTROrM4(2/2) AAS
>>550
550(1): 名前は開発中のものです。 [sage] 2016/02/27(土) 00:05:51.89 ID:xKWjyR2t(1) AAS
おおう、申し訳ない。
「w」はクセのようなもので他意はないです。失礼しました。

なるほど、論理設計上、配列的な設計ということですね。

3Dダンジョン繋がりで、いろいろ参考にさせてもらってます。
(「セル」という名前付けは同じなんだなー、とか、
セル同士リンク構造でつなげてるんだなー、とか(うちはX×Yの方形構造))
セル(部屋)をリストで管理する方法については>>533
533(1): 520 [sage] 2016/01/16(土) 10:06:51.12 ID:nb4XakV3(2/3) AAS
3Dダンジョンに関する要求については、>>525-526で書いているが、
このプログラムを作成するに際して、より詳細な検討を加えている。

まず、迷路を保持するデータ構造について説明するため、
迷路を構成する最小単位を便宜的に「セル」と呼ぶとする。

1つのセルには、必須データとして、
・セルの座標 x、y (xは東西方向、yは南北方向)
・セルの東西南北の境界表現(壁の有無、または扉)
を持たせている。

このセルを複数集めて、1つのフロアマップを形成している。
複数のセルの管理にはリンクドリストを使用していて、
任意の形、任意の広さのフロアを表現することが可能である。
と言っても、1フロアあたりせいぜい100セル程度に留めておきたい。

また、必要がある場合に限り、セルには以下の付帯情報を記憶させることが
できる仕組みになっている。
・天井と床の穴表現有効化フラグ
・ダークゾーンフラグ
・セルの名前
・イベント処理用スクリプト(任意行数のプログラムテキスト)

上述の試作プログラムでは、以上の情報を用いてマップデータの編集および
歩行移動テストが可能になっている。
で述べたように、
広さや形、フロア間の相対的な位置関係を気にせずに
ストレスなく作成、編集できるようにするための実装であるが、
方形配列に比べてアクセス効率が悪いデメリットがある。

しかし、これも仲間登録クラスの実装の問題と同じで、
今のPCなら速度的に大して問題にならないという理由で、
3Dダンジョンに限らず、拙作のドラクエ風ゲームでも採用している。

ただし、マップデータの保持がそうなっているだけで、
マップを表示する処理クラス内では、速度的な効率改善のため、
視野範囲内の壁や仕掛け要素を一旦、方形配列に抽出してから
利用している。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.030s