This tutorial covers how to add an Enemy to your project. To speed up the process we'll be importing an existing entity rather than building a new one ourselves. Once imported, we will modify the entity so it has the functionality we'll need for this tutorial - specifically adding the ability for the enemy to take damage.
To import the entity
-
Download the exported entity file from here: https://github.com/vchelaru/FlatRedBall/raw/NetStandard/Samples/Platformer/DealingDamage/Enemy.entz
-
In Glue, right-click on the Entities folder
-
Select Import Entity
-
Navigate to the location where you saved the Enemy file earlier and click OK
We now have a fully-functional enemy which has:
- Collision shape named AxisAlignedRectangle
- Sprite displaying a walking animation
- Platformer values so that it can collide with solid collision
- EnemyInput object which will keep the enemy from moving (does not use the gamepad or keyboard)
We will add a list to our GameScreen and an instance of our Enemy to Level1 so we can see the enemy in game. To add an enemy list to GameScreen:
- Select the Enemy entity
- Select the Quick Actions tab
- Click the Add Enemy List to GameScreen button - this creates a list of enemies which we'll use to create collision relationships later
- Click the Add Enemy Factory button - this allows us to create enemies in code and Tiled maps.
To add an enemy to your Level1:
-
Drag+drop the Enemy entity onto Level1\
-
Select Enemy1 and click on the Variables tab
-
Set X to 160
-
Set Y to -160
Now we have an enemy in the game, but it falls through the level. We can fix this by telling the enemies to collide against our GameScreen's SolidCollision object:
- Expand GameScreen
- Expand the Objects folder
- Drag+drop the EnemyList onto the SolidCollision object
If we run the game now, the enemy will fall and land in the level next to the player.