@Override
	public void run() {
		//Loading
		Loading load = new Loading(this);
		display.setScreen(load);
		synchronized (load) {
			try {load.wait();} catch (InterruptedException e) {e.printStackTrace();}
		}
		
		//Startup
		db = assets.get("db/pokemon");
		world = new World(this);
		player = new Player(this, new Spriteset((Texture) assets.get("res/entity/sprites/Red.png")));
		
		File save = new File("Player.xml");
		String mN;
		if (save.exists()) {
			XStream s = new XStream();
			SaveFile sf = (SaveFile) s.fromXML(save);
			mN = player.load(sf);
		} else {
			player.setCoords(3, 3, 0);
			mN = "Pallet_Town_Red_Home_2";
		}
		
		new Thread(player).start();
		Gdx.input.setInputProcessor(player.control);
		
		world.loadMap(mN);
		
		//Starting game
		display.setScreen(world);
		load.finished();
		
		world.loadMapSynch(mN);
	}