むりやりガッチ! by 三毛乱ジェロ

再生

 手数制限付きのハラハラドキドキのパズルゲーム。
 ゲームスタートして右側に表示される、でこぼこの赤いブロック。これと凸凹がピッタリ合わさるように左側の青いブロックを削っていこう。
 十字ボタンでカーソル移動、Aボタンで「カーソルより右にあるブロックを全部」削る。うまく削り終わったらRボタンで判定開始! そうそう、画面下にある緑色の「手数」を使い切ってしまうと強制的に判定が始まってしまうぞ。

私が作りました

三毛乱ジェロ

MSXでBASICを覚え、windowsでその複雑さに心が折れた者です。
歳は取ってもアイデアは枯れないよ。


 CHECK POiNT 

ワンパク
ウォオー! 分かっているハズなのに、つい、つい余計にケズっちまったァー!

博士
攻略法はわかっても、つい見た目に惑わされて失敗してしまうようじゃの。単純なようでアイデアの勝利じゃ。

インテリ
ステージが進むとブロックの区切り目が見えなくなってますます難しくなるね。リストでは一見同じに見えるけど、「■■■」と「┿┿┿」のように大きい四角記号・小さい四角記号の切り替えで作っているんだ。

神崎
65行目の左側はSHIFTキーを押して入力するスキマつきの、右側はSHIFTキーを使わないスキマなしの。66行目はスキマなし、95行目はスキマつきだから入力するときは気を付けて!

博士
判定は最上段の1行を常に「合致している」基準にして、その下の行の赤青ブロック合計数も1行目と同じか、という順序で判定しておるのじゃな。
感覚的には行単位で判定するよりも、青ブロックをまとめて近づけたときに最初に合致しなかった部分がエラーになる、という見せ方の方がしっくりくるじゃろうか。その分プログラムは複雑になってしまうじゃろうが……

ワンパク
……ハッ!? オ、オレが1行目だけは常にカンペキだと思っていたのにはそういう秘密が……!

博士
……こういうやつもおるしのう。

プログラムリスト

  1. ’ ムリヤリ カ゛ッチ
  2. ’ BY Michelan-gelo.
  3. ’ ?ショキセッテイ
  4. CLEAR
  5. VISIBLE 1,1,0,0,1,0
  6. DIM A(17),B(17)
  7. TE=0
  8. HS=0
  9. DA=2
  10. MA=1
  11. PA=5
  12. SPSET 0,28,12,0,0,0
  13. ’ ?タイトル
  14. @TITLE
  15. CLS
  16. SPOFS 0,1024,1024
  17. C=4
  18. SC=0
  19. BGMPLAY 17
  20. COLOR 13
  21. LOCATE 10, 5:PRINT” ┨┓┳┻ ┻┳┯┯┻ ┻”
  22. LOCATE 10, 6:PRINT”┳┨    ┻ ┛┃  ┻”
  23. LOCATE 10, 7:PRINT”┻┨┠┨┻┠┨ ┛ ┻┠┨”
  24. COLOR 10
  25. LOCATE 10, 9:PRINT” ┨┠┓━━  ┠┨━┻ ”
  26. LOCATE 10,10:PRINT” ┻ ┛ ┛┛┓┠┨┠┻ ”
  27. LOCATE 10,11:PRINT” ┻ ┛ ┠┠┛┠┨ ┳ ”
  28. COLOR 4
  29. LOCATE  3,18:PRINT”ヤリカタ:アカ ノ テ゛コホ゛コニ アウヨウニ”
  30. LOCATE  8,19:PRINT”アオ ノ フ゛ロックヲ ケス゛ッテネ”
  31. COLOR 15
  32. LOCATE  4,22:PRINT”2008 2011 Michelan-gelo.”
  33. LOCATE  6, 2:PRINT”HIGH SORE:”;HS
  34. LOCATE  9,14:PRINT”Aホ゛タン:ノ-マル モ-ト゛”
  35. LOCATE  9,15:PRINT”Xホ゛タン:スハ゜ルタ モ-ト゛”
  36. LOCATE  9,16:PRINT”Bホ゛タン:シュウリョウ”
  37. H=0
  38. @TITLE2
  39. BT=BUTTON()
  40. IF BT==16 THEN DA=2:PA=4:MA=1:H=1
  41. IF BT==64 THEN DA=3:PA=6:MA=2:H=1
  42. IF BT==32 GOTO @SHURYOU
  43. IF H==0 GOTO @TITLE2
  44. ’ ?カ゛メン ノ シ゛ュンヒ゛
  45. @MAKESC
  46. CLS
  47. BGMSTOP
  48. D=11
  49. TE=0
  50. IF MA==1 THEN TE=31:BP=26:S$=”■”: IF C>7 THEN S$=”┿”
  51. IF MA==2 THEN TE=C+1:BP=27:S$=”■”
  52. FOR I=1 TO C
  53.  FOR J=1 TO 2
  54.   J=2
  55.   E=RND(PA)-DA
  56.   D=D+E
  57.   IF D>14 OR D<3 THEN J=1:D=D-E
  58.  NEXT
  59.  A(I)=14
  60.  B(I)=D
  61.  FOR J=1 TO D
  62.   COLOR 10
  63.   FOR K=1 TO 14
  64.    LOCATE K,I:PRINT S$
  65.   NEXT
  66.   COLOR 13
  67.   FOR K=30-D TO 30
  68.    LOCATE K,I:PRINT S$
  69.   NEXT
  70.  NEXT
  71. NEXT
  72. COLOR 15
  73. LOCATE 4,19:PRINT”SCORE:”;SC
  74. LOCATE 4,20:PRINT”Aホ゛タン:ケス゛ル Rホ゛タン:カンリョウ”
  75. COLOR 4
  76. FOR I=1 TO TE
  77.  LOCATE I,21:PRINT”■”
  78. NEXT
  79. X=14
  80. Y=1
  81. BGMPLAY BP
  82. ’ ?メイン
  83. @MAIN
  84. BT=BUTTON()
  85. IF TE==0 GOTO @JUDGE
  86. IF BT==8 AND X<14 THEN X=X+1:BEEP 49
  87. IF BT==4 AND X>1  THEN X=X-1:BEEP 49
  88. IF BT==2 AND Y<C  THEN Y=Y+1:BEEP 49
  89. IF BT==1 AND Y>1  THEN Y=Y-1:BEEP 49
  90. IF BT==16 THEN GOSUB @DIG
  91. IF BT==512 GOTO @JUDGE
  92. VSYNC 5
  93. SPOFS 0,X*8,Y*8
  94. GOTO @MAIN
  95. @DIG
  96. IF A(Y)<X THEN RETURN
  97. FOR I=X TO A(Y)
  98.  LOCATE I,Y:PRINT ” ”
  99. NEXT
  100. BEEP 3
  101. A(Y)=X-1
  102. TE=TE-1
  103. LOCATE TE+1,21:PRINT ” ”
  104. RETURN
  105. @JUDGE
  106. BGMSTOP
  107. SPOFS 0,1024,1024
  108. COLOR 15
  109. LOCATE 6,18:PRINT”J U D G E M E N T !”
  110. BEEP 43
  111. VSYNC 125
  112. G=A(1)+B(1)
  113. H=0
  114. FOR I=1 TO C
  115.  F=A(I)+B(I)
  116.  V$=”GOOD!”
  117.  MC=0
  118.  IF G!=F THEN H=1:V$=”N G !”:MC=1
  119.  COLOR 10:IF MC==1 THEN COLOR 2
  120.  FOR J=1 TO 29-B(I)+(F-G)
  121.   LOCATE J,I:PRINT S$
  122.  NEXT
  123.  BP=7:IF MC==1 THEN BP=13
  124.  COLOR 15:LOCATE 3,I:PRINT V$
  125.  BEEP BP
  126.  VSYNC 36
  127. NEXT
  128. IF H==1 GOTO @GOVER
  129. COLOR 3
  130. LOCATE 6,18:PRINT”C L E A R !  PUSH Y ”
  131. BEEP 34
  132. COLOR 15
  133. CZ=(TE*MA)+(C*20)
  134. LOCATE 17,19:PRINT”POINT:”;CZ
  135. SC=SC+CZ
  136. LOCATE 4,19:PRINT”SCORE:”;SC
  137. @CLOOP
  138. BT=BUTTON()
  139. IF BT!=128 GOTO @CLOOP
  140. C=C+1
  141. IF C==17 THEN C=16:DA=4:PA=8
  142. GOTO @MAKESC
  143. ’ ?ケ゛-ム オ-ハ゛-
  144. @GOVER
  145. COLOR 7
  146. LOCATE 6,18:PRINT”GAME OVER    PUSH Y ”
  147. BEEP 37
  148. IF HS<SC THEN HS=SC
  149. @GLOOP
  150. BT=BUTTON()
  151. IF BT!=128 GOTO @GLOOP
  152. GOTO @TITLE
  153. ’ ?オワリ
  154. @SHURYOU
  155. BGMSTOP
  156. END