サンプルプログラム7 (その3)でできたリスト
- ’┌──────────┐
- ’│SAMPLE7 │
- ’│ シンリャクミスイ │
- ’└──────────┘
- VISIBLE 1,1,0,0,0,0
- CLS:COLOR 0
- CLEAR
- DIM EX(20),EY(20),ED(20)
- ’---
- EMAX=20
- FOR I=0 TO EMAX-1
- EX(I)=FLOOR(I%10)*2
- EY(I)=FLOOR(I/10)*2+3
- ED(I)=0
- LOCATE EX(I),EY(I)
- PRINT ”Е”
- NEXT
- EDW=FALSE
- ’---
- PX=10:PY=21
- LOCATE PX,PY:PRINT”Г”;
- MX=PX:MY=PY:MST=FALSE
- LOCATE 0,22
- PRINT”────────────────────────────────”;
- @LOOP
- GOSUB @MYSHIP
- GOSUB @MYSHOT
- GOSUB @ALIEN
- VSYNC 1
- GOTO @LOOP
- ’--- シ゛フ゛ン
- @MYSHIP
- B=BUTTON():VX=0
- IF B AND 4 THEN VX=-1
- IF B AND 8 THEN VX=1
- IF VX==0 THEN @NOTMOVE
- LOCATE PX,PY:PRINT” ”
- PX=PX+VX
- IF PX<0 THEN PX=0
- IF PX>31 THEN PX=31
- LOCATE PX,PY:PRINT”Г”;
- ’---
- @NOTMOVE
- RETURN
- ’--- タマ
- @MYSHOT
- IF MST==TRUE THEN @MSMOVE
- IF TCHST==FALSE THEN @MSSKIP
- MST=TRUE
- MX=PX:MY=PY
- GOTO @MSMOVE2
- ’---
- @MSMOVE
- LOCATE MX,MY:PRINT” ”
- ’---
- @MSMOVE2
- MY=MY-1
- IF MY<3 THEN MST=FALSE:GOTO @MSSKIP
- LOCATE MX,MY:PRINT”・”
- ’---
- @MSSKIP
- RETURN
- ’--- シンリャクシャ
- @ALIEN
- MD=FALSE
- IF EDW THEN MD=EDW:EDW=FALSE
- ’---
- FOR I=0 TO EMAX-1
- LOCATE EX(I),EY(I):PRINT” ”
- IF MD==FALSE THEN @EMV
- ’---
- ED(I)=(ED(I)+1) AND 3
- ’---
- @EMV
- GOSUB @EMOVE
- NEXT
- RETURN
- ’---
- @EMOVE
- ON ED(I) GOTO @RI,@DW,@LF,@DW
- @DW
- EY(I)=EY(I)+1
- IF EY(I)>20 THEN EY(I)=3
- ED(I)=(ED(I)+1) AND 3
- GOTO @EPUT
- @RI
- EX(I)=EX(I)+1
- IF EX(I)<31 THEN @EPUT
- EDW=TRUE
- GOTO @EPUT
- @LF
- EX(I)=EX(I)-1
- IF EX(I)>0 THEN @EPUT
- EDW=TRUE
- @EPUT
- LOCATE EX(I),EY(I)
- PRINT ”Е”
- RETURN