Blood splat problem

I have a particle system. i want it so when one of the particles hits a surface, blood splats on it. Heres what i have, but it seems to make the blood splat appear at 0,0,0

var splat : GameObject;


function OnParticleCollision (other : GameObject) {
var hit : ContactPoint;
 Instantiate (splat, hit.point + (hit.normal * 2.5), Quaternion.identity);
           
}

OnParticleCollision gives you the gameObject emitting particles i believe. Not the actual particle that hit.

Also your making a ContactPoint variable, but its not coming from anywhere so it will be the default value which is zeros.

I dont know of any tricks to go about detecting the position which the particle collided unfortunately.