Sign in to follow this  
zelcard

Generate random integer problem?

Recommended Posts

Hello,

I'm creating endless style game and  I'm planning to reuse already existing sprites instead of creating new ones. My sprites are coming from the top moving towards the bottom of the screen, when they reach bottom I reset their position.y to 0 which brings them back to the top again, but I also wanted them to have random position.x every time they start again from the top, I called this function:

obstacles.forEach(function(obstacle){if(obstacle.position.y > this.game.world.height){obstacle.position.y = 0; obstacle.position.x = this.game.rnd.between(0, this.game.world.width);}})

And after trying it out I got this error from the developers console:

Quote

Uncaught TypeError: Cannot read property 'rnd' of undefined

Is it even posibble to call this.game.rnd.between from the update? If not what is the solution for that? Thanks!

Share this post


Link to post
Share on other sites

When you pass a function that uses this you must also pass a context for it:

obstacles.forEach(function (obstacle) {
  if (obstacle.position.y > this.game.world.height) {
    obstacle.position.y = 0;
    obstacle.position.x = this.game.rnd.between(0, this.game.world.width);
  }
}, this);

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.