Commit 9f6248b2 authored by DailyShana's avatar DailyShana

reset extra params after calling card::is_special_summonable

close #333
parent d096b929
...@@ -3118,17 +3118,6 @@ int32 card::is_special_summonable(uint8 playerid, uint32 summon_type) { ...@@ -3118,17 +3118,6 @@ int32 card::is_special_summonable(uint8 playerid, uint32 summon_type) {
} }
effect_set eset; effect_set eset;
filter_spsummon_procedure(playerid, &eset, summon_type); filter_spsummon_procedure(playerid, &eset, summon_type);
pduel->game_field->core.limit_tuner = 0;
pduel->game_field->core.limit_syn = 0;
pduel->game_field->core.limit_syn_minc = 0;
pduel->game_field->core.limit_syn_maxc = 0;
pduel->game_field->core.limit_xyz = 0;
pduel->game_field->core.limit_xyz_minc = 0;
pduel->game_field->core.limit_xyz_maxc = 0;
pduel->game_field->core.limit_link = 0;
pduel->game_field->core.limit_link_card = 0;
pduel->game_field->core.limit_link_minc = 0;
pduel->game_field->core.limit_link_maxc = 0;
pduel->game_field->restore_lp_cost(); pduel->game_field->restore_lp_cost();
return eset.size(); return eset.size();
} }
......
...@@ -2031,7 +2031,12 @@ int32 scriptlib::card_is_synchro_summonable(lua_State *L) { ...@@ -2031,7 +2031,12 @@ int32 scriptlib::card_is_synchro_summonable(lua_State *L) {
pcard->pduel->game_field->core.limit_syn = mg; pcard->pduel->game_field->core.limit_syn = mg;
pcard->pduel->game_field->core.limit_syn_minc = minc; pcard->pduel->game_field->core.limit_syn_minc = minc;
pcard->pduel->game_field->core.limit_syn_maxc = maxc; pcard->pduel->game_field->core.limit_syn_maxc = maxc;
lua_pushboolean(L, pcard->is_special_summonable(p, SUMMON_TYPE_SYNCHRO)); int32 res = pcard->is_special_summonable(p, SUMMON_TYPE_SYNCHRO);
pcard->pduel->game_field->core.limit_tuner = 0;
pcard->pduel->game_field->core.limit_syn = 0;
pcard->pduel->game_field->core.limit_syn_minc = 0;
pcard->pduel->game_field->core.limit_syn_maxc = 0;
lua_pushboolean(L, res);
return 1; return 1;
} }
int32 scriptlib::card_is_xyz_summonable(lua_State *L) { int32 scriptlib::card_is_xyz_summonable(lua_State *L) {
...@@ -2057,7 +2062,11 @@ int32 scriptlib::card_is_xyz_summonable(lua_State *L) { ...@@ -2057,7 +2062,11 @@ int32 scriptlib::card_is_xyz_summonable(lua_State *L) {
pcard->pduel->game_field->core.limit_xyz = materials; pcard->pduel->game_field->core.limit_xyz = materials;
pcard->pduel->game_field->core.limit_xyz_minc = minc; pcard->pduel->game_field->core.limit_xyz_minc = minc;
pcard->pduel->game_field->core.limit_xyz_maxc = maxc; pcard->pduel->game_field->core.limit_xyz_maxc = maxc;
lua_pushboolean(L, pcard->is_special_summonable(p, SUMMON_TYPE_XYZ)); int32 res = pcard->is_special_summonable(p, SUMMON_TYPE_XYZ);
pcard->pduel->game_field->core.limit_xyz = 0;
pcard->pduel->game_field->core.limit_xyz_minc = 0;
pcard->pduel->game_field->core.limit_xyz_maxc = 0;
lua_pushboolean(L, res);
return 1; return 1;
} }
int32 scriptlib::card_is_link_summonable(lua_State *L) { int32 scriptlib::card_is_link_summonable(lua_State *L) {
...@@ -2091,7 +2100,12 @@ int32 scriptlib::card_is_link_summonable(lua_State *L) { ...@@ -2091,7 +2100,12 @@ int32 scriptlib::card_is_link_summonable(lua_State *L) {
pcard->pduel->game_field->core.limit_link_card = lcard; pcard->pduel->game_field->core.limit_link_card = lcard;
pcard->pduel->game_field->core.limit_link_minc = minc; pcard->pduel->game_field->core.limit_link_minc = minc;
pcard->pduel->game_field->core.limit_link_maxc = maxc; pcard->pduel->game_field->core.limit_link_maxc = maxc;
lua_pushboolean(L, pcard->is_special_summonable(p, SUMMON_TYPE_LINK)); int32 res = pcard->is_special_summonable(p, SUMMON_TYPE_LINK);
pcard->pduel->game_field->core.limit_link = 0;
pcard->pduel->game_field->core.limit_link_card = 0;
pcard->pduel->game_field->core.limit_link_minc = 0;
pcard->pduel->game_field->core.limit_link_maxc = 0;
lua_pushboolean(L, res);
return 1; return 1;
} }
int32 scriptlib::card_is_can_be_summoned(lua_State *L) { int32 scriptlib::card_is_can_be_summoned(lua_State *L) {
......
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