Commit 4d364b62 authored by salix5's avatar salix5

Merge pull request #27 from DailyShana/patch-3

fix pseudo search
parents f815c1ff 16a0cf2c
...@@ -31,7 +31,7 @@ function c2403771.thtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -31,7 +31,7 @@ function c2403771.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK)
end end
function c2403771.thop(e,tp,eg,ep,ev,re,r,rp) function c2403771.thop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(Card.IsType,tp,LOCATION_DECK,0,nil,TYPE_EQUIP) local g=Duel.GetMatchingGroup(c2403771.thfilter,tp,LOCATION_DECK,0,nil)
if g:GetCount()>=3 then if g:GetCount()>=3 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:Select(tp,3,3,nil) local sg=g:Select(tp,3,3,nil)
...@@ -40,8 +40,7 @@ function c2403771.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,8 +40,7 @@ function c2403771.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_ATOHAND)
local tg=sg:Select(1-tp,1,1,nil) local tg=sg:Select(1-tp,1,1,nil)
local tc=tg:GetFirst() local tc=tg:GetFirst()
if tc:IsAbleToHand() then Duel.SendtoHand(tc,nil,REASON_EFFECT) Duel.SendtoHand(tc,nil,REASON_EFFECT)
else Duel.SendtoGrave(tc,REASON_EFFECT) end
end end
end end
function c2403771.repfilter(c) function c2403771.repfilter(c)
......
...@@ -44,7 +44,7 @@ end ...@@ -44,7 +44,7 @@ end
function c27564031.operation(e,tp,eg,ep,ev,re,r,rp) function c27564031.operation(e,tp,eg,ep,ev,re,r,rp)
_replace_count=_replace_count+1 _replace_count=_replace_count+1
if _replace_count>_replace_max or not e:GetHandler():IsRelateToEffect(e) then return end if _replace_count>_replace_max or not e:GetHandler():IsRelateToEffect(e) then return end
local g=Duel.GetMatchingGroup(Card.IsSetCard,tp,LOCATION_DECK,0,nil,0x23) local g=Duel.GetMatchingGroup(c27564031.filter,tp,LOCATION_DECK,0,nil)
if g:GetCount()>=3 then if g:GetCount()>=3 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:Select(tp,3,3,nil) local sg=g:Select(tp,3,3,nil)
...@@ -53,7 +53,6 @@ function c27564031.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -53,7 +53,6 @@ function c27564031.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_ATOHAND)
local tg=sg:Select(1-tp,1,1,nil) local tg=sg:Select(1-tp,1,1,nil)
local tc=tg:GetFirst() local tc=tg:GetFirst()
if tc:IsAbleToHand() then Duel.SendtoHand(tc,nil,REASON_EFFECT) Duel.SendtoHand(tc,nil,REASON_EFFECT)
else Duel.SendtoGrave(tc,REASON_EFFECT) end
end end
end end
...@@ -37,21 +37,18 @@ end ...@@ -37,21 +37,18 @@ end
function c40230018.aclimit(e,re,tp) function c40230018.aclimit(e,re,tp)
return re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL) and not re:GetHandler():IsSetCard(0x106e) return re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL) and not re:GetHandler():IsSetCard(0x106e)
end end
function c40230018.filter1(c) function c40230018.filter(c)
return c:IsSetCard(0x106e) and c:IsType(TYPE_SPELL) and c:IsAbleToHand() return c:IsSetCard(0x106e) and c:IsType(TYPE_SPELL) and c:IsAbleToHand()
end end
function c40230018.filter2(c)
return c:IsSetCard(0x106e) and c:IsType(TYPE_SPELL)
end
function c40230018.target(e,tp,eg,ep,ev,re,r,rp,chk) function c40230018.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then if chk==0 then
local g=Duel.GetMatchingGroup(c40230018.filter1,tp,LOCATION_DECK,0,nil) local g=Duel.GetMatchingGroup(c40230018.filter,tp,LOCATION_DECK,0,nil)
return g:GetClassCount(Card.GetCode)>=3 return g:GetClassCount(Card.GetCode)>=3
end end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK)
end end
function c40230018.operation(e,tp,eg,ep,ev,re,r,rp) function c40230018.operation(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(c40230018.filter2,tp,LOCATION_DECK,0,nil) local g=Duel.GetMatchingGroup(c40230018.filter,tp,LOCATION_DECK,0,nil)
if g:GetClassCount(Card.GetCode)>=3 then if g:GetClassCount(Card.GetCode)>=3 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local sg1=g:Select(tp,1,1,nil) local sg1=g:Select(tp,1,1,nil)
...@@ -68,10 +65,6 @@ function c40230018.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -68,10 +65,6 @@ function c40230018.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_ATOHAND)
local tg=sg1:Select(1-tp,1,1,nil) local tg=sg1:Select(1-tp,1,1,nil)
local tc=tg:GetFirst() local tc=tg:GetFirst()
if tc:IsAbleToHand() then Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.SendtoHand(tc,nil,REASON_EFFECT)
else
Duel.SendtoGrave(tc,REASON_EFFECT)
end
end end
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