ホームページ  >  に質問  >  本文

HTML CSS および JS のマインスイーパー ゲームが隣接する爆弾ユニットを正しくカウントしない

HTML、CSS、JavaScript を使用してマインスイーパーを再作成しようとしています。隣接するセルをチェックして爆弾かどうかを確認し、カウントする必要がありますが、セルの正しい部分をチェックしていないようです。 x、y、isBomb、isChecked、および隣接するセルの数を表す数値を含むセル クラスを使用しています。また、セルのグリッドを格納するために 1D 配列も使用しています。 そこで私の質問は、この関数に問題があるのか​​、それとも挿入された 2D 配列を使用してコードを書き直す必要があるのか​​ということです。 リーリー

各セルでcheckN関数を使用した結果

-1を足したり、1を足したり、値を少し変更してみましたが、まだ正しくありません

P粉145543872P粉145543872276日前426

全員に返信(1)返信します

  • P粉124070451

    P粉1240704512024-01-18 00:23:38

    問題は、collrows:

    が混在していることだと思います。 リーリー

    cells[xy*coll] を介して x, y のセルにアクセスできる場合もあれば、 cells[xy*rows] を介してアクセスできる場合もあります。 coll が正しいと思います (各 ycoll 列で構成される行全体をスキップします)。そのため、コードを :

    に変更してみてください。 リーリー

    そして、この間違いを再び繰り返さないように、このロジックを独自の関数に抽出することを検討してください。

    (== true の部分も、別の if の中に if があるなど、冗長ですが、どちらも問題は発生しません)

    返事
    0
  • キャンセル返事