I wrote a similar snow app a couple of years ago in Logitech Modula-2 for DOS. I used an array to hold the flake data. If a flake stopped when it hit another flake, it would go again on the next round because the flake it hit would also keep going.