0

我最近买了一本书,开始学习用 HTML 5、CSS3 和 Javascript/Jquery 制作游戏。它推出的第一个游戏是一个简单的乒乓球游戏。其中大部分是复制和粘贴,但从那时起我一直在尝试添加其他功能。

这是我正在尝试调整的一些代码:

    pingpong.scoreB++;
    $("#scoreB").html(pingpong.scoreB);
    if (pingpong.scoreB == 10){
        alert("Player A Lost");
        pingpong.scoreA = 0;
        pingpong.scoreB = 0;
    }

在这里,我试图在有人达到 10 后将分数重置为零。此代码在技术上确实有效,只是屏幕上的分数不会重置,直到有人在关闭警报框后再次得分。

我正在尝试调整的另一个代码:

if (pingpong.pressedKeys[KEY.ENTER]){
$("#ball").css({
    "left" : ballLeft + ball.speed * ball.directionX,
    "top" : ballTop + ball.speed * ball.directionY
})};

对于此代码,我试图在按一次 ENTER 后让球移动。目前,我需要按住 ENTER 以不断移动球。

4

1 回答 1

1

请注意,当您第一次更改分数时(使用pingpont.scoreB++),下一行将新分数写入 HTML。但是,当您将分数重置为零时,您不会使用任何代码将新分数写入 HTML。在重置分数后添加几行来更新 UI:

pingpong.scoreB++;
$("#scoreB").html(pingpong.scoreB);  // This line updates the UI
if (pingpong.scoreB == 10){
    alert("Player A Lost");
    pingpong.scoreA = 0;
    pingpong.scoreB = 0;  // After you change the score here, update the UI again
    $("#scoreA").html(pingpong.scoreA);
    $("#scoreB").html(pingpong.scoreB);
}
于 2013-02-01T00:21:08.100 回答