damage game object

function Update () {
     gameObject.ApplyDamage(10000);
    }

hey guys i know the applydamage isnt working with gameobjects but i dont know of an other option i wanted to make a granade. i added a damage reciever to the granade with the explosion and stuff but i have set the hit points on the reciever to 0 and the dettenation delay to 7secs but when i trow the granade it will not explode afther 7 secs so i would like to do this to damage it directly and it hase still 7secs left and boom

this is the damage script from the first person shooter tutorial

var hitPoints = 100.0;
var detonationDelay = 0.0;
var explosion : Transform;
var deadReplacement : Rigidbody;

function ApplyDamage (damage : float) {
    // We already have less than 0 hitpoints, maybe we got killed already?
    if (hitPoints <= 0.0)
        return;

    hitPoints -= damage;
    if (hitPoints <= 0.0) {
        // Start emitting particles
        var emitter : ParticleEmitter = GetComponentInChildren(ParticleEmitter);
        if (emitter)
            emitter.emit = true;

        Invoke("DelayedDetonate", detonationDelay);
    }
}

function DelayedDetonate () {
    BroadcastMessage ("Detonate");
}

function Detonate () {
    // Destroy ourselves
    Destroy(gameObject);

    // Create the explosion
    if (explosion)
        Instantiate (explosion, transform.position, transform.rotation);

    // If we have a dead barrel then replace ourselves with it!
    if (deadReplacement) {
        var dead : Rigidbody = Instantiate(deadReplacement, transform.position, transform.rotation);

        // For better effect we assign the same velocity to the exploded barrel
        dead.rigidbody.velocity = rigidbody.velocity;
        dead.angularVelocity = rigidbody.angularVelocity;
    }

    // If there is a particle emitter stop emitting and detach so it doesnt get destroyed
    // right away
    var emitter : ParticleEmitter = GetComponentInChildren(ParticleEmitter);
    if (emitter) {
        emitter.emit = false;
        emitter.transform.parent = null;
    }
}

// We require the barrel to be a rigidbody, so that it can do nice physics
@script RequireComponent (Rigidbody)

You can't just call applyDamage to a gameObject. Instead you eather need to make a call like this

var script=gameObject.getComponent(ScriptThatImplementsApplyDamage);
script.applyDamage(10000);

or

gameObject.broadcastMessage("applyDamage",100000);

What is even more important:

Don't make this call in the Update method. Else the method will be called everytime the Object updates which is ~60 times per second.