Commit a16ff2e6 authored by salix5's avatar salix5

revert to 9cfdf

parent a43d4924
...@@ -146,17 +146,6 @@ void field::add_card(uint8 playerid, card* pcard, uint8 location, uint8 sequence ...@@ -146,17 +146,6 @@ void field::add_card(uint8 playerid, card* pcard, uint8 location, uint8 sequence
return; return;
if (!is_location_useable(playerid, location, sequence)) if (!is_location_useable(playerid, location, sequence))
return; return;
if ((pcard->data.type & (TYPE_FUSION | TYPE_SYNCHRO | TYPE_XYZ)) && (location == LOCATION_HAND || location == LOCATION_DECK)) {
location = LOCATION_EXTRA;
pcard->operation_param = (pcard->operation_param & 0x00ffffff) | (POS_FACEDOWN_DEFENCE << 24);
}
if ((pcard->data.type & TYPE_PENDULUM) && (location == LOCATION_GRAVE)
&& pcard->is_capable_send_to_extra(playerid)
&& (((pcard->previous.location == LOCATION_MZONE) && !pcard->is_status(STATUS_SUMMON_DISABLED))
|| ((pcard->previous.location == LOCATION_SZONE) && !pcard->is_status(STATUS_ACTIVATE_DISABLED)))) {
location = LOCATION_EXTRA;
pcard->operation_param = (pcard->operation_param & 0x00ffffff) | (POS_FACEUP_DEFENCE << 24);
}
pcard->current.controler = playerid; pcard->current.controler = playerid;
pcard->current.location = location; pcard->current.location = location;
switch (location) { switch (location) {
...@@ -364,9 +353,21 @@ void field::move_card(uint8 playerid, card* pcard, uint8 location, uint8 sequenc ...@@ -364,9 +353,21 @@ void field::move_card(uint8 playerid, card* pcard, uint8 location, uint8 sequenc
} }
return; return;
} }
} else } else {
if((pcard->data.type & (TYPE_FUSION | TYPE_SYNCHRO | TYPE_XYZ)) && (location & (LOCATION_HAND | LOCATION_DECK))) {
location = LOCATION_EXTRA;
pcard->operation_param = (pcard->operation_param & 0x00ffffff) | (POS_FACEDOWN_DEFENCE << 24);
}
if((pcard->data.type & TYPE_PENDULUM) && (location == LOCATION_GRAVE)
&& pcard->is_capable_send_to_extra(playerid)
&& (((pcard->current.location == LOCATION_MZONE) && !pcard->is_status(STATUS_SUMMON_DISABLED))
|| ((pcard->current.location == LOCATION_SZONE) && !pcard->is_status(STATUS_ACTIVATE_DISABLED)))) {
location = LOCATION_EXTRA;
pcard->operation_param = (pcard->operation_param & 0x00ffffff) | (POS_FACEUP_DEFENCE << 24);
}
remove_card(pcard); remove_card(pcard);
} }
}
add_card(playerid, pcard, location, sequence); add_card(playerid, pcard, location, sequence);
} }
void field::set_control(card* pcard, uint8 playerid, uint16 reset_phase, uint8 reset_count) { void field::set_control(card* pcard, uint8 playerid, uint16 reset_phase, uint8 reset_count) {
......
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