🌸 「なでしこ」
>
🍯 「貯蔵庫」
15パズル/なでしこ本特典
🌟新規
📒一覧
🔌
🔍検索
🚪ログイン
15パズル/なでしこ本特典 📖
「なでしこ3本」5章のサンプル「puzzle15.nako3」です。
プログラム:
(→大)
### なでしこ3本の特典ゲーム ### # [file] ../src/ch5/puzzle15_v1.nako3 # [説明URL] https://nadesi.com/top/go.php?46 データ=[] # ブロックの値 DW=90 # ブロック幅 シャッフル回数=0 # シャッフルの時利用する IM=「」 画像URL=「https://n3s.nadesi.com/images/tokuten/tokuten01.png」 画像URLの画像読んだ時には IM=対象。 初期化処理。 ここまで。 # マウスイベントの処理 描画中キャンバスをマウス押した時には Y=INT(マウスY÷DW) X=INT(マウスX÷DW) [Y,X]のブロック移動。 ステージ描画。 0.1秒後には もし、クリア確認=OKならば、初期化処理。 ここまで。 ここまで ●初期化処理とは ブロック初期化して、番号シャッフル。 ここまで。 ●ブロック初期化とは データ=[] Yを0から3まで繰り返す データ[Y] = [] Xを0から3まで繰り返す データ[Y][X] = 1 + (Y × 4 + X) ここまで。 ここまで。 データ[3][3] = 0 # 空きブロック ここまで。 ●(YXの)ブロック移動とは Y=YX[0]。X=YX[1]。 RY=-1。RX=-1。 上下左右=[[-1,0],[1,0],[0,-1],[0,1]] #空白のブロック位置を探す 上下左右を反復 FY=対象[0] + Y。 FX=対象[1] + X。 もし((FY<0)または(FY>3))ならば、続ける。 もし((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を代入して、番号シャッフル実行。 ここまで。 ●番号シャッフル実行とは もし、シャッフル回数>30ならば、戻る。# --- (*5) オンの間 Y=4の乱数。X=4の乱数。 [Y,X]のブロック移動。 もし、それがオンならば、抜ける。 ここまで。 ステージ描画。 0.1秒後には シャッフル回数=シャッフル回数+1 番号シャッフル実行。 ここまで。 ここまで ●クリア確認とは # --- (*6) Yを0から3まで繰り返す Xを0から3まで繰り返す V=データ[Y][X] もし、V=0ならば、続ける。 もし、V≠(Y×4+X+1)ならば、NGで戻る。 ここまで。 ここまで。 「ゲームクリア」と言う。 それはOK。 ここまで。 ●ステージ描画とは Yを0から3まで繰り返す Xを0から3まで繰り返す XとYにタイル描画。 ここまで。 ここまで。 ここまで。 ●(XとYに)タイル描画とは V=データ[Y][X] - 1 もし(V=-1)ならば、V=15。 SX=DW×(V%4)。SY=DW×INT(V÷4) DX=DW×X。DY=DW×Y もし、V=15ならば 「」へ線色設定。 「#c0c0c0」へ塗り色設定 [DX,DY,DW,DW]へ四角描画。 違えば IMの[SX,SY,DW,DW]を[DX,DY,DW,DW]へ画像部分描画。 「#909090」へ塗り色設定。 「bold 12px serif」に描画フォント設定。 [DX,DY+12]へ(V+1)を文字描画。 ここまで。 ここまで。
プログラムを実行
⭐ クジラ飛行机 作
(
関連URL
)
タイトル:
15パズル/なでしこ本特典
ライセンス:
N3S_ONLY (貯蔵庫のみ/転載不可/改変不可/
ハブ保存可
)
タイプ:
wnako
タグ:
なでしこ3本
利用バージョン:
3.2.25
作成日時:
2021/07/06 23:57 (編集: 2021/08/10 17:44)
公開の投稿
ログイン
して★を付けよう!
Twitterへ投稿
📝作品を編集
作品公開情報
📍この作品のURL:
📍アプリ(即時実行)のURL:
📍アプリ(実行ボタンあり)のURL:
📍ブログパーツ:
上記HTML↑をブログに貼り付けることでアプリを埋め込めます。
📍ライブラリ直リンク - 『!「***」を取込』で使うとき:
📍なでしこハブ (最新版の反映は1日後):
ソースの確認
編集履歴の確認
通報数:
0
通報って何?