PRG:LASERS
動いている様子はコチラ
セツメイEXPLANATION
レーザー光線が飛び交う中で、画面のキャラクターを操作しつつ、青と赤を切り替える。同じ色の光線に当たると得点、違う色の光線に当たるとダメージ。Move the character and switch her color in a laser field. You get points while be shot same color ray. She is damaged while be shot different color ray.
キャラクターの下に体力が表示されている。体力がなくなるとゲームオーバー。体力は時間経過で少しずつ回復。The health bar is displayed under her. If it becomes empty, the game is over. It recovers little by little with time.
十字キーで移動、Aボタンでプレイヤーの色を切り替え。ゲームオーバー時はBボタンで再開。You can move her by D-pad and switch her color by A button. You can retry by B button after game over.
QRコードQR CODE
プログラムコードPROGRAM CODE
表示 Show
A,A() | レーザー兵器の色 |
B | ボタンの状態 |
C | スコア |
D,D() | レーザー兵器の角度 |
E | レーザー兵器発生用カウンタ |
F | プレイヤーの色 |
G | プレイヤーの体力 |
I | 汎用ループカウンタ |
J | サウンド再生用 |
K() | レーザー兵器の回転速度 |
L | レーザー兵器発生間隔 |
M,N,T,U | レーザー当たり判定計算用 |
P,Q | プレイヤーの座標 |
R,R() | レーザーの長さ |
S | レーザー兵器発生時のスプライト番号 |
V,W | レーザーの方向 |
X,Y | レーザー兵器の座標 |
Z | レーザー兵器発生時の位置 |
01. @IЛ
02. BGMPLAY 25ACLS:CLEARЛ
03. FOR I=0TO 10SPSET I,0,0,0,0,3SPHOME I,8,8SPOFS I,0,-16NEXTЛ
04. SPCHR 10,100,4,0,0,2SPANIM 10,4,4G=15L=90P=128Q=96Л
05. @LЛ
06. B=BUTTON()P=P+(4-(B/4AND 3))%3-1Q=Q+(4-(B AND 3))%3-1Л
07. P=P+(P<8)*(8-P)+(P>247)*(247-P)Q=Q+(Q<8)*(8-Q)+(Q>183)*(183-Q)SPOFS 10,P,QЛ
08. IF BTRIG()AND 16THEN BEEP 9SPCHR 10,100,6-F*2,0,0,2F=!FЛ
09. GCLS:J=0FOR I=0TO 9SPREAD(I),X,Y:A=A(I)D=(D(I)+K(I))%360R=R(I)Л
10. R=R(I)+4-!SPCHK(I)*20R=R*(R>0)-(R>320)*(R-320)V=COS(RAD(D))W=SIN(RAD(D))Л
11. M=P-X:N=Q-Y:T=M*V+N*W:U=M*W-N*VЛ
12. IF T>=0AND T<R AND ABS(U)<8THEN C=C+(A==F)G=G-(A!=F)J=J OR(A==F)+1R=TЛ
13. GLINE X,Y,X+V*R,Y+W*R,6-A*3SPANGLE I,DЛ
14. D(I)=D:R(I)=R:NEXTЛ
15. IF J THEN BEEP J!=2,F*768Л
16. C=C+1/8G=G+(G<15)/64E=E-1IF E>0THEN@EЛ
17. D(S)=RND(360)R(S)=0K(S)=360+(RND(9)/4+1)*(RND(2)*2-1)Z=RND(2)*288A=RND(2)A(S)=AЛ
18. SPCHR S,136,4+A*2,0,0,3SPOFS S,Z-16,RND(176)+8SPOFS S,272-Z,RND(176)+8,300-RND(100)S=(S+1)%10Л
19. BEEP 37,A*768,,Z/2.3L=L-(L>30)/4E=LЛ
20. @EЛ
21. IF G>0THEN GFILL P-8,Q+10,P-8+G,Q+11,9CLS?”Score ”;FLOOR(C):VSYNC 1GOTO@LЛ
22. BGMSTOP:BEEP 11SPCHR 10,124SPANIM 10,1,4FOR I=0TO 9SPREAD(I),X,YЛ
23. SPOFS I,X,Y:NEXTЛ
24. @VЛ
25. ON BTRIG()==32GOTO@V,@IЛ
※コードのHTML生成にPTC2HTMLを使用しています。
モドル BACK