Our game will feature several objects, but only two game characters. The first game character is our Hero and will be controlled by the player. The second type of game character is the Enemies. They are non-player characters that are controlled by AI. Let's look more closely at both of these characters.
The player will play our game as the Hero, our game's protagonist. This is a character that we will import for use in our game. So, what can our Hero player character do? We already know we will be able to move them throughout our game environment using a combination of keyboard and mouse inputs. We also know that the left mouse button—our action button—will cause him to shoot bullets.
Because the Hero is controlled by a human player, it is referred to as the Player Character.
- Idle: This animation will play when the character is not being moved by the player.
- Run: This animation will play when the character is being moved by the player.
- Shoot: This is an animation that will cause the Hero to shoot a bullet.
That's our player. Now, let's discuss our enemy character.
Our game's antagonist will be the Enemy Soldiers. We will control how many of them we want in our game and where they are placed. We will also control their behavior through AI. The Enemies will go straight to the base and, once there, they will start damaging it. We will determine how long it takes for our base to be completely destroyed.
Because the Enemy is controlled by AI and not a human player, it is referred to as a Non-Player Character.
We will implement the following animations for the Enemy soldiers:
- Run: The Enemies will be able to run toward the Hero when they see him and will stop when they are near enough to the player to start attacking him.
- Attacking: This animation will play when the Enemy is near enough to attack the base or the player.
- Death: This animation will play when the Enemy is defeated by the player.
That defines our characters' details. Now, let's discuss how the game will be played, looking at the specific details.