Commit f4867ac7 authored by salix5's avatar salix5

card::is_can_be_special_summoned

face-up pendulum xyz/syn monsters
parent e716202b
...@@ -1945,35 +1945,12 @@ int32 card::is_can_be_special_summoned(effect * reason_effect, uint32 sumtype, u ...@@ -1945,35 +1945,12 @@ int32 card::is_can_be_special_summoned(effect * reason_effect, uint32 sumtype, u
if(is_status(STATUS_REVIVE_LIMIT) && !is_status(STATUS_PROC_COMPLETE)) { if(is_status(STATUS_REVIVE_LIMIT) && !is_status(STATUS_PROC_COMPLETE)) {
if((!nolimit && (current.location & 0x38)) || (!nocheck && !nolimit && (current.location & 0x3))) if((!nolimit && (current.location & 0x38)) || (!nocheck && !nolimit && (current.location & 0x3)))
return FALSE; return FALSE;
/*
* Xyz Pend is not Pendsumable if proc not completed.
* In this situation, I don't know if we can spsm it "ignoring summoning conditions".
* If we can, should change "!nolimit" to "!nocheck".
* This is minimal impacted modification.
*/
if(!nolimit && current.location == LOCATION_EXTRA && (current.position & POS_FACEUP)) if(!nolimit && current.location == LOCATION_EXTRA && (current.position & POS_FACEUP))
return FALSE; return FALSE;
} }
/* //face-up pendulum xyz/syn, STATUS_PROC_COMPLETE
* Xyz Pend is not Xyzsumable if Faceup in Extra, even proc completed. if(current.location == LOCATION_EXTRA && (current.position & POS_FACEUP) && (sumtype == SUMMON_TYPE_SYNCHRO || sumtype == SUMMON_TYPE_XYZ))
* In this situation, I don't know if we can Xyzsum it "ignoring summoning conditions".
* If we can, should change "!nolimit" to "!nocheck".
* This is minimal impacted modification.
*/
if(is_status(STATUS_REVIVE_LIMIT) && !nolimit && current.location == LOCATION_EXTRA && (current.position & POS_FACEUP)) {
/*
* Do not really sure for this part. Let's keep it as a note.
*
* if((sumtype & SUMMON_TYPE_RITUAL) == SUMMON_TYPE_RITUAL && (data.type & TYPE_RITUAL))
* return FALSE;
* if((sumtype & SUMMON_TYPE_FUSION) == SUMMON_TYPE_FUSION && (data.type & TYPE_FUSION))
* return FALSE;
*/
if((sumtype & SUMMON_TYPE_SYNCHRO) == SUMMON_TYPE_SYNCHRO && (data.type & TYPE_SYNCHRO))
return FALSE; return FALSE;
if((sumtype & SUMMON_TYPE_XYZ) == SUMMON_TYPE_XYZ && (data.type & TYPE_XYZ))
return FALSE;
}
if(((sumpos & POS_FACEDOWN) == 0) && pduel->game_field->check_unique_onfield(this, toplayer)) if(((sumpos & POS_FACEDOWN) == 0) && pduel->game_field->check_unique_onfield(this, toplayer))
return FALSE; return FALSE;
sumtype |= SUMMON_TYPE_SPECIAL; sumtype |= SUMMON_TYPE_SPECIAL;
......
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