Commit 8bcdbbf0 authored by Momobako's avatar Momobako

updc

parent 52888c11
......@@ -1463,11 +1463,20 @@ int32 scriptlib::card_is_has_effect(lua_State *L) {
check_param(L, PARAM_TYPE_CARD, 1);
card* pcard = *(card**) lua_touserdata(L, 1);
uint32 code = lua_tointeger(L, 2);
if(pcard)
interpreter::effect2value(L, pcard->is_affected_by_effect(code));
else
if(!pcard) {
lua_pushnil(L);
return 1;
return 1;
}
effect_set eset;
pcard->filter_effect(code, &eset);
int32 size = eset.size();
if(!size) {
lua_pushnil(L);
return 1;
}
for(int32 i = 0; i < size; ++i)
interpreter::effect2value(L, eset[i]);
return size;
}
int32 scriptlib::card_reset_effect(lua_State *L) {
check_param_count(L, 3);
......@@ -1892,7 +1901,6 @@ int32 scriptlib::card_is_can_be_special_summoned(lua_State *L) {
uint32 sumpos = POS_FACEUP;
uint32 toplayer = sumplayer;
uint32 zone = 0xff;
uint32 nozoneusedcheck = 0;
if(lua_gettop(L) >= 7)
sumpos = lua_tointeger(L, 7);
if(lua_gettop(L) >= 8)
......
......@@ -3450,9 +3450,16 @@ int32 scriptlib::duel_is_player_affected_by_effect(lua_State *L) {
return 1;
}
int32 code = lua_tointeger(L, 2);
effect* peffect = pduel->game_field->is_player_affected_by_effect(playerid, code);
interpreter::effect2value(L, peffect);
return 1;
effect_set eset;
pduel->game_field->filter_player_effect(playerid, code, &eset);
int32 size = eset.size();
if(!size) {
lua_pushnil(L);
return 1;
}
for(int32 i = 0; i < size; ++i)
interpreter::effect2value(L, eset[i]);
return size;
}
int32 scriptlib::duel_is_player_can_draw(lua_State * L) {
check_param_count(L, 1);
......@@ -3967,7 +3974,6 @@ int32 scriptlib::duel_majestic_copy(lua_State *L) {
check_param(L, PARAM_TYPE_CARD, 2);
card* pcard = *(card**) lua_touserdata(L, 1);
card* ccard = *(card**) lua_touserdata(L, 2);
duel* pduel = pcard->pduel;
for(auto eit = ccard->single_effect.begin(); eit != ccard->field_effect.end(); ++eit) {
if(eit == ccard->single_effect.end()) {
eit = ccard->field_effect.begin();
......
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