Java-Gaming.org Hi !
Featured games (85)
games approved by the League of Dukes
Games in Showcase (611)
Games in Android Showcase (172)
games submitted by our members
Games in WIP (657)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Shooting at the mouse  (Read 442 times)
0 Members and 1 Guest are viewing this topic.
Offline PocketCrafter7

Senior Devvie


Medals: 6
Projects: 2
Exp: 2 years


One man's bug is another man's feature


« Posted 2014-06-23 08:32:35 »

I am making a top down shooter. The player needs to shoot where the mouse is. This is what I got, but it isn't working very well.

1  
2  
3  
4  
5  
6  
double opp = player.gety() - mousePoint.getY();
double adj = player.getx() - mousePoint.getX();
     
double rad = Math.atan2(opp, adj);
     
player.shootAtRad(rad);


I do realize I am doing something terribly wrong. Any helps ?

I just want to know how to get the angle between the player and the mouse.

Nothing is difficult in this world. It is just how you look at it.
Offline superminer362

Senior Newbie


Medals: 3
Exp: 1 year



« Reply #1 - Posted 2014-06-23 08:48:41 »

Try this:
1  
Math.atan2(opp, -adj);
Offline pjt33

« JGO Spiffy Duke »


Medals: 40
Projects: 4
Exp: 7 years



« Reply #2 - Posted 2014-06-23 08:49:24 »

Why do you have a shootAtRad method? Isn't it just going to do a sin and cos to get back to an (x, y) vector?
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline PocketCrafter7

Senior Devvie


Medals: 6
Projects: 2
Exp: 2 years


One man's bug is another man's feature


« Reply #3 - Posted 2014-06-23 08:53:27 »

Yes, the bullet takes the rad and then vector x is cos of rad and vector y is sin of rad. Then in the update method, the vectors are added to the position. That is how the bullets move. I didn't understand what you find wrong.

Nothing is difficult in this world. It is just how you look at it.
Offline pjt33

« JGO Spiffy Duke »


Medals: 40
Projects: 4
Exp: 7 years



« Reply #4 - Posted 2014-06-23 09:04:13 »

You have x and y. You convert them to an angle. Then you convert back to x and y. It's a lot simpler to just normalise the vector and not do any trigonometry at all. In fact, most 2D games have little or no need for trig.
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 
GamerC4 (23 views)
2015-08-22 20:38:50

GamerC4 (21 views)
2015-08-22 20:37:18

GamerC4 (24 views)
2015-08-22 20:37:01

Kefwar (26 views)
2015-08-22 18:07:24

GamerC4 (24 views)
2015-08-22 01:00:24

GamerC4 (37 views)
2015-08-22 01:00:17

GamerC4 (23 views)
2015-08-22 00:57:35

GamerC4 (24 views)
2015-08-22 00:56:59

BurntPizza (29 views)
2015-08-21 01:38:01

KaiHH (43 views)
2015-08-19 15:01:05
Rendering resources
by Roquen
2015-08-17 12:42:29

Rendering resources
by Roquen
2015-08-17 09:36:56

Rendering resources
by Roquen
2015-08-13 07:40:51

Networking Resources
by Roquen
2015-08-13 07:40:43

List of Learning Resources
by gouessej
2015-07-09 11:29:36

How Do I Expand My Game?
by bashfrog
2015-06-14 11:34:43

List of Learning Resources
by PocketCrafter7
2015-05-31 05:37:30

Intersection Methods
by Roquen
2015-05-29 08:19:33
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!