Pagination not working on my archive page for a custom post type

So I got this to work by adding this function to functions.php

// Custom query for events
function set_posts_per_page_for_events_cpt( $query ) {
  if ( !is_admin() && $query->is_main_query() && is_post_type_archive( 'events' ) ) {

        // set date
        $currentdate = date("Y-m-d",mktime(0,0,0,date("m"),date("d"),date("Y")));

        $meta_query = array(
             array(
                'key'=>'event_date',
                'compare' => '>=',
                'value'=> $currentdate,
                'type' => 'DATE',
             ),
        );

        $query->set('meta_query', $meta_query);
        $query->set( 'posts_per_page', '12' );
        $query->set( 'meta_key', 'event_date' );
        $query->set( 'orderby', 'meta_value' );
        $query->set( 'order', 'ASC' );
      }
}
add_action( 'pre_get_posts', 'set_posts_per_page_for_events_cpt' );