void __stdcall Hooks::PlaySound_CSGO( const char* fileName ) { oPlaySound( fileName ); return; //doesn't work in panorama anyways std::string file_name(fileName); if( offsets.IsReadyEx == 0 || file_name.empty() || I::Engine->IsConnected() || !Vars.Misc.AutoAccept ) return; if(file_name.find( charenc( "accept_beep.wav" ) ) != -1 ) { // Restores Window If Needed if (GetForegroundWindow() != G::Window) { ShowWindow(G::Window, SW_RESTORE); SetActiveWindow(G::Window); } // Accepts The Game U::IsReady = ( IsReadyFn )( offsets.IsReadyEx ); U::IsReady(); } }
void Drawing::initializeFonts() { resetFonts(); menuFont = interfaces::surface->CreateFont(); interfaces::surface->SetFontGlyphSet(menuFont, charenc("Verdana"), 13, 20, 0, 0, FONTFLAG_ANTIALIAS); menuTitleFont = interfaces::surface->CreateFont(); interfaces::surface->SetFontGlyphSet(menuTitleFont, charenc("Tahoma"), 13, 600, 0, 0, FONTFLAG_ANTIALIAS); espFont = interfaces::surface->CreateFont(); interfaces::surface->SetFontGlyphSet(espFont, charenc("Tahoma"), 13, 1250, 0, 0, FONTFLAG_DROPSHADOW); scoreboardFont = interfaces::surface->CreateFont(); interfaces::surface->SetFontGlyphSet(scoreboardFont, charenc("Tahoma"), 13, 500, 0, 0, FONTFLAG_ANTIALIAS); }
void CMiscellaneous::Chatspam() { static float nextTime = 0.f; float flServerTime = G::LocalPlayer->GetTickBase() * I::Globals->interval_per_tick; if( nextTime > flServerTime ) return; nextTime = flServerTime + 0.5f; if ( m_spamlines.empty() ) return; if( Vars.Misc.ChatSpamMode == 0 ) linenum = rand() % m_spamlines.size() - 1; char str[512]; strcpy( str, charenc( "say " ) ); strcat( str, m_spamlines[ linenum ].c_str() ); I::Engine->ClientCmd_Unrestricted( str ); if( Vars.Misc.ChatSpamMode == 1 ) { linenum++; if( linenum >= m_spamlines.size() ) linenum = 0; } }
bool CInput::Holding( int iXStart, int iYStart, int iWidth, int iHeight ) { if( GetAsyncKeyState( VK_LBUTTON ) && GetActiveWindow() == FindWindowA( charenc( "Valve001" ), NULL ) ) if( Hovering( iXStart, iYStart, iWidth, iHeight ) ) return true; return false; }
void CMiscellaneous::Panic() { if( !G::PressedKeys[ VK_END ] ) return; I::Engine->ClientCmd_Unrestricted( charenc( "cl_mouseenable 1" ) ); I::Engine->ClientCmd_Unrestricted( charenc( "crosshair 1" ) ); H::ModelRender->UnHook(); H::VPanel->UnHook(); H::ClientMode->UnHook(); H::Client->UnHook(); H::Surface->UnHook(); //H::StudioRender->UnHook(); H::D3D9->UnHook(); SetWindowLongPtr( G::Window, GWL_WNDPROC, ( LONG_PTR )Hooks::oldWindowProc ); }
void CMiscellaneous::ReadChatspam( const char* fileName ) { m_spamlines.clear(); std::ifstream spamfile( fileName ); if ( spamfile.good() ) { std::string line; while ( std::getline( spamfile, line ) ) m_spamlines.push_back( line ); linenum = 0; spamfile.close(); U::PrintMessage( "%s%s%s\n", charenc( "Spam file " ), fileName, charenc( " Loaded!" ) ); } }
void ConfigManager::initialize(const char* fileName) { std::string folder = charenc("csgo\\cfg\\cheetos\\"); CreateDirectory(folder.c_str(), 0); std::string file = folder + fileName; memset(directory, 0, 255); memcpy(directory, file.c_str(), strlen(file.c_str())); }
void CInput::GetClicked() { if( GetAsyncKeyState( VK_LBUTTON ) && GetActiveWindow() == FindWindowA( charenc("Valve001"), NULL ) ) { bClicked = false; bMouseD = true; } else if( bMouseD ) { bClicked = true; bMouseD = false; } else if( bClicked ) { bClicked = false; } }
Config::Config() { CreateDirectoryA(charenc("csgo//"), 0); CreateDirectoryA(charenc("csgo//cfg//"), 0); CreateDirectoryA(charenc("csgo//cfg//cheetos//"), 0); }
void __stdcall FrameStageNotify(ClientFrameStage_t curStage) { originalFrameStageNotify(interfaces::client, curStage); if (curStage == FRAME_NET_UPDATE_POSTDATAUPDATE_START) { if (cvar::misc_skinchanger) { player_info_t info; CBaseEntity* local = interfaces::entitylist->GetClientEntity(interfaces::engine->GetLocalPlayer()); if (!local || local->GetLifeState() != LIFE_ALIVE || !interfaces::engine->GetPlayerInfo(local->GetIndex(), &info)) return; for (int i = 1; i <= interfaces::entitylist->GetHighestEntityIndex(); i++) { if (i == local->GetIndex()) continue; CBaseEntity* entity = interfaces::entitylist->GetClientEntity(i); if (!entity) continue; std::string modelName = interfaces::modelinfo->GetModelName(entity->GetModel()); if (modelName.find(charenc("models/weapons")) == std::string::npos) continue; CBaseEntity* owner = interfaces::entitylist->GetClientEntityFromHandle(entity->GetOwner()); if (!owner || owner != local) continue; CBaseCombatWeapon* weapon = (CBaseCombatWeapon*)entity; if (!weapon) return; if (!weapon->IsKnife()) { weapon->SetPattern(info, config.skincfg[weapon->GetItemDefinitionIndex()].skin, config.skincfg[weapon->GetItemDefinitionIndex()].wear, config.skincfg[weapon->GetItemDefinitionIndex()].seed, config.skincfg[weapon->GetItemDefinitionIndex()].stattrak, config.skincfg[weapon->GetItemDefinitionIndex()].name); } else { if (cvar::misc_knifechanger) { if (cvar::misc_knifechanger_model == 0) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_BAYONET; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_BAYONET].skin, config.skincfg[WEAPON_KNIFE_BAYONET].wear, config.skincfg[WEAPON_KNIFE_BAYONET].seed, config.skincfg[WEAPON_KNIFE_BAYONET].stattrak, config.skincfg[WEAPON_KNIFE_BAYONET].name); } else if (cvar::misc_knifechanger_model == 1) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_FLIP; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_FLIP].skin, config.skincfg[WEAPON_KNIFE_FLIP].wear, config.skincfg[WEAPON_KNIFE_FLIP].seed, config.skincfg[WEAPON_KNIFE_FLIP].stattrak, config.skincfg[WEAPON_KNIFE_FLIP].name); } else if (cvar::misc_knifechanger_model == 2) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_GUT; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_GUT].skin, config.skincfg[WEAPON_KNIFE_GUT].wear, config.skincfg[WEAPON_KNIFE_GUT].seed, config.skincfg[WEAPON_KNIFE_GUT].stattrak, config.skincfg[WEAPON_KNIFE_GUT].name); } else if (cvar::misc_knifechanger_model == 3) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_KARAMBIT; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_KARAMBIT].skin, config.skincfg[WEAPON_KNIFE_KARAMBIT].wear, config.skincfg[WEAPON_KNIFE_KARAMBIT].seed, config.skincfg[WEAPON_KNIFE_KARAMBIT].stattrak, config.skincfg[WEAPON_KNIFE_KARAMBIT].name); } else if (cvar::misc_knifechanger_model == 4) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_M9BAYONET; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_M9BAYONET].skin, config.skincfg[WEAPON_KNIFE_M9BAYONET].wear, config.skincfg[WEAPON_KNIFE_M9BAYONET].seed, config.skincfg[WEAPON_KNIFE_M9BAYONET].stattrak, config.skincfg[WEAPON_KNIFE_M9BAYONET].name); } else if (cvar::misc_knifechanger_model == 5) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_HUNTSMAN; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_HUNTSMAN].skin, config.skincfg[WEAPON_KNIFE_HUNTSMAN].wear, config.skincfg[WEAPON_KNIFE_HUNTSMAN].seed, config.skincfg[WEAPON_KNIFE_HUNTSMAN].stattrak, config.skincfg[WEAPON_KNIFE_HUNTSMAN].name); } else if (cvar::misc_knifechanger_model == 6) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_FALCHION; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_FALCHION].skin, config.skincfg[WEAPON_KNIFE_FALCHION].wear, config.skincfg[WEAPON_KNIFE_FALCHION].seed, config.skincfg[WEAPON_KNIFE_FALCHION].stattrak, config.skincfg[WEAPON_KNIFE_FALCHION].name); } else if (cvar::misc_knifechanger_model == 7) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_BUTTERFLY; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_BUTTERFLY].skin, config.skincfg[WEAPON_KNIFE_BUTTERFLY].wear, config.skincfg[WEAPON_KNIFE_BUTTERFLY].seed, config.skincfg[WEAPON_KNIFE_BUTTERFLY].stattrak, config.skincfg[WEAPON_KNIFE_BUTTERFLY].name); } else if (cvar::misc_knifechanger_model == 8) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_DAGGER; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_DAGGER].skin, config.skincfg[WEAPON_KNIFE_DAGGER].wear, config.skincfg[WEAPON_KNIFE_DAGGER].seed, config.skincfg[WEAPON_KNIFE_DAGGER].stattrak, config.skincfg[WEAPON_KNIFE_DAGGER].name); } else if (cvar::misc_knifechanger_model == 9) { *(int*)((DWORD)weapon + offsets::weapon::m_iItemDefinitionIndex) = WEAPON_KNIFE_BOWIE; weapon->SetPattern(info, config.skincfg[WEAPON_KNIFE_BOWIE].skin, config.skincfg[WEAPON_KNIFE_BOWIE].wear, config.skincfg[WEAPON_KNIFE_BOWIE].seed, config.skincfg[WEAPON_KNIFE_BOWIE].stattrak, config.skincfg[WEAPON_KNIFE_BOWIE].name); } } } } } } }
MDLHandle_t __stdcall FindMDL(const char* pMDLRelativePath) { if (cvar::misc_knifechanger) { if (strstr(pMDLRelativePath, charenc("v_knife_default_ct.mdl")) || strstr(pMDLRelativePath, charenc("v_knife_default_t.mdl"))) { switch (cvar::misc_knifechanger_model) { case 0: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_bayonet.mdl")); case 1: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_flip.mdl")); case 2: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_gut.mdl")); case 3: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_karam.mdl")); case 4: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_m9_bay.mdl")); case 5: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_tactical.mdl")); case 6: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_falchion_advanced.mdl")); case 7: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_butterfly.mdl")); case 8: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_push.mdl")); case 9: return originalFindMDL(interfaces::modelcache, charenc("models/weapons/v_knife_survival_bowie.mdl")); } } } return originalFindMDL(interfaces::modelcache, pMDLRelativePath); }
void __stdcall Hooks::DrawModelExecute( void* context, void* state, const ModelRenderInfo_t& info, matrix3x4_t* pCustomBoneToWorld ) { H::ModelRender->UnHook(); if( I::Engine->IsInGame() && G::LocalPlayer ) { if( info.pModel ) { std::string modelName = I::ModelInfo->GetModelName( info.pModel ); if( modelName.find( strenc( "models/player" ) ) != std::string::npos && Vars.Visuals.Chams.Enabled ) { CBaseEntity* pModelEntity = ( CBaseEntity* )I::ClientEntList->GetClientEntity( info.entity_index ); if( pModelEntity && pModelEntity->GetAlive() && !pModelEntity->GetDormant() ) { Color render_color_hidden = pModelEntity->GetTeam() == G::LocalPlayer->GetTeam() ? Color( 72, 219, 75 ) : Color( 232, 209, 32 ); Color render_color_visible = pModelEntity->GetTeam() == G::LocalPlayer->GetTeam() ? Color( 84, 167, 255 ) : Color( 200, 60, 60 ); if( Vars.Visuals.Chams.XQZ ) { ForceMaterial( Vars.Visuals.Chams.Mode == 0 ? hidden_flat : hidden_tex, render_color_hidden ); I::ModelRender->DrawModelExecute( context, state, info, pCustomBoneToWorld ); if( Vars.Visuals.Chams.Mode == 0 ) hidden_flat->SetMaterialVarFlag( MATERIAL_VAR_IGNOREZ, true ); else hidden_tex->SetMaterialVarFlag( MATERIAL_VAR_IGNOREZ, true ); } if( Vars.Visuals.Chams.Mode == 0 ) visible_flat->SetMaterialVarFlag( MATERIAL_VAR_IGNOREZ, false ); else visible_tex->SetMaterialVarFlag( MATERIAL_VAR_IGNOREZ, false ); ForceMaterial( Vars.Visuals.Chams.Mode == 0 ? visible_flat : visible_tex, render_color_visible ); I::ModelRender->DrawModelExecute( context, state, info, pCustomBoneToWorld ); } } else if( modelName.find( strenc( "flash" ) ) != std::string::npos && Vars.Visuals.Removals.Flash ) { IMaterial* flash = I::MaterialSystem->FindMaterial( charenc( "effects\\flashbang" ), charenc( TEXTURE_GROUP_CLIENT_EFFECTS ) ); IMaterial* flashWhite = I::MaterialSystem->FindMaterial( charenc( "effects\\flashbang_white" ), charenc( TEXTURE_GROUP_CLIENT_EFFECTS ) ); flash->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW, true ); flashWhite->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW, true ); I::ModelRender->ForcedMaterialOverride( flash ); I::ModelRender->ForcedMaterialOverride( flashWhite ); } else if( modelName.find( "arms" ) != std::string::npos && Vars.Visuals.Removals.Hands ) { IMaterial* Hands = I::MaterialSystem->FindMaterial( modelName.c_str(), charenc( TEXTURE_GROUP_MODEL ) ); Hands->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW, true ); I::ModelRender->ForcedMaterialOverride( Hands ); } else if( modelName.find( "weapon" ) != std::string::npos && Vars.Visuals.Removals.Weapon ) { if( !( modelName.find( "arms" ) != std::string::npos ) ) { IMaterial* Weapon = I::MaterialSystem->FindMaterial( modelName.c_str(), charenc( TEXTURE_GROUP_MODEL ) ); Weapon->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW, true ); I::ModelRender->ForcedMaterialOverride( Weapon ); } } } } I::ModelRender->DrawModelExecute( context, state, info, pCustomBoneToWorld ); I::ModelRender->ForcedMaterialOverride( NULL ); H::ModelRender->ReHook(); }
void CMiscellaneous::ChangeName( const char* name ) { ConVar* nameConvar = I::Cvar->FindVar( charenc( "name" ) ); *( int* )( ( DWORD )&nameConvar->fnChangeCallback + 0xC ) = NULL; nameConvar->SetValue( name ); }
long __stdcall Hooks::EndScene( IDirect3DDevice9* pDevice ) { if( !G::d3dinit ) GUI_Init( pDevice ); H::D3D9->ReHook(); ImGui::GetIO().MouseDrawCursor = Vars.Menu.Opened; ImGui_ImplDX9_NewFrame(); if( Vars.Menu.Opened ) { int pX, pY; I::InputSystem->GetCursorPosition( &pX, &pY ); ImGuiIO& io = ImGui::GetIO(); io.MousePos.x = ( float )( pX ); io.MousePos.y = ( float )( pY ); ImGui::Begin( charenc( "Team Gamerfood" ), &Vars.Menu.Opened, ImVec2( 230, 141 ), 0.9f, ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoCollapse ); { ImGui::Checkbox( charenc( "Ragebot Settings" ), &Vars.Menu.Ragebot ); ImGui::Checkbox( charenc( "Legitbot Settings" ), &Vars.Menu.Legitbot ); ImGui::Checkbox( charenc( "Visual Settings" ), &Vars.Menu.Visual ); ImGui::Checkbox( charenc( "Misc Settings" ), &Vars.Menu.Misc ); ImGui::Separator(); ImGui::Columns( 2, charenc( "##config-settings" ), false ); if( ImGui::Button( charenc( "Save Config" ), ImVec2( 93.f, 20.f ) ) ) Config->Save(); ImGui::NextColumn(); if( ImGui::Button( charenc( "Load Config" ), ImVec2( 93.f, 20.f ) ) ) Config->Load(); ImGui::Columns( 1 ); } ImGui::End(); //End main window if( Vars.Menu.Ragebot ) { ImGui::Begin( charenc( "Ragebot Settings" ), &Vars.Menu.Ragebot, ImVec2( 300, 500 ), 0.9f, ImGuiWindowFlags_NoCollapse ); { ImGui::Separator(); ImGui::Text( charenc( "Aimbot" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Enabled" ), &Vars.Ragebot.Enabled ); ImGui::Combo( charenc( "Hold Key" ), &Vars.Ragebot.HoldKey, keyNames, ARRAYSIZE( keyNames ) ); ImGui::Checkbox( charenc( "Hold" ), &Vars.Ragebot.Hold ); ImGui::Checkbox( charenc( "Auto Fire" ), &Vars.Ragebot.AutoFire ); ImGui::SliderFloat( charenc( "FOV" ), &Vars.Ragebot.FOV, 1.f, 180.f, "%.0f" ); ImGui::Checkbox( charenc( "Silent Aim" ), &Vars.Ragebot.Silent ); ImGui::Checkbox( charenc( "Aim Step" ), &Vars.Ragebot.Aimstep ); ImGui::SliderFloat( charenc( "Angle Per Tick" ), &Vars.Ragebot.AimstepAmount, 1.f, 180.f, "%.0f" ); ImGui::Separator(); ImGui::Text( charenc( "Target" ) ); ImGui::Separator(); ImGui::Combo( charenc( "Mode" ), &Vars.Ragebot.TargetMethod, targetMode, ARRAYSIZE( targetMode ) ); ImGui::Combo( charenc( "Hitbox" ), &Vars.Ragebot.Hitbox, aimBones, ARRAYSIZE( aimBones ) ); ImGui::Checkbox( charenc( "Friendly Fire" ), &Vars.Ragebot.FriendlyFire ); ImGui::Checkbox( charenc( "Auto Wall" ), &Vars.Ragebot.AutoWall ); ImGui::SliderFloat( charenc( "Min Damage" ), &Vars.Ragebot.AutoWallDmg, 0.1f, 120.f, "%.1f" ); ImGui::Checkbox( charenc( "Hit Scan Hitbox" ), &Vars.Ragebot.HitScanHitbox ); ImGui::Checkbox( charenc( "Hit Scan All" ), &Vars.Ragebot.HitScanAll ); ImGui::Separator(); ImGui::Text( charenc( "Accuracy" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Auto Stop" ), &Vars.Ragebot.AutoStop ); ImGui::Checkbox( charenc( "Auto Crouch" ), &Vars.Ragebot.AutoCrouch ); ImGui::Checkbox( charenc( "Hit Chance" ), &Vars.Ragebot.HitChance ); ImGui::SliderFloat( charenc( "Amount" ), &Vars.Ragebot.HitChanceAmt, 1.f, 100.f, "%.1f" ); ImGui::Separator(); ImGui::Text( charenc( "Anti-Aim" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Anti-Aim Enabled" ), &Vars.Ragebot.Antiaim.Enabled ); ImGui::Combo( charenc( "Pitch" ), &Vars.Ragebot.Antiaim.Pitch, antiaimpitch, ARRAYSIZE( antiaimpitch ) ); ImGui::Combo( charenc( "Yaw" ), &Vars.Ragebot.Antiaim.Yaw, antiaimyaw, ARRAYSIZE( antiaimyaw ) ); ImGui::Checkbox( charenc( "At Players" ), &Vars.Ragebot.Antiaim.AimAtPlayer ); ImGui::Checkbox( charenc( "PSilent AA" ), &Vars.Ragebot.Antiaim.PSilent ); ImGui::Separator(); ImGui::Text( charenc( "Anti-Untrust" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Uncheck if not on Valve server" ), &Vars.Ragebot.UntrustedCheck ); } ImGui::End(); //End Ragebot window } if( Vars.Menu.Legitbot ) { ImGui::Begin( charenc( "Legitbot Settings" ), &Vars.Menu.Legitbot, ImVec2( 300, 500 ), 0.9f, ImGuiWindowFlags_NoCollapse ); { ImGui::Separator(); ImGui::Text( charenc( "Aimbot" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Enable Aimbot" ), &Vars.Legitbot.Aimbot.Enabled ); ImGui::Checkbox( charenc( "Always On" ), &Vars.Legitbot.Aimbot.AlwaysOn ); ImGui::Combo( charenc( "Aimbot Key" ), &Vars.Legitbot.Aimbot.Key, keyNames, ARRAYSIZE( keyNames ) ); ImGui::Checkbox( charenc( "Aim on Key" ), &Vars.Legitbot.Aimbot.OnKey ); ImGui::Checkbox( charenc( "Friendly Fire" ), &Vars.Legitbot.Aimbot.FriendlyFire ); ImGui::Separator(); ImGui::Combo( charenc( "Hitbox" ), &Vars.Legitbot.Aimbot.Hitbox, aimBones, ARRAYSIZE( aimBones ) ); ImGui::SliderFloat( charenc( "FOV" ), &Vars.Legitbot.Aimbot.FOV, 0.1f, 45.f, "%.2f" ); ImGui::SliderFloat( charenc( "Aim Speed" ), &Vars.Legitbot.Aimbot.Speed, 0.1f, 50.f, "%.2f" ); ImGui::SliderFloat( charenc( "RCS Amount" ), &Vars.Legitbot.Aimbot.RCSAmount, 1.f, 100.f, "%.0f" ); ImGui::Checkbox( charenc( "Always on RCS" ), &Vars.Legitbot.Aimbot.RCS ); ImGui::Separator(); ImGui::Text( charenc( "Triggerbot" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Enable Triggerbot" ), &Vars.Legitbot.Triggerbot.Enabled ); ImGui::Checkbox( charenc( "Auto Fire" ), &Vars.Legitbot.Triggerbot.AutoFire ); ImGui::Combo( charenc( "Triggerbot Key" ), &Vars.Legitbot.Triggerbot.Key, keyNames, ARRAYSIZE( keyNames ) ); ImGui::Checkbox( charenc( "Hit Chance" ), &Vars.Legitbot.Triggerbot.HitChance ); ImGui::SliderFloat( charenc( "Amount" ), &Vars.Legitbot.Triggerbot.HitChanceAmt, 1.f, 100.f, "%.0f" ); ImGui::Separator(); ImGui::Text( charenc( "Filter" ) ); ImGui::Separator(); ImGui::BeginChild( charenc( "Filter" ), ImVec2( ImGui::GetWindowContentRegionWidth() * 0.5f, 19 * 6 ) ); { ImGui::Selectable( charenc( " Head" ), &Vars.Legitbot.Triggerbot.Filter.Head ); ImGui::Selectable( charenc( " Chest" ), &Vars.Legitbot.Triggerbot.Filter.Chest ); ImGui::Selectable( charenc( " Stomach" ), &Vars.Legitbot.Triggerbot.Filter.Stomach ); ImGui::Selectable( charenc( " Arms" ), &Vars.Legitbot.Triggerbot.Filter.Arms ); ImGui::Selectable( charenc( " Legs" ), &Vars.Legitbot.Triggerbot.Filter.Legs ); ImGui::Selectable( charenc( " Friendlies" ), &Vars.Legitbot.Triggerbot.Filter.Friendly ); } ImGui::EndChild(); } ImGui::End(); //End Legitbot window } if( Vars.Menu.Visual ) { ImGui::Begin( charenc( "Visual Settings" ), &Vars.Menu.Visual, ImVec2( 300, 500 ), 0.9f, ImGuiWindowFlags_NoCollapse ); { ImGui::Separator(); ImGui::Text( charenc( "Visuals" ) ); ImGui::Separator(); ImGui::Columns( 2, charenc( "##c1" ), false ); ImGui::Checkbox( charenc( "Enable Visuals" ), &Vars.Visuals.Enabled ); ImGui::Checkbox( charenc( "Box" ), &Vars.Visuals.Box ); ImGui::Checkbox( charenc( "Skeleton" ), &Vars.Visuals.Skeleton ); ImGui::NextColumn(); ImGui::Checkbox( charenc( "Glow" ), &Vars.Visuals.Glow ); ImGui::Checkbox( charenc( "Bullet Trace" ), &Vars.Visuals.BulletTrace ); ImGui::Columns( 1 ); ImGui::SliderFloat( charenc( "Trace Length" ), &Vars.Visuals.BulletTraceLength, 1.f, 3000.f, "%.0f" ); ImGui::Separator(); ImGui::Text( charenc( "Info" ) ); ImGui::Separator(); ImGui::BeginChild( charenc( "info" ), ImVec2( ImGui::GetWindowContentRegionWidth() * 0.5f, 19 * 4 ) ); { ImGui::Selectable( charenc( " Name" ), &Vars.Visuals.Info.Name ); ImGui::Selectable( charenc( " Health" ), &Vars.Visuals.Info.Health ); ImGui::Selectable( charenc( " Weapon" ), &Vars.Visuals.Info.Weapon ); ImGui::Selectable( charenc( " Flashed" ), &Vars.Visuals.Info.Flashed ); } ImGui::EndChild(); ImGui::Separator(); ImGui::Text( charenc( "Filter" ) ); ImGui::Separator(); ImGui::BeginChild( charenc( "filter" ), ImVec2( ImGui::GetWindowContentRegionWidth() * 0.5f, 19 * 5 ) ); { ImGui::Selectable( charenc( " Enemies" ), &Vars.Visuals.Filter.Enemies ); ImGui::Selectable( charenc( " Friendlies" ), &Vars.Visuals.Filter.Friendlies ); ImGui::Selectable( charenc( " Weapons" ), &Vars.Visuals.Filter.Weapons ); ImGui::Selectable( charenc( " Decoy" ), &Vars.Visuals.Filter.Decoy ); ImGui::Selectable( charenc( " C4" ), &Vars.Visuals.Filter.C4 ); } ImGui::EndChild(); ImGui::Separator(); ImGui::Text( charenc( "Chams" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Enable Chams" ), &Vars.Visuals.Chams.Enabled ); ImGui::Combo( charenc( "Mode" ), &Vars.Visuals.Chams.Mode, chamsMode, ARRAYSIZE( chamsMode ) ); ImGui::Checkbox( charenc( "XQZ" ), &Vars.Visuals.Chams.XQZ ); ImGui::Checkbox( charenc( "Wireframe" ), &Vars.Visuals.Chams.Wireframe ); ImGui::Separator(); ImGui::Text( charenc( "Removals" ) ); ImGui::Separator(); ImGui::Columns( 2, charenc( "##c2" ), false ); ImGui::Checkbox( charenc( "No Hands" ), &Vars.Visuals.Removals.Hands ); ImGui::Checkbox( charenc( "No Weapon" ), &Vars.Visuals.Removals.Weapon ); ImGui::NextColumn(); ImGui::Checkbox( charenc( "No Recoil" ), &Vars.Visuals.Removals.VisualRecoil ); ImGui::Checkbox( charenc( "No Flash" ), &Vars.Visuals.Removals.Flash ); ImGui::Columns( 1 ); ImGui::Text( charenc( "Crosshair" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Crosshair Enabled" ), &Vars.Visuals.CrosshairOn ); ImGui::Combo( charenc( "Type" ), &Vars.Visuals.CrosshairType, crosshairType, ARRAYSIZE( crosshairType ) ); ImGui::Combo( charenc( "Style" ), &Vars.Visuals.CrosshairStyle, crosshairStyle, ARRAYSIZE( crosshairStyle ) ); } ImGui::End(); //End Visuals window } if( Vars.Menu.Misc ) { ImGui::Begin( charenc( "Misc Settings" ), &Vars.Menu.Misc, ImVec2( 300, 500 ), 0.9f, ImGuiWindowFlags_NoCollapse ); { ImGui::Separator(); ImGui::Text( charenc( "Movement" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Bunny Hop" ), &Vars.Misc.Bhop ); ImGui::Checkbox( charenc( "Autostrafe" ), &Vars.Misc.AutoStrafe ); ImGui::Separator(); ImGui::Text( charenc( "Custom Name" ) ); ImGui::Separator(); ImGui::PushItemWidth( 180 ); static char buf1[ 128 ] = ""; ImGui::InputText( charenc( "##Name" ), buf1, 128 ); ImGui::SameLine(); ImGui::PushItemWidth( 50 ); if( ImGui::Button( charenc( "Change Name" ) ) ) E::Misc->ChangeName( buf1 ); ImGui::Separator(); ImGui::Text( charenc( "Chat Spam" ) ); ImGui::Separator(); ImGui::PushItemWidth( 180 ); static char buf2[ 128 ] = ""; ImGui::InputText( charenc( "##File" ), buf2, 128 ); ImGui::SameLine(); ImGui::PushItemWidth( 50 ); if( ImGui::Button( charenc( "Load File" ) ) ) E::Misc->ReadChatspam( buf2 ); ImGui::PushItemWidth( 180 ); ImGui::Combo( charenc( "Mode" ), &Vars.Misc.ChatSpamMode, chatspamMode, ARRAYSIZE( chatspamMode ) ); ImGui::Checkbox( charenc( "ChatSpam" ), &Vars.Misc.ChatSpam ); ImGui::Separator(); ImGui::Text( charenc( "Random Shit" ) ); ImGui::Separator(); ImGui::Checkbox( charenc( "Ranks" ), &Vars.Misc.Ranks ); ImGui::Checkbox( charenc( "Auto Accept" ), &Vars.Misc.AutoAccept ); ImGui::Checkbox( charenc( "Watermark" ), &Vars.Misc.Watermark ); ImGui::Checkbox( charenc( "AirStuck" ), &Vars.Misc.AirStuck ); ImGui::Combo( charenc( "AirStuck Key" ), &Vars.Misc.AirStuckKey, keyNames, ARRAYSIZE( keyNames ) ); ImGui::Separator(); ImGui::Text( charenc( "Netvar Dump" ) ); ImGui::Separator(); ImGui::PushItemWidth( 180 ); static char buf3[ 128 ] = ""; ImGui::InputText( charenc( "##NetVar" ), buf2, 128 ); ImGui::SameLine(); ImGui::PushItemWidth( 50 ); if( ImGui::Button( charenc( "Save File" ) ) ) NetVarManager->DumpNetvars( buf3 ); } ImGui::End(); //End Misc window } } ImGui::Render(); return oEndScene( pDevice ); }
void Config::saveConfig() { configManager.initialize(charenc("config.ini")); configManager.setBoolean(charenc("Aimbot"), charenc("Enabled"), cvar::aimbot_enabled); configManager.setInteger(charenc("Aimbot"), charenc("Aimbot Key"), cvar::general_key_aimbot); configManager.setFloat(charenc("Aimbot"), charenc("Field of View"), cvar::aimbot_fov); configManager.setFloat(charenc("Aimbot"), charenc("Smoothing"), cvar::aimbot_smoothing); configManager.setFloat(charenc("Aimbot"), charenc("Recoil Control Min"), cvar::aimbot_rcs_min); configManager.setFloat(charenc("Aimbot"), charenc("Recoil Control Max"), cvar::aimbot_rcs_max); configManager.setFloat(charenc("Aimbot"), charenc("Randomize Hitbox"), cvar::aimbot_randomize_hitbox); configManager.setFloat(charenc("Aimbot"), charenc("Randomize Angles"), cvar::aimbot_randomize_angle); configManager.setBoolean(charenc("ESP"), charenc("Enabled"), cvar::esp_enabled); configManager.setBoolean(charenc("ESP"), charenc("Box"), cvar::esp_draw_box); configManager.setBoolean(charenc("ESP"), charenc("Name"), cvar::esp_draw_name); configManager.setBoolean(charenc("ESP"), charenc("Weapon"), cvar::esp_draw_weapon); configManager.setBoolean(charenc("ESP"), charenc("Callout"), cvar::esp_draw_callout); configManager.setBoolean(charenc("ESP"), charenc("Health"), cvar::esp_draw_health); configManager.setBoolean(charenc("ESP"), charenc("Health Text"), cvar::esp_draw_health_text); configManager.setBoolean(charenc("ESP"), charenc("Armor"), cvar::esp_draw_armor); configManager.setBoolean(charenc("ESP"), charenc("Armor Text"), cvar::esp_draw_armor_text); configManager.setBoolean(charenc("ESP"), charenc("World"), cvar::esp_draw_world); configManager.setBoolean(charenc("ESP"), charenc("Glow"), cvar::esp_draw_glow); configManager.setBoolean(charenc("Misc"), charenc("Bunnyhop"), cvar::misc_bunnyhop); configManager.setBoolean(charenc("Misc"), charenc("Triggerbot"), cvar::misc_triggerbot); configManager.setInteger(charenc("Misc"), charenc("Triggerbot Key"), cvar::general_key_triggerbot); configManager.setBoolean(charenc("Misc"), charenc("Skin Changer"), cvar::misc_skinchanger); configManager.setBoolean(charenc("Misc"), charenc("Knife Changer"), cvar::misc_knifechanger); configManager.setInteger(charenc("Misc"), charenc("Knife Model"), cvar::misc_knifechanger_model); configManager.setInteger(charenc("Misc"), charenc("Viewmodel Field of View"), cvar::misc_overridefov); configManager.setBoolean(charenc("Misc"), charenc("Standalone Recoil Control"), cvar::misc_recoilcontrol); configManager.setFloat(charenc("Misc"), charenc("Standalone Recoil Control Scale"), cvar::misc_recoilcontrol_scale); configManager.setBoolean(charenc("Misc"), charenc("Matchmaking Scoreboard"), cvar::misc_scoreboard); }
void Config::loadSkinConfig() { if (doesFileExist(charenc("csgo//cfg//cheetos//skinconfig.ini"))) { configManager.initialize(charenc("skinconfig.ini")); for (int i = 1; i <= 65; i++) { if (!WeaponConfig::isPistol(i) && !WeaponConfig::isAutomatic(i) && !WeaponConfig::isSniper(i) && !WeaponConfig::isShotgun(i) && !WeaponConfig::isKnife(i)) continue; char weaponName[32]; switch (i) { case WEAPON_DEAGLE: { strcpy(weaponName, charenc("DEAGLE")); break; } case WEAPON_DUALS: { strcpy(weaponName, charenc("DUALIES")); break; } case WEAPON_FIVE7: { strcpy(weaponName, charenc("FIVE-SEVEN")); break; } case WEAPON_GLOCK: { strcpy(weaponName, charenc("GLOCK")); break; } case WEAPON_AK47: { strcpy(weaponName, charenc("AK47")); break; } case WEAPON_AUG: { strcpy(weaponName, charenc("AUG")); break; } case WEAPON_AWP: { strcpy(weaponName, charenc("AWP")); break; } case WEAPON_FAMAS: { strcpy(weaponName, charenc("FAMAS")); break; } case WEAPON_G3SG1: { strcpy(weaponName, charenc("G3SG1")); break; } case WEAPON_GALIL: { strcpy(weaponName, charenc("GALIL")); break; } case WEAPON_M249: { strcpy(weaponName, charenc("M249")); break; } case WEAPON_M4A1: { strcpy(weaponName, charenc("M4A1")); break; } case WEAPON_MAC10: { strcpy(weaponName, charenc("MAC-10")); break; } case WEAPON_P90: { strcpy(weaponName, charenc("P90")); break; } case WEAPON_UMP45: { strcpy(weaponName, charenc("UMP-45")); break; } case WEAPON_XM1014: { strcpy(weaponName, charenc("XM1014")); break; } case WEAPON_BIZON: { strcpy(weaponName, charenc("BIZON")); break; } case WEAPON_MAG7: { strcpy(weaponName, charenc("MAG-7")); break; } case WEAPON_NEGEV: { strcpy(weaponName, charenc("NEGEV")); break; } case WEAPON_SAWEDOFF: { strcpy(weaponName, charenc("SAWED-OFF")); break; } case WEAPON_TEC9: { strcpy(weaponName, charenc("TEC-9")); break; } case WEAPON_TASER: { strcpy(weaponName, charenc("ZEUS")); break; } case WEAPON_P2000: { strcpy(weaponName, charenc("P2000")); break; } case WEAPON_MP7: { strcpy(weaponName, charenc("MP7")); break; } case WEAPON_MP9: { strcpy(weaponName, charenc("MP9")); break; } case WEAPON_NOVA: { strcpy(weaponName, charenc("NOVA")); break; } case WEAPON_P250: { strcpy(weaponName, charenc("P250")); break; } case WEAPON_SCAR20: { strcpy(weaponName, charenc("SCAR-20")); break; } case WEAPON_SG553: { strcpy(weaponName, charenc("SG553")); break; } case WEAPON_SCOUT: { strcpy(weaponName, charenc("SCOUT")); break; } case WEAPON_REVOLVER: { strcpy(weaponName, charenc("REVOLVER")); break; } case WEAPON_M4A1S: { strcpy(weaponName, charenc("M4A1-S")); break; } case WEAPON_USPS: { strcpy(weaponName, charenc("USP-S")); break; } case WEAPON_CZ75: { strcpy(weaponName, charenc("CZ-75")); break; } } configManager.getInteger(weaponName, charenc("Skin"), skincfg.at(i).skin); configManager.getInteger(weaponName, charenc("StatTrak"), skincfg.at(i).stattrak); configManager.getInteger(weaponName, charenc("Seed"), skincfg.at(i).seed); configManager.getFloat(weaponName, charenc("Condition"), skincfg.at(i).wear); skincfg.at(i).name = configManager.getString(weaponName, charenc("Name"), skincfg.at(i).name); } for (int i = 500; i <= 516; i++) { if (!WeaponConfig::isPistol(i) && !WeaponConfig::isAutomatic(i) && !WeaponConfig::isSniper(i) && !WeaponConfig::isShotgun(i) && !WeaponConfig::isKnife(i)) continue; char weaponName[32]; switch (i) { case WEAPON_KNIFE_GUT: { strcpy(weaponName, charenc("GUT KNIFE")); break; } case WEAPON_KNIFE_FLIP: { strcpy(weaponName, charenc("FLIP KNIFE")); break; } case WEAPON_KNIFE_BAYONET: { strcpy(weaponName, charenc("BAYONET")); break; } case WEAPON_KNIFE_KARAMBIT: { strcpy(weaponName, charenc("KARAMBIT")); break; } case WEAPON_KNIFE_M9BAYONET: { strcpy(weaponName, charenc("M9 BAYONET")); break; } case WEAPON_KNIFE_BUTTERFLY: { strcpy(weaponName, charenc("BUTTERFLY KNIFE")); break; } case WEAPON_KNIFE_HUNTSMAN: { strcpy(weaponName, charenc("HUNTSMAN KNIFE")); break; } case WEAPON_KNIFE_BOWIE: { strcpy(weaponName, charenc("BOWIE KNIFE")); break; } } configManager.getInteger(weaponName, charenc("Skin"), skincfg.at(i).skin); configManager.getInteger(weaponName, charenc("StatTrak"), skincfg.at(i).stattrak); configManager.getInteger(weaponName, charenc("Seed"), skincfg.at(i).seed); configManager.getFloat(weaponName, charenc("Condition"), skincfg.at(i).wear); skincfg.at(i).name = configManager.getString(weaponName, charenc("Name"), skincfg.at(i).name); } } else { saveSkinConfig(); } }
#include "sdk.h" MsgFn U::PrintMessage = ( MsgFn )GetProcAddress( GetModuleHandleA( charenc( "tier0.dll" ) ), charenc( "Msg" ) ); ServerRankRevealAllFn U::ServerRankRevealAllEx; InitKeyValuesFn U::InitKeyValuesEx; LoadFromBufferFn U::LoadFromBufferEx; IsReadyFn U::IsReady; void U::SetupInterfaces() { I::Client = U::CaptureInterface<IBaseClientDll>( strenc( "client.dll" ), strenc( "VClient017" ) ); I::ClientMode = **( IClientModeShared*** ) ( ( *( DWORD** ) I::Client )[10] + 0x5 ); I::ClientEntList = U::CaptureInterface<IClientEntityList>( strenc( "client.dll" ), strenc( "VClientEntityList003" ) ); I::Cvar = U::CaptureInterface<ICVar>( strenc( "vstdlib.dll" ), strenc( "VEngineCvar007" ) ); I::Engine = U::CaptureInterface<IEngineClient>( strenc( "engine.dll" ), strenc( "VEngineClient014" ) ); I::EngineTrace = U::CaptureInterface<IEngineTrace>( strenc( "engine.dll" ), strenc( "EngineTraceClient004" ) ); I::InputSystem = U::CaptureInterface<IInputSystem>( strenc( "inputsystem.dll" ), strenc( "InputSystemVersion001" ) ); I::Globals = **( IGlobalVarsBase*** ) ( ( *( DWORD** ) I::Client )[0] + 0x53 ); I::Surface = U::CaptureInterface<ISurface>( strenc( "vguimatsurface.dll" ), strenc( "VGUI_Surface031" ) ); I::VPanel = U::CaptureInterface<IVPanel>( strenc( "vgui2.dll" ), strenc( "VGUI_Panel009" ) ); I::RenderView = U::CaptureInterface<IVRenderView>( strenc( "engine.dll" ), strenc( "VEngineRenderView014" ) ); I::ModelRender = U::CaptureInterface<IVModelRender>( strenc( "engine.dll" ), strenc( "VEngineModel016" ) ); I::MaterialSystem = U::CaptureInterface<IMaterialSystem>( strenc( "materialsystem.dll" ), strenc( "VMaterialSystem080" ) ); I::ModelInfo = U::CaptureInterface<IVModelInfo>( strenc( "engine.dll" ), strenc( "VModelInfoClient004" ) ); I::Prediction = U::CaptureInterface<IPrediction>( strenc( "client.dll" ), strenc( "VClientPrediction001" ) ); I::Physprops = U::CaptureInterface<IPhysicsSurfaceProps>( strenc( "vphysics.dll" ), strenc( "VPhysicsSurfaceProps001" ) ); I::DebugOverlay = U::CaptureInterface<IVDebugOverlay>( strenc( "engine.dll" ), strenc( "VDebugOverlay004" ) ); I::StudioRender = U::CaptureInterface<IStudioRender>( strenc( "studiorender.dll" ), strenc( "VStudioRender026" ) ); }