Pretty sure you can't figure out what weapon it came from, only the client/player
Why don't you just say exactly what you're trying to do?
Couldn't you achieve the same by getting the player that killed / damaged someone and seeing what they're holding / if it relates to the projectile?
When the projectile hits, the person could have changed weapon.
ok so package projectileData::onAdd and make it get whatever weapon the client is holding and then store that weapon image on the projectile
function Projectile::onAdd(%this){ %player = %this.sourceObject; %this.weaponImage = %player.tool[%player.currTool];}