Fix iniswap remove button removing character iniswaps (#710)

Fix the character being added twice to the iniswap if the iniswap list contains the og character name
This commit is contained in:
Crystalwarrior 2022-05-21 17:07:07 +03:00 committed by GitHub
parent 1544d5d3a6
commit 9214952aea
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -4410,8 +4410,8 @@ void Courtroom::set_iniswap_dropdown()
if (ao_app->get_char_name(char_list.at(m_cid).name) != char_list.at(m_cid).name) if (ao_app->get_char_name(char_list.at(m_cid).name) != char_list.at(m_cid).name)
iniswaps.append(ao_app->get_char_name(char_list.at(m_cid).name)); iniswaps.append(ao_app->get_char_name(char_list.at(m_cid).name));
iniswaps.removeDuplicates();
iniswaps.prepend(char_list.at(m_cid).name); iniswaps.prepend(char_list.at(m_cid).name);
iniswaps.removeDuplicates();
if (iniswaps.size() <= 0) { if (iniswaps.size() <= 0) {
ui_iniswap_dropdown->hide(); ui_iniswap_dropdown->hide();
ui_iniswap_remove->hide(); ui_iniswap_remove->hide();
@ -4494,13 +4494,14 @@ void Courtroom::on_iniswap_remove_clicked()
// client will crash // client will crash
return; return;
} }
if (ui_iniswap_dropdown->itemText(ui_iniswap_dropdown->currentIndex()) != QStringList defswaplist = ao_app->get_list_file(ao_app->get_character_path(char_list.at(m_cid).name, "iniswaps.ini"));
char_list.at(m_cid).name) { QString iniswap = ui_iniswap_dropdown->itemText(ui_iniswap_dropdown->currentIndex());
if (iniswap != char_list.at(m_cid).name && !defswaplist.contains(iniswap)) {
ui_iniswap_dropdown->removeItem(ui_iniswap_dropdown->currentIndex()); ui_iniswap_dropdown->removeItem(ui_iniswap_dropdown->currentIndex());
}
on_iniswap_dropdown_changed(0); // Reset back to original on_iniswap_dropdown_changed(0); // Reset back to original
update_character(m_cid); update_character(m_cid);
} }
}
void Courtroom::set_sfx_dropdown() void Courtroom::set_sfx_dropdown()
{ {