For this week’s game, I worked on a twin-stick shooter, with the left stick, you move your character, and with the right, you point to where you want to aim. The game also works with mouse and keyboard; the player will rotate to face the mouse pointer.
There’s no bullet count. To compensate for the infinite bullets, I added a reload time, which is shown graphically on top of the character head. The shots don’t “travel” forward; their path is an instant ray cast from the tip of the gun.
The enemy’s logic is a very straightforward model. They don’t move; if there’s a clear ray cast path, the enemy will rotate towards the player. When it faces the player it shoots. The enemy also has a reloading time that’s not displayed.