public boolean equals(Object obj){
		// We first check if we have a correct object to compare
		if (obj == null || ! (obj instanceof Environment))
			return false;
		
		Environment env = (Environment) obj;
		
		// When do we consider that two different environments are equal?
		// When both environments have the same number of squares &&
		// each square at position 'x' has the same colour &&
		// the current position is the same
		if (env.getCurrentPos() != this.getCurrentPos() ||
			env.getLine().size() != this.getLine().size())
			return false;
		
		for (int i = 0; i < this.getLine().size(); i++)
			if (this.getLine().get(i) != env.getLine().get(i)) return false;
		
		return true;
	}