Posted October 03, 2022 by jofbob
This week we worked on implementing and refining a lot of core gun abilities to work more effectively and look better. A lot of gun behaviours for the different weapons were added, such as the lightning gun that arcs to multiple enemies, and a bomb gun that explodes to also kill multiple enemies.
Enemy AI behaviors were also added to get enemies to follow the player around, and shoot at the current position of the player when in a certain radius of the enemy.
A weapon drop was added so that when the enemy is killed, the player is able to pick up dropped weapons to add to their inventory. If the player doesn’t have that weapon, it will be automatically added to their inventory with a full clip of ammo, or if they already have that gun then their current weapon will be reloaded.
Other refinements included adding an overlay flash when the player gets hit by enemy bullets to indicate the player is hurt.
Below is an example of the lightning gun. From the initial enemy hit we use a physics sphere check to find all enemies in a certain radius. That list of enemies is then sorted based on distance from the original enemy. Finally, lightning prefab components are spawned between each enemy and then destroyed after a short time. This creates a very cool effect!
The bomb gun shoots out a big bomb which explodes after some time, priming itself upon colliding with an object. This one is pretty basic, but the red flashing before exploding is pretty cool! And then a programmer art particle system.
Finally - a pretty fun clip of the possibilities of the weapon swapping system.
For the level design, this week we focused on getting a full map finished with multiple areas for the player to go to avoid/find enemies or use the environment to their advantage when fighting.
Below are some close up examples of a couple of the different areas added. Includes places like a graveyard, silos, sheds, and buildings that are enterable.