Sawyer Posted October 21, 2015 Share Posted October 21, 2015 I have a game working using states. It goes from the preload state to the menu, to the game. When the game loads it displays the text fine, where I can click it to start the game. However, when the player dies I start the preload sequence again. The state loads but the text never appears. It appears to be still there as I can click on the screen to start the game again but I just have a black screen. I tried adding a tryAgain state to go to this instead but the issue persists. game.jsMyGame.GameState.prototype = { create: function() { .... }, update: function() { if (this.health == 0) { this.state.start(tryAgainState) } }tryAgain.jsMyGame.TryAgainState = function (game) { this.label;}; MyGame.tryAgainState.prototype = { create: function() { this.label = this.add.text(this.world.centerX, this.world.centerY, "Start Over", { font: "65px Arial", fill: "white", align: "center" }); this.label.anchor.set(0.5); this.label.inputEnabled = true; this.input.onDown.add(this.startOver, this); }, startOver: function() { this.state.start("mainGameState"); }} Link to comment Share on other sites More sharing options...
chongdashu Posted October 21, 2015 Share Posted October 21, 2015 You have a few typos in your code block above, so I am not sure if it's because of that, which is causing the blank screen.MyGame.tryAgainState.prototype should be MyGame.TryAgainState.prototypethis.state.start(tryAgainState) should be this.state.start("tryAgainState")This is assuming that you set up the states as follows:game.state.add("tryAgainState", MyGame.TryAgainState);game.state.add("mainGameState", MyGame.GameState);Basically, be careful of your capitalization and your use of quotes. However, I recreated your scenario and had no problems with going back and forth between states and seeing the text. Here is a fiddle: http://jsfiddle.net/chongdashu/c385xpcd/ Link to comment Share on other sites More sharing options...
Sawyer Posted October 21, 2015 Author Share Posted October 21, 2015 Hey chongdashu, Fixed the typos, the one missing the quotes was a mistake typing in the question but the problem persisted. I logged the text and found out that the coordinates weren't being set for some reason. I tested by just setting them to (200, 200) and the text appears. Not really sure why this.world.centerX and Y weren't working. EDIT: Figured it out. In my game, I resize the world to be the width of my wide scrolling map, so when I set centerX, it's being placed way out of bounds of the original frame. chongdashu 1 Link to comment Share on other sites More sharing options...
chongdashu Posted October 22, 2015 Share Posted October 22, 2015 Great! You might want to mark the question as answered Link to comment Share on other sites More sharing options...
Recommended Posts