@Override
	public void update(PositionChangedObservable observable) {
		if(observable != this) {
			if(observable.getPositions().contains(position)) {
				addHoveringElement(observable);
				if(getLifetime() > 0)
					observable.accept(new CollideWithPowerFailureVisitor());
			} else if(hoveringElements.remove(observable) && shouldCollide(observable))
					observable.accept(new DeactivatePowerFailureVisitor());
		}
	}