How to call an Event trigger on a button through script?

I am making a 2D top down car game where as i have 8 different cars and each and one of them has a controller script. I wan’t it so that whenever hold down a button the car will turn left which i have achieved but my only problem is that it only works for one car, the car i dragged into the listener field. I know how to call functions with “onclick” through script but since i need to hold the button down i used the event trigger component.

The event types i used were PointerDown and PointerUp.

Try something like the following code. But, since I don’t know your Car2DController, you will have to make appropriate changes

 public class TurnController : MonoBehaviour
 {
     UnityEngine.UI.Button rightButton ;
     UnityEngine.UI.Button leftButton ;
     Car2DController car2DController;
 
     void Start( )
     {
         AddRightButtonEvents();
         AddLeftButtonEvents();
 
 
         car2DController = GameObject.FindGameObjectWithTag ("Car").GetComponent<Car2DController> ();
     }
	 
	 void AddRightButtonEvents()
	 {
         EventTrigger eventTrigger = rightButton.gameObject.AddComponent<EventTrigger>( );
		 
         EventTrigger.Entry pointerDownEntry = new EventTrigger.Entry( );
         pointerDownEntry.eventID = EventTriggerType.PointerDown;
         pointerDownEntry.callback.AddListener( ( data ) => { OnRightButtonDown( (PointerEventData)data ); } );
         eventTrigger.triggers.Add(pointerDownEntry);
		 
         EventTrigger.Entry pointerUpEntry = new EventTrigger.Entry( );
         pointerUpEntry.eventID = EventTriggerType.PointerUp;
         pointerUpEntry.callback.AddListener( ( data ) => { OnRightButtonUp( (PointerEventData)data ); } );
         eventTrigger.triggers.Add(pointerDownEntry);		 
	 }
 
     public void OnRightButtonDown( PointerEventData data )
     {
         car2DController.goLeft = false ;
         car2DController.goRight = true ;
     }
 
     public void OnRightButtonUp( PointerEventData data )
     {
         car2DController.goRight = false ;
     }
	 
	 void AddLeftButtonEvents()
	 {
         EventTrigger eventTrigger = leftButton.gameObject.AddComponent<EventTrigger>( );
		 
         EventTrigger.Entry pointerDownEntry = new EventTrigger.Entry( );
         pointerDownEntry.eventID = EventTriggerType.PointerDown;
         pointerDownEntry.callback.AddListener( ( data ) => { OnLeftButtonDown( (PointerEventData)data ); } );
         eventTrigger.triggers.Add(pointerDownEntry);
		 
         EventTrigger.Entry pointerUpEntry = new EventTrigger.Entry( );
         pointerUpEntry.eventID = EventTriggerType.PointerUp;
         pointerUpEntry.callback.AddListener( ( data ) => { OnLeftButtonUp( (PointerEventData)data ); } );
         eventTrigger.triggers.Add(pointerDownEntry);		 
	 }
 
     public void OnLeftButtonDown( PointerEventData data )
     {
         car2DController.goRight = false ;
         car2DController.goLeft = true ;
     }
 
     public void OnLeftButtonUp( PointerEventData data )
     {
         car2DController.goLeft = false ;
     }
 }