Syran0 Posted August 3, 2009 Share Posted August 3, 2009 //check bool we_are_ingame = false; bool is_the_world_edited = false; //storage std::vector<IMaterial*> m_vec_hands; std::vector<IMaterial*> m_vec_Map_Textures; std::vector<IMaterial*> m_vec_Objects_Textures; std::vector<IMaterial*> m_vec_UseLess_Textures; std::vector<IMaterial*> m_vec_players_materials; //yep void Add_To_List(char const* pMaterialName,const char*pTextureGroupName,IMaterial* pTemp ) { if ( plugin_game_interface::m_pEngine->IsInGame() ) { we_are_ingame = true; } else { if ( we_are_ingame ) { m_vec_Map_Textures.clear(); m_vec_Objects_Textures.clear(); m_vec_UseLess_Textures.clear(); m_vec_players_materials.clear(); m_vec_hands.clear(); we_are_ingame = false; } if(!strcmp(pTextureGroupName, "Lightmaps")|| !strcmp(pTextureGroupName, "Particle textures")|| !strcmp(pTextureGroupName, "Decal textures")|| !strcmp(pTextureGroupName, "CubeMap textures")|| !strcmp(pTextureGroupName, "Dynamic Indices")|| !strcmp(pTextureGroupName, "Dynamic Verts")|| !strcmp(pTextureGroupName, "World Verts")|| !strcmp(pTextureGroupName, "Lighting Verts")) { m_vec_UseLess_Textures.push_back( pTemp ); } else if(!strcmp(pTextureGroupName, "World textures")) { m_vec_Map_Textures.push_back( pTemp ); if (strstr(pMaterialName,"wood")|| strstr(pMaterialName,"door")|| strstr(pMaterialName,"gate")|| strstr(pMaterialName,"box")) { m_vec_Objects_Textures.push_back( pTemp ); } } else if (strstr(pMaterialName,"player" )|| strstr(pMaterialName,"weapon" )|| strstr(pMaterialName,"hostage" ) ) { m_vec_players_materials.push_back( pTemp ); } else if (strstr(pMaterialName,"hands")) { m_vec_hands.push_back( pTemp ); } else return; } } void Ok_We_Make_The_List( void ) { //thx for this way :D int size = plugin_game_interface::m_pMaterialSystem->GetNumMaterials(); int list = plugin_game_interface::m_pMaterialSystem->FirstMaterial(); while ( ++list != size ) { IMaterial* used_list = plugin_game_interface::m_pMaterialSystem->GetMaterial(list); Add_To_List( used_list->GetName(), used_list->GetTextureGroupName(), used_list); }; } ////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////// //ok now edit the stuff ////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////// void reset_map_texture_to_default() { if ( is_the_world_edited ) { for (int i = 0; i < m_vec_Map_Textures.size(); i++)//set solid { m_vec_Map_Textures[i]->AlphaModulate( 1.0 ); m_vec_Map_Textures[i]->SetMaterialVarFlag( MATERIAL_VAR_WIREFRAME,false ); } for (int i = 0; i < m_vec_Objects_Textures.size(); i++) { m_vec_Objects_Textures[i]->AlphaModulate( 1.0 ); } is_the_world_edited = false; } } void make_the_map_transparent() { if ( m_pCvars->whmode.GetBool() ) { if ( m_pCvars->whmode.Getint() == 1 ) { if ( is_the_world_edited ) { reset_map_texture_to_default(); } if ( !is_the_world_edited ) { for (int i = 0; i < m_vec_Objects_Textures.size(); i++) { m_vec_Objects_Textures[i]->AlphaModulate( m_pCvars->wallhack.Getfloat() ); } is_the_world_edited = true; } } if ( m_pCvars->whmode.Getint() == 2 ) { if ( is_the_world_edited ) { reset_map_texture_to_default(); } if ( !is_the_world_edited ) { for (int i = 0; i < m_vec_Map_Textures.size(); i++) m_vec_Map_Textures[i]->AlphaModulate( m_pCvars->wallhack.Getfloat() ); is_the_world_edited = true; } } if ( m_pCvars->whmode.Getint() == 3 ) { if ( is_the_world_edited ) { reset_map_texture_to_default(); } if ( !is_the_world_edited ) { for (int i = 0; i < m_vec_Map_Textures.size(); i++) m_vec_Map_Textures[i]->SetMaterialVarFlag( MATERIAL_VAR_WIREFRAME,true ); is_the_world_edited = true; } } } else reset_map_texture_to_default(); } void make_the_map_fullbright() { static bool fullbright = false; if ( m_pCvars->vis_fullbright.GetBool() ) { if ( is_the_world_edited ) { reset_map_texture_to_default(); } if (!fullbright) { for (int i = 0; i < m_vec_Map_Textures.size(); i++) { m_vec_Map_Textures[i]->SetMaterialVarFlag( MATERIAL_VAR_SELFILLUM,true ); } fullbright = true; } } else//set normal { if (fullbright) { for (int i = 0; i < m_vec_Map_Textures.size(); i++) { m_vec_Map_Textures[i]->SetMaterialVarFlag( MATERIAL_VAR_SELFILLUM,false ); } fullbright = false; } } } void make_player_and_weapon_xqz() { static bool xqz = false; if( m_pCvars->vis_modelhack.GetBool() )//Aequitas { if (!xqz) { for( int i = 0; i < m_vec_players_materials.size(); i++ ) { m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_IGNOREZ, true ); m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_ZNEARER, true ); m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_FLAT, true ); } xqz = true; } } else { if (xqz) { for( int i = 0; i < m_vec_players_materials.size(); i++ ) { m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_IGNOREZ, false ); m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_ZNEARER, false ); m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_FLAT, false ); } xqz = false; } } } void make_player_and_weapon_wireframe() { static bool wire = false; if( m_pCvars->vis_wireframe.GetBool() )//Aequitas { if (!wire ) { for( int i = 0; i < m_vec_players_materials.size(); i++ ) m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_WIREFRAME, true ); wire = true; } } else { if (wire) { for( int i = 0; i < m_vec_players_materials.size(); i++ ) m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_WIREFRAME, false ); wire = false; } } } void make_player_and_weapon_invisible() { static bool hidden = false; if( m_pCvars->vis_hide_model.GetBool() )//Aequitas { if (!hidden ) { for( int i = 0; i < m_vec_players_materials.size(); i++ ) m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW, true ); hidden = true; } } else { if (hidden) { for( int i = 0; i < m_vec_players_materials.size(); i++ ) m_vec_players_materials[i]->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW, false ); hidden = false; } } } void make_your_hands_hidden() { static bool no_hands = false; if( m_pCvars->vis_hide_hands.GetBool() )//Aequitas { if (!no_hands ) { for( int i = 0; i < m_vec_hands.size(); i++ ) m_vec_hands[i]->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW, true ); no_hands = true; } } else { if (no_hands) { for( int i = 0; i < m_vec_hands.size(); i++ ) m_vec_hands[i]->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW, false ); no_hands = false; } } } void remove_useless_texture() { static bool removed = false; if ( m_pCvars->vis_fpsboost.GetBool() ) { if (!removed) { for (int i = 0; i < m_vec_UseLess_Textures.size(); i++) { m_vec_UseLess_Textures[i]->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW,true ); } removed = true; } } else//set normal { if (removed) { for (int i = 0; i < m_vec_UseLess_Textures.size(); i++) { m_vec_UseLess_Textures[i]->SetMaterialVarFlag( MATERIAL_VAR_NO_DRAW,false ); } removed = false; } } } void call_me_in_your_esp_or_somewhere_else() { Ok_We_Make_The_List(); //gogogo make_the_map_transparent(); make_the_map_fullbright(); make_player_and_weapon_xqz(); make_player_and_weapon_wireframe(); make_player_and_weapon_invisible(); make_your_hands_hidden(); remove_useless_texture(); } ka0s ; P47R!CK ; PizzaPan ; v3n0m4 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.