All pastes #194192 Raw Edit

los

public text v1 · immutable
·published 2006-10-07 16:51 UTC
rendered paste body
public static boolean CanSeeTarget(int x, int y, int z,int tx, int ty, int tz)
    {
	final double dx = (tx - x); //dystans x
        final double dy = (ty - y); //dystans y
	double distance = Math.sqrt(dx*dx + dy*dy);		
	double sin = dy/distance;
	double cos = dx/distance;
	double poprzedni_x = x;
	double poprzedni_y = y;
	int kierunek = //obliczyc - to ma byc zwykly kat
	while (Math.round(x) != tx || Math.round(y) != ty)
	{		
		if ((int)poprzedni_x != (int)x && (int)poprzedni_y != (int)y)
		{
			//przeskok po ukosie
			if (!NSWE(x,y,z, kierunek-5) || !NSWE(x,y,z, kierunek+5))//obchodzimy jednym lub drugim bokiem
			{
				//nie ma mozliwosci przejsc przez ta kratke
				return false;
			}
			System.out.print("\n Ukos!");
		}
		else if (!NSWE(x,y,z, kierunek))				
		{
			return false;				
		}
		poprzedni_x = x;
		poprzedni_y = y;
		x += cos;
		y += sin;	
		System.out.print("\nX: " +Math.round(x)+ " Y: "+Math.round(y));			
	}
	return true;
    }