- Home /
3D Space Shooter Firing Projectiles
Hey Everyone,
I see a similar question has been asked on this one but I am not getting the results as in the other answers.
Basically when my ship is still and I fire a projectile all is fine it shoots forward as it should, also when I move forward it is a little slow to react but works ok, now....
When I turn my ship, baring in mind space ship physics, when I shoot my laser prefab goes off away and not in a straight line. What I want to achieve is something like the space shooters out there as in no matter what direction you turn the projectile shoots toward the crosshair with no deviation
I have attached my script but adding force to a rigidbody does not yield the results I need.
I thought of sending the projectile to the end of my central raycast but I cant get that to work either..
Please help, heres my code
public float speed = 2f; // projectile speed
public float speedpro;
public int damage = 25; // damage to other object
private Transform thisTransform;
public Transform laserHitFXPrefab;
public Rigidbody rb;
public Controls ctl;
void Start ()
{
thisTransform = transform;
rb = GetComponent<Rigidbody>();
ctl = GameObject.Find("Player").GetComponent<Controls>();
speedpro = ctl.rb.velocity.magnitude + speed;
}
void Update ()
{
rb.AddForce(gameObject.transform.forward * speedpro);
}
Thank you in advance
Your answer
Follow this Question
Related Questions
My Projectile System has Another Bug 1 Answer
Can't get a laser working properly. 2 Answers
Multiple Cars not working 1 Answer
Raycast Projectile w/ Physics 2 Answers
Distribute terrain in zones 3 Answers