Commit a2bf35f1 authored by POLYMER's avatar POLYMER

fix

parent ab97c0fa
...@@ -100,8 +100,8 @@ function cm.XyzConditionAlter(f,lv,minc,maxc,alterf,alterdesc,alterop) ...@@ -100,8 +100,8 @@ function cm.XyzConditionAlter(f,lv,minc,maxc,alterf,alterdesc,alterop)
else else
mg=Duel.GetFieldGroup(tp,LOCATION_MZONE,0) mg=Duel.GetFieldGroup(tp,LOCATION_MZONE,0)
end end
if c:IsLocation(LOCATION_GRAVE) and Duel.GetCurrentPhase()==PHASE_BATTLE then if c:IsLocation(LOCATION_GRAVE) then
return (not min or min<=1) and mg:IsExists(Auxiliary.XyzAlterFilter,1,nil,alterf,c,e,tp,alterop) return Duel.GetCurrentPhase()==PHASE_BATTLE and (not min or min<=1) and mg:IsExists(Auxiliary.XyzAlterFilter,1,nil,alterf,c,e,tp,alterop)
end end
local minc=minc local minc=minc
local maxc=maxc local maxc=maxc
......
...@@ -38,7 +38,7 @@ function cm.initial_effect(c) ...@@ -38,7 +38,7 @@ function cm.initial_effect(c)
--negate --negate
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(m,1)) e4:SetDescription(aux.Stringid(m,1))
e4:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY) e4:SetCategory(CATEGORY_DISABLE+CATEGORY_DESTROY)
e4:SetType(EFFECT_TYPE_QUICK_O) e4:SetType(EFFECT_TYPE_QUICK_O)
e4:SetCode(EVENT_CHAINING) e4:SetCode(EVENT_CHAINING)
e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
...@@ -55,7 +55,7 @@ function cm.initial_effect(c) ...@@ -55,7 +55,7 @@ function cm.initial_effect(c)
end end
KDlobal["Effects"]["c115002"]=e2 KDlobal["Effects"]["c115002"]=e2
end end
function cm.spfilter1(c,fc) function cm.spfilter1(c,fc,tp)
return c:IsCode(15000351) and c:IsCanBeFusionMaterial(fc) and c:IsAbleToDeckAsCost() and Duel.IsExistingMatchingCard(cm.spfilter2,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,nil,fc,c:GetLocation()) return c:IsCode(15000351) and c:IsCanBeFusionMaterial(fc) and c:IsAbleToDeckAsCost() and Duel.IsExistingMatchingCard(cm.spfilter2,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,nil,fc,c:GetLocation())
end end
function cm.spfilter2(c,fc,loc) function cm.spfilter2(c,fc,loc)
...@@ -65,11 +65,11 @@ function cm.spcon(e,c) ...@@ -65,11 +65,11 @@ function cm.spcon(e,c)
if c==nil then return true end if c==nil then return true end
local tp=c:GetControler() local tp=c:GetControler()
return Duel.GetLocationCountFromEx(tp,tp,nil,c)>0 return Duel.GetLocationCountFromEx(tp,tp,nil,c)>0
and Duel.IsExistingMatchingCard(cm.spfilter1,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,nil,c) and Duel.IsExistingMatchingCard(cm.spfilter1,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,nil,c,tp)
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp,c) function cm.spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g1=Duel.SelectMatchingCard(tp,cm.spfilter1,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,1,nil,c) local g1=Duel.SelectMatchingCard(tp,cm.spfilter1,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,1,nil,c,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g2=Duel.SelectMatchingCard(tp,cm.spfilter2,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,1,nil,c,g1:GetFirst():GetLocation()) local g2=Duel.SelectMatchingCard(tp,cm.spfilter2,tp,LOCATION_GRAVE+LOCATION_MZONE,0,1,1,nil,c,g1:GetFirst():GetLocation())
g1:Merge(g2) g1:Merge(g2)
...@@ -120,7 +120,7 @@ function cm.distg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -120,7 +120,7 @@ function cm.distg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function cm.disop(e,tp,eg,ep,ev,re,r,rp) function cm.disop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if Duel.NegateActivation(ev) and re:GetHandler():IsRelateToEffect(re) then if Duel.NegateEffect(ev) and re:GetHandler():IsRelateToEffect(re) then
Duel.Destroy(eg,REASON_EFFECT) Duel.Destroy(eg,REASON_EFFECT)
end end
end end
\ No newline at end of file
...@@ -42,14 +42,14 @@ function c43990036.spfilter(c) ...@@ -42,14 +42,14 @@ function c43990036.spfilter(c)
return c:IsSetCard(0x1514) return c:IsSetCard(0x1514)
end end
function c43990036.spcon(e,tp,eg,ep,ev,re,r,rp) function c43990036.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c43990036.spfilter,1,nil) return not eg:IsContains(e:GetHandler()) and eg:IsExists(c43990036.spfilter,1,nil)
end end
function c43990036.sppfilter(c,e,tp) function c43990036.sppfilter(c,e,tp)
return c:IsSetCard(0x1514) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) return c:IsSetCard(0x1514) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
end end
function c43990036.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c43990036.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
-- if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c43990036.sppfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end -- if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c43990036.sppfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_TODECK,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,e:GetHandler(),1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE)
end end
......
...@@ -44,7 +44,7 @@ function c43990037.tdfilter(c) ...@@ -44,7 +44,7 @@ function c43990037.tdfilter(c)
return c:IsSetCard(0x1514) return c:IsSetCard(0x1514)
end end
function c43990037.tdcon(e,tp,eg,ep,ev,re,r,rp) function c43990037.tdcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c43990037.tdfilter,1,nil) return not eg:IsContains(e:GetHandler()) and eg:IsExists(c43990037.tdfilter,1,nil)
end end
function c43990037.tddfilter(c) function c43990037.tddfilter(c)
return c:IsAbleToDeck() and c:IsSetCard(0x1514) and c:IsType(TYPE_MONSTER) return c:IsAbleToDeck() and c:IsSetCard(0x1514) and c:IsType(TYPE_MONSTER)
......
...@@ -21,7 +21,7 @@ function cm.initial_effect(c) ...@@ -21,7 +21,7 @@ function cm.initial_effect(c)
e2:SetType(EFFECT_TYPE_QUICK_O) e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN) e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,43990038) e2:SetCountLimit(1,43991038)
e2:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE) e2:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e2:SetTarget(c43990038.destg) e2:SetTarget(c43990038.destg)
e2:SetOperation(c43990038.desop) e2:SetOperation(c43990038.desop)
...@@ -44,7 +44,7 @@ function c43990038.spfilter(c) ...@@ -44,7 +44,7 @@ function c43990038.spfilter(c)
return c:IsSetCard(0x1514) return c:IsSetCard(0x1514)
end end
function c43990038.spcon(e,tp,eg,ep,ev,re,r,rp) function c43990038.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c43990038.spfilter,1,nil) return not eg:IsContains(e:GetHandler()) and eg:IsExists(c43990038.spfilter,1,nil)
end end
function c43990038.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c43990038.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
......
...@@ -42,7 +42,7 @@ function c43990039.spfilter(c) ...@@ -42,7 +42,7 @@ function c43990039.spfilter(c)
return c:IsSetCard(0x1514) return c:IsSetCard(0x1514)
end end
function c43990039.thcon(e,tp,eg,ep,ev,re,r,rp) function c43990039.thcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c43990039.spfilter,1,nil) return not eg:IsContains(e:GetHandler()) and eg:IsExists(c43990039.spfilter,1,nil)
end end
function c43990039.thfilter(c) function c43990039.thfilter(c)
return c:IsSetCard(0x1514) and c:IsAbleToHand() return c:IsSetCard(0x1514) and c:IsAbleToHand()
......
...@@ -17,7 +17,7 @@ function cm.initial_effect(c) ...@@ -17,7 +17,7 @@ function cm.initial_effect(c)
e1:SetCondition(cm.spcon) e1:SetCondition(cm.spcon)
e1:SetTarget(cm.sptg) e1:SetTarget(cm.sptg)
e1:SetOperation(cm.spop) e1:SetOperation(cm.spop)
c:RegisterEffect(e1) --c:RegisterEffect(e1)
local e2=e1:Clone() local e2=e1:Clone()
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e2) c:RegisterEffect(e2)
......
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