/************************************/ /* */ /* File: cMenu.h */ /* By: ry0t */ /* First Menu Class */ /* */ /************************************/ #include #include ID3DXFont* m_pFont; LOGFONT lfLogFont; RECT Rect; //================================================================================== /* Printing Function */ DrawConString(float X, float Y, D3DCOLOR color, char *font, int height, int weight, IDirect3DDevice8 *pD3Ddev, char* pText, ...) { strcpy(lfLogFont.lfFaceName, font); lfLogFont.lfHeight = 12; lfLogFont.lfWeight = 0; lfLogFont.lfItalic = FALSE; lfLogFont.lfUnderline = FALSE; lfLogFont.lfStrikeOut = FALSE; int iWidth = 65535; int iHeight = 65536; Rect.left = (int)X; Rect.top = (int)Y; Rect.right = Rect.left + iWidth; Rect.bottom = Rect.top + iHeight; va_list va_alist; char logbuf[256] = {0}; va_start (va_alist, pText); _vsnprintf (logbuf+strlen(logbuf), sizeof(logbuf) - strlen(logbuf), pText, va_alist); va_end (va_alist); HRESULT hResult = D3DXCreateFontIndirect(pD3Ddev, &lfLogFont, &m_pFont); m_pFont->DrawText(logbuf, -1, &Rect, 0, color); return m_pFont->Release(); } //================================================================================== /* Menu Cvar Struct */ void DrawMenu(IDirect3DDevice8 *m_pD3Ddev); void DoKeyCheck(); struct basehookcvar_s { float bESP; float bAsus; float bXQZ; float bChams; float bAim; float bMenu; float bSpeed; float bAR; //antirecoil settings [antirec] float bARnum; //anti reocil strength [ar_str] float bXhair2; float bSP; float bTrigger; float bInsta; }; basehookcvar_s cvar; /* Menu Struct */ struct basehookmenu_s { char title[20]; float* value; float min; float max; float step; }; /* Menu Variables */ basehookmenu_s menu[11]; //update int menuItems = 11; //update int menuIndex = 0; bool do_once = false; /* Menu Items */ void InitMenu() { if(!do_once){ int i = 0; strcpy( menu[i].title, "ESP" ); menu[i].value = &cvar.bESP; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "Chams" ); menu[i].value = &cvar.bChams; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "XQZ" ); menu[i].value = &cvar.bXQZ; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "Asus" ); menu[i].value = &cvar.bAsus; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "Crosshair" ); menu[i].value = &cvar.bXhair2; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "TriHax" ); menu[i].value = &cvar.bSP; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "InstaRespawn" ); menu[i].value = &cvar.bInsta; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "AimBot" ); menu[i].value = &cvar.bAim; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "TriggerBot" ); menu[i].value = &cvar.bTrigger; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "AntiRecoil" ); menu[i].value = &cvar.bAR; menu[i].min = 0; menu[i].max = 1; menu[i].step = 1; i++; strcpy( menu[i].title, "->AR Str" ); menu[i].value = &cvar.bARnum; menu[i].min = 0; menu[i].max = 20; menu[i].step = 1; do_once = true; } } /* Menu Drawing */ void DrawMenu(IDirect3DDevice8 *m_pD3Ddev) { int menuX = 180; int menuY = 40; InitMenu(); int r = 125; int g = 125; // selected & title int b = 125; int mr = 0; int mg = 0; // non-selected int mb = 128; DrawConString( (float)menuX - 130, (float)menuY - 20, D3DCOLOR_RGBA(r, g, b, 255), "Arial", 13, 0, m_pD3Ddev, "[Warrock_Sux SE]" ); for(int i=0;i0 ) menuIndex--; } if(GetAsyncKeyState(0x28)&1) //downarrow { if( menuIndex menu[menuIndex].max ) menu[menuIndex].value[0] = menu[menuIndex].min; } } } }