Object reference not set to an instance of an object

I am trying to reference a script but it keeps giving me this error. This is the code

var AttackCombo : AttackCombo;
function Awake ()
{
AttackCombo.Test();

and this is the script i’m trying to reference

public var attackTime : float[]; // store each length of each attack in order (in the inspector)
//public var attackAnimations : AnimationClip[]; // store a reference to the animations, then use the same index 'attackType'
 
public var waitTime : float = 10; // how long player has to hit LMB after last attack has finished
 
private var attackTimer : float = 0.0; // timer variable
private var attackType : int = -1; // reference to what attack the combo is up to (-1 is none, 0+ is the array index for attackTime )
//private var attack
 
enum attack { Idle, Attacking, Waiting } // different states while the combo inputs are being checked
var attackState : attack; // current attack input state (public for viewing in the Inspector)
var test : int = 0;
 
var totalChainedHits : int = 0; // total Chained Hits without missing a LMB press (public for viewing in the Inspector)
 
 
function Start() 
{
    // set defaults
    attackType = -1;
    attackState = attack.Idle;
    // tell animation to play Idle
    totalChainedHits = 0;
 
    // You could set up the attackTime array here (and make it private)
    
    attackTime = new float[3];
    attackTime[0] = 0.5;
    attackTime[1] = 0.5;
    attackTime[2] = 0.5;
    
}

function Test () {
    test++;
}
 
function Update() 
{
    CheckForPlayerAttackInput();
}
 
function CheckForPlayerAttackInput() 
{
    switch( attackState ) // what state is the combo in
    {
       case attack.Idle :
         if ( Input.GetMouseButtonDown(0) ) // start attacking
         {
         	animation.CrossFade("Attack");
             attackType = 0;
             attackState = attack.Attacking;
             attackTimer = attackTime[0];
             // tell animation to play attack 0 (first attack)
             totalChainedHits = 1;
         }
       break;
 
       case attack.Attacking :
         attackTimer -= Time.deltaTime; // wait for attackTimer
 
         if ( attackTimer < 0 )
         {
             attackTimer = waitTime;
             attackState = attack.Waiting;
         }
 
         /* // uncomment this to break the combo while attacking
         if ( Input.GetMouseButtonDown(0) ) // break attack
         {
             attackType = -1;
             attackState = attack.Idle;
             // tell animation to play Idle
         }
         */
       break;
 
       case attack.Waiting :
         attackTimer -= Time.deltaTime; // check the Waiting Timer (attackTimer)
 
         if ( attackTimer < 0 ) // ran out of time to chain combo
         {
             attackType = -1;
             attackState = attack.Idle;
          //   animation.CrossFade("Idle");
             // tell animation to play Idle
         }
 
         if ( Input.GetMouseButtonDown(0) ) // continue attacking
         {
      //   animation.CrossFade("Attack1");
          attackType ++; // go to next attack
 
          if ( attackType >= attackTime.Length ) // check if the combo is over, start a new combo
          {
              attackType = 0;
              attackState = attack.Attacking;
              attackTimer = attackTime[0];
              // tell animation to play attack 0 (first attack)
               animation.CrossFade("Attack");
              totalChainedHits ++;
          }
          else
          {
              attackState = attack.Attacking;
              attackTimer = attackTime[ attackType ];
              animation.CrossFade("Combo");
              // tell animation to play attack 'attackType' (next attack in array)
              totalChainedHits ++;
          }
         }
       break;
    }
}
 
// example GUI for testing this script
function OnGUI() 
{
    GUI.Box( Rect( 10, 10, 100, 25 ), "Hit " + attackType.ToString() );
    GUI.Box( Rect( 10, 60, 100, 25 ), "Hit " + test.ToString() );
    GUI.Box( Rect( (Screen.width * 0.5) - 50, 10, 100, 25 ), "" + attackState.ToString() );
    GUI.Box( Rect( Screen.width - 110, 10, 100, 25 ), "Total " + totalChainedHits.ToString() );
    GUI.Box( Rect( (Screen.width * 0.5) - 50, 45, 100, 25 ), "" + attackTimer.ToString() );
}

http://unity3d.com/learn/tutorials/modules/beginner/scripting/getcomponent