Comic Town Throwdown

CTT
Comic Town Throwdown is a 3D beat 'em up with a 2D comic book story twist. I am the Lead Programmer of a team of 12 people, two of which are programmers under me. My original role was gameplay, UI, and AI programming.
As of now, however, the team size has expanded, I am able to focus primarily on AI. Another one of my roles is the version and source control manager, making sure the merge errors are taken care of and the final builds for each sprint are prepared.
​
(Note this project is still in an Alpha state with the first two videos being pre-alpha).
This video was made by a colleague who worked on the game as well
AI Snippets

Lines 35-45: 37-41 handles global stunned transition.
​
Line 43: Makes the state call the agro function if not currently agro'd.
​
Lines 44-45: The Reason i.e. how to handle transitions of the current state, Act is the action taken in the current state.
​
Lines 55-75: Creating states and their transitions to other states.
​
Lines 78-82: Create the FSM and add the created states.
StunnedState Snippet

Line 96-98: Needs to be there since it will be called prevents errors.
​
Line 99: Set the time the stun lasts.
​
Lines 100-104: Initializes the state and sets the state's ID.
​
Lines 106-117: Just a timer with a transition to chase player when ended.
​
Lines 118-121: Has to be here since it is called but it is not needed.
​
Camera Collision Snippet

Line 90: sets the speed to move for the camera to move at per fixed step.
​
Line 92-96: Direct line of site collision detection for the camera and adjusts.
​
Line 98-102: Checks for camera clipping into terrain and moves accordingly.
​
Line 104-111: Gets a default point the camera should be set at and returns the camera to that position if not colliding.
​