以下を実行すると
#Error 41 in line 263 (???)
-->関数を命令として記述しています。
(HSP2から関数化された名前を使用している可能性があります)
となりますが、263行目はただのintです。
さてなんででしょうか??
P.S.
画像データなしですいません。
buffer 1 picload "smp1.bmp" buffer 2 picload "smp2.bmp" screen 0,320,400,4 title "ブロック崩し〜〜〜〜" jx=0 jy=350 jhp=5 #const pic_w 52 #const pic_h 14 bx=0 by=0 bvx=0 bvy=0 bflag=1 #const bpic_w 5 #const bpic_h 5 dim brk_cnt,11,11 brk_max=0 #const brkpic_w 32 #const brkpic_h 14 #const GAME_TITLE 0 #const GAME_RUN 1 #const GAME_OVER 2 #const GAME_CLEAR 3 game_switch=GAME_TITLE *main switch game_switch case GAME_TITLE gosub *run_title swbreak case GAME_RUN gosub *key gosub *paint if(bflag=0){ gosub *bmove } swbreak case GAME_OVER gosub *run_gameover swbreak case GAME_CLEAR gosub *run_gameclear swbreak swend await 1 goto *main *key int keycode stick keycode,1+4 if(keycode&1){ jx-=3 } if(keycode&4){ jx+=3 } if(jx<0){ jx=0 } if(jx>(320 - pic_w)){ jx = 320 - pic_w } if(bflag=1){ bx=jx+((pic_w-bpic_w)/2) by=jy-bpic_h if(keycode&16){ bflag=0 rtmp = rnd(2) bvx=rtmp+1 if(bx<160){ bvx=-1*bvx } bvy=-1*(rtmp+1) } } return *paint redraw 0 color 255,255,255 boxf 0,0,320,400 pos jx,jy gcopy 1,0,0,pic_w,pic_h pos bx,by gcopy 1,0,14,bpic_w,bpic_h gosub *brkpaint color 0,0,0 pos 0,0 print "LIFE:"+jhp redraw 1 return *brkpaint int i int j for i,0,10 for j,0,10 pos brkpic_w*i,brkpic_h*j if(brk_cnt.i.j!=0){ gcopy 2,brkpic_w*((brk_cnt.i.j-1)/3),brkpic_h*((brk_cnt.i.j-1)\3),brkpic_w,brkpic_h } next next return *stage int i int j brk_cnt.0.0=0,0,0,0,0,0,0,0,0,0 brk_cnt.0.1=0,0,0,0,0,0,0,0,0,0 brk_cnt.0.1=0,6,6,6,6,6,6,6,6,0 brk_cnt.0.2=0,5,5,5,5,5,5,5,5,0 brk_cnt.0.3=0,4,4,4,4,4,4,4,4,0 brk_cnt.0.4=0,3,3,3,3,3,3,3,3,0 brk_cnt.0.5=0,2,2,2,2,2,2,2,2,0 brk_cnt.0.6=0,1,1,1,1,1,1,1,1,0 brk_max=0 for i,0,10 for j,0,10 if(brk_cnt.j.i>0){ brk_max++ } next next return *brkhit int i int j for i,0,10 for j,0,10 if(brk_cnt.i.j!=0){ if((bx>=(brkpic_w*i-bpic_w))and(bx<=(brkpic_w*i+brkpic_w))){ if(((by+bpic_h)>=(brkpic_h*j))and((by+bpic_h)<=((brkpic_h*j)+(brkpic_w/5)))){ by=brkpic_h*j-bpic_h-2 bvy=-1*bvy brk_cnt.i.j-- if (brk_cnt.i.j<=0){ brk_cnt.i.j=0 brk_max-- if(brk_max<=0){ game_switch=GAME_CLEAR } } return } else{ if((by<=(brkpic_h*(j+1)))and(by>=((brkpic_h*(j+1))-(brkpic_w/5)))){ by=brkpic_h*(j+1)+2 bvy=-1*bvy brk_cnt.i.j-- if (brk_cnt.i.j<=0){ brk_cnt.i.j=0 brk_max-- if(brk_max<=0){ game_switch=GAME_CLEAR } } return } else{ if(((by+bpic_h)>((brkpic_h*j)+(brkpic_h/5)))and((by+bpic_h)<=(brkpic_h*(j+1)))){ if(((brkpic_w*i)+(brkpic_w/2))>bx){ bx=(brkpic_w*i)-bpic_w-2 } else{ bx=(brkpic_w*i)+pic_w+2 } bvx=-1*bvx brk_cnt.i.j-- if (brk_cnt.i.j<=0){ brk_cnt.i.j=0 brk_max-- if(brk_max<=0){ game_switch=GAME_CLEAR } } return } } } } } next next return *bmove bx+=bvx by+=bvy if(bx<0){ bx=0 bvx=-1*bvx } if(bx>(320-bpic_w)){ bx=320-bpic_w bvx=-1*bvx } if(by<0){ by=0 bvy=-1*bvy } if(by>(400-bpic_h)){ jhp-- bflag=1 if(jhp<0){ game_switch=GAME_OVER } } gosub *bhit gosub *brkhit return *bhit if((bx>=(jx-bpic_w))and(bx<=(jx+pic_w))){ if(((by+bpic_h)>=jy)and((by+bpic_h)<=(jy+(3*pic_h/5)))){ by=jy-bpic_h bvy=-1*bvy } else{ if(((by+bpic_h)>(jy+(3*pic_h/5)))and((by+bpic_h)<=(jy+pic_h))){ if((jx+(pic_w/2))>bx){ bx=jx-bpic_w } else{ bx=jx+pic_w } bvx=-1*bvx bvy=-1*bvy } } } return *run_title int t_keycode stick t_keycode if(t_keycode&16){ game_switch=GAME_RUN jhp=5 bflag=1 gosub *stage } redraw 0 pos 0,0 color 255,255,255 boxf 0,0,320,400 color 0,0,0 pos 45,150 print "ブロック崩し" pos 65,300 print "スペース押してplease" redraw 1 return *run_gameover int o_keycode stick o_keycode if(o_keycode&16){ game_switch=GAME_TITLE } redraw 0 pos 0,0 color 255,255,255 boxf 0,0,320,400 color 0,0,0 pos 45,150 print "おめです。" pos 65,300 print "スペース押してplease" redraw 1 return *run_gameclear int c_keycode stick c_keycode if(c_keycode&16){ game_switch=GAME_TITLE } redraw 0 pos 0,0 color 255,255,255 boxf 0,0,320,400 color 0,0,0 pos 45,150 print "おめです。" pos 65,300 print "スペース押してplease" redraw 1 return