I am very confused.

Started by
8 comments, last by Crusable77 11 years, 2 months ago

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.

Here is a link to the project: https://docs.google.com/file/d/0BzAXLewFU0RnLW5UWlVNamMya1E/edit?usp=sharing

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

Advertisement

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.

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.

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?

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.

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 :\

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.

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...

I figured it out. This dastardly line here

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

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.

This topic is closed to new replies.

Advertisement