2ch版いただきストリート作りませんか?
■ このスレッドは過去ログ倉庫に格納されています
0320304
2005/08/07(日) 01:21:46ID:oc41e6p7>>304の、16進2桁で、ワープ+8方向から来た場合を
9つ並べる表記なら可能。その例なら、
上/下から来た場合:左&右(40+04=44)に移動可能
左/右から来た場合:上&下(01+10=11)に移動可能
ワープしてきた場合:上下左右(01+10+40+04=55)に移動可能
と表現できる。「来た方向」をテンキー表記で並べれば
01_02_03_04_05_06_07_08_09(テンキーの方向)
00_44_00_11_55_11_00_44_00(用意するデータ)
になる。ビット表記なら時計回りにデータが並ぶ。
アンダーバーは区切りにしただけで、実際は
18文字の16進数がマスの移動データになる。ここ
から2文字ずつ抜いていくことで移動方向を決める
ことができ、「二次元+8方向&ワープ」で
マップが表現されている限り、この表記で対応
できるはず。
上下左右:55だけを設定しておき、移動制限用の
関数でつぶす(=来た方向+進行方向のビットを
消す)方法もある。データが短くて済むが、関数を
個別に設定するのが面倒だし、マップデータから
方向を抜いてくる方が処理しやすかったりする。
■ このスレッドは過去ログ倉庫に格納されています