public void Execute(float timestep) { agentController.Execute(timestep); GunModule.ExecuteTimeStep(timestep); AgentInput input = agentController.GetInput(); agentMovement.ExecuteForces(input); agentAim.ExecuteForces(input); if (input.shoot) { GunModule.TryShoot(); } }