Commit 85dd1986 authored by Chen Bill's avatar Chen Bill Committed by GitHub

ocgapi change: return LEN_FAIL if not exist (#701)

parent 1a0b7125
......@@ -192,7 +192,7 @@ extern "C" DECL_DLLEXPORT void new_tag_card(intptr_t pduel, uint32_t code, uint8
}
/**
* @brief Get card information.
* @param buf uint32_t array
* @param buf int32_t array
* @return buffer length in bytes
*/
extern "C" DECL_DLLEXPORT int32_t query_card(intptr_t pduel, uint8_t playerid, uint8_t location, uint8_t sequence, int32_t query_flag, byte* buf, int32_t use_cache) {
......@@ -201,7 +201,7 @@ extern "C" DECL_DLLEXPORT int32_t query_card(intptr_t pduel, uint8_t playerid, u
duel* ptduel = (duel*)pduel;
card* pcard = nullptr;
location &= 0x7f;
if(location & LOCATION_ONFIELD)
if (location == LOCATION_MZONE || location == LOCATION_SZONE)
pcard = ptduel->game_field->get_field_card(playerid, location, sequence);
else {
card_vector* lst = nullptr;
......@@ -217,10 +217,9 @@ extern "C" DECL_DLLEXPORT int32_t query_card(intptr_t pduel, uint8_t playerid, u
lst = &ptduel->game_field->player[playerid].list_main;
else
return LEN_FAIL;
if(sequence >= (int32_t)lst->size())
pcard = nullptr;
else
pcard = (*lst)[sequence];
if (sequence >= (int32_t)lst->size())
return LEN_FAIL;
pcard = (*lst)[sequence];
}
if (pcard) {
return pcard->get_infos(buf, query_flag, use_cache);
......
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