1

私は迷路ゲームを作っており、迷路のレイアウトにテーブルを使用しています。キャラクターは問題なく動きますが、壁を通り抜けます 壁には のようなものを使用してい <td style="border-right:10px solid #000000;">ます。それは機能しますが、キャラクターはほとんど幽霊です. に到達したときにキャラクターを停止させる方法はありborderますか? 私の迷路はhttp://thomaswd.com/mazeにあります。

4

2 に答える 2

1

jQueryを使用していて、壁はセルのクラスによって表示されるため、移動しようとしているセルにjQueryのhasClassメソッドを使用して壁があるかどうかを確認できます。

function up() {
    //check if the cell has a border on the bottom
    if ($("#td" + (algernon - 8)).hasClass('b')) return;
    $("td").css("background","transparent");
    algernon -= 8;
    setTimeout("refresh()", 0);
}

function down() {
    //check if the cell has a border on the top
    if ($("#td" + (algernon + 8)).hasClass('t')) return;
    $("td").css("background","transparent");
    algernon += 8;
    setTimeout("refresh()", 0);
}

function leftclick() {
    //check if the cell has a border on the right
    if ($("#td" + (algernon - 1)).hasClass('r')) return;
    $("td").css("background","transparent");
    algernon -= 1;
    setTimeout("refresh()", 0);
}

function rightclick() {
    //check if the cell has a border on the left
    if ($("#td" + (algernon + 1)).hasClass('l')) return;
    $("td").css("background","transparent");
    algernon += 1;
    setTimeout("refresh()", 0);
}

これがお役に立てば幸いです

于 2013-02-15T19:53:55.890 に答える
1

ネズミがいるセルを保存し、移動が要求されたら、現在のセルにユーザーが行こうとしている方向に境界線があるかどうか、または将来のセルに反対方向に境界線があるかどうかを確認し、単に中止しますある場合はリクエストを移動します。たとえば、ユーザーが右クリックした場合、現在のセルに右の境界線があるかどうか、またはネズミが移動するセルに左の境界線があるかどうかを確認します。

于 2013-02-15T19:47:03.557 に答える