Commit 5628d7d9 authored by DailyShana's avatar DailyShana

effect with EFFECT_FLAG_SPSUM_PARAM should'n check target_range

fix #332
parent 822e9784
...@@ -456,6 +456,8 @@ int32 effect::is_target(card* pcard) { ...@@ -456,6 +456,8 @@ int32 effect::is_target(card* pcard) {
if(!is_flag(EFFECT_FLAG_IGNORE_RANGE)) { if(!is_flag(EFFECT_FLAG_IGNORE_RANGE)) {
if(pcard->get_status(STATUS_SUMMONING | STATUS_SUMMON_DISABLED | STATUS_ACTIVATE_DISABLED | STATUS_SPSUMMON_STEP)) if(pcard->get_status(STATUS_SUMMONING | STATUS_SUMMON_DISABLED | STATUS_ACTIVATE_DISABLED | STATUS_SPSUMMON_STEP))
return FALSE; return FALSE;
if(is_flag(EFFECT_FLAG_SPSUM_PARAM))
return FALSE;
if(is_flag(EFFECT_FLAG_ABSOLUTE_TARGET)) { if(is_flag(EFFECT_FLAG_ABSOLUTE_TARGET)) {
if(pcard->current.controler == 0) { if(pcard->current.controler == 0) {
if(!pcard->current.is_location(s_range)) if(!pcard->current.is_location(s_range))
......
...@@ -1319,7 +1319,8 @@ void field::filter_field_effect(uint32 code, effect_set* eset, uint8 sort) { ...@@ -1319,7 +1319,8 @@ void field::filter_field_effect(uint32 code, effect_set* eset, uint8 sort) {
eset->sort(); eset->sort();
} }
void field::filter_affected_cards(effect* peffect, card_set* cset) { void field::filter_affected_cards(effect* peffect, card_set* cset) {
if((peffect->type & EFFECT_TYPE_ACTIONS) || !(peffect->type & EFFECT_TYPE_FIELD) || peffect->is_flag(EFFECT_FLAG_PLAYER_TARGET)) if((peffect->type & EFFECT_TYPE_ACTIONS) || !(peffect->type & EFFECT_TYPE_FIELD)
|| peffect->is_flag(EFFECT_FLAG_PLAYER_TARGET | EFFECT_FLAG_SPSUM_PARAM))
return; return;
uint8 self = peffect->get_handler_player(); uint8 self = peffect->get_handler_player();
if(self == PLAYER_NONE) if(self == PLAYER_NONE)
...@@ -1352,7 +1353,7 @@ void field::filter_affected_cards(effect* peffect, card_set* cset) { ...@@ -1352,7 +1353,7 @@ void field::filter_affected_cards(effect* peffect, card_set* cset) {
} }
} }
void field::filter_inrange_cards(effect* peffect, card_set* cset) { void field::filter_inrange_cards(effect* peffect, card_set* cset) {
if(peffect->is_flag(EFFECT_FLAG_PLAYER_TARGET)) if(peffect->is_flag(EFFECT_FLAG_PLAYER_TARGET | EFFECT_FLAG_SPSUM_PARAM))
return; return;
uint8 self = peffect->get_handler_player(); uint8 self = peffect->get_handler_player();
if(self == PLAYER_NONE) if(self == PLAYER_NONE)
......
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