Jump to content
  • Advertisement

mcjohnalds45

Member
  • Content Count

    5
  • Joined

  • Last visited

Community Reputation

106 Neutral

About mcjohnalds45

  • Rank
    Newbie
  1. Thanks heaps JTippetts, fixed the problem!
  2. I'm trying to find the angle aimDirection with this code. aimDirection = atan2(mouseY - vertical centre of box, mouseX - horizontal centre of box) * 180 / pi; // what I'm doing in english aimDirection = atan2((double)(mouseY - hitBox.y + (hitBox.h / 2)), (double)(mouseX - hitBox.x + (hitBox.w / 2))) * 180 / M_PI; // actual code I thought you could use atan2 like so to find an angle, maybe I'm wrong. angle = atan2(y2 - y1, x2 - x1) * 180 / pi. I don't know how to describe the situation clearly so I made a pretty picture instead. But the angle is never what I expect (depending on where I move my mouse vs the middle of the box) when I run the program. (Sorry if I don't reply till tomorrow, it's getting late and I don't want to be drowsy for school )
  3. The non-capital events was valid because I had left accidentally left a variable that I wasn't using any more in my Player class definition, if I had remembered to delete that I wouldn't have had a problem, anyway, thanks a lot!
  4. Problem solved, I made stupid mistake, I was using 'events' in my onEvent function instead of 'Events', thanks heaps for pointing that out. (Note to self: Never code at 1 am ever again!)
  5. First post, hooray! I'm trying to call onEvent (a function of my player class) every time I call SDL_PollEvent in my game loop to move my player up when I press W. Part of player definition. void Player::onEvent(SDL_Event Events) { if (events.type == SDL_KEYDOWN) { switch (Events.key.keysym.sym) { case SDLK_w: ySpeed = -maxSpeed; break; } } if (events.type == SDL_KEYUP) { switch (Events.key.keysym.sym) { case SDLK_w: ySpeed = 0; break; } } } Part of my main function where onEvent is called. while (SDL_PollEvent(&events)) { if (events.type == SDL_QUIT) run = false; player.onEvent(events); } I expect my player to move up when I press W but it does not, I am almost certain there is something wrong with onEvent's definition or how I am calling it because changing the above piece of code to the following makes the program run as expected. while (SDL_PollEvent(&events)) { if (events.type == SDL_QUIT) run = false; if (events.type == SDL_KEYDOWN) { switch (events.key.keysym.sym) { case SDLK_w: player.ySpeed = -player.maxSpeed; break; } } if (events.type == SDL_KEYUP) { switch (events.key.keysym.sym) { case SDLK_w: player.ySpeed = 0; break; } } } Sorry for goofing up any terminology, I'm pretty new to c++.
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!