官术网_书友最值得收藏!

Time for action – auto moving the left paddle

Perform the following set of actions for automoving our paddle:

  1. Let's continue with our pingpong.js JavaScript file. We create a function that follows the ball's y position.
    function autoMovePaddleA() {
      var speed = 4;
      var direction = 1;
    
      var paddleY = pingpong.paddleA.y + pingpong.paddleA.height/2;
      if (paddleY > pingpong.ball.y) {
        direction = -1;
      }
    
      pingpong.paddleA.y += speed * direction;
    }
  2. Then, inside the game loop function, we call our autoMovePaddleA function.
    autoMovePaddleA();

What just happened?

We created a logic that moves the left paddle based on the ball's y position. You may try the game with its current progress at http://makzan.net/html5-games/pingpong-wip-step6/.

Since we have already implemented the view rendering in the renderPaddles function, in this section, we only need to update the paddle's data and the view will get updated automatically.

We make the paddle speed slower than the ball's speed. Otherwise, the player can never win against the computer, because the computer-controlled paddle can always catch the ball and bounce it back if they have the same speed.

主站蜘蛛池模板: 江源县| 雷波县| 大兴区| 石景山区| 理塘县| 濉溪县| 彰武县| 海原县| 当涂县| 江油市| 平山县| 灵山县| 杭锦后旗| 高州市| 南华县| 丰台区| 台安县| 东乡县| 若尔盖县| 峨边| 磐石市| 长丰县| 日照市| 旺苍县| 黔江区| 林芝县| 清涧县| 长寿区| 明光市| 蕉岭县| 菏泽市| 都兰县| 宜州市| 双牌县| 石城县| 莲花县| 乐东| 丽江市| 大丰市| 耿马| 孟州市|