After Sam had conducted some user testing (as shown here) it was time to act on some of their feedback. Mainly the feedback was to change the position of some of the objects and tweak the jumping function. I made it so that the jumping was not as high.
To make Elias only able to jump once, I had hoped to use bitwise operators to check if the player was contacting the ground and then make him only able to jump if he was. However I was not able to do this and so I had to use Elias’s y position to detect if he could jump or not. I am not very happy with this solution, as it means if Elias is on top of an object he cannot jump, however as I am running out of time and there is not much reason for Elias to be able to jump on top of objects in the game I decided to use this solution.
Unfortunately the background scrolling function I had used very early on in development was causing problems when we were testing on a a device. As the game was creating a node with all the backgrounds in one, the iPhone architecture could not handle it. I did not realize this problem earlier as I was not able to always test on a device and on a simulator the game runs fine.
Fixing this problem involved instead using 3 background screens that scroll past the player and then changing their textures. It was quite a hard workaround and I am thankful for the help of the demonstrators as by myself it would have taken a long time to fix.