Are there any syntax errors?
The function should be projectileData::onCollision.
The arguments are %data, %proj, %col, %fade, %pos, %norm.
None of the variables you're using in the function exist. Define them. I think the source client is %proj.sourceClient. Not sure what you're trying to use %this as. The person that got hit's client?
.getBL_ID isn't a variable. It's a function. And there's no underscore in it. So it should be .getBLID();