Commit de65c36b authored by Momobako's avatar Momobako

Push by Appveyor

parent 86406ee9
...@@ -4,7 +4,7 @@ function c11200005.initial_effect(c) ...@@ -4,7 +4,7 @@ function c11200005.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--atk --atk
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(11200005,0)) e1:SetDescription(aux.Stringid(11200005,1))
e1:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_DEFCHANGE) e1:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_DEFCHANGE)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
...@@ -18,7 +18,7 @@ function c11200005.initial_effect(c) ...@@ -18,7 +18,7 @@ function c11200005.initial_effect(c)
e1:SetOperation(c11200005.atkop) e1:SetOperation(c11200005.atkop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(11200005,1)) e2:SetDescription(aux.Stringid(11200005,2))
e2:SetCategory(CATEGORY_DISABLE) e2:SetCategory(CATEGORY_DISABLE)
e2:SetType(EFFECT_TYPE_QUICK_O) e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN) e2:SetCode(EVENT_FREE_CHAIN)
...@@ -113,7 +113,7 @@ function c11200005.disop(e,tp,eg,ep,ev,re,r,rp) ...@@ -113,7 +113,7 @@ function c11200005.disop(e,tp,eg,ep,ev,re,r,rp)
mg:GetFirst():RegisterEffect(e2) mg:GetFirst():RegisterEffect(e2)
end end
function c11200005.descon(e,tp,eg,ep,ev,re,r,rp) function c11200005.descon(e,tp,eg,ep,ev,re,r,rp)
return Dulel.GetFlagEffect(tp,11200005)>0 return Duel.GetFlagEffect(tp,11200005)>0
end end
function c11200005.descost(e,tp,eg,ep,ev,re,r,rp,chk) function c11200005.descost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToRemoveAsCost() end if chk==0 then return e:GetHandler():IsAbleToRemoveAsCost() end
......
...@@ -33,7 +33,6 @@ function c11200006.initial_effect(c) ...@@ -33,7 +33,6 @@ function c11200006.initial_effect(c)
e3:SetCode(EVENT_FREE_CHAIN) e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_DAMAGE_STEP) e3:SetProperty(EFFECT_FLAG_DAMAGE_STEP)
e3:SetCountLimit(1)
e3:SetCost(c11200006.cost) e3:SetCost(c11200006.cost)
e3:SetTarget(c11200006.tg) e3:SetTarget(c11200006.tg)
e3:SetOperation(c11200006.op) e3:SetOperation(c11200006.op)
...@@ -198,12 +197,12 @@ function c11200006.refilter(c) ...@@ -198,12 +197,12 @@ function c11200006.refilter(c)
return c:IsRace(RACE_SPELLCASTER) and c:IsReleasable() return c:IsRace(RACE_SPELLCASTER) and c:IsReleasable()
end end
function c11200006.refilter2(c) function c11200006.refilter2(c)
return c:IsSetCard(0x134) and c:IsReleasable() return c:IsSetCard(0x134) and c:IsType(TYPE_MONSTER) and c:IsReleasable()
end end
function c11200006.recon(e,c) function c11200006.recon(e,c)
if c==nil then return true end if c==nil then return true end
local tp=c:GetControler() local tp=c:GetControler()
local g=Duel.GetMatchingGroup(c11200006.filter,tp,LOCATION_HAND+LOCATION_MZONE,0,nil) local g=Duel.GetMatchingGroup(c11200006.refilter,tp,LOCATION_HAND+LOCATION_MZONE,0,nil)
return Duel.GetLocationCount(tp,LOCATION_MZONE)>-2 return Duel.GetLocationCount(tp,LOCATION_MZONE)>-2
and g:GetCount()>1 and g:IsExists(c11200006.refilter2,1,nil) and g:GetCount()>1 and g:IsExists(c11200006.refilter2,1,nil)
end end
......
--鸟笼的提包人 美树沙耶加 --鸟笼的提包人 美树沙耶加
function c11200009.initial_effect(c) function c11200009.initial_effect(c)
--xyz summon
c:EnableReviveLimit() c:EnableReviveLimit()
--fusion material
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SPSUMMON_PROC) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetProperty(EFFECT_FLAG_UNCOPYABLE) e1:SetCode(EFFECT_FUSION_MATERIAL)
e1:SetRange(LOCATION_EXTRA) e1:SetCondition(c11200009.fuscon)
e1:SetCondition(c11200009.overcon) e1:SetOperation(c11200009.fusop)
e1:SetOperation(c11200009.overop)
e1:SetValue(SUMMON_TYPE_XYZ)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--effect --effect
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
...@@ -31,24 +29,100 @@ function c11200009.initial_effect(c) ...@@ -31,24 +29,100 @@ function c11200009.initial_effect(c)
e3:SetOperation(c11200009.spop) e3:SetOperation(c11200009.spop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c11200009.ovfilter(c,g,tp) function c11200009.ffilter(c,fc)
return c:IsSetCard(0x134) and c:IsFaceup() and c:IsCanBeXyzMaterial(g) and Duel.IsExistingMatchingCard(c11200009.ovfilter2,tp,LOCATION_MZONE,0,1,c,g) return c11200009.ffilter1(c,fc) or c11200009.ffilter2(c,fc)
end end
function c11200009.ovfilter2(c,g) function c11200009.ffilter1(c,fc)
return c:IsType(TYPE_RITUAL) and c:IsFaceup() and c:IsCanBeXyzMaterial(g) return c:IsFusionSetCard(0x134) and c:IsType(TYPE_MONSTER) and c:IsCanBeFusionMaterial(fc)
end end
function c11200009.overcon(e,c) function c11200009.ffilter2(c,fc)
if Duel.IsExistingMatchingCard(c11200009.ovfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,nil,e:GetHandler(),e:GetHandlerPlayer()) then return true return c:IsType(TYPE_RITUAL) and c:IsCanBeFusionMaterial(fc)
else return false end
end end
function c11200009.overop(e,tp,eg,ep,ev,re,r,rp,c) function c11200004.spfilter1(c,tp,mg,fc)
return mg:IsExists(c11200009.spfilter2,1,c,tp,c,fc)
end
function c11200009.spfilter2(c,tp,mc,fc)
return ((c11200009.ffilter1(c,fc) and c11200009.ffilter2(mc,fc))
or (c11200009.ffilter2(c,fc) and c11200009.ffilter1(mc,fc)))
and Duel.GetLocationCountFromEx(tp,tp,Group.FromCards(c,mc))>0
end
function c11200009.fuscon(e,g,gc,chkf)
if g==nil then return true end
local c=e:GetHandler() local c=e:GetHandler()
local g1=Duel.SelectMatchingCard(tp,c11200009.ovfilter,tp,LOCATION_MZONE,0,1,1,nil,e:GetHandler(),tp) local tp=e:GetHandlerPlayer()
local g2=Duel.SelectMatchingCard(tp,c11200009.ovfilter2,tp,LOCATION_MZONE,0,1,1,g1:GetFirst(),e:GetHandler()) local mg=g:Filter(c11200009.ffilter,nil,c)
g1:Merge(g2) local mg1=g:Filter(c11200009.ffilter1,nil,c)
if g1:GetCount()==2 then local mg2=g:Filter(c11200009.ffilter2,nil,c)
Duel.Overlay(c,g1) local tg=Duel.GetMatchingGroup(c11200009.ffilter,tp,LOCATION_DECK,0,nil,c)
local tg1=Duel.GetMatchingGroup(c11200009.ffilter1,tp,LOCATION_DECK,0,nil,c)
local tg2=Duel.GetMatchingGroup(c11200009.ffilter2,tp,LOCATION_DECK,0,nil,c)
if gc then
if not mg1:IsContains(gc) and not mg2:IsContains(gc) then return false end
if Duel.GetFlagEffect(tp,11200002)~=0 then
return mg:IsExists(c11200009.spfilter2,1,gc,tp,gc,c) or tg:IsExists(c11200009.spfilter2,1,gc,tp,gc,c)
else
return mg:IsExists(c11200009.spfilter2,gc,tp,gc,c)
end
end
if Duel.GetFlagEffect(tp,11200002)~=0 and mg1:GetCount()==0 and
mg2:GetCount()~=0 then
return tg1:IsExists(c11200009.spfilter1,1,nil,tp,mg2,c)
elseif Duel.GetFlagEffect(tp,11200002)~=0 and mg2:GetCount()==0 and
mg1:GetCount()~=0 then
return tg2:IsExists(c11200009.spfilter1,1,nil,tp,mg1,c)
elseif Duel.GetFlagEffect(tp,11200002)~=0 and mg:GetCount()==1 then
return tg:IsExists(c11200009.spfilter1,1,nil,tp,mg,c)
else
return mg:IsExists(c11200009.spfilter1,1,nil,tp,mg,c)
end
end
function c11200009.fusop(e,tp,eg,ep,ev,re,r,rp,gc,chkf)
local c=e:GetHandler()
local mg=eg:Filter(c11200009.ffilter,nil,c)
local mg1=eg:Filter(c11200009.ffilter1,nil,c)
local mg2=eg:Filter(c11200009.ffilter2,nil,c)
local tg=Duel.GetMatchingGroup(c11200009.ffilter,tp,LOCATION_DECK,0,nil,c)
local tg1=Duel.GetMatchingGroup(c11200009.ffilter1,tp,LOCATION_DECK,0,nil,c)
local tg2=Duel.GetMatchingGroup(c11200009.ffilter2,tp,LOCATION_DECK,0,nil,c)
local g=nil
local sg
if gc then
g=Group.FromCards(gc)
mg:RemoveCard(gc)
else
if Duel.GetFlagEffect(tp,11200002)~=0 and mg1:GetCount()~=0 and
mg2:GetCount()~=0 and tg:GetCount()>0 and mg:GetCount()>1 and Duel.SelectYesNo(tp,aux.Stringid(11200004,3)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FMATERIAL)
g=tg:FilterSelect(tp,c11200009.spfilter1,1,1,nil,tp,mg,c)
Duel.ResetFlagEffect(tp,11200002)
elseif Duel.GetFlagEffect(tp,11200002)~=0 and mg2:GetCount()==0 and mg1:GetCount()~=0 and tg2:GetCount()>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FMATERIAL)
g=tg2:FilterSelect(tp,c11200009.spfilter1,1,1,nil,tp,mg1,c)
Duel.ResetFlagEffect(tp,11200002)
elseif Duel.GetFlagEffect(tp,11200002)~=0 and mg2:GetCount()~=0 and mg1:GetCount()==0 and tg1:GetCount()>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FMATERIAL)
g=tg1:FilterSelect(tp,c11200009.spfilter1,1,1,nil,tp,mg2,c)
Duel.ResetFlagEffect(tp,11200002)
elseif Duel.GetFlagEffect(tp,11200002)~=0 and mg:GetCount()==1 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FMATERIAL)
g=tg:FilterSelect(tp,c11200009.spfilter1,1,1,nil,tp,mg,c)
Duel.ResetFlagEffect(tp,11200002)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FMATERIAL)
g=mg:FilterSelect(tp,c11200009.spfilter1,1,1,nil,tp,mg,c)
mg:Sub(g)
end
end
if Duel.GetFlagEffect(tp,11200002)~=0 and tg:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(11200004,3)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FMATERIAL)
sg=tg:FilterSelect(tp,c11200009.spfilter2,1,1,nil,tp,g:GetFirst(),c)
Duel.ResetFlagEffect(tp,11200002)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FMATERIAL)
sg=mg:FilterSelect(tp,c11200009.spfilter2,1,1,nil,tp,g:GetFirst(),c)
end end
g:Merge(sg)
Duel.SetFusionMaterial(g)
end end
function c11200009.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c11200009.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -5,7 +5,7 @@ function c22230002.initial_effect(c) ...@@ -5,7 +5,7 @@ function c22230002.initial_effect(c)
e1:SetDescription(aux.Stringid(22230002,0)) e1:SetDescription(aux.Stringid(22230002,0))
e1:SetCategory(CATEGORY_POSITION) e1:SetCategory(CATEGORY_POSITION)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_FLIP+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_FLIP+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1,222300021) e1:SetCountLimit(1,222300021)
e1:SetTarget(c22230002.postg) e1:SetTarget(c22230002.postg)
e1:SetOperation(c22230002.posop) e1:SetOperation(c22230002.posop)
......
...@@ -5,7 +5,7 @@ function c22230004.initial_effect(c) ...@@ -5,7 +5,7 @@ function c22230004.initial_effect(c)
e1:SetDescription(aux.Stringid(22230004,0)) e1:SetDescription(aux.Stringid(22230004,0))
e1:SetCategory(CATEGORY_POSITION) e1:SetCategory(CATEGORY_POSITION)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_FLIP+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_FLIP+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_CARD_TARGET)
e1:SetTarget(c22230004.postg) e1:SetTarget(c22230004.postg)
e1:SetOperation(c22230004.posop) e1:SetOperation(c22230004.posop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
......
...@@ -18,6 +18,7 @@ function c22230121.initial_effect(c) ...@@ -18,6 +18,7 @@ function c22230121.initial_effect(c)
local e6=Effect.CreateEffect(c) local e6=Effect.CreateEffect(c)
e6:SetDescription(aux.Stringid(22230121,1)) e6:SetDescription(aux.Stringid(22230121,1))
e6:SetCategory(CATEGORY_POSITION) e6:SetCategory(CATEGORY_POSITION)
e6:SetProperty(EFFECT_FLAG_CARD_TARGET)
e6:SetType(EFFECT_TYPE_QUICK_O) e6:SetType(EFFECT_TYPE_QUICK_O)
e6:SetCode(EVENT_FREE_CHAIN) e6:SetCode(EVENT_FREE_CHAIN)
e6:SetHintTiming(0,TIMING_MAIN_END) e6:SetHintTiming(0,TIMING_MAIN_END)
......
...@@ -7,6 +7,7 @@ function c22230122.initial_effect(c) ...@@ -7,6 +7,7 @@ function c22230122.initial_effect(c)
local e6=Effect.CreateEffect(c) local e6=Effect.CreateEffect(c)
e6:SetDescription(aux.Stringid(22230122,0)) e6:SetDescription(aux.Stringid(22230122,0))
e6:SetCategory(CATEGORY_POSITION+CATEGORY_TOHAND) e6:SetCategory(CATEGORY_POSITION+CATEGORY_TOHAND)
e6:SetProperty(EFFECT_FLAG_CARD_TARGET)
e6:SetType(EFFECT_TYPE_QUICK_O) e6:SetType(EFFECT_TYPE_QUICK_O)
e6:SetCode(EVENT_FREE_CHAIN) e6:SetCode(EVENT_FREE_CHAIN)
e6:SetHintTiming(0,TIMING_MAIN_END) e6:SetHintTiming(0,TIMING_MAIN_END)
......
...@@ -20,7 +20,7 @@ function c22230123.initial_effect(c) ...@@ -20,7 +20,7 @@ function c22230123.initial_effect(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(22230123,1)) e1:SetDescription(aux.Stringid(22230123,1))
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_FLIP+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_FLIP+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1,22230123) e1:SetCountLimit(1,22230123)
e1:SetTarget(c22230123.tdtg) e1:SetTarget(c22230123.tdtg)
e1:SetOperation(c22230123.tdop) e1:SetOperation(c22230123.tdop)
......
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