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

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.

主站蜘蛛池模板: 镇安县| 海口市| 嘉鱼县| 桃江县| 鹤岗市| 雷州市| 得荣县| 东兴市| 铜梁县| 葫芦岛市| 门头沟区| 奉节县| 青川县| 阳山县| 尼木县| 佛冈县| 环江| 桐柏县| 乌鲁木齐市| 保靖县| 驻马店市| 进贤县| 洛隆县| 东城区| 佛坪县| 岐山县| 凌海市| 泸定县| 贵州省| 武宁县| 栾城县| 林口县| 和硕县| 双峰县| 蛟河市| 淅川县| 延川县| 阳新县| 曲沃县| 简阳市| 新巴尔虎右旗|