Commit 0e3d8713 authored by fallenstardust's avatar fallenstardust

fix ClientField::ClearSelect

parent b6ec6b87
...@@ -388,6 +388,18 @@ void ClientField::ClearSelect() { ...@@ -388,6 +388,18 @@ void ClientField::ClearSelect() {
(*cit)->is_selectable = false; (*cit)->is_selectable = false;
(*cit)->is_selected = false; (*cit)->is_selected = false;
} }
for(auto cit = selected_cards.begin(); cit != selected_cards.end(); ++cit) {
(*cit)->is_selectable = false;
(*cit)->is_selected = false;
}
for(auto cit = selectsum_all.begin(); cit != selectsum_all.end(); ++cit) {
(*cit)->is_selectable = false;
(*cit)->is_selected = false;
}
for(auto cit = selectsum_cards.begin(); cit != selectsum_cards.end(); ++cit) {
(*cit)->is_selectable = false;
(*cit)->is_selected = false;
}
} }
void ClientField::ClearChainSelect() { void ClientField::ClearChainSelect() {
for(auto cit = activatable_cards.begin(); cit != activatable_cards.end(); ++cit) { for(auto cit = activatable_cards.begin(); cit != activatable_cards.end(); ++cit) {
......
...@@ -3983,7 +3983,10 @@ void DuelClient::SendResponse() { ...@@ -3983,7 +3983,10 @@ void DuelClient::SendResponse() {
break; break;
} }
case MSG_SELECT_CARD: case MSG_SELECT_CARD:
case MSG_SELECT_UNSELECT_CARD: { case MSG_SELECT_UNSELECT_CARD:
case MSG_SELECT_TRIBUTE:
case MSG_SELECT_SUM:
case MSG_SELECT_COUNTER: {
mainGame->dField.ClearSelect(); mainGame->dField.ClearSelect();
break; break;
} }
...@@ -3991,24 +3994,6 @@ void DuelClient::SendResponse() { ...@@ -3991,24 +3994,6 @@ void DuelClient::SendResponse() {
mainGame->dField.ClearChainSelect(); mainGame->dField.ClearChainSelect();
break; break;
} }
case MSG_SELECT_TRIBUTE: {
mainGame->dField.ClearSelect();
break;
}
case MSG_SELECT_COUNTER: {
mainGame->dField.ClearSelect();
break;
}
case MSG_SELECT_SUM: {
for(int i = 0; i < mainGame->dField.must_select_count; ++i) {
mainGame->dField.selected_cards[i]->is_selected = false;
}
for(size_t i = 0; i < mainGame->dField.selectsum_all.size(); ++i) {
mainGame->dField.selectsum_all[i]->is_selectable = false;
mainGame->dField.selectsum_all[i]->is_selected = false;
}
break;
}
} }
if(mainGame->dInfo.isSingleMode) { if(mainGame->dInfo.isSingleMode) {
SingleMode::SetResponse(response_buf, response_len); SingleMode::SetResponse(response_buf, response_len);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment