• FEATURED

View more

View more

View more

Image of the Day Submit

IOTD | Top Screenshots

The latest, straight to your Inbox.

Subscribe to GameDev.net Direct to receive the latest updates and exclusive content.

I am very confused.

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

9 replies to this topic

#1Crusable  Members

Posted 03 February 2013 - 05:41 AM

Hello. So I got my collision to work, however I think my screen is very messed up. When i test for collision on 0,0, it will not let me go past the middle. When i set the collision for the bottom of the screen to move the paddle to 0,0, it went to the middle of the screen. Also the enemy is not even shown on the screen anymore, but when I comment the collision for the top right corner, it comes back. I googled it, but I got nowhere. I looked on the SFML board, nothing.

I have no idea what I did or why It is acting so strange. Thank you in advance for any help.

#2stitchs  Members

Posted 03 February 2013 - 06:01 AM

Hello Mathew,

Would you be able to point specifically where you make use of your collision method? There are a lot of files in your project directory and it will be time consuming to locate the exact point where the error occurs, and the help we can provide, unless we created the project ourselves.

Regards,

Stitchs.

#3Crusable  Members

Posted 03 February 2013 - 03:27 PM

Oh, sorry. The Collision.h and .cpp handle the Collision. And all the screen managing stuff is in the System.h and .cpp. There error might also be in IEntity.h and .cpp. That is where I get and set the position of the paddles.Those are the only files that I believe the error would be.

Edited by Mathew Bergen, 03 February 2013 - 04:02 PM.

#4ultramailman  Prime Members

Posted 03 February 2013 - 04:13 PM

In your collision function, you are only checking for the y's, and not the x's of the vectors. Is this what you wanted, or it's a typo?

#5Crusable  Members

Posted 03 February 2013 - 04:38 PM

I thought I don't need to check the X axies because the paddles are only moving on the Y axies and they would never go < the width.

#6ultramailman  Prime Members

Posted 03 February 2013 - 05:02 PM

Oh, now I understand. My bad. It's just a suggestion, but it might be good to replace the number literals with constant variables instead, to make it easier to follow. As for your problem, I still don't know what it is :\

#7Crusable  Members

Posted 03 February 2013 - 08:07 PM

Now I am super confused. I played around with the code and I set the ball to start at 0,0 and it started at the top left corner. I believe the problem is with the getting and setting the values with the vectors.

#8Serapth  Members

Posted 03 February 2013 - 09:27 PM

Now I am super confused. I played around with the code and I set the ball to start at 0,0 and it started at the top left corner. I believe the problem is with the getting and setting the values with the vectors.

Isn't that the desired effect?  Sprites in SFML should start with 0,0 equal to the top left corner of the screen, unless you override this behaviour, which you can do.

The title of this thread always makes me snigger a bit...

Attached Thumbnails

Edited by Serapth, 03 February 2013 - 09:30 PM.

#9Crusable  Members

Posted 03 February 2013 - 09:28 PM

I figured it out. This dastardly line here

shape.y = Shape.GetPosition().x;
.

#10Crusable  Members

Posted 03 February 2013 - 09:33 PM

Now I am super confused. I played around with the code and I set the ball to start at 0,0 and it started at the top left corner. I believe the problem is with the getting and setting the values with the vectors.

Isn't that the desired effect?  Sprites in SFML should start with 0,0 equal to the top left corner of the screen, unless you override this behaviour, which you can do.

Edited by Mathew Bergen, 03 February 2013 - 09:57 PM.

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.