adding a third level to a mobile game ?

The tutorial at http://wiki.netbeans.org/CreatingJavaMEGamesWithGameBuilder helped me make a simple game with 2 levels, The first level being the forest level and the second one being the Desert level. I managed to make both these level work. As soon as the sprite Karel moves to the bottom right edge of level 1, level 2 is displayed, which also works fine. But now Ive made a third scene which I want to start as soon as the sprite Karel reaches the bottom right of the level 2 (i.e desert scene)
I know that this portion of the code makes the level 2 load as soon as Karel reaches the bottom right.

public void run() {
		Graphics g = getGraphics();
		
		while (!this.interrupted) {
						
			//switch to 'Desert' scene once the main sprite moves 
			//to the bottom right corner of scene 'Forest'
			if (this.spriteKarel.getX() >= 340 && this.spriteKarel.getY() >= 340) {
				
				try {
					this.ground = this.gameDesign.getSand();
					this.colliders = new TiledLayer[] {};

					//remove all current layers
					while (this.lm.getSize() > 0) {
						Layer l = this.lm.getLayerAt(0);
						this.lm.remove(l);
					}
					//load the 'Desert' scene
					this.gameDesign.updateLayerManagerForDesert(this.lm);
				} catch (IOException e) {
					e.printStackTrace();
				}
				
				//reset the viewport
				this.viewPortX = 0;
				this.viewPortY = 0;
				this.lm.setViewWindow(this.viewPortX, this.viewPortY, this.getWidth(), this.getHeight());
				
				this.lastDirection = -1;
			}

But how can I do the same for level 3 to load? I tried adding the following code in the run function but it ran level 3 instead of level 2

if (this.spriteKarel.getX() >= 300 && this.spriteKarel.getY() >= 300) {

				try {
					this.ground = this.gameDesign.getSide();
					this.colliders = new TiledLayer[] {};

					//remove all current layers
					while (this.lm.getSize() > 0) {
						Layer l = this.lm.getLayerAt(0);
						this.lm.remove(l);
					}
					//load the 'Wall' scene
					this.gameDesign.updateLayerManagerForWall(this.lm);
				} catch (IOException e) {
					e.printStackTrace();
				}

				//reset the viewport
				this.viewPortX = 0;
				this.viewPortY = 0;
				this.lm.setViewWindow(this.viewPortX, this.viewPortY, this.getWidth(), this.getHeight());

				this.lastDirection = -1;
			}