public void onTick() {
		if (timeLeftInFog>0)
			timeLeftInFog--;
		else
			setFog(false);
		
		
		if (getTimeleft() > 0) {
			setTimeleft(getTimeleft() - speed);
			listener.onTowerAction(this);
			return;
		}
		
		if (isInFog()) {
			for (Road r : closeNeighbours) {
				if (r.hasEnemy() != null) {
					Enemy e = r.hasEnemy();
					listener.onTowerAction(this);                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
					e.shoot(this);
					setTimeleft(defTimeleft);
					return;
				}

			}
		} else {
			for (Road r : neighbours) {
				if (r.hasEnemy() != null) {
					Enemy e = r.hasEnemy();
					listener.onTowerAction(this);
					setTimeleft(defTimeleft);
					e.shoot(this);
					return;
				}
			}
		}
		
	}