◆map.hsp
マップ・ステージの構成を書いているファイル
チップ配置をif st=マップナンバーでかこんで分岐
前者のようにブロックを配置していき、後者のようにメッセージなどを記述している
| chip=10:chipx=100:chipy=285:block=14:gosub
*map chip=10:chipx=120:chipy=285:block=14:gosub *map chip=10:chipx=140:chipy=285:block=14:gosub *map chip=16:chipx=160:chipy=435:block=30 msg=" お菓子いっぱい 夢いっぱい\n 危険もいっぱい おもちゃ工場 この先":gosub *map |
*mapサブルーチン
| *map if chip=1 : chipa=20 : chipb=15 : chipc=0 : chipd=0 if chip=2 : chipa=20 : chipb=15 : chipc=20 : chipd=0 if chip=3 : chipa=20 : chipb=15 : chipc=40 : chipd=0 if chip=4 : chipa=20 : chipb=15 : chipc=60 : chipd=0 if chip=5 : chipa=20 : chipb=15 : chipc=80 : chipd=0 if chip=6 : chipa=40 : chipb=15 : chipc=0 : chipd=15 if chip=7 : chipa=60 : chipb=15 : chipc=40 : chipd=15 if chip=8 : chipa=20 : chipb=60 : chipc=0 : chipd=30 if chip=9 : chipa=40 : chipb=30 : chipc=20 : chipd=30 if chip=10 : chipa=20 : chipb=30 : chipc=60 : chipd=30 if chip=11 : chipa=20 : chipb=30 : chipc=80 : chipd=30 if chip=12 : chipa=20 : chipb=30 : chipc=20 : chipd=60 if chip=13 : chipa=20 : chipb=30 : chipc=40 : chipd=60 if chip=14 : chipa=20 : chipb=30 : chipc=60 : chipd=60 if chip=15 : chipa=20 : chipb=30 : chipc=80 : chipd=60 if chip=16 : chipa=20 : chipb=30 : chipc=100: chipd=15 a=chipy-30 : b=chipy+chipb : c=chipx-20 : d=chipx+chipa ;(limit設定) a3=a-5 : b4=b+5 : c1=c-5 : d2=d+5 ;(外範囲補正) a4=a+1 : b3=b-1 : c2=c+10 : d1=d-10 ;(内範囲補正) a1=c+3 : a2=d-3 : b1=c : b2=d ;(足場・天井端補正) if chip=3 : a1+=2 : a2-=2 ;a(0-6) b(0-10) if chip=4 : a1+=6 : b2-=6 if chip=5 : b1+=8 : b2-=8 if chip=7 : a2-=2 : b2-=2 if chip=9 : a1+=6 : a2-=6 : b1+=10 : b2-=10 if chip=16: a1+=5 : a2-=5 : a4+=10 : a+=10 gmode 2,chipa,chipb : pos chipx,chipy : gcopy 5,chipc,chipd if block&1 ::else:if (a1<mx)&(mx<a2)&(a3<my)&(my<=a4) : y2=a if block&2 ::else:if (b1<mx)&(mx<b2)&(b3<=my)&(my<b4) : y1=b if block&4 ::else:if (c1<mx)&(mx<=c2)&(a<my)&(my<b) : x2=c if block&8 ::else:if (d1<=mx)&(mx<d2)&(a<my)&(my<b) : x1=d if block&16:if (chipx-chipa/2<mx)&(mx<chipx+chipa/2)&(my=chipy) : window=msg block=0 return |
◆MAPchip.hsp
マップ作成に使用しているものの、役に立ってるか微妙
マップ作業中にこれをF5起動してチップナンバーを確認している…だけ
| #pack "map.bmp" buffer 5:picload "map.bmp" font "MS ゴシック",16 screen 0,400,400,8 color 255,148,40:boxf:color 128,64,32 pos 0,0:mes "1.":pos 16,0:gmode 2,20,15:gcopy 5,0,0 pos 46,0:mes "2.":pos 62,0:gmode 2,20,15:gcopy 5,20,0 pos 92,0:mes "3.":pos 108,0:gmode 2,20,15:gcopy 5,40,0 pos 138,0:mes "4.":pos 154,0:gmode 2,20,15:gcopy 5,60,0 pos 184,0:mes "5.":pos 200,0:gmode 2,20,15:gcopy 5,80,0 pos 230,0:mes "6.":pos 246,0:gmode 2,40,15:gcopy 5,0,15 pos 296,0:mes "7.":pos 312,0:gmode 2,60,15:gcopy 5,40,15 pos 0,20:mes "8.":pos 16,20:gmode 2,20,60:gcopy 5,0,30 pos 46,20:mes "9,":pos 62,20:gmode 2,40,30:gcopy 5,20,30 pos 112,20:mes "10.":pos 136,20:gmode 2,20,30:gcopy 5,60,30 pos 166,20:mes "11.":pos 190,20:gmode 2,20,30:gcopy 5,80,30 pos 46,55:mes "12.":pos 70,55:gmode 2,20,30:gcopy 5,20,60 pos 100,55:mes "13.":pos 124,55:gmode 2,20,30:gcopy 5,40,60 pos 154,55:mes "14.":pos 178,55:gmode 2,20,30:gcopy 5,60,60 pos 208,55:mes "15.":pos 232,55:gmode 2,20,30:gcopy 5,80,60 pos 220,20:mes "16.":pos 244,20:gmode 2,20,30:gcopy 5,100,15 |