🌸 「なでしこ」
>
🍯 「貯蔵庫」
パズルゲーム
🌟新規
📒一覧
🔌
🔍検索
🚪ログイン
パズルゲーム 📖
パズルですパクリのため著作権放棄
プログラム:
(→大)
# ------------------------------- # 15パズルのプログラム # ------------------------------- データ=[] DW=90 # ブロック幅 上下左右=[[-1,0],[1,0],[0,-1],[0,1]] Fステージ=「#nako3_canvas_1」 シャッフル回数=0 初期化処理。 # マウスイベントの処理 --- (*1) Fステージをマウス押した時には Y=INT(マウスY÷DW) X=INT(マウスX÷DW) [Y,X]のブロック移動。 ブロック描画。 0.1秒後には クリア確認。 もし、それがオンならば、 初期化処理。 ここまで。 ここまで。 ここまで ●初期化処理とは # --- (*2) ブロック初期化。 番号シャッフル。 ここまで。 ●ブロック初期化とは データ=[] Yを0から3まで繰り返す データ[Y] = [] Xを0から3まで繰り返す データ[Y][X] = 1 + (Y * 4 + X) ここまで ここまで データ[3][3] = 0 # 空きブロック ここまで ●(YXの)ブロック移動とは # --- (*3) Y=YX[0]。X=YX[1] RY=-1。RX=-1。 #空白のブロック位置を探す 上下左右を反復 FY=対象[0] + Y。 もし((FY<0)または(FY>3))ならば、続ける。 FX=対象[1] + X。 もし((FX<0)または(FX>3))ならば、続ける。 V=データ[FY][FX] もし、V=0ならば RY=FY。RX=FX。抜ける。 ここまで ここまで。 もし(RX=-1)ならば オフで戻る。#見つからなかった場合 ここまで。 # ブロックを入れ替える TMP=データ[Y][X] データ[Y][X] = データ[RY][RX] データ[RY][RX] = TMP オンで戻る ここまで ●番号シャッフルとは # --- (*4) シャッフル回数=0 番号シャッフルGO ここまで。 ●番号シャッフルGOとは もし、シャッフル回数>30ならば、戻る。# --- (*5) オンの間 Y=4の乱数 X=4の乱数 [Y,X]のブロック移動。 もし、それがオンならば、抜ける。 ここまで。 ブロック描画。 0.1秒後には シャッフル回数=シャッフル回数+1 番号シャッフルGO ここまで。 ここまで ●クリア確認とは # --- (*6) Yを0から3まで繰り返す Xを0から3まで繰り返す V=データ[Y][X] もし、V=0ならば、続ける。 もし、V≠(Y*4+X+1)ならば、オフで戻る。 ここまで ここまで 「ゲームクリア」と言う。 オンで戻る。 ここまで。 ●ブロック描画とは [0,0,DW*4,DW*4]の描画クリア。 DW2=DW÷2 黒色に線色設定 「40px Aria」に描画フォント設定 Yを0から3まで繰り返す Xを0から3まで繰り返す DX=X*DW DY=Y*DW V=データ[Y][X] もし、V > 0ならば 「#733」に塗色設定。 [DX, DY, DW, DW]へ四角描画。 「#baa」に塗色設定。 [DX+DW2, DY+DW2]へ(DW2-3)の円描画。 「#333」に塗色設定。 [DX+17, DY+60]に(Vを2でゼロ埋め)を文字描画。 違えば 「#999」に塗色設定。 [DX, DY, DW, DW]へ四角描画。 ここまで。 ここまで ここまで ここまで。
プログラムを実行
nyannko 作
タイトル:
パズルゲーム
ライセンス:
CC0 (著作権破棄)
タイプ:
wnako
タグ:
-
利用バージョン:
3.3.18
作成日時:
2022/05/26 14:41
公開の投稿
ログイン
して★を付けよう!
📝作品を編集
作品公開情報
📍この作品のURL:
📍アプリ(即時実行)のURL:
📍アプリ(実行ボタンあり)のURL:
📍ブログパーツ:
上記HTML↑をブログに貼り付けることでアプリを埋め込めます。
📍ライブラリ直リンク - 『!「***」を取込』で使うとき:
📍なでしこハブ (最新版の反映は1日後):
ソースの確認
編集履歴の確認
通報数:
0
通報って何?