Commit 7400a9df authored by POLYMER's avatar POLYMER

fix

parent e381a4da
......@@ -74,7 +74,7 @@ end
function cm.rmop(e,tp,eg,ep,ev,re,r,rp)
local g1=Duel.GetFieldGroup(tp,LOCATION_DECK,0)
local rg1=g2:Filter(cm.thfilter,nil)
local rg1=g1:Filter(cm.thfilter,nil)
local g2=Duel.GetFieldGroup(tp,0,LOCATION_DECK)
local rg2=g2:Filter(cm.thfilter,nil)
if Duel.IsPlayerAffectedByEffect(tp,23410013) then
......
......@@ -104,7 +104,7 @@ function c28391031.indescon(e)
return Duel.GetLP(e:GetHandlerPlayer())<=3000
end
function c28391031.efilter(e,te)
return e:GetOwnerPlayer()~=re:GetOwnerPlayer()
return e:GetOwnerPlayer()~=te:GetOwnerPlayer()
end
function c28391031.drcon(e)
local p=e:GetHandlerPlayer()
......
......@@ -26,8 +26,8 @@ function s.initial_effect(c)
e2:SetOperation(s.tkop)
c:RegisterEffect(e2)
end
function s.cfilter(c)
return c:IsType(TYPE_MONSTER) and not c:IsForbidden()
function s.cfilter(c,tp)
return c:IsAllTypes(TYPE_MONSTER) and c:CheckUniqueOnField(tp) and not c:IsForbidden()
end
function s.fselect(g,tp)
return Duel.GetMZoneCount(tp,g)>0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>=#g
......@@ -35,11 +35,11 @@ end
function s.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
local g=Duel.GetMatchingGroup(s.cfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,c)
local g=Duel.GetMatchingGroup(s.cfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,c,tp)
return g:CheckSubGroup(s.fselect,2,99,tp)
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk,c)
local g=Duel.GetMatchingGroup(s.cfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,c)
local g=Duel.GetMatchingGroup(s.cfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,c,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local sg=g:SelectSubGroup(tp,s.fselect,true,2,99,tp)
if sg then
......
......@@ -56,7 +56,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local code={}
if Duel.IsExistingMatchingCard(cm.fil1,tp,LOCATION_DECK,0,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil)
local g=Duel.SelectMatchingCard(tp,cm.fil1,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 and Duel.SendtoHand(g,nil,REASON_EFFECT)~=0 then
code[1]=Duel.GetOperatedGroup():GetFirst():GetCode()
Duel.ConfirmCards(1-tp,g)
......
......@@ -56,17 +56,17 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local num=0
if wt==1 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
g=Duel.SelectMatchingCard(tp,cm.drfil12,tp,LOCATION_GRAVE,0,1,1,nil)
g=Duel.SelectMatchingCard(tp,cm.drfil2,tp,LOCATION_GRAVE,0,1,1,nil)
if Duel.Remove(g,POS_FACEUP,REASON_EFFECT)~=0 then num=num+1 end
if Duel.IsExistingMatchingCard(cm.drfil1,tp,LOCATION_HAND,LOCATION_HAND,1,nil)
and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
gg=Duel.SelectMatchingCard(tp,cm.drfil11,tp,LOCATION_HAND,LOCATION_HAND,1,1,nil)
gg=Duel.SelectMatchingCard(tp,cm.drfil1,tp,LOCATION_HAND,LOCATION_HAND,1,1,nil)
if Duel.SendtoGrave(gg,REASON_EFFECT)~=0 then num=num+1 end
end
elseif wt==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
g=Duel.SelectMatchingCard(tp,cm.drfil11,tp,LOCATION_HAND,LOCATION_HAND,1,2,nil)
g=Duel.SelectMatchingCard(tp,cm.drfil1,tp,LOCATION_HAND,LOCATION_HAND,1,2,nil)
if Duel.SendtoGrave(g,REASON_EFFECT)~=0 then num=#Duel.GetOperatedGroup() end
end
Duel.Draw(tp,num,REASON_EFFECT)
......
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