private void init(int x, int y, int dir, int beepers, boolean internal) {

		if (WorldBackend.getCurrent() == null) {
			Display.openDefaultWorld();
		}

		this.x = x;
		this.y = y;

		if (beepers < 0 && beepers != Display.INFINITY) {
			Debug.printWarning("Invalid amount of beepers: "
			                   + beepers + "...  Setting to 0...");
			beepers = 0;
		}

		direction = Display.validateDirection(dir);
		this.beepers = beepers;
		if (internal)
			WorldBackend.getCurrent().addRobotInternal(this);
		else
			WorldBackend.getCurrent().addRobot(this);

	}