Commit d6b51e18 authored by POLYMER's avatar POLYMER

fix

parent 9894470c
...@@ -2557,7 +2557,6 @@ ...@@ -2557,7 +2557,6 @@
15000096 0 15000096 0
15004459 0 15004459 0
26692740 0 26692740 0
32909498 0
33310207 0 33310207 0
33310210 0 33310210 0
33310213 0 33310213 0
......
No preview for this file type
...@@ -91,10 +91,11 @@ function cm.matop(e,tp,eg,ep,ev,re,r,rp) ...@@ -91,10 +91,11 @@ function cm.matop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.spfil(c,raceo,attro,races,attrs,e,tp) function cm.spfil(c,raceo,attro,races,attrs,e,tp)
return not c:IsRace(raceo) and not c:IsAttribute(attro) and not c:IsRace(races) and not c:IsAttribute(attrs) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return not c:IsRace(raceo) and not c:IsAttribute(attro) and not c:IsRace(races) and not c:IsAttribute(attrs) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and aux.IsCodeListed(c,60010029)
end end
function cm.repfilter(c,tp,races,attrs) function cm.repfilter(c,tp,races,attrs)
return c:IsControler(tp) and c:IsOnField() and not c:IsAttribute(races) and not c:IsRace(attrs) return c:IsControler(tp) and c:IsOnField()
and ((not c:IsAttribute(races) and not c:IsRace(attrs) and c:IsType(TYPE_MONSTER)) or c:IsFacedown())
and c:IsReason(REASON_BATTLE+REASON_EFFECT) and not c:IsReason(REASON_REPLACE) and c:IsReason(REASON_BATTLE+REASON_EFFECT) and not c:IsReason(REASON_REPLACE)
end end
function cm.desreptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
...@@ -110,7 +111,7 @@ function cm.desrepval(e,c) ...@@ -110,7 +111,7 @@ function cm.desrepval(e,c)
return cm.repfilter(c,e:GetHandlerPlayer(),races,attrs) return cm.repfilter(c,e:GetHandlerPlayer(),races,attrs)
end end
function cm.desrepop(e,tp,eg,ep,ev,re,r,rp) function cm.desrepop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetFlagEffect(e:GetHandlerPlayer(),m)<3 then if Duel.GetFlagEffect(e:GetHandlerPlayer(),m)<1 then
Duel.Draw(e:GetHandlerPlayer(),1,REASON_EFFECT) Duel.Draw(e:GetHandlerPlayer(),1,REASON_EFFECT)
Duel.RegisterFlagEffect(e:GetHandlerPlayer(),m,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(e:GetHandlerPlayer(),m,RESET_PHASE+PHASE_END,0,1)
end end
......
...@@ -19,6 +19,8 @@ function cm.initial_effect(c) ...@@ -19,6 +19,8 @@ function cm.initial_effect(c)
ge1:SetCondition(cm.regcon) ge1:SetCondition(cm.regcon)
ge1:SetOperation(cm.regop) ge1:SetOperation(cm.regop)
Duel.RegisterEffect(ge1,0) Duel.RegisterEffect(ge1,0)
local ge2=ge1:Clone()
Duel.RegisterEffect(ge2,1)
end end
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
...@@ -51,7 +53,7 @@ function cm.cfilter(c,tp) ...@@ -51,7 +53,7 @@ function cm.cfilter(c,tp)
end end
function cm.regcon(e,tp,eg,ep,ev,re,r,rp) function cm.regcon(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetCurrentPhase()==PHASE_DRAW or Duel.GetCurrentPhase()==0 then return false end if Duel.GetCurrentPhase()==PHASE_DRAW or Duel.GetCurrentPhase()==0 then return false end
local v=0 --local v=0
local ag=eg:Filter(cm.cfilter,nil,e:GetHandlerPlayer()) local ag=eg:Filter(cm.cfilter,nil,e:GetHandlerPlayer())
if #ag~=0 then if #ag~=0 then
e:SetLabel(#ag) e:SetLabel(#ag)
......
...@@ -19,12 +19,14 @@ function cm.initial_effect(c) ...@@ -19,12 +19,14 @@ function cm.initial_effect(c)
ge1:SetCondition(cm.regcon) ge1:SetCondition(cm.regcon)
ge1:SetOperation(cm.regop) ge1:SetOperation(cm.regop)
Duel.RegisterEffect(ge1,0) Duel.RegisterEffect(ge1,0)
local ge2=ge1:Clone()
Duel.RegisterEffect(ge2,1)
end end
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local num=Duel.GetFlagEffect(tp,m) local num=Duel.GetFlagEffect(tp,m)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil) or num>=5 end if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil) or num>=3 end
if num<3 or not Duel.SelectYesNo(tp,aux.Stringid(m,0)) then if num<2 or not Duel.SelectYesNo(tp,aux.Stringid(m,0)) then
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST,nil) Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST,nil)
end end
end end
......
...@@ -19,6 +19,8 @@ function cm.initial_effect(c) ...@@ -19,6 +19,8 @@ function cm.initial_effect(c)
ge1:SetCondition(cm.regcon) ge1:SetCondition(cm.regcon)
ge1:SetOperation(cm.regop) ge1:SetOperation(cm.regop)
Duel.RegisterEffect(ge1,0) Duel.RegisterEffect(ge1,0)
local ge2=ge1:Clone()
Duel.RegisterEffect(ge2,1)
end end
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
......
--魔女术组合·召唤小组 --魔女术组合·召唤小组
function c98920499.initial_effect(c) function c98920499.initial_effect(c)
if c:GetOriginalCode()==98920499 then
c:SetSPSummonOnce(98920499) c:SetSPSummonOnce(98920499)
--link summon --link summon
aux.AddLinkProcedure(c,c98920499.mfilter,2,2,c98920499.lcheck) aux.AddLinkProcedure(c,c98920499.mfilter,2,2,c98920499.lcheck)
...@@ -41,6 +42,7 @@ function c98920499.initial_effect(c) ...@@ -41,6 +42,7 @@ function c98920499.initial_effect(c)
ge1:SetOperation(c98920499.checkop) ge1:SetOperation(c98920499.checkop)
Duel.RegisterEffect(ge1,0) Duel.RegisterEffect(ge1,0)
end end
end
end end
function c98920499.mfilter(c) function c98920499.mfilter(c)
return c:IsLinkRace(RACE_SPELLCASTER) return c:IsLinkRace(RACE_SPELLCASTER)
...@@ -176,7 +178,7 @@ function c98920499.deckcostfilter(c,tp) ...@@ -176,7 +178,7 @@ function c98920499.deckcostfilter(c,tp)
return c:IsSetCard(0x128) and c:IsType(TYPE_SPELL) and c:IsAbleToGraveAsCost() return c:IsSetCard(0x128) and c:IsType(TYPE_SPELL) and c:IsAbleToGraveAsCost()
end end
function c98920499.acost(e,tp,eg,ep,ev,re,r,rp,chk) function c98920499.acost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c98920499.costfilter,tp,LOCATION_HAND+LOCATION_SZONE,0,1,nil,tp) or (Duel.IsExistingMatchingCard(c98920499.deckcostfilter,tp,LOCATION_DECK,0,1,nil,tp) and Duel.GetFlagEffect(tp,98920499)==0) end if chk==0 then return Duel.IsExistingMatchingCard(c98920499.costfilter,tp,LOCATION_HAND+LOCATION_SZONE,0,1,nil,tp) or (Duel.IsExistingMatchingCard(c98920499.deckcostfilter,tp,LOCATION_DECK,0,1,nil,tp) and Duel.GetFlagEffect(tp,98920500)==0) end
if Duel.IsExistingMatchingCard(c98920499.deckcostfilter,tp,LOCATION_DECK,0,1,nil,tp) and Duel.GetFlagEffect(tp,98920500)==0 and (not Duel.IsExistingMatchingCard(c98920499.costfilter,tp,LOCATION_HAND+LOCATION_SZONE,0,1,nil,tp) or Duel.SelectYesNo(tp,aux.Stringid(98920499,1))) then if Duel.IsExistingMatchingCard(c98920499.deckcostfilter,tp,LOCATION_DECK,0,1,nil,tp) and Duel.GetFlagEffect(tp,98920500)==0 and (not Duel.IsExistingMatchingCard(c98920499.costfilter,tp,LOCATION_HAND+LOCATION_SZONE,0,1,nil,tp) or Duel.SelectYesNo(tp,aux.Stringid(98920499,1))) then
local g=Duel.GetMatchingGroup(c98920499.deckcostfilter,tp,LOCATION_DECK,0,nil,tp) local g=Duel.GetMatchingGroup(c98920499.deckcostfilter,tp,LOCATION_DECK,0,nil,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
......
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