Commit de65c36b authored by Momobako's avatar Momobako

Push by Appveyor

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