;スクリーン0は使用しない ;スクリーン1は合成面 ;スクリーン2は自機に関する画像面 ;スクリーン3は敵に関する画像面 ;スクリーン4は背景に関する画像面 ;スクリーン5は星(1) ;スクリーン6は星(2) ;スクリーン7は星(3) ;スクリーン8は星(4) gsel 0,-1 randomize screen 1,640+8,480,0,0,0,640,480 counter=0 : roll_x1=0 : roll_x2=0 : roll_x1_v=1 : roll_x2_v=2 gosub *STAR repeat 10000 gsel 1 redraw 0 color 0,0,0 : boxf gmode 2,640,480 gcopy 5,roll_x1,0,640,480 gcopy 7,roll_x2,0,640,480 counter++ roll_x1+=roll_x1_v : roll_x2+=roll_x2_v roll_x1 \= 8 : roll_x2 \= 8 if( roll_x1=0 || roll_x2=0 ):gosub *STAR_1LINE if( counter \ 16=0 ):gosub *BLINK redraw 1 await 16 loop end *STAR star_screen=5 repeat 4 buffer star_screen+cnt,(640+8),480,0 color 0,0,0:boxf loop flip=1 repeat 2 id=cnt repeat ( (640+8)/8 )*( 480/8 ) ; 81 × 60サイズ w=rnd(96);星を表示する確率 if(w=0){ w=rnd(3)*2+1;星の大きさ flip=1-flip gsel star_screen+id*2+flip color rnd($100),rnd($100),rnd($100) line ( cnt\81 )*8+w,( cnt/81 )*8,( cnt\81 )*8,( cnt/81 )*8 line ( cnt\81 )*8+w/2,( cnt/81 )*8-w/2-1,( cnt\81 )*8+w/2,( cnt/81 )*8+w/2 flip=1-flip gsel star_screen+id*2+flip color rnd($100),rnd($100),rnd($100) line ( cnt\81 )*8+w,( cnt/81 )*8,( cnt\81 )*8,( cnt/81 )*8 line ( cnt\81 )*8+w/2,( cnt/81 )*8-w/2-1,( cnt\81 )*8+w/2,( cnt/81 )*8+w/2 } loop loop return *STAR_1LINE if( roll_x1=0 ):star_screen=5:gosub *STAR_1LINE_MAKE if( roll_x2=0 ):star_screen=7:gosub *STAR_1LINE_MAKE return *STAR_1LINE_MAKE repeat 2 gsel star_screen+cnt gmode 0,640,480 pos 0,0 gcopy star_screen+cnt,8,0,640,480 color 0,0,0 : boxf 640,0,648,480 loop flip=1 repeat ( 480/8 ) ; 1 × 60サイズ w=rnd(96);星を表示する確率 if(w=0){ w=rnd(3)*2+1;星の大きさ flip=1-flip gsel star_screen+flip color rnd($100),rnd($100),rnd($100) line ( 640/8 )*8+w,cnt*8,( 640/8 )*8,cnt*8 line ( 640/8 )*8+w/2,cnt*8-w/2-1,( 640/8 )*8+w/2,cnt*8+w/2 flip=1-flip gsel star_screen+flip color rnd($100),rnd($100),rnd($100) line ( 640/8 )*8+w,cnt*8,( 640/8 )*8,cnt*8 line ( 640/8 )*8+w/2,cnt*8-w/2-1,( 640/8 )*8+w/2,cnt*8+w/2 } loop return *BLINK star_screen=5 repeat 2 id=cnt * 2 gsel star_screen+id gmode 5+(( counter & 0x20 )>>5),(640+8),480,rnd($100) pos 0,0 gcopy star_screen+id+1,0,0,(640+8),480 loop return