Commit 50f98b51 authored by salix5's avatar salix5

is_capable_send_to_deck/hand

parent 336a4d17
...@@ -2095,6 +2095,8 @@ int32 field::is_player_can_send_to_grave(uint8 playerid, card * pcard) { ...@@ -2095,6 +2095,8 @@ int32 field::is_player_can_send_to_grave(uint8 playerid, card * pcard) {
} }
int32 field::is_player_can_send_to_hand(uint8 playerid, card * pcard) { int32 field::is_player_can_send_to_hand(uint8 playerid, card * pcard) {
effect_set eset; effect_set eset;
if((pcard->current.location == LOCATION_EXTRA) && (pcard->data.type & (TYPE_FUSION + TYPE_SYNCHRO + TYPE_XYZ)))
return FALSE;
filter_player_effect(playerid, EFFECT_CANNOT_TO_HAND, &eset); filter_player_effect(playerid, EFFECT_CANNOT_TO_HAND, &eset);
for(int32 i = 0; i < eset.size(); ++i) { for(int32 i = 0; i < eset.size(); ++i) {
if(!eset[i]->target) if(!eset[i]->target)
...@@ -2109,6 +2111,8 @@ int32 field::is_player_can_send_to_hand(uint8 playerid, card * pcard) { ...@@ -2109,6 +2111,8 @@ int32 field::is_player_can_send_to_hand(uint8 playerid, card * pcard) {
} }
int32 field::is_player_can_send_to_deck(uint8 playerid, card * pcard) { int32 field::is_player_can_send_to_deck(uint8 playerid, card * pcard) {
effect_set eset; effect_set eset;
if((pcard->current.location == LOCATION_EXTRA) && (pcard->data.type & (TYPE_FUSION + TYPE_SYNCHRO + TYPE_XYZ)))
return FALSE;
filter_player_effect(playerid, EFFECT_CANNOT_TO_DECK, &eset); filter_player_effect(playerid, EFFECT_CANNOT_TO_DECK, &eset);
for(int32 i = 0; i < eset.size(); ++i) { for(int32 i = 0; i < eset.size(); ++i) {
if(!eset[i]->target) if(!eset[i]->target)
......
...@@ -46,7 +46,7 @@ function c96598015.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -46,7 +46,7 @@ function c96598015.activate(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,3,3,nil) local sg=g:Select(tp,3,3,nil)
Duel.SendtoDeck(sg,nil,0,REASON_EFFECT) Duel.SendtoDeck(sg,nil,0,REASON_EFFECT)
Duel.ShuffleDeck(tp) Duel.ShuffleDeck(tp)
if sg:IsExists(Card.IsLocation,3,nil,LOCATION_DECK) then if sg:IsExists(Card.IsLocation,3,nil,LOCATION_DECK+LOCATION_EXTRA) then
Duel.BreakEffect() Duel.BreakEffect()
Duel.Draw(tp,2,REASON_EFFECT) Duel.Draw(tp,2,REASON_EFFECT)
end end
......
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