BoxCollider Overlap OnTriggerEnter Problem

About the game and the problem
so i made a fun 2 sidescrolling game where you can shoot bullets when pressing X then the bullet hits the enemy it will dmg him and destroy it self the problem is if 2 enemies are Directly on top of each other they will both take dmg after spending some hours trying to figure it out and trying out stuff i tryed to google it and didnt find anything so i was wondering if anyone could help me Code, keywords, links anything will help me out

this is the code for the Bullet

	public float speed;
	private PlayerController player;
	private Rigidbody myrigidbody;
	
	public int DamageToGive;
	
	// Use this for initialization
	void Start () {
		player = FindObjectOfType<PlayerController> ();
		
		if (player.transform.localScale.x > 0)
		{
			speed = -speed;
			transform.localScale = new Vector3 (-1f, 1f, 1f);
		}
	}
	
	// Update is called once per frame
	void Update () {
		GetComponent<Rigidbody> ().velocity = new Vector3 (speed, GetComponent<Rigidbody> ().velocity.y, 0f);
	}
	
	void OnTriggerEnter(Collider other)
	{
		if (other.tag == "Enemy")
		{
			//Instantiate(enemyDeathEffect, other.transform.position, other.transform.rotation);
			//Destroy (other.gameObject);
			//ScoreManager.add_points(point_kill);
			
			other.GetComponent<EnemyHealthManager>().giveDamage(DamageToGive);
		}
		Destroy (gameObject);
	}

What the code does
so in the start function this script i set the speed to - if the player is facing the other way so the bullet will fly the right way in the Update i tell the bullet to move in the X axis
OnTriggerEnter i ask if the target it collided with is an enemy if its an enemy i call my dmg script and dmg the enemy and if the bullet hits anythign with an collider it will destroy itself

Solved it while trying to figure out how to hit multiple enmies :smiley:
here is a sample of the code if anyone had the same problem
public float speed;
private PlayerController player;
private Rigidbody myrigidbody;

	public int DamageToGive;

	public int EnenmyAmount;
	private int CurrentEnemyAmount;
	public bool BulletOnEnemy;
	
	// Use this for initialization
	void Start () {
		player = FindObjectOfType<PlayerController> ();
		
		if (player.transform.localScale.x > 0)
		{
			speed = -speed;
			transform.localScale = new Vector3 (-1f, 1f, 1f);
		}
	}
	
	// Update is called once per frame
	void Update () {
		GetComponent<Rigidbody> ().velocity = new Vector3 (speed, GetComponent<Rigidbody> ().velocity.y, 0f);

		if (CurrentEnemyAmount == EnenmyAmount)
		{
			Destroy(gameObject);
		}
	}
	
	void OnTriggerEnter(Collider other)
	{
		if (other.tag == "Enemy")
		{	
			if (!BulletOnEnemy)
			{
			CurrentEnemyAmount++;
			other.GetComponent<EnemyHealthManager>().giveDamage(DamageToGive);
			BulletOnEnemy = true;
			}
		}

		if (other.tag == "Wall") 
		{
			Destroy (gameObject);
		}
	}

	void OnTriggerExit(Collider other)
	{

		BulletOnEnemy = false;
	}