CDW マップ表示の外周処理


2021年 9月 1日
 
 
 今までの方法で枠線を引くと、次のように外周の HEXの枠線は描かれない。

 これをどうするか。

 今思いついたけど、枠線情報の判定をする時に「MAP外の場所は枠線が有る」ように計算したら良い。

 しかしプログラム的に変わってしまうので、今回は今まで試した方法でやってみる。
 
 

方法 1、線を引く

 枠線の描かれないラインから boxfで塗る。


 
 
 外周を黒で塗りつぶしてから、直線の白線を引きます。

; 外周表示

	color 1,1,1
	;color 255,255,255

gk1x=0
gk2x=hxp+10
gk3x=hxb*20+hxp-8
gk4x=wx

gk1y=0
gk2y=hyp+5
gk3y=hyb*16+hyp+2
gk4y=hyb*16+hyp+7

	boxf gk1x,gk1y,gk4x,gk2y
	boxf gk1x,gk3y,gk4x,gk4y
	boxf gk1x,gk1y,gk2x,gk4y
	boxf gk3x,gk1y,gk4x,gk4y


gw1x=gk2x-2
gw2x=gk2x
gw3x=gk3x
gw4x=gk3x+2

gw1y=gk2y-2
gw2y=gk2y
gw3y=gk3y
gw4y=gk3y+2

	color 255,255,255

	boxf gw1x,gw1y,gw4x,gw2y
	boxf gw1x,gw3y,gw4x,gw4y
	boxf gw1x,gw1y,gw2x,gw4y
	boxf gw3x,gw1y,gw4x,gw4y

 
 
 この方法はダイス戦略で使われてる方法です。


 
 
 しかし改良版ではさっき思いついた方法でマップ外は枠線有りの方法のようです。

 この方法を使う場合、というかマップ製作ではよくある方法みたいなんですけど「マップデータの外周は余白として残しておき、マップには使わない」というのがあります。

 要するに 0,0、つまり 0列は使わずに 1,1、1座標からマップとして使う、最大数も同じです、1マス引いた所まで使います。
 
 
方法 2、画面外ギリギリまでマップを描く

 表示を切る分部を画面の端に合わせます。

 下段は先の方法で切ってます。

 この方法の欠点は「切る大きさが HEXとピッタリになるか分からない」という事です。

 この HEXの大きさだとタマタマ左右端は大体ピッタリで切れてます。

 下のキャラ表示は戦闘画面(ダイスロール)のテスト表示です、キャラはエトリエさんのを使用させて頂く予定です。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です