Exemplo n.º 1
0
int CheckForSplash(BITMAPCAPTURE *grab, int i, int j) {
	int x, y, color, sR=0, sG=0, sB=0, sum;
	unsigned char R, G, B;

	for (x = i; x < (WF_FishHookMatrix+i); x++)
	for (y = j; y < (WF_FishHookMatrix+j); y++) {
		color = BitmapPixel(grab, x, y);

		R = color>>16;
		#ifdef DEBUG
		G = (color<<16)>>24;
		B = (char)color;

		SetPixel(laserdesktop, 300+x, 300+y, RGB(R,G,B));*/
		#endif
		sR += R;
		/*sG += G;
		sB += B;*/
	}

	//sum = sR + sG + sB;

	return sR;

}
Exemplo n.º 2
0
int FindIdentifyColor(BITMAPCAPTURE *grab)
{
	found = 0;
		for(y = 420; y < grab->height - 150; y++){
			for(x = 665; x < grab->width - 20; x++){

				DWORD itemmask1 = ColorNoAlpha(BitmapPixel(grab, x, y));
				DWORD itemmask2 = ColorNoAlpha(BitmapPixel(grab, x + 1, y));
				DWORD itemmask3 = ColorNoAlpha(BitmapPixel(grab, x + 3, y - 1));
				DWORD itemmask4 = ColorNoAlpha(BitmapPixel(grab, x + 7, y));
				DWORD itemmask5 = ColorNoAlpha(BitmapPixel(grab, x + 8, y + 1));
				DWORD itemmask6 = ColorNoAlpha(BitmapPixel(grab, x + 7, y + 6));
				DWORD itemmask7 = ColorNoAlpha(BitmapPixel(grab, x + 6, y + 7));
				DWORD itemmask8 = ColorNoAlpha(BitmapPixel(grab, x + 4, y + 10));
				DWORD itemmask9 = ColorNoAlpha(BitmapPixel(grab, x + 4, y + 15));
				DWORD itemmask10 = ColorNoAlpha(BitmapPixel(grab, x + 3, y + 1));

				if(((itemmask1 > 0x00C8C8C8) && 
				   (itemmask2 > 0x00C8C8C8) && 
				   (itemmask3 > 0x00C8C8C8) && 
				   (itemmask4 > 0x00C8C8C8) && 
				   (itemmask5 > 0x00C8C8C8) && 
				   (itemmask6 > 0x00C8C8C8) && 
				   (itemmask7 > 0x00C8C8C8) && 
				   (itemmask8 > 0x00C8C8C8) && 
				   (itemmask9 > 0x00C8C8C8)) && (itemmask10 < 0x004444C8))
				{
					rx = x;
					ry = y;
					found = 1;
					break;
				}
        }
		if(found == 1)
		{
			break;
		}
    }
    if(found)
	{
		return 1;
	}
	else
	{
		return 0;
	}
}
Exemplo n.º 3
0
COLORREF getColor(BITMAPCAPTURE *grab, int i, int j) {
	DWORD color = BitmapPixel(grab, i, j);
	char R = color>>16, G=(color<<16)>>24, B=(char)color;
	/*if (R > G && R > B) return RGB(R, G, B);
	if (B > R && B > G) return RGB(R, G, B)
	if (G > B && G > R) return RGB(R, G, B)
	return RGB(0,0,0);*/
	return RGB(R, G, B);
}
Exemplo n.º 4
0
int FindUsefulItems(BITMAPCAPTURE *grab)
{

	int found63lvl = 0;
		for(int y = 100; y < grab->height - 10; y++){
			for(int x = rx - 350; x < rx - 10; x++){

				DWORD lvl63mask1 = ColorNoAlpha(BitmapPixel(grab, x, y));
				DWORD lvl63mask2 = ColorNoAlpha(BitmapPixel(grab, x + 2, y - 4));
				DWORD lvl63mask3 = ColorNoAlpha(BitmapPixel(grab, x + 5, y - 2));
				DWORD lvl63mask4 = ColorNoAlpha(BitmapPixel(grab, x + 5, y + 1));
				DWORD lvl63mask5 = ColorNoAlpha(BitmapPixel(grab, x + 17, y - 3));
				DWORD lvl63mask6 = ColorNoAlpha(BitmapPixel(grab, x + 29, y - 1));
				DWORD lvl63mask7 = ColorNoAlpha(BitmapPixel(grab, x + 63, y - 3));
				DWORD lvl63mask8 = ColorNoAlpha(BitmapPixel(grab, x + 106, y - 2));
				DWORD lvl63mask9 = ColorNoAlpha(BitmapPixel(grab, x + 105, y - 2));
				DWORD lvl63mask10 = ColorNoAlpha(BitmapPixel(grab, x + 107, y - 2));

				if((lvl63mask1 == 0x00FFFFFF) && 
				   (lvl63mask2 == 0x00FFFFFF) && 
				   (lvl63mask3 == 0x00FFFFFF) && 
				   (lvl63mask4 == 0x00FFFFFF) && 
				   (lvl63mask5 == 0x00FFFFFF) && 
				   (lvl63mask6 == 0x00FFFFFF) && 
				   (lvl63mask7 == 0x00FFFFFF) && 
				   (lvl63mask8 == 0x00FFFFFF) && 
				   (lvl63mask9 != 0x00FFFFFF) && 
				   (lvl63mask10 != 0x00FFFFFF))
				{
					found63lvl = 1;
					break;
				}
        }
		if(found63lvl == 1)
		{
			break;
		}
    }



	int foundring = 0;
		for(int y = 100; y < grab->height - 10; y++){
			for(int x = rx - 350; x < rx - 10; x++){

				DWORD ringmask1 = ColorNoAlpha(BitmapPixel(grab, x, y));
				DWORD ringmask2 = ColorNoAlpha(BitmapPixel(grab, x, y + 4));
				DWORD ringmask3 = ColorNoAlpha(BitmapPixel(grab, x + 3, y));
				DWORD ringmask4 = ColorNoAlpha(BitmapPixel(grab, x + 14, y + 2));
				DWORD ringmask5 = ColorNoAlpha(BitmapPixel(grab, x + 19, y + 4));
				DWORD ringmask6 = ColorNoAlpha(BitmapPixel(grab, x + 40, y + 4));
				DWORD ringmask7 = ColorNoAlpha(BitmapPixel(grab, x + 55, y + 2));
				DWORD ringmask8 = ColorNoAlpha(BitmapPixel(grab, x + 58, y + 7));
				DWORD ringmask9 = ColorNoAlpha(BitmapPixel(grab, x + 64, y + 7));

				if((ringmask1 == 0x00FFFF00) && 
				   (ringmask2 == 0x00FFFF00) && 
				   (ringmask3 == 0x00FFFF00) && 
				   (ringmask4 == 0x00FFFF00) && 
				   (ringmask5 == 0x00FFFF00) && 
				   (ringmask6 == 0x00FFFF00) && 
				   (ringmask7 == 0x00FFFF00) && 
				   (ringmask8 == 0x00FFFF00) && 
				   (ringmask9 == 0x00FFFF00))
				{
					foundring = 1;
					break;
				}
        }
		if(foundring == 1)
		{
			break;
		}
    }




	int foundamulet = 0;
		for(int y = 100; y < grab->height - 10; y++){
			for(int x = rx - 350; x < rx - 10; x++){

				DWORD amuletmask1 = ColorNoAlpha(BitmapPixel(grab, x, y));
				DWORD amuletmask2 = ColorNoAlpha(BitmapPixel(grab, x, y + 4));
				DWORD amuletmask3 = ColorNoAlpha(BitmapPixel(grab, x + 3, y));
				DWORD amuletmask4 = ColorNoAlpha(BitmapPixel(grab, x + 14, y + 2));
				DWORD amuletmask5 = ColorNoAlpha(BitmapPixel(grab, x + 19, y + 4));
				DWORD amuletmask6 = ColorNoAlpha(BitmapPixel(grab, x + 43, y + 4));
				DWORD amuletmask7 = ColorNoAlpha(BitmapPixel(grab, x + 46, y + 2));
				DWORD amuletmask8 = ColorNoAlpha(BitmapPixel(grab, x + 51, y + 2));
				DWORD amuletmask9 = ColorNoAlpha(BitmapPixel(grab, x + 55, y + 6));

				if((amuletmask1 == 0x00FFFF00) && 
				   (amuletmask2 == 0x00FFFF00) && 
				   (amuletmask3 == 0x00FFFF00) && 
				   (amuletmask4 == 0x00FFFF00) && 
				   (amuletmask5 == 0x00FFFF00) && 
				   (amuletmask6 == 0x00FFFF00) && 
				   (amuletmask7 == 0x00FFFF00) && 
				   (amuletmask8 == 0x00FFFF00) && 
				   (amuletmask9 == 0x00FFFF00))
				{
					foundamulet = 1;
					break;
				}
        }
		if(foundamulet == 1)
		{
			break;
		}
    }

	if(itemvalue_yellow == 1)
	{
		return 1;
	}

	if(itemvalue_rings == 1)
	{
		if(foundring == 1)
		{
			return 1;
		}
	}

	if(itemvalue_amulets == 1)
	{
		if(foundamulet == 1)
		{
			return 1;
		}
	}

	if(itemvalue_arhonts == 1)
	{
		if(found63lvl == 1)
		{
			return 1;
		}
	}

	return 0;

}
Exemplo n.º 5
0
int FindLegendaryItems(BITMAPCAPTURE *grab)
{
	int legendary = 0;
	found = 0;
		for(y = 100; y < grab->height - 10; y++){
			for(x = rx - 350; x < rx - 10; x++){
				
				DWORD set_itemmask1 = ColorNoAlpha(BitmapPixel(grab, x, y));
				DWORD set_itemmask2 = ColorNoAlpha(BitmapPixel(grab, x + 1, y));
				DWORD set_itemmask3 = ColorNoAlpha(BitmapPixel(grab, x + 13, y - 1));
				DWORD set_itemmask4 = ColorNoAlpha(BitmapPixel(grab, x + 18, y - 1));
				DWORD set_itemmask5 = ColorNoAlpha(BitmapPixel(grab, x + 21, y - 1));
				DWORD set_itemmask6 = ColorNoAlpha(BitmapPixel(grab, x + 24, y - 1));
				DWORD set_itemmask7 = ColorNoAlpha(BitmapPixel(grab, x + 30, y - 1));

				DWORD leg_itemmask1 = ColorNoAlpha(BitmapPixel(grab, x, y));
				DWORD leg_itemmask2 = ColorNoAlpha(BitmapPixel(grab, x + 4, y));
				DWORD leg_itemmask3 = ColorNoAlpha(BitmapPixel(grab, x + 4, y + 7));
				DWORD leg_itemmask4 = ColorNoAlpha(BitmapPixel(grab, x + 13, y + 2));
				DWORD leg_itemmask5 = ColorNoAlpha(BitmapPixel(grab, x + 23, y + 4));
				DWORD leg_itemmask6 = ColorNoAlpha(BitmapPixel(grab, x + 30, y + 2));

				if((((set_itemmask1 == 0x00FF0000) || (set_itemmask1 == 0x0000FF00) || (set_itemmask1 == 0x00BF642F)) &&
				   (set_itemmask1 == set_itemmask2) && 
				   (set_itemmask1 == set_itemmask3) && 
				   (set_itemmask1 == set_itemmask4) && 
				   (set_itemmask1 == set_itemmask5) && 
				   (set_itemmask1 == set_itemmask6) && 
				   (set_itemmask1 == set_itemmask7)) 
				   
				   || 
				   

				   (((leg_itemmask1 == 0x00FF0000) || (leg_itemmask1 == 0x0000FF00) || (leg_itemmask1 == 0x00BF642F)) && 
				   (leg_itemmask1 == leg_itemmask2) && 
				   (leg_itemmask1 == leg_itemmask3) && 
				   (leg_itemmask1 == leg_itemmask4) && 
				   (leg_itemmask1 == leg_itemmask5) && 
				   (leg_itemmask1 == leg_itemmask6)))
				{
					legendary = 1;
					logprint("Определили легендарный предмет!", 0);
					break;
				}


        }
		if(legendary == 1)
		{
			break;
		}
    }
    if(legendary == 0)
	{
		return 0;
	}
	else if(legendary == 1)
	{
		return 1;
	}
}