Slowly deal damage (one by one)...

I have a script which lowers the number of the enemy troops in one blow (on collision). How will I add a way to slowly (one by one) take away the health according to the number of my men (without making 50 collisions occur)?

Note: My damage script is all set except for taking the health down one by one.

I also have my unit waypoints and stuff working. Basically everything is working except for the fsct I want my health to go down one by one until it lost the amount it should.

Thanks in advance.

For that, you'd usually set up a Coroutine that has a loop and wait statement. In C#, this could, for instance, look like this:

public float countDownDelaySeconds = 1.0F; // one second
public int countDownAmount = 1;

public bool keepCountingDownHealth = true;

// assign through editor, must have method DecreaseHealth
public YourPlayerType player = null; 

public IEnumerator CountDownHealth() {
    keepCountingDownHealth = true;
    while (keepCountingDownHealth) {
        yield return new WaitForSeconds(countDownDelaySeconds);
        player.DecreaseHealth(countDownAmount);
    }
}

Then, somewhere appropriate, you'd start that coroutine:

StartCoroutine(healthTracker.CountDownHealth());

And, you might also want to stop that coroutine by setting keepCountingDownHealth to false.

More info on Coroutines (more UnityScript-ish): Overview: Coroutines & Yield. Documentation of WaitForSeconds is here.

If you need to take away health from many objects, "player" could be an array YourPlayerType[] or List and then you could iterate over all. You might also want to dynamically add/remove items to/from that list/array depending on your setup.