Very new to both scripting and unity and I can't figure out how to spawn something as simple as a sphere at a location, even though the script I'm using manages to spawn particles there.
Here's the script that spawns the particles:
function FireOneShot () {
var direction = transform.TransformDirection(Vector3.forward); var hit : RaycastHit; // Did we hit anything? if (Physics.Raycast (transform.position, direction, hit, range)) { // Apply a force to the rigidbody we hit if (hit.rigidbody) hit.rigidbody.AddForceAtPosition(force * direction, hit.point); // Place the particle system for spawing out of place where we hit the surface! // And spawn a couple of particles if (hitParticles) { hitParticles.transform.position = hit.point; hitParticles.transform.rotation = Quaternion.FromToRotation(Vector3.up, hit.normal); hitParticles.Emit(); } // Send a damage message to the hit object hit.collider.SendMessageUpwards("ApplyDamage", damage, SendMessageOptions.DontRequireReceiver); } bulletsLeft--; // Register that we shot this frame, // so that the LateUpdate function enabled the muzzleflash renderer for one frame m_LastFrameShot = Time.frameCount; enabled = true; // Reload gun in reload Time if (bulletsLeft == 0) Reload();
}
I suppose I should be able to get the coordinates from the hit.point, but can't seem to figure out how. I want to spawn an object at the same location as the particles.
Thanks in advance!
edit: the script i quoted completely changed from what the preview was, sorry.
↧