PRG:SPLIT
セツメイEXPLANATION
画面下の反射板を十字ボタンの左右で操作し、2分間、落下してくる球を反射させる。Reflect balls for 2 minutes. You can move the reflect board by cross-key horizontally.
球は反射する際に2つに分裂する。ただし、残り時間が30秒を切ると3つに分裂する。球を反射させる毎に1点加算。Usually the ball is split into 2 when it is reflected. If left time is less than 30 seconds, the ball is split into 3. You get 1 point by every reflection.
球が1つも無くなってしまう、もしくは残り時間が無くなったらゲームオーバー。If there are no balls or no left time, the game is over.
ゲームオーバーになったら、AボタンかBボタンで再開。Press A button or B button to retry game.
QRコードQR CODE
プログラムコードPROGRAM CODE
表示 Show
A() | 球のX座標 |
B() | 球のY座標 |
C() | 球のX方向速度 |
D() | 球のY方向速度 |
E() | 球の移動処理制御用フラグ |
F$ | 球情報配列のインデックス番号管理用 |
G | 反射板と球の位置のズレ |
I,K | 汎用ループカウンタ |
J | 球の新規発生時の配列インデックス番号 |
L | 新規発生できる球の数 |
N | 反射した球の有無 |
P | スコア |
Q | 反射板のX座標 |
R | ボタンの状態 |
T,U | 球の新規発生時の速度 |
V,W | 球の速度の計算用 |
X,Y | 球の座標の計算用 |
Z | 残り時間 |
01. @IЛ
02. ACLSЛ
03. CLEARЛ
04. GBOX 0,0,255,192,2Л
05. DIM A(96),B(96),C(96),D(96),E(96)Л
06. FOR I=0 TO 95Л
07. B(I)=193Л
08. F$=F$+CHR$(I)Л
09. SPSET I,174,RND(13)+2,0,0,3Л
10. SPOFS I,0,193Л
11. NEXTЛ
12. L=96Л
13. X=120Л
14. GOSUB @BЛ
15. Q=120Л
16. SPSET 96,172,3,0,1,2,16,8Л
17. SPSET 97,172,3,0,0,2,32,8Л
18. Z=3600Л
19. BGMPLAY 27Л
20. @LЛ
21. R=BUTTON()Л
22. Q=Q-(R AND 4)*2+(R AND 8)Л
23. SPOFS 96,Q-16,184Л
24. SPOFS 97,Q,184Л
25. N=0Л
26. FOR I=0 TO 95Л
27. Y=B(I)Л
28. IF Y>192 OR E(I) GOTO @MЛ
29. V=C(I)Л
30. X=A(I)+VЛ
31. W=D(I)+1/4Л
32. Y=Y+WЛ
33. IF X<0 THEN X=0:V=-V*3/4Л
34. IF X>240 THEN X=240:V=-V*3/4Л
35. G=X-QЛ
36. IF Y-W<168 AND Y>=168 AND ABS(G)<=24 AND Z>0 THEN GOSUB @SЛ
37. IF Y>192 THEN F$=F$+CHR$(I):L=L+1Л
38. SPOFS I,X,YЛ
39. A(I)=XЛ
40. B(I)=YЛ
41. C(I)=VЛ
42. D(I)=WЛ
43. @MЛ
44. E(I)=0Л
45. NEXTЛ
46. Z=Z-(Z>0)Л
47. LOCATE 1,1Л
48. ? PЛ
49. ? ” Р”;FLOOR(Z/30);” ”Л
50. IF N THEN BEEP 40Л
51. VSYNC 2Л
52. IF L<96 GOTO @LЛ
53. BGMSTOPЛ
54. BEEP 11Л
55. @OЛ
56. IF BUTTON() AND 48 GOTO @I ELSE @OЛ
57. @SЛ
58. P=P+1Л
59. N=1Л
60. Y=168Л
61. W=-W/2Л
62. G=G-8+(Z>900)*4Л
63. FOR K=(Z>900) TO 2Л
64. T=V+G/16Л
65. U=W-(80-ABS(G))/16Л
66. IF K<2 THEN GOSUB @B ELSE V=T:W=UЛ
67. G=G+8Л
68. NEXTЛ
69. RETURNЛ
70. @BЛ
71. IF L==0 THEN RETURNЛ
72. J=ASC(LEFT$(F$,1))Л
73. L=L-1Л
74. A(J)=XЛ
75. B(J)=YЛ
76. C(J)=TЛ
77. D(J)=UЛ
78. E(J)=(I<J)Л
79. F$=RIGHT$(F$,L)Л
80. RETURNЛ
※コードのHTML生成にPTC2HTMLを使用しています。
モドル BACK