[過去ログ] 【初心者】スレを立てる前にココで質問を【Part28】©2ch.net (1002レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
293(2): 名前は開発中のものです。 [] 2017/04/16(日) 08:33:33.80 ID:kRbAGBu8(1/2) AAS
横スクロールアクションでcsvを使ってステージを読み込んでるんだけど(0が何もなし、1が床みたいな)
スイッチとそれに対応したドアをどう実装すべきか思いつきません
具体的にいうとスイッチとドアの関連付けをどのようにやればいいか思いつきません
何かいい案ないですか?
301: 名前は開発中のものです。 [] 2017/04/16(日) 22:51:16.26 ID:kRbAGBu8(2/2) AAS
>>296296(2): 名前は開発中のものです。 [sage] 2017/04/16(日) 14:21:07.66 ID:I8oSN4/4(2/3) AAS
Yes
マップチップがドアの場合は追加で得られた値をどの様に解釈する〜みたいな処理にする。
マップチップ(0〜127)=29
追加X(0〜127)=92
追加Y(0〜63)=9
追加Z(0〜3)=2
みたいな値を
CSVの値 = Z*(64*128*128) + Y*(128*128) + X*(128) + マップチップ番号
とすれば、上記の場合は 2256413 を設定しておいて、この値を分解する
>>297297(1): 名前は開発中のものです。 [sage] 2017/04/16(日) 14:33:19.73 ID:I8oSN4/4(3/3) AAS
>293 の事例の説明としては例が不適切だった
マップチップ番号95=ドアの鍵を開けるスイッチとするのであればという話だから
マップチップ(0〜127)=95
対象となるドアの座標X(0〜127)=85
対象となるドアの座標Y(0〜63)=24
変更後の値Z(0〜4194303)=2256413 (2,9,92へ飛ぶドア >296 のやつ)
CSVの値 = Z*(64*128*128) Y*(128*128) + X*(128) + マップチップ番号
として、2366022085343 を設定する感じかな、値が大きすぎて 64bit 整数じゃなきゃ処理できなくなっちゃったけどw
>>300300(1): 名前は開発中のものです。 [sage] 2017/04/16(日) 22:21:08.59 ID:Tzt3Qz+G(1) AAS
俺なら、csvの1セルを4バイトにして
下位2バイト=マップ、上位2バイト=イベント番号(ゼロならイベントなし)
とするかなぁ。
イベント番号に応じたイベント内容は、別csvに定義
イベント番号, イベント内容ID, Param1, Param2
1,DOOR_OPEN,100,200
2,DOOR_OPEN,200,300
2,POP_MONSTER,200,300
・
・
・
として、イベント1番を踏んだら、map[100,200]にあるドアをオープンする、
イベント2番を踏んだら、map[200,300]のドアをオープンして敵を配置する、みたいな
(実際はもっとリッチに作るけど)
ありがとうございます!
一人での製作でないのでチームメイトと相談しながらですが参考にさせていただきます!
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.033s