2011年3月27日投稿 / 投稿者 : 名無しさん / タグ : 投稿プログラム ゲーム パズルゲーム QRコード 初代対応
王将を外に出す木製のパズルゲーム
プチコンmkII 向けの QR コードです。
2011/03/27 (日) 22:24:27 47行1行削除 2011/04/14 (木) 00:15:23 コメント3つ目までの間違い訂正
- CLEAR:GPAGE 1:GCLS:CLS
- PNLTYPE ”OFF”
- DIM AKI(6,7)
- DIM X(11),Y(11),SX(11),SY(11)
- DIM DX(11),DY(11)
- DATA 2,1,2,2
- DATA 1,1,1,2
- DATA 4,1,1,2
- DATA 1,3,1,1
- DATA 2,3,1,1
- DATA 3,3,1,1
- DATA 4,3,1,1
- DATA 1,4,2,1
- DATA 3,4,2,1
- DATA 1,5,1,1
- DATA 4,5,1,1
- FOR I=0 TO 10
- READ X(I),Y(I),SX(I),SY(I)
- DX(I)=20+X(I)*36
- DY(I)=−30+Y(I)*36
- I0=I:C0=6:X0=DX(I):Y0=DY(I)
- GOSUB @BOX
- NEXT I
- FOR I=0 TO 5
- FOR J=0 TO 6
- AKI(I,J)=0
- NEXT J
- NEXT I
- AKI(2,5)=1
- AKI(3,5)=1
- TCH_X=0:TCH_Y=0
- IDX=−1
- MODE=0
- GBOX 55,5,200,186,2
- GLINE 92,186,164,186,0
- @MAIN
- ON MODE GOTO @L0,@L1,@L2
- @L0
- IF TCHST==FALSE GOTO @L9
- GOSUB @TCHCHK
- IF IDX!=−1 THEN MODE=1
- GOTO @L9
- @L1
- TDX=TCHX−TCH_X
- TDY=TCHY−TCH_Y
- AX=ABS(TDX):AY=ABS(TDY)
- IF TCHST==TRUE AND AX<4 AND AY<4 GOTO @L9
- IF AX>=4 OR AY>=4 GOTO @L101
- MODE=0:GOTO @L9
- @L101
- IF AX>AY GOTO @L102
- I=1:IF TDY<0 THEN I=−1
- TDX=0:TDY=I
- GOTO @L103
- @L102
- I=1:IF TDX<0 THEN I=−1
- TDX=I:TDY=0
- @L103
- GOSUB @MOVABLE
- IF I==TRUE GOTO @L104
- MODE=0:GOTO @L9
- @L104
- VX=TDX*9:VY=TDY*9
- MC=4
- GOSUB @MOVEBOX
- MC=MC−1
- MODE=2:GOTO @L9
- @L2
- GOSUB @MOVEBOX
- MC=MC−1
- IF MC>0 GOTO @L9
- FOR I=0 TO SX(IDX)−1
- FOR J=0 TO SY(IDX)−1
- AKI(X(IDX)+I,Y(IDX)+J)=1
- NEXT J
- NEXT I
- X(IDX)=(DX(IDX)−20)/36
- Y(IDX)=(DY(IDX)+30)/36
- FOR I=0 TO SX(IDX)−1
- FOR J=0 TO SY(IDX)−1
- AKI(X(IDX)+I,Y(IDX)+J)=0
- NEXT J
- NEXT I
- MODE=0:GOTO @L9
- @L9
- VSYNC 1
- GOTO @MAIN
- @BOX
- X1=X0+SX(I0)*36−1
- Y1=Y0+SY(I0)*36−1
- GBOX X0+1,Y0+1,X1−1,Y1−1,C0
- RETURN
- @MOVEBOX
- I0=IDX
- DNX=DX(I0)+VX
- DNY=DY(I0)+VY
- C0=0:X0=DX(I0):Y0=DY(I0)
- GOSUB @BOX
- C0=6:X0=DNX:Y0=DNY
- GOSUB @BOX
- DX(I0)=DNX
- DY(I0)=DNY
- RETURN
- @TCHCHK
- IDX=−1
- I=0
- @TCHCHK0
- IF TCHX<DX(I) GOTO @TCHCHK1
- IF TCHX>DX(I)+SX(I)*36 GOTO @TCHCHK1
- IF TCHY<DY(I) GOTO @TCHCHK1
- IF TCHY>DY(I)+SY(I)*36 GOTO @TCHCHK1
- IDX=I
- TCH_X=TCHX
- TCH_Y=TCHY
- GOTO @TCHCHK2
- @TCHCHK1
- I=I+1
- IF I<11 GOTO @TCHCHK0
- @TCHCHK2
- RETURN
- @MOVABLE
- IF IDX==0 AND X(0)==2 AND Y(0)==4 AND TDY==1 GOTO @GOAL
- I=TRUE
- J=IDX
- IF TDY==0 GOTO @MOVABLE0
- FOR X0=0 TO SX(J)−1
- Y1=Y(J)
- IF TDY>0 THEN Y1=Y(J)+SY(J)−1
- IF AKI(X(J)+X0,Y1+TDY)==0 THEN I=FALSE
- NEXT
- @MOVABLE0
- IF TDX==0 GOTO @MOVABLE1
- FOR Y0=0 TO SY(J)−1
- X1=X(J)
- IF TDX>0 THEN X1=X(J)+SX(J)−1
- IF AKI(X1+TDX, Y(J)+Y0)==0 THEN I=FALSE
- NEXT
- @MOVABLE1
- RETURN
- @GOAL
- PRINT ”GOAL!”
- END
この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は掲示板へ)
表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.111 秒 | このページの最終更新 : 2022/09/20 (火) 12:44:09 (565d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30