Commit f4db5750 authored by mercury233's avatar mercury233 Committed by GitHub

update MSG_CONFIRM_CARDS, add skip_panel (#2470)

parent db1633bf
...@@ -2145,6 +2145,7 @@ bool DuelClient::ClientAnalyze(unsigned char* msg, int len) { ...@@ -2145,6 +2145,7 @@ bool DuelClient::ClientAnalyze(unsigned char* msg, int len) {
} }
case MSG_CONFIRM_CARDS: { case MSG_CONFIRM_CARDS: {
/*int player = */mainGame->LocalPlayer(BufferIO::ReadUInt8(pbuf)); /*int player = */mainGame->LocalPlayer(BufferIO::ReadUInt8(pbuf));
int skip_panel = BufferIO::ReadUInt8(pbuf);
int count = BufferIO::ReadUInt8(pbuf); int count = BufferIO::ReadUInt8(pbuf);
int c, s; int c, s;
unsigned int code, l; unsigned int code, l;
...@@ -2231,7 +2232,7 @@ bool DuelClient::ClientAnalyze(unsigned char* msg, int len) { ...@@ -2231,7 +2232,7 @@ bool DuelClient::ClientAnalyze(unsigned char* msg, int len) {
} }
mainGame->WaitFrameSignal(5); mainGame->WaitFrameSignal(5);
} }
if (panel_confirm.size() && mainGame->dInfo.player_type != 7) { if (!skip_panel && panel_confirm.size() && mainGame->dInfo.player_type != 7) {
std::sort(panel_confirm.begin(), panel_confirm.end(), ClientCard::client_card_sort); std::sort(panel_confirm.begin(), panel_confirm.end(), ClientCard::client_card_sort);
mainGame->gMutex.lock(); mainGame->gMutex.lock();
mainGame->dField.selectable_cards = panel_confirm; mainGame->dField.selectable_cards = panel_confirm;
......
...@@ -446,6 +446,7 @@ bool ReplayMode::ReplayAnalyze(unsigned char* msg, unsigned int len) { ...@@ -446,6 +446,7 @@ bool ReplayMode::ReplayAnalyze(unsigned char* msg, unsigned int len) {
} }
case MSG_CONFIRM_CARDS: { case MSG_CONFIRM_CARDS: {
player = BufferIO::ReadUInt8(pbuf); player = BufferIO::ReadUInt8(pbuf);
pbuf += 1;
count = BufferIO::ReadUInt8(pbuf); count = BufferIO::ReadUInt8(pbuf);
pbuf += count * 7; pbuf += count * 7;
DuelClient::ClientAnalyze(offset, pbuf - offset); DuelClient::ClientAnalyze(offset, pbuf - offset);
......
...@@ -821,6 +821,7 @@ int SingleDuel::Analyze(unsigned char* msgbuffer, unsigned int len) { ...@@ -821,6 +821,7 @@ int SingleDuel::Analyze(unsigned char* msgbuffer, unsigned int len) {
} }
case MSG_CONFIRM_CARDS: { case MSG_CONFIRM_CARDS: {
player = BufferIO::ReadUInt8(pbuf); player = BufferIO::ReadUInt8(pbuf);
pbuf += 1;
count = BufferIO::ReadUInt8(pbuf); count = BufferIO::ReadUInt8(pbuf);
if(pbuf[5] != LOCATION_DECK) { if(pbuf[5] != LOCATION_DECK) {
pbuf += count * 7; pbuf += count * 7;
......
...@@ -378,6 +378,7 @@ bool SingleMode::SinglePlayAnalyze(unsigned char* msg, unsigned int len) { ...@@ -378,6 +378,7 @@ bool SingleMode::SinglePlayAnalyze(unsigned char* msg, unsigned int len) {
} }
case MSG_CONFIRM_CARDS: { case MSG_CONFIRM_CARDS: {
player = BufferIO::ReadUInt8(pbuf); player = BufferIO::ReadUInt8(pbuf);
pbuf += 1;
count = BufferIO::ReadUInt8(pbuf); count = BufferIO::ReadUInt8(pbuf);
pbuf += count * 7; pbuf += count * 7;
DuelClient::ClientAnalyze(offset, pbuf - offset); DuelClient::ClientAnalyze(offset, pbuf - offset);
......
...@@ -781,6 +781,7 @@ int TagDuel::Analyze(unsigned char* msgbuffer, unsigned int len) { ...@@ -781,6 +781,7 @@ int TagDuel::Analyze(unsigned char* msgbuffer, unsigned int len) {
} }
case MSG_CONFIRM_CARDS: { case MSG_CONFIRM_CARDS: {
player = BufferIO::ReadUInt8(pbuf); player = BufferIO::ReadUInt8(pbuf);
pbuf += 1;
count = BufferIO::ReadUInt8(pbuf); count = BufferIO::ReadUInt8(pbuf);
if(pbuf[5] != LOCATION_DECK) { if(pbuf[5] != LOCATION_DECK) {
pbuf += count * 7; pbuf += count * 7;
......
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