Page 1 of 1

How can I spawn bullets at a weapons barrel [SOLVED]

Posted: Wed Aug 24, 2022 6:01 pm
by Darton
First time posting so apologies if I mess anything up.
Picture
Picture
picture.PNG (2.17 KiB) Viewed 2165 times
The highlighted green part is where the gun is attached to the player, it rotates around this point using:

Code: Select all

math.atan2(y2-y1,x2-x1)
This is all great however when I create a bullet I want to to be where the pink is. Now normally I would have x and y offset variables to do this for me but since the gun is rotating It will not work. Now I have tried to multiple the guns x and y with math.cos/sin with the guns angle but the I have not been able to get it to work. I have been stuck with this problem for a while and its probably due to my lack of understanding with basic trig; so any help or advice is appreciated :3
weapon.lua
(2.79 KiB) Downloaded 71 times

Re: How can I spawn bullets at a weapons barrel

Posted: Thu Aug 25, 2022 5:02 am
by knorke
Welcome.
Now I have tried to multiple the guns x and y with math.cos/sin with the guns angle but the I have not been able to get it to work
That is the correct approach.
Should be something like:

Code: Select all

pink.x = green.x + cos(gunAngle) * gunLength
pink.y = green.y + sin(gunAngle) * gunLength
(depending how the coordinates system is set up etc)
It is easier when you attach the whole project so that we can actually run and test it.

Re: How can I spawn bullets at a weapons barrel

Posted: Thu Aug 25, 2022 12:06 pm
by togFox
Remember love uses radians by default - not degrees.

0 radians is "right" or "east" or 90 degrees or positive x axis or 3 o'clock! and it goes clockwise.

Re: How can I spawn bullets at a weapons barrel

Posted: Thu Aug 25, 2022 2:33 pm
by Darton
knorke wrote: Thu Aug 25, 2022 5:02 am Welcome.
Now I have tried to multiple the guns x and y with math.cos/sin with the guns angle but the I have not been able to get it to work
That is the correct approach.
Should be something like:

Code: Select all

pink.x = green.x + cos(gunAngle) * gunLength
pink.y = green.y + sin(gunAngle) * gunLength
(depending how the coordinates system is set up etc)
It is easier when you attach the whole project so that we can actually run and test it.
Seems to have worked. Thanks :D

Re: How can I spawn bullets at a weapons barrel

Posted: Thu Aug 25, 2022 2:34 pm
by Darton
togFox wrote: Thu Aug 25, 2022 12:06 pm Remember love uses radians by default - not degrees.

0 radians is "right" or "east" or 90 degrees or positive x axis or 3 o'clock! and it goes clockwise.
Thanks good to know, thanks TogFox :D