@@ -55,7 +55,12 @@ void GUI::render() noexcept
5555 const auto heroes{ cheatManager.memory ->heroList };
5656 static const auto my_team{ player ? player->get_team () : 100 };
5757 static int gear{ player ? player->get_character_data_stack ()->base_skin .gear : 0 };
58-
58+
59+ auto & values{ cheatManager.database ->champions_skins [fnv::hash_runtime (player->get_character_data_stack ()->base_skin .model .str )] };
60+ if (const auto stack{ player->get_character_data_stack () }; stack->base_skin .skin != values[cheatManager.config ->current_combo_skin_index - 1 ].skin_id ) {
61+ stack->base_skin .skin = values[cheatManager.config ->current_combo_skin_index - 1 ].skin_id ;
62+ stack->update (true );
63+ }
5964 static const auto vector_getter_skin = [](void * vec, const std::int32_t idx, const char ** out_text) noexcept {
6065 const auto & vector{ *static_cast <std::vector<SkinDatabase::skin_info>*>(vec) };
6166 if (idx < 0 || idx > static_cast <std::int32_t >(vector.size ())) return false ;
@@ -90,13 +95,13 @@ void GUI::render() noexcept
9095 if (ImGui::BeginTabBar (" TabBar" , ImGuiTabBarFlags_Reorderable | ImGuiTabBarFlags_FittingPolicyScroll | ImGuiTabBarFlags_NoTooltip)) {
9196 if (player) {
9297 if (ImGui::BeginTabItem (" Local Player" )) {
93- auto & values{ cheatManager.database ->champions_skins [fnv::hash_runtime (player->get_character_data_stack ()->base_skin .model .str )] };
9498 ImGui::Text (" Player Skins Settings:" );
9599
96100 if (ImGui::Combo (" Current Skin" , &cheatManager.config ->current_combo_skin_index , vector_getter_skin, static_cast <void *>(&values), values.size () + 1 ))
97- if (cheatManager.config ->current_combo_skin_index > 0 )
101+ if (cheatManager.config ->current_combo_skin_index > 0 ) {
98102 player->change_skin (values[cheatManager.config ->current_combo_skin_index - 1 ].model_name , values[cheatManager.config ->current_combo_skin_index - 1 ].skin_id );
99-
103+ cheatManager.config ->save ();
104+ }
100105 const auto playerHash{ fnv::hash_runtime (player->get_character_data_stack ()->base_skin .model .str ) };
101106 if (const auto it{ std::ranges::find_if (cheatManager.database ->specialSkins ,
102107 [&skin = player->get_character_data_stack ()->base_skin .skin , &ph = playerHash](const SkinDatabase::specialSkin& x) noexcept -> bool
0 commit comments