public void floor(int ydirection, int xrotation, int xdirection) {
		Render texture = Texture.grass;
		
		if (ydirection > 0) ymove -= 0.5;
		if (ydirection < 0) ymove += 0.5;
		//if (xrotation > 0) xrotate += 0.01;
		//if (xrotation < 0) xrotate -= 0.01;
		if (xdirection < 0) horizontalmove -= 0.3;
		if (xdirection > 0) horizontalmove += 0.3;

		cosine = Math.cos(xrotate);
		sine = Math.sin(xrotate);
		
		double yDepth;
		double z;
		
		double xDepth;
		int xx;
		int yy;
		for (int y = 0; y < HEIGHT; y++) {
			//yDepth = (y - HEIGHT / ymove) / HEIGHT;
			yDepth = (y - HEIGHT / 2.0) / HEIGHT;
			
			z = 30.0 / yDepth;
			
			if (yDepth < 0) z = CEILING_HEIGHT / -yDepth;
			
			for (int x = 0; x < WIDTH; x++) {
				xDepth = (x - WIDTH / 2.0) / HEIGHT;
				xDepth *= z;
				xx = (int) (xDepth * cosine + z * sine + horizontalmove);
				yy = (int) ((z + ymove) * cosine - xDepth * sine);
				
				zBuffer[x+y*WIDTH] = z;
				if (z < 800) pixels[x+y*WIDTH] = texture.pixels[
				   (xx&(texture.WIDTH-1))+(yy&(texture.HEIGHT-1))*texture.WIDTH];
			}
		}
	}