wizのようなダンジョンを歩くの描画処理部分を短くしました。(`・ω・')
…でも、処理速度はかなり重くなってしまった…('・ω・`)
操作は以前と同じです。
LI=2の数字を0〜3の範囲でいじると、数字の分だけ遠くが見えます。
'◆初期設定' LI=2 WAIT=0 PH=2PX=0PY=0 setfont("T")j=120J=240@(CL,0,0x505050,0x727272,0x999999,0xB0B0B0,0xFFFFFF)@(PA,0,-1,0,1)@(PB,-1,0,1,0)@(PC,"西","北","東","南")@(BA,-9,-2,1,3,9)@(BB,-6,-2,0,1,3)@(BC,-3,-1,0,1,3) map="1080606262668261688686200670662262316002082008220780603626803826806036220208262066262201088062620826262262306206806062000680662687262620600206262513482622000160062685157826800344162622626262052202320208" '◆マップ情報処理' label AAC MAPS=substr(map,0,2)/1 for(a=0;a<MAPS;++a){for(b=0;b<MAPS;++b){I=substr(map,a*MAPS*2+b*2+2,1)H=substr(map,a*MAPS*2+b*2+3,1)MAP[b][a][0]=I%3;MAP[b][a][1]=I/3;MAP[b][a][3]=H%3;MAP[b][a][2]=H/3}} soft1("MAPロード")soft2("終了") label AAB PA=PA[PH] PB=PB[PH] PC=PC[PH] '◆描画処理' lock()col(CL[0])frect(0,0,J,J)origin(j,j)a=LI;b=-2 label AAG x=BB[b+2];X=abs(BC[b+2]);y=pow(2,a);Y=BC[b+2];p=72/y;P=-72/y;q=p*2;Q=P*2;R=P/2;s=-45/y;S=-63/y;t=90/y;T=108/y;u=126/y;U=q*2 z=MAP[PX-b*PA+(a*PB)][PY+(a*PA)+b*PB][PH] if(z>0){col(CL[0])frect(P+b*q,P,q,q)col(CL[5-a])rect(P+b*q,P,q,q) if(z==1){rect(R+b*q,R,p,T)}} if(b==0){b=1;goto"AAG"}if(b<0){Z=PH-1;B=b+1;if(Z<0){Z=3}} if(b>0){Z=PH+1;B=b-1;if(Z>3){Z=0}} z=MAP[PX-B*PA+(a*PB)][PY+(a*PA)+B*PB][Z] if(z>0){col(CL[0])frect(x*p,Q,X*p,U) col(CL[5-a])line(Y*q,Q,Y*p,P)line(Y*q,q,Y*p,p)line(Y*q,Q,Y*q,q)line(Y*p,P,Y*p,p) } if(z==1){line(Y*u,S,Y*t,s)line(Y*u,S,Y*u,u)line(Y*t,s,Y*t,t)} b=++b if(b>2){a=--a;b=-2;if(a<0){goto"AAH"}} goto"AAG" label AAH origin(0,0)col(0x00FFFF)text("X:".PX." Y:".PY." 方向:".PC,0,0,0)frect(J,0,J,J)unlock(1) '◆移動処理' label ACC gc()input(WAIT) if(scan&4096){if(MAP[PX][PY][PH]==0){col(CL[5])text("▲",114,0,0)PX=PX+PB PY=PY+PA}} if(scan&65536){if(MAP[PX][PY][PH]<=1){col(CL[5])text("▲",114,0,0)PX=PX+PB PY=PY+PA}} if(scan&32768){PH=PH+2if(PH>3){PH=PH-4}} if(scan&8192){PH=PH-1if(PH<0){PH=3}} if(scan&16384){PH=PH+1if(PH>3){PH=0}} if(scan&262144){end} if(scan&131072){map=load()goto"AAC"} goto "AAB"
FrontPage
関数一覧
記号一覧
SPALM入門
作品集
自作関数活用術
ダウンロード先
うpロダ
wikiの使い方
SPALMまでの歴史
現行スレ