I had to use bomb explosions in Tower. I found it more reliable to set a global var to 1 when the bomb exploded, then set a vector to the bomb's position, at which point that funciton waited one frame, all the entities that could be damaged would check to see if the global var was set to 1, if so they would see if they were in the blast range, if so they took damage. Now if you have things that could effect the blast, say a door, then you would need to trace. After all that was said and done the bomb function came back and set that var back to 0, and the vector to a huge number that nothing would ever come close to. This was to prevent bugs.