public boolean move(int direction) {
		if (this.movingState >= 0) {
			return false;
		}
		
		this.direction = direction;
		
		Point nextPosition = this.getNextTile(direction);
		if (nextPosition.x < 0 || nextPosition.y < 0 || nextPosition.x >= Constants.ENVIRONMENT_WIDTH || nextPosition.y >= Constants.ENVIRONMENT_HEIGHT) {
			return false;
		}
		
		this.movingState = 1;
		
		this.position = new Point(nextPosition);
		
		return true;
	}