You could assign a weight,threshold and contact variable for each object: Events would run a quick check on overlapping objects; the contact variable would be the sum of any overlapping objects weight variable: If the the contact variable of an object is greater than the threshold variable of an object; it's destroyed.
Should work?