@Override
	public void run() {
		while (running){
			int px_xPan = 0;
			int px_yPan = 0;
			int px_xDir = 0;
			int px_yDir = 0;
			if (leftHeld){
				px_xPan -= 2;
				px_xDir -= 1;
			}
			if (rightHeld){
				px_xPan += 2;
				px_xDir += 1;
			}
			if (upHeld){
				px_yPan -= 2;
				px_yDir -= 1;
			}
			if (downHeld){
				px_yPan += 2;
				px_yDir += 1;
			}
			if (px_xPan != 0 || px_yPan != 0){
				//
			}
			direction.setX(px_xDir);
			direction.setY(px_yDir);
			Game.leader().setDirection(direction); 
			//System.out.println("xDirection: " + direction.x());
			//System.out.println("yDirection: " + direction.y());

			for (Entity e: Game.gameEntities()){
				e.tick();
			}
			Game.leader().tick();
			Game.window().screen().centerScreenAt_abspx(Game.leader().abspx_xPos(), Game.leader().abspx_yPos());
			try {
				Thread.sleep(10);
			} catch (InterruptedException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		}
	}