public void applyDestruction(int ex, int ey, Shell shellType) {		// wprowadza efekty napierdalania się
		
		int x0, y0, x1, x2, y1, y2;
		
		int range = shellType.getRange();
		
		// obliczamy brzegi prostokąta, w ktorym zawiera się eksplozja:
		
//		x1 = e.getX();
//		x2 = x1 + e.getRange()*2;
//		y1 = e.getY();
//		y2 = y1 + e.getRange()*2;
		
		x1 = ex - range;
		x2 = x1 + range*2;
		y1 = ey - range;
		y2 = y1 + range*2;
		
		// obliczamy centrum eksplozji:
		
//		x0 = x1 + (x2 - x1) / 2;
//		y0 = y1 + (y2 - y1) / 2;
		
		x0 = ex;
		y0 = ey;
		
		GPanel.checkTanks(x0,y0,shellType);
		
		// sprawdzamy, które cząsteczki w zasięgu rażenia
		
		int m, n;
		double r;
		
		for(int i = x1; i < x2; i++) {
			for(int j = y1; j < y2; j++) {
				if(dist(i,j,x0,y0) < range) {
					m = Math.round((i)/Particle.size);
					n = Map.h - Math.round((j)/Particle.size);
					if(m >= 0 && m < Map.w && n >=0 && n < Map.h) {
						Particle p = Grid[m][n];
						r = ran.nextGaussian();
						if(p.getType() == Particle.Type.DIRT && Math.abs(0-r) > 2) p.setAir(); 
					}
				}
			}
		}
	}