Jump to content

  • Log In with Google      Sign In   
  • Create Account


We have 4 x Pro Licences (valued at $59 each) for 2d modular animation software Spriter to give away in this Thursday's GDNet Direct email newsletter.

Read more in this forum topic or make sure you're signed up (from the right-hand sidebar on the homepage) and read Thursday's newsletter to get in the running!


Member Since 24 Apr 2012
Offline Last Active Oct 04 2013 04:37 AM

Topics I've Started

Best way to get width of object before creation

04 January 2013 - 08:08 AM

I'm currently working on a Fruit Ninja clone using SDL and I want to restrict my fruit to being created at a random x co-ordinate, but so that they fully appear within the bounds of the window (800x600). My current code (which is a work in progress) looks something like this:




fruit.push_back(std::unique_ptr<Fruit>(new Fruit(rand() % (mediaCache.scrWidth() - 50), mediaCache.scrHeight(), mediaCache.getImage("fruit.png"))));



Which creates a new Fruit at a random x position at the bottom of the window (so it can bounce up into it) and gives it an image.


50 is the width of the Fruit, so to ensure the whole Fruit starts inside the window I take it away from the screen width. I can't access the width through a get() method before the Fruit itself is actually created, so is the best way to do this to make the width a public const static member inside Fruit and use Fruit::width instead of 50 or is there a better way?