5/10/2023 0 Comments Infinite runner in ready maker![]() To make it even more difficult, we'll also change the position of the saucer when the Timer goes off. We can do this by using the random block. The saucer will keep the same Y value so we'll only have to change the X. Let's make the game a little more challenging! Now, when the bullet collides with the saucer, let's change the location of the saucer. Increasing the Difficulty - Changing the Position of the Saucer When this happens, we need to set the score back to 0. Sometimes, users might want to restart the game and reset their score. To make the bullet disappear when it hits the top edge of our canvas, we need to use the Bullet.EdgeReached event handler. You may have noticed that if you miss the saucer, the bullet moves to the top of the screen and gets stuck there until you try shooting again. We can do this using the Bullet.MoveTo block. We need to program the bullet to return to the place in front of the rocket when we shoot it. If you have started testing this game out, you may have noticed that once you shoot the bullet, it doesn't appear to let you shoot it again. On collision we want two things to happen. Since our rocket sprite is locked into a Y at the bottom of the screen, the bullet will never collide with the rocket and only with the saucer. This event is called whenever the bullet collides with another sprite. We will use the Bullet.CollidedWith event handler. The last thing we need to program is what happens when the bullet hits the saucer. 0/360 is to the left, 90 is up, 180 is right, and 270 is down. Heading is a value from 0 to 360 that indicates what direction the sprite should be moving towards. When the rocket is touched, we not only want to set the rocket to be visible, but we also want to set the speed and heading of the rocket. We will do this by using the RocketSprite.Touched event handler. When we touch the rocket, we want the bullet to start heading towards the saucer. Next, we want to make sure that the bullet appears again when we shoot from the rocket. We do this by setting the bullet's visibility property to False. When the screen is initialized, we will program the bullet to be invisible. Let's start by using the Screen1.initialize block. We want it to shoot from the rocket, collide with the saucer, and be invisible after the collision and before being shot. There are several features we want our bullet to have in this game. Once you put these blocks together, connect your phone and test this feature out! Programming the Bullet's Behavior When the rocket is dragged, we will adjust it's X property to be the currentX that we dragged the sprite to. To do this we will use the RocketSprite.Dragged event handler. This means we will only be changing the X-direction of the rocket sprite. In this game, the user will move the rocket from side to side. Now that you have all the essential properties configured, feel free to change the colors of any components that you want to. To reset the game so the player can play again We use the Clock for its Timer method to move the the saucer Upload the saucer image and set the Picture property to "saucer.png".Ĭhange PaintColor to Green and set the Radius property to 8. This will place the rocket at the bottom of the canvas. Upload the rocketship image and set the Picture property to "rocket.png". Set the BackgroundColor property to Black. ![]() The background that we will be putting our sprites onĬhange Width property to "Fill parent" and Height property to 300. To create this interface, put the following components into the Designer by dragging them from the Component Palette into the Viewer and set the properties of the components as described below: When you finish, it should look something like the snapshot below (more detailed instructions below the snapshot). Use the component designer to create the interface for SpaceInvaders. Click below to download the image files for your rocket ship sprite and flying saucer sprite. This tutorial introduces the following skills, useful for future game development:įor this game, you will have two types of sprites: an imagesprite represented by a shooter ship and flying saucers represented by a ball sprite. Name it SpaceInvaders, and also set the screen's Title to "SpaceInvaders". Getting StartedĬonnect to the App Inventor web site and start a new project. You'll program an application that has a shooter ship whose goal is to shoot all the flying saucers on the screen. By building the Space Invaders App you will get practice with using Clock components and Timers, using Animation components such as Image Sprites and the Canvas, setting visibility, and detecting collisions in App Inventor.
0 Comments
Leave a Reply. |