I'm not a fan of the damage.
Here's what I suggest:
1) Put this in your code and replace ___ with the weaponProjectile name
function ____Projectile::onCollision(%this,%obj,%col,%fade,%pos,%normal)
{
if(!isobject(%col)){
Parent::onCollision(%this, %obj, %col, %fade, %pos, %normal);
return;
}
if(%col.getclassname() $= "Player" || %col.getclassname() $= "AIPlayer"){
%colds=vectordist(%obj.client.player.gettransform(),%col.gettransform());
//announce(%colds);
if(%colds>12){
if(%colds>24){
Parent::onCollision(%this, %obj, %col, %fade, %pos, %normal);
Parent::onCollision(%this, %obj, %col, %fade, %pos, %normal);
Parent::onCollision(%this, %obj, %col, %fade, %pos, %normal);
}
Parent::onCollision(%this, %obj, %col, %fade, %pos, %normal);
Parent::onCollision(%this, %obj, %col, %fade, %pos, %normal);
}else{
centerprint(%obj.client,"Tip: This weapon does more damage at a distance!",3);
}
Parent::onCollision(%this, %obj, %col, %fade, %pos, %normal);
return;
}
//Parent::onCollision(%this, %obj, %col, %fade, %pos, %normal);
}
2) reduce damage to 25.
What this does: If you attack from a far enough distance, it will be a 1-shot kill. Closer it will do 75 damage, closer than that 50, close than that 25.