From b05c44a7c2e53ce4212fa6674fa67fad38b48e2a Mon Sep 17 00:00:00 2001 From: mercury233 Date: Sat, 12 Nov 2022 10:20:53 +0800 Subject: [PATCH 1/2] update Duel.ConfirmCards and MSG_CONFIRM_CARDS --- libduel.cpp | 4 ++++ operations.cpp | 2 ++ 2 files changed, 6 insertions(+) diff --git a/libduel.cpp b/libduel.cpp index 424a47f8f..ddcc0ecd4 100644 --- a/libduel.cpp +++ b/libduel.cpp @@ -1013,8 +1013,12 @@ int32 scriptlib::duel_confirm_cards(lua_State *L) { pduel = pgroup->pduel; } else return luaL_error(L, "Parameter %d should be \"Card\" or \"Group\".", 2); + uint8 skip_panel = 0; + if(lua_gettop(L) >= 3) + skip_panel = lua_toboolean(L, 3); pduel->write_buffer8(MSG_CONFIRM_CARDS); pduel->write_buffer8(playerid); + pduel->write_buffer8(skip_panel); if(pcard) { pduel->write_buffer8(1); pduel->write_buffer32(pcard->data.code); diff --git a/operations.cpp b/operations.cpp index 4f602229b..f31cd2683 100644 --- a/operations.cpp +++ b/operations.cpp @@ -409,6 +409,7 @@ int32 field::draw(uint16 step, effect* reason_effect, uint32 reason, uint8 reaso if(core.deck_reversed && (public_count < drawed)) { pduel->write_buffer8(MSG_CONFIRM_CARDS); pduel->write_buffer8(1 - playerid); + pduel->write_buffer8(0); pduel->write_buffer8((uint8)drawed_set->size()); for(auto& pcard : *drawed_set) { pduel->write_buffer32(pcard->data.code); @@ -2576,6 +2577,7 @@ int32 field::sset_g(uint16 step, uint8 setplayer, uint8 toplayer, group* ptarget if(confirm) { pduel->write_buffer8(MSG_CONFIRM_CARDS); pduel->write_buffer8(toplayer); + pduel->write_buffer8(0); pduel->write_buffer8((uint8)core.set_group_set.size()); for(auto& pcard : core.set_group_set) { pduel->write_buffer32(pcard->data.code); From f32dc0c418b49f1d5c06a7b1c073991f50615241 Mon Sep 17 00:00:00 2001 From: mercury233 Date: Thu, 19 Jun 2025 11:40:10 +0800 Subject: [PATCH 2/2] fix --- libduel.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libduel.cpp b/libduel.cpp index cd6047734..e5fd4c85a 100644 --- a/libduel.cpp +++ b/libduel.cpp @@ -1057,7 +1057,7 @@ int32_t scriptlib::duel_confirm_cards(lua_State *L) { pduel = pgroup->pduel; } else return luaL_error(L, "Parameter %d should be \"Card\" or \"Group\".", 2); - uint8 skip_panel = 0; + uint8_t skip_panel = 0; if(lua_gettop(L) >= 3) skip_panel = lua_toboolean(L, 3); pduel->write_buffer8(MSG_CONFIRM_CARDS);