Well, I ended up just packaging projectiledata::onCollision(), then using initContainerRadiusSearch() to mimic an explosion.
initContainerRadiusSearch isn't working for some reason.
initContainerRadiusSearch(%obj.getPosition(),%this.explosion.damageRadius, $TypeMasks::PlayerObjectType);
while(isObject(%searchObj = containerSearchNext()))
{
echo(%searchObj);
}
Even though I'm testing this with a rocket launcher and firing it right at my feet, It can never find any objects with the mask PlayerObjectType unless I have the projectile hit me directly.
The only success I've had is using
initContainerRadiusSearch(%obj.getPosition(),%this.explosion.damageRadius, $TypeMasks::All);
while(isObject(%searchObj = containerSearchNext()))
{
if(%searchObj.getClassName() $= "Player")
{
echo(%searchObj);
}
}
(take notice of $Typemasks::all being used instead)
When I use THAT, it actually echoes something.
What am I doing wrong?
Edit: actually, it seems to not be detecting any players that spawned it via an item exclusively; however, it detects the brick that spawned it.