Multiple player attacks

Hi I am trying to find a way to make it so my player attack can have multiple attacks that each do different damage. Here is the script I have.
using UnityEngine;
using System.Collections;

public class PlayerAttack : MonoBehaviour {
public GameObject target;
public float attackTimer;
public float coolDown;

// Use this for initialization
void Start () {
	attackTimer = 0;
	coolDown = 1.5f;

}

// Update is called once per frame
void Update () {
	if(attackTimer > 0)
		attackTimer -= Time.deltaTime;
	if(attackTimer < 0)
		attackTimer = 0;
	
	if(Input.GetKeyUp(KeyCode.Mouse0)) {
		if(attackTimer == 0) {
		Attack();
			attackTimer = coolDown;
			
		}
	}

}

private void Attack () {
	float distance = Vector3.Distance(target.transform.position, transform.position);
	
	Vector3 dir = (target.transform.position - transform.position).normalized;
	float direction = Vector3.Dot(dir, transform.forward);
	
	Debug.Log(direction);
	
	if(distance < 3.5f){
		if(direction > 0) {
		
	EnemyHealth eh = (EnemyHealth)target.GetComponent("EnemyHealth");
	eh.AddjustCurrentHealth(-15);
		}
	}
}

}

Sorry, yes I want to make it so when I push 1 it does one troupe of attack, and when I push 2 it does another, and so on

private int attackNum = 0;
private bool attacking = false;

void Update (){
if (Input.GetButtonDown("Attack")){
if (attacking == false){
 if (attackNum == 0){
 StartCoroutine("AttackOne");
 attackNum += 1;
 }
 if (attackNum == 1){
 StartCoroutine("AttackTwo");
 //from here onwards you would either add another digit to attackNum and put another if statement asking if it is attackNum 2 or you would reset attackNum to 0 again then repeat sort of deal`
    }
   }
  }

IEnumerator AttackOne () {
attacking = true;
//Do your attacking script here, you will also want to Wait for the animation to stop playing or use a yield return new WaitForSeconds(somenumber); then you turn attacking false then you can press it again and call a different attack script with different animations damage etc etc etc.
attacking = false;
}
//Repeat the IEnumerator function with the different name, damage and animation.

I also suggest adding a timer to start after the first attack that once it reaches a certain number it resets attackNum to 0 every swing you will need to reset the timer and start again. Attack One, start timer, attack two reset timer and start it, wait too long stop timer and reset it and reset attackNum to 0.

Peace,

Another possible approach would be to use animation events.

Set up additional input keys to correspond with your 2nd, 3rd etc attack animations and then using the animation window, add an animation event to the frame when the character is supposed to be hitting something. Have this event call a script with the specific amount of damage you want it to do.

Watch this really awesome tutorial if you haven't used animation events before, they're really easy and great to use: Unity Animation Events

I ended up doing this as my final script

using UnityEngine;
using System.Collections;

public class PlayerAttack : MonoBehaviour {
public GameObject target;
public float attackTimer;
public float coolDown;
public float attackTimer2;
public float coolDown2;

// Use this for initialization
void Start () {
	attackTimer = 0;
	coolDown = 1.5f;
	
	attackTimer2 = 0;
	coolDown2 = 2.0f;
	

}

// Update is called once per frame
void Update () {
	if(attackTimer > 0)
		attackTimer -= Time.deltaTime;
	if(attackTimer < 0)
		attackTimer = 0;
	
	if(Input.GetKeyUp(KeyCode.Alpha1)) {
		if(attackTimer == 0) {
		Attack();
			attackTimer = coolDown;
			
		}
	}
	
	if(attackTimer2 > 0)
		attackTimer2 -= Time.deltaTime;
	if(attackTimer2 < 0)
		attackTimer2 = 0;
			
			if(Input.GetKeyUp(KeyCode.Alpha2)){
				if(attackTimer2 ==0) {
					Attack2();
					attackTimer2 = coolDown2;
		}
	}

}

private void Attack () {
	float distance = Vector3.Distance(target.transform.position, transform.position);
	
	Vector3 dir = (target.transform.position - transform.position).normalized;
	float direction = Vector3.Dot(dir, transform.forward);
	
	Debug.Log(direction);
	
	if(distance < 3.5f){
		if(direction > 0) {
		
	EnemyHealth eh = (EnemyHealth)target.GetComponent("EnemyHealth");
	eh.AddjustCurrentHealth(-5);
		}
	}
}

private void Attack2 () {
	float distance = Vector3.Distance(target.transform.position, transform.position);
	
	Vector3 dir = (target.transform.position - transform.position).normalized;
	float direction = Vector3.Dot(dir, transform.forward);
	
	Debug.Log(direction);
	
	if(distance < 5.5f){
		if(direction > 0) {
		
	EnemyHealth eh = (EnemyHealth)target.GetComponent("EnemyHealth");
	eh.AddjustCurrentHealth(-10);
		}
	}
}

}