Commit 90d83100 authored by Momobako's avatar Momobako

Push by Appveyor

parent c0a25674
......@@ -17,7 +17,6 @@ function c10113075.initial_effect(c)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET)
e2:SetCondition(c10113075.con)
e2:SetValue(aux.tgoval)
c:RegisterEffect(e2)
--Destroy
......@@ -38,37 +37,39 @@ function c10113075.initial_effect(c)
end
function c10113075.descon(e,tp,eg,ep,ev,re,r,rp)
local ph=Duel.GetCurrentPhase()
return c10113075.con(e) and (ph==PHASE_MAIN1 or ph==PHASE_MAIN2)
return ph==PHASE_MAIN1 or ph==PHASE_MAIN2
end
function c10113075.descost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c10113075.desfilter(c)
function c10113075.rmfilter(c)
return c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToRemove()
end
function c10113075.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and c10113075.desfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c10113075.desfilter,tp,0,LOCATION_ONFIELD,1,nil) end
if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsType(TYPE_SPELL+TYPE_TRAP) end
if chk==0 then return Duel.IsExistingTarget(Card.IsType,tp,0,LOCATION_ONFIELD,1,nil,TYPE_SPELL+TYPE_TRAP) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c10113075.desfilter,tp,0,LOCATION_ONFIELD,1,1,nil)
local g=Duel.SelectTarget(tp,Card.IsType,tp,0,LOCATION_ONFIELD,1,1,nil,TYPE_SPELL+TYPE_TRAP)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0)
end
function c10113075.desop(e,tp,eg,ep,ev,re,r,rp)
local tc,c=Duel.GetFirstTarget(),e:GetHandler()
if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT,LOCATION_REMOVED)~=0 and tc:IsLocation(LOCATION_REMOVED) then
if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetReset(RESET_EVENT+0x1fe0000)
e1:SetValue(200)
c:RegisterEffect(e1)
local g=Duel.GetMatchingGroup(c10113075.rmfilter,tp,0,LOCATION_ONFIELD+LOCATION_GRAVE,nil)
if c:GetOverlayGroup():IsExists(Card.IsCode,1,nil,10113076) and g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(10113075,1)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local rg=g:Select(tp,1,1,nil)
Duel.Remove(rg,POS_FACEUP,REASON_EFFECT)
end
end
end
function c10113075.efilter(e,te)
return te:IsActiveType(TYPE_SPELL+TYPE_TRAP)
end
function c10113075.con(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetOverlayGroup():IsExists(Card.IsCode,1,nil,10113076)
end
\ No newline at end of file
......@@ -13,31 +13,18 @@ function c10173035.initial_effect(c)
e1:SetTarget(c10173035.target)
e1:SetValue(c10173035.efilter)
c:RegisterEffect(e1)
local e2=e1:Clone()
c:RegisterEffect(e2)
local e3=e1:Clone()
c:RegisterEffect(e3)
local e4=e1:Clone()
c:RegisterEffect(e4)
local e5=e1:Clone()
c:RegisterEffect(e5)
--indes
local e6=Effect.CreateEffect(c)
e6:SetDescription(aux.Stringid(10173035,1))
e6:SetType(EFFECT_TYPE_QUICK_O)
e6:SetCode(EVENT_FREE_CHAIN)
e6:SetRange(LOCATION_MZONE)
e6:SetProperty(EFFECT_FLAG_CARD_TARGET)
e6:SetCountLimit(1)
e6:SetCost(c10173035.indcost)
e6:SetTarget(c10173035.indtg)
e6:SetOperation(c10173035.indop)
c:RegisterEffect(e6)
e1:SetLabel(0)
e2:SetLabel(1)
e3:SetLabel(2)
e4:SetLabel(3)
e5:SetLabel(4)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(10173035,1))
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_MZONE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCountLimit(1)
e2:SetCost(c10173035.indcost)
e2:SetTarget(c10173035.indtg)
e2:SetOperation(c10173035.indop)
c:RegisterEffect(e2)
end
function c10173035.indcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
......@@ -66,11 +53,9 @@ function c10173035.ovfilter(c)
return c:IsFaceup() and c:IsType(TYPE_XYZ) and (rk==1 or rk==2) and c:IsAttribute(ATTRIBUTE_DARK)
end
function c10173035.target(e,c)
return c:GetSequence()==e:GetLabel()
local te,g=Duel.GetChainInfo(0,CHAININFO_TRIGGERING_EFFECT,CHAININFO_TARGET_CARDS)
return not te or not te:IsHasProperty(EFFECT_FLAG_CARD_TARGET) or not g or not g:IsContains(c)
end
function c10173035.efilter(e,te)
if te:GetOwnerPlayer()==e:GetHandlerPlayer() then return false end
if not te:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return true end
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
return not g:IsContains(Duel.GetFieldCard(e:GetHandlerPlayer(),LOCATION_MZONE,e:GetLabel()))
return te:GetOwnerPlayer()~=e:GetHandlerPlayer()
end
\ No newline at end of file
--无敌卡A
--无敌卡AAA
function c10173036.initial_effect(c)
--effect
local e1=Effect.CreateEffect(c)
......@@ -15,8 +15,8 @@ function c10173036.initial_effect(c)
c10173036.global_check=true
Real_Scl={}
Dark_Scl={}
Real_Scl[0]=0
Dark_Scl[0]=0
Real_Scl[1]=0
Dark_Scl[1]=0
local ge1=Effect.GlobalEffect()
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_SUMMON_SUCCESS)
......@@ -60,8 +60,8 @@ end
function c10173036.reset(e,tp,eg,ep,ev,re,r,rp)
Real_Scl={}
Dark_Scl={}
Real_Scl[0]=0
Dark_Scl[0]=0
Real_Scl[1]=0
Dark_Scl[1]=0
end
function c10173036.checkop1(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:GetFirst()
......@@ -96,8 +96,8 @@ function c10173036.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e4,tp)
end
function c10173036.tg2(e,re,tp)
return re:GetHandler():IsCode(table.unpack(Dark_Scl)) and not re:GetHandler():IsImmuneToEffect(e) and re:IsActiveType(TYPE_MONSTER)
return Dark_Scl and re:GetHandler():IsCode(table.unpack(Dark_Scl)) and not re:GetHandler():IsImmuneToEffect(e) and re:IsActiveType(TYPE_MONSTER)
end
function c10173036.tg(e,c)
return c:IsCode(table.unpack(Real_Scl))
return Real_Scl and c:IsCode(table.unpack(Real_Scl))
end
\ No newline at end of file
--秘龙剑
--秘龙剑-
function c10173066.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
......@@ -56,10 +56,10 @@ function c10173066.filter(c)
return c:IsFaceup() and c:IsRace(RACE_DRAGON)
end
function c10173066.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c10173012.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c10173012.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
if chkc then return chkc:IsLocation(LOCATION_MZONE) and c10173066.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c10173066.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
Duel.SelectTarget(tp,c10173012.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SelectTarget(tp,c10173066.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,e:GetHandler(),1,0,0)
end
function c10173066.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -95,7 +95,7 @@ function c1151219.op1(e,tp,eg,ep,ev,re,r,rp)
local sel=Duel.SelectOption(tp,aux.Stringid(1151219,0),aux.Stringid(1151219,1))
if sel==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g1_1=Duel.SelectMatchingCard(tp,c1151219.ofilter1_1,tp,LOCATION_DECK,0,1,1,nil)
local g1_1=Duel.SelectMatchingCard(tp,c1151219.ofilter1_1,tp,LOCATION_DECK,0,1,1,nil)
if g1_1:GetCount()>0 then
Duel.SendtoGrave(g1_1,REASON_EFFECT)
end
......@@ -103,14 +103,14 @@ function c1151219.op1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g1_2=Duel.SelectMatchingCard(tp,c1151219.ofilter1_2,tp,LOCATION_DECK,0,1,1,nil)
if g1_2:GetCount()>0 then
Duel.SendtoHand(g1_2,REASON_EFFECT)
Duel.SendtoHand(g1_2,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g1_2)
end
end
else
if Duel.IsExistingMatchingCard(c1151219.ofilter1_1,tp,LOCATION_DECK,0,1,nil) and not Duel.IsExistingMatchingCard(c1151219.ofilter1_2,tp,LOCATION_DECK,0,1,nil) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g1_1=Duel.SelectMatchingCard(tp,c1151219.ofilter1_1,tp,LOCATION_DECK,0,1,1,nil)
local g1_1=Duel.SelectMatchingCard(tp,c1151219.ofilter1_1,tp,LOCATION_DECK,0,1,1,nil)
if g1_1:GetCount()>0 then
Duel.SendtoGrave(g1_1,REASON_EFFECT)
end
......@@ -118,7 +118,7 @@ function c1151219.op1(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g1_2=Duel.SelectMatchingCard(tp,c1151219.ofilter1_2,tp,LOCATION_DECK,0,1,1,nil)
if g1_2:GetCount()>0 then
Duel.SendtoHand(g1_2,REASON_EFFECT)
Duel.SendtoHand(g1_2,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g1_2)
end
end
......
......@@ -80,7 +80,7 @@ function c1152209.op1(e,tp,eg,ep,ev,re,r,rp)
if gn:GetCount()>0 then
local tc=gn:GetFirst()
while tc do
if tc:IsType(TYPE_MONSTER) and not c:IsRace(RACE_FIEND) then
if tc:IsType(TYPE_MONSTER) and not tc:IsRace(RACE_FIEND) then
gr:AddCard(tc)
end
tc=gn:GetNext()
......
--回锅白泽球
function c22221102.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCategory(CATEGORY_TOHAND)
e1:SetCountLimit(1,22221102)
e1:SetTarget(c22221102.target)
e1:SetOperation(c22221102.operation)
c:RegisterEffect(e1)
--search
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH+CATEGORY_REMOVE)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e2:SetCode(EVENT_REMOVE)
e2:SetCountLimit(1)
e2:SetTarget(c22221102.shtg)
e2:SetOperation(c22221102.shop)
c:RegisterEffect(e2)
end
c22221102.named_with_Shirasawa_Tama=1
function c22221102.IsShirasawaTama(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_Shirasawa_Tama
end
function c22221102.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetMatchingGroupCount(Card.IsAbleToRemove, tp, LOCATION_DECK, 0, nil) > 2 end
end
function c22221102.filter(c)
return c22221102.IsShirasawaTama(c) and c:IsFaceup()
end
function c22221102.pfilter(c)
return c22221102.IsShirasawaTama(c) and c:IsAbleToRemove()
end
function c22221102.operation(e,tp,eg,ep,ev,re,r,rp)
local c = e:GetHandler()
Duel.ConfirmDecktop(tp,3)
local sg = Duel.GetDecktopGroup(tp,3)
local pg = sg:Filter(c22221102.pfilter, nil)
if pg:GetCount() > 0 then
local tc=pg:GetFirst()
while tc do
Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)
if tc:IsType(TYPE_MONSTER) then tc:CompleteProcedure() end
tc=pg:GetNext()
end
Duel.ShuffleDeck(tp)
if Duel.IsExistingMatchingCard(c22221102.filter,tp,LOCATION_ONFIELD,0,1,e:GetHandler()) and Duel.IsExistingMatchingCard(c22221102.sfilter,tp,LOCATION_DECK,0,1,nil) then
Duel.BreakEffect()
local ssg=Duel.SelectMatchingCard(tp,c22221102.sfilter,tp,LOCATION_DECK,0,1,1,nil)
if ssg:GetCount()>0 then
Duel.SendtoHand(ssg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,ssg)
Duel.ShuffleHand(tp)
end
end
end
end
function c22221102.sfilter(c)
return c22221102.IsShirasawaTama(c) and c:IsAbleToHand()
end
function c22221102.shtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c22221102.sfilter,tp,LOCATION_DECK+LOCATION_REMOVED,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK+LOCATION_REMOVED)
end
function c22221102.shop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c22221102.sfilter,tp,LOCATION_DECK+LOCATION_REMOVED,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
\ No newline at end of file
......@@ -69,13 +69,23 @@ end
function c22250102.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local c=e:GetHandler()
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and c22250102.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c22250102.filter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,nil,e,tp) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 end
if chk==0 then return Duel.IsExistingTarget(c22250102.filter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,nil,e,tp) and (c:GetSequence()<5 or Duel.GetLocationCount(tp,LOCATION_MZONE)>1) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c22250102.filter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,LOCATION_GRAVE+LOCATION_REMOVED)
end
function c22250102.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.Remove(c,POS_FACEUP,REASON_EFFECT+REASON_TEMPORARY)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_PHASE+PHASE_END)
e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetLabelObject(c)
e1:SetCountLimit(1)
e1:SetOperation(c22250102.retop)
Duel.RegisterEffect(e1,tp)
end
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
......
......@@ -38,7 +38,7 @@ end
function c22251201.activate(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
c22251201.announce_filter2={22250001,OPCODE_ISCODE,22250002,OPCODE_ISCODE,22250003,OPCODE_ISCODE,22250004,OPCODE_ISCODE,22250005,OPCODE_ISCODE,22250006,OPCODE_ISCODE,22250101,OPCODE_ISCODE,22250102,OPCODE_ISCODE,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR}
c22251201.announce_filter2={22250001,OPCODE_ISCODE,22250002,OPCODE_ISCODE,22250003,OPCODE_ISCODE,22250004,OPCODE_ISCODE,22250005,OPCODE_ISCODE,22250006,OPCODE_ISCODE,22250101,OPCODE_ISCODE,22250102,OPCODE_ISCODE,22250161,OPCODE_ISCODE,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR,OPCODE_OR}
local ac=Duel.AnnounceCardFilter(tp,table.unpack(c22251201.announce_filter2))
c:SetHint(CHINT_CARD,ac)
--tograve
......
......@@ -17,7 +17,7 @@ function c22251501.initial_effect(c)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_FZONE)
e2:SetCountLimit(1,22251501+EFFECT_COUNT_CODE_OATH)
e2:SetCountLimit(1,22251501)
e2:SetTarget(c22251501.tgtg)
e2:SetOperation(c22251501.tgop)
c:RegisterEffect(e2)
......
......@@ -2,7 +2,7 @@
function c500001.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetCategory(CATEGORY_RELEASE)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetTarget(c500001.target)
......
......@@ -2,7 +2,7 @@
function c500002.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetCategory(CATEGORY_RELEASE)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetTarget(c500002.target)
......
......@@ -42,7 +42,10 @@ function c500003.target(e,tp,eg,ep,ev,re,r,rp,chk)
else op=Duel.SelectOption(tp,aux.Stringid(500003,2))+1 end
e:SetLabel(op)
if op~=0 then
e:SetCategory(CATEGORY_RELEASE)
Duel.SetOperationInfo(0,CATEGORY_RELEASE,nil,1,0,LOCATION_DECK)
else
e:SetCategory(0)
end
end
function c500003.operation(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -105,7 +105,7 @@ end
function c500008.tg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
if e:GetLabel()==100 then return
Duel.IsExistingMatchingCard(c500008.filter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,e:GetHandler())
Duel.IsExistingMatchingCard(c500008.filter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,e:GetHandler())
else
return true
end
......
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