2013年6月21日投稿 / 投稿者 : OBONO / タグ : 投稿プログラム mkII専用 パズル QRコード
2013年6月25日更新
某有名RPGの戦闘中でのパズルの部分を、できるだけ少ないコードで実装できないかな…という事で作ってみました。
QRコード1枚に収める事を第一目標としているので、いろいろと端折っています。
いくらドロップを消しても何も起きず、延々とパズルが続きます。ゲームクリアもゲームオーバーもありません。
言わずもがなと思いますが、一応書いておきます。
プチコンmkII 向けのQRコードです。
注意:本プログラムはゲームのロジック部分だけなので、スプライト画像やパレットデータを別途作成して、事前に読み込んでおく必要があります。
※下画面のスプライト8番~31番、カラーパレット2番~7番を使用します。
例えば、PZDR_CHRという名前のCHRリソース、PZDR_COLという名前のCOLリソースを作成し、
プログラムを読み込んだ後、実行モードで以下の命令を実行してから、RUNするといった具合です。
- SPPAGE 1
- LOAD”SPS:PZDR_CHR”
- LOAD”COL1:PZDR_COL”
…とは言っても、自分でデータを作成するのは面倒でしょうから、仮の画像をパッケージングしたQRコードも用意しておきました。
- PNLTYPE”OFF”SPPAGE 1CLEAR
- DIM F(6,5),J(6,5),C(31)FOR I=1TO 30SPSET I,0,0,0,0,3,32,32SPHOME I,16,16NEXT
- GOTO@F
- @T
- IF!TCHST THEN@T
- GOSUB@Z
- X=P:Y=Q
- M=F(X,Y)C=C(M)SPCHR M,C*4,C,0,0,2
- @M
- T=10GOSUB@Z
- SPOFS M,K,L
- IF ABS(X*32+48−K)>23OR ABS(Y*32+32−L)>23THEN F=F(P,Q)GOSUB@O:SWAP F(X,Y),F(P,Q)BEEP 27X=P:Y=Q
- IF TCHST THEN@M
- T=0F=M
- SPCHR F,C*4,C,0,0,3GOSUB@O
- @J
- FOR X=0TO 5FOR Y=0TO 4J(X,Y)=0NEXT:NEXT
- FOR V=0TO 1W=!V:FOR X=V TO 5−V:FOR Y=W TO 4−W
- C=C(F(X,Y))IF C==C(F(X−V,Y−W))AND C==C(F(X+V,Y+W))THEN J(X−V,Y−W)=1J(X,Y)=1J(X+V,Y+W)=1
- NEXT:NEXT:NEXT
- K=0FOR X=0TO 5FOR Y=0TO 4IF J(X,Y)THEN F=F(X,Y)F(X,Y)=0SPSCALE F,0,30C(F)=0K=1
- NEXT:NEXT
- IF!K THEN@T
- BEEP 10WAIT 30
- @F
- T=20FOR X=0TO 5Y=4FOR Q=4TO 0STEP −1
- IF F(X,Q)THEN F=F(X,Q)SWAP F(X,Q),F(X,Y)GOSUB@O:Y=Y−1
- NEXT
- IF Y>=0THEN GOSUB@N
- NEXT
- WAIT 20GOTO@J
- @N
- Q=Y
- FOR Y=0TO Q
- C=RND(6)+2GOSUB@S
- F=S
- F(X,Y)=F
- SPCHR F,C*4,C,0,0,3
- T=0Y=Y−Q−1GOSUB@O
- T=20Y=Y+Q+1GOSUB@O
- SPSCALE S,100NEXT
- RETURN
- @O
- SPOFS F,X*32+48,Y*32+32,T
- RETURN
- @Z
- K=TCHX:K=K−(K<32)*(K−32)−(K>223)*(K−223)
- L=TCHY:L=L−(L<16)*(L−16)−(L>175)*(L−175)
- P=K/32−1OR 0Q=L/32−.5OR 0RETURN
- @S
- S=S+1−(S>29)*30IF C(S)THEN@S
- C(S)=C
- RETURN
※要望は一切受け付けません。頑張って自分で改良してみましょう。
表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.162 秒 | このページの最終更新 : 2022/09/20 (火) 12:44:14 (565d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30