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

Creating a parabolic shot

The ball will move upwards in the direction you threw it. At some point it will start to slow down, stop, and then start falling down. The path the ball follows is called a parabola. This is what we expect of gravity. It's always around us, so we don't pay too much attention to it. If you would throw the ball in space, which has no gravity, the ball would move on forever in a straight line, as it does now in our game. On Earth, the ball will move up for a while, then slow down, and eventually fall down again. This movement path is described in the following diagram:

Creating a parabolic shot

In this case, the cannon and cannonball should be on the ground, so we want to simulate some gravity. Not only will the parabola trajectory look more interesting, it will also make the game more challenging. You could try hitting a target by shooting the cannonball at a steep angle and have it hit a target as it drops down. It is very useful to shoot over the hills, which we will do in the last stage of this project.

Engage thrusters

To simulate gravity, you could use a realistic mathematical formula. But it can be hard to figure out, and in a simple game, it often isn't needed. We are going to create a good-looking parabola trajectory with just a simple calculation and some trickery.

To simulate the pull of gravity, we are going to use the built-in timer variable. This timer will start counting seconds when the game is started, but we can reset it to start counting again. We will be using the increasing number as a constantly increasing pull, which will eventually start dragging the cannonball downwards.

Engage thrusters

The steps to create the trajectory are as follows:

  1. We select the cannonball sprite to add to its scripts.
  2. After the move () steps command, add a change y by () block. This will cause the cannonball to vertically move a bit after taking its steps.
  3. Place a () * () (multiplication) operator in the box.
  4. Then put the timer variable in one of the operator slots.
  5. In the other slot, fill in a number manually. Try a few numbers, just for the fun of it, and see what happens.

    In my opinion, the number -5 has the best result. But if you disagree, you're free to choose another number. Just make sure that the number is negative, because a positive number will cause the cannonball to float ever faster upwards.

  6. To reset the timer after the cannonball has hit something, add a reset timer block at the start of the loop.
Engage thrusters

Objective complete – mini debriefing

Test the game again and turn the cannon to point at different angles. See how the parabolic trajectory of the cannonball responds.

主站蜘蛛池模板: 石景山区| 张北县| 湄潭县| 电白县| 务川| 米易县| 朝阳县| 广元市| 安泽县| 垦利县| 镇平县| 西安市| 桦甸市| 塔河县| 安福县| 正安县| 迁西县| 磐石市| 奉贤区| 洛宁县| 澄迈县| 广安市| 孝感市| 留坝县| 汾阳市| 观塘区| 海林市| 淄博市| 广德县| 望江县| 牡丹江市| 长宁区| 正安县| 弋阳县| 讷河市| 曲周县| 宁都县| 武川县| 镇原县| 揭西县| 双柏县|