Commit bcba760e authored by POLYMER's avatar POLYMER

fix

parent 1219d02d
...@@ -5949,7 +5949,6 @@ ...@@ -5949,7 +5949,6 @@
98933011 0 98933011 0
98933012 0 98933012 0
98933014 0 98933014 0
57300400 0
87498743 0 87498743 0
89400000 0 89400000 0
89400001 0 89400001 0
...@@ -5992,7 +5991,6 @@ ...@@ -5992,7 +5991,6 @@
82800105 0 82800105 0
82800108 0 82800108 0
82800111 0 82800111 0
57300455 0
65131042 0 65131042 0
88881026 0 88881026 0
98920359 0 98920359 0
......
No preview for this file type
expansions/pics/63714000.jpg

83.1 KB | W: | H:

expansions/pics/63714000.jpg

201 KB | W: | H:

expansions/pics/63714000.jpg
expansions/pics/63714000.jpg
expansions/pics/63714000.jpg
expansions/pics/63714000.jpg
  • 2-up
  • Swipe
  • Onion skin
...@@ -84,7 +84,7 @@ function cm.clear(e,tp,eg,ep,ev,re,r,rp) ...@@ -84,7 +84,7 @@ function cm.clear(e,tp,eg,ep,ev,re,r,rp)
i=i+1 i=i+1
end end
local tp=e:GetHandler():GetOwner() local tp=e:GetHandler():GetOwner()
Duel.ResetFlagEffect(tp,m) Duel.ResetFlagEffect(tp,11451767)
--local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+m)} --local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+m)}
--for _,te in pairs(eset) do te:Reset() end --for _,te in pairs(eset) do te:Reset() end
if res then if res then
...@@ -94,7 +94,7 @@ function cm.clear(e,tp,eg,ep,ev,re,r,rp) ...@@ -94,7 +94,7 @@ function cm.clear(e,tp,eg,ep,ev,re,r,rp)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT) e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
e3:SetTargetRange(1,0) e3:SetTargetRange(1,0)
e3:SetCode(EFFECT_FLAG_EFFECT+m) e3:SetCode(EFFECT_FLAG_EFFECT+11451767)
Duel.RegisterEffect(e3,tp) Duel.RegisterEffect(e3,tp)
else else
cm.chain_with_stridgon=0 cm.chain_with_stridgon=0
......
...@@ -17,7 +17,8 @@ function cm.initial_effect(c) ...@@ -17,7 +17,8 @@ function cm.initial_effect(c)
e2:SetProperty(EFFECT_FLAG_UNCOPYABLE) e2:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e2:SetRange(LOCATION_HAND) e2:SetRange(LOCATION_HAND)
e2:SetCondition(cm.spcon2) e2:SetCondition(cm.spcon2)
e2:SetOperation(cm.spop2(c)) e2:SetTarget(cm.sptg2(c))
e2:SetOperation(cm.spop2)
--effect gain --effect gain
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT)
...@@ -62,12 +63,20 @@ function cm.spcon2(e,c) ...@@ -62,12 +63,20 @@ function cm.spcon2(e,c)
local num=Duel.GetMatchingGroupCount(Card.IsFacedown,tp,LOCATION_REMOVED,LOCATION_REMOVED,nil) local num=Duel.GetMatchingGroupCount(Card.IsFacedown,tp,LOCATION_REMOVED,LOCATION_REMOVED,nil)
return Duel.GetMZoneCount(tp)>0 and (num%c:GetLevel())==0 and num~=0 --and Duel.GetDecktopGroup(tp,c:GetLevel()//2):FilterCount(Card.IsAbleToRemoveAsCost,nil,POS_FACEDOWN)==c:GetLevel()//2 return Duel.GetMZoneCount(tp)>0 and (num%c:GetLevel())==0 and num~=0 --and Duel.GetDecktopGroup(tp,c:GetLevel()//2):FilterCount(Card.IsAbleToRemoveAsCost,nil,POS_FACEDOWN)==c:GetLevel()//2
end end
function cm.spop2(sc) function cm.sptg2(sc)
return function(e,tp,eg,ep,ev,re,r,rp,c) return function(e,tp,eg,ep,ev,re,r,rp,chk,c)
local g=Duel.GetMatchingGroup(Card.IsFacedown,tp,LOCATION_REMOVED,LOCATION_REMOVED,nil) local g=Duel.GetMatchingGroup(Card.IsFacedown,tp,LOCATION_REMOVED,LOCATION_REMOVED,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local sg=g:SelectSubGroup(tp,function(g) return g:IsExists(aux.FilterEqualFunction(Card.GetOriginalCode,m),1,nil) end,false,c:GetLevel()//2,c:GetLevel()//2) local sg=g:SelectSubGroup(tp,function(g) return g:IsExists(aux.FilterEqualFunction(Card.GetOriginalCode,m),1,nil) end,Duel.IsSummonCancelable(),c:GetLevel()//2,c:GetLevel()//2)
Duel.Hint(HINT_CARD,0,m) if sg then
Duel.SendtoGrave(sg,REASON_RETURN) sg:KeepAlive()
e:SetLabelObject(sg)
return true
else return false end
end end
end
function cm.spop2(e,tp,eg,ep,ev,re,r,rp,c)
local sg=e:GetLabelObject()
Duel.Hint(HINT_CARD,0,m)
Duel.SendtoGrave(sg,REASON_RETURN)
end end
\ No newline at end of file
...@@ -62,8 +62,7 @@ function s.discon(e,tp,eg,ep,ev,re,r,rp) ...@@ -62,8 +62,7 @@ function s.discon(e,tp,eg,ep,ev,re,r,rp)
local ex3=re:IsHasCategory(CATEGORY_DRAW) local ex3=re:IsHasCategory(CATEGORY_DRAW)
local ex4=re:IsHasCategory(CATEGORY_SEARCH) local ex4=re:IsHasCategory(CATEGORY_SEARCH)
local ex5=re:IsHasCategory(CATEGORY_TOHAND) local ex5=re:IsHasCategory(CATEGORY_TOHAND)
return (ex3 or ex4 or ex5) and not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainDisablable(ev) and ep==1-tp return (ex3 or ex4 or ex5) and not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainDisablable(ev) and Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_MZONE,0,1,c)
and Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_MZONE,0,1,c)
end end
function s.distg(e,tp,eg,ep,ev,re,r,rp,chk) function s.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) and Duel.IsPlayerCanDraw(1-tp,1) end if chk==0 then return Duel.IsPlayerCanDraw(tp,1) and Duel.IsPlayerCanDraw(1-tp,1) end
......
This diff is collapsed.
--墓碑
local s,id,o=GetID()
function s.initial_effect(c)
c:EnableCounterPermit(0x0520)
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_POSITION)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,id+EFFECT_COUNT_CODE_OATH)
e1:SetTarget(s.target)
e1:SetOperation(s.activate)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_LIMIT_SPECIAL_SUMMON_POSITION)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e2:SetTargetRange(1,0)
e2:SetRange(LOCATION_SZONE)
e2:SetTarget(s.splimit)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_CANNOT_CHANGE_POSITION)
e3:SetRange(LOCATION_SZONE)
e3:SetTargetRange(LOCATION_MZONE,0)
e3:SetTarget(s.postg)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_CANNOT_MSET)
e4:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e4:SetRange(LOCATION_MZONE)
e4:SetTargetRange(1,0)
e4:SetTarget(s.postg)
c:RegisterEffect(e4)
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetCode(EFFECT_IMMUNE_EFFECT)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e5:SetRange(LOCATION_SZONE)
e5:SetValue(s.efilter)
c:RegisterEffect(e5)
local e6=Effect.CreateEffect(c)
e6:SetType(EFFECT_TYPE_FIELD)
e6:SetCode(EFFECT_CANNOT_SELECT_BATTLE_TARGET)
e6:SetRange(LOCATION_MZONE)
e6:SetTargetRange(LOCATION_MZONE,0)
e6:SetTarget(s.attg)
e6:SetValue(s.atlimit)
c:RegisterEffect(e6)
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_FIELD)
e7:SetCode(EFFECT_DIRECT_ATTACK)
e7:SetRange(LOCATION_SZONE)
e7:SetTargetRange(LOCATION_MZONE,0)
e7:SetTarget(s.atktg)
c:RegisterEffect(e7)
local e8=Effect.CreateEffect(c)
e8:SetDescription(aux.Stringid(id,0))
e8:SetCategory(CATEGORY_SPECIAL_SUMMON)
e8:SetType(EFFECT_TYPE_QUICK_O)
e8:SetCode(EVENT_FREE_CHAIN)
e8:SetCountLimit(1)
e8:SetRange(LOCATION_SZONE)
e8:SetCondition(s.spcon)
e8:SetTarget(s.sptg)
e8:SetOperation(s.spop)
c:RegisterEffect(e8)
local e9=Effect.CreateEffect(c)
e9:SetDescription(aux.Stringid(id,0))
e9:SetCategory(CATEGORY_COUNTER)
e9:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e9:SetCode(EVENT_DAMAGE_STEP_END)
e9:SetRange(LOCATION_SZONE)
e9:SetCondition(s.ccon)
e9:SetTarget(s.ctg)
e9:SetOperation(s.cop)
c:RegisterEffect(e9)
local e10=Effect.CreateEffect(c)
e10:SetCategory(CATEGORY_COUNTER)
e10:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e10:SetCode(EVENT_PHASE+PHASE_END)
e10:SetRange(LOCATION_SZONE)
e10:SetCountLimit(1)
e10:SetTarget(s.ctg)
e10:SetOperation(s.cop)
c:RegisterEffect(e10)
local e11=Effect.CreateEffect(c)
e11:SetDescription(aux.Stringid(id,2))
e11:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN)
e11:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e11:SetProperty(EFFECT_FLAG_NO_TURN_RESET)
e11:SetRange(LOCATION_SZONE)
e11:SetCode(EVENT_PHASE+PHASE_END)
e11:SetCountLimit(1)
e11:SetCondition(s.spcon3)
e11:SetTarget(s.sptg3)
e11:SetOperation(s.spop3)
c:RegisterEffect(e11)
local e12=Effect.CreateEffect(c)
e12:SetDescription(aux.Stringid(id,10))
e12:SetType(EFFECT_TYPE_SINGLE)
e12:SetCode(EFFECT_TRAP_ACT_IN_HAND)
e12:SetCondition(s.handcon)
c:RegisterEffect(e12)
end
function s.posfilter(c)
return c:IsPosition(POS_DEFENSE) and c:IsSetCard(0xc520)
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
local c=e:GetHandler()
local g=Duel.GetMatchingGroup(s.posfilter,tp,LOCATION_MZONE,0,nil)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(s.posfilter,tp,LOCATION_MZONE,0,nil)
if g:GetCount()>0 then
Duel.ChangePosition(g,POS_FACEUP_ATTACK)
end
end
function s.splimit(e,c,tp,sumtp,sumpos)
return bit.band(sumpos,POS_DEFENSE)>0 and c:IsSetCard(0xc520)
end
function s.postg(e,c)
return c:IsSetCard(0xc520)
end
function s.handcon(e)
return not Duel.IsExistingMatchingCard(s.hcfilter,e:GetHandler():GetControler(),LOCATION_GRAVE,0,1,nil)
end
function s.hcfilter(c)
return not c:IsSetCard(0xc520)
end
function s.efilter(e,te)
return not te:GetOwner():IsSetCard(0xc520)
end
function s.attg(e,c)
e:SetLabelObject(c)
return c:IsFaceup() and c:IsSetCard(0xc520) and c:IsLocation(LOCATION_MZONE)
end
function s.atlimit(e,c)
local lc=e:GetLabelObject()
return not lc:GetColumnGroup():IsContains(c)
end
function s.atkfilter(c,tp)
return c:IsLocation(LOCATION_MZONE) and c:IsControler(1-tp)
end
function s.atktg(e,c)
local cg=c:GetColumnGroup()
return c:IsFaceup() and c:IsSetCard(0xc520) and not cg:IsExists(s.atkfilter,1,nil,e:GetHandlerPlayer())
end
function s.filter(c,cc,e,tp)
return c:IsSetCard(0xc520) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
and c:GetLevel()>0 and cc:IsCanRemoveCounter(tp,0x0520,c:GetLevel(),REASON_COST)
end
function s.spcon(e,tp,eg,ep,ev,re,r,rpc)
return Duel.GetTurnPlayer()==tp
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_HAND,0,1,nil,e:GetHandler(),e,tp) end
local g=Duel.GetMatchingGroup(s.filter,tp,LOCATION_HAND,0,nil,e:GetHandler(),e,tp)
local lvt={}
local tc=g:GetFirst()
while tc do
local tlv=tc:GetLevel()
lvt[tlv]=tlv
tc=g:GetNext()
end
local pc=1
for i=1,12 do
if lvt[i] then lvt[i]=nil lvt[pc]=i pc=pc+1 end
end
lvt[pc]=nil
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(id,1))
local lv=Duel.AnnounceNumber(tp,table.unpack(lvt))
e:GetHandler():RemoveCounter(tp,0x0520,lv,REASON_COST)
e:SetLabel(lv)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
end
function s.sfilter(c,lv,e,tp)
return c:IsSetCard(0xc520) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
and c:GetLevel()==lv
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local lv=e:GetLabel()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,s.sfilter,tp,LOCATION_HAND,0,1,1,nil,lv,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
function s.ccon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetAttacker():IsSetCard(0xc520) and Duel.GetAttacker():IsControler(tp) and Duel.GetAttackTarget()==nil
end
function s.ctg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsCanAddCounter(0x0520,2) end
end
function s.cop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
c:AddCounter(0x0520,2)
end
end
function s.spcon3(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp
end
function s.sptg3(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local zone=1<<c:GetSequence()
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE,tp,LOCATION_REASON_TOFIELD,zone)>0 and Duel.IsPlayerCanSpecialSummonMonster(tp,57300402,0xc520,TYPES_TOKEN_MONSTER,600,1400,1,RACE_ZOMBIE,ATTRIBUTE_DARK,POS_FACEUP_ATTACK) end
e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(id,3))
end
function s.spop3(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
if not Duel.IsPlayerCanSpecialSummonMonster(tp,57300413,0xc520,TYPES_TOKEN_MONSTER,600,1600,1,RACE_ZOMBIE,ATTRIBUTE_DARK,POS_FACEUP_ATTACK) then return end
local zone=1<<c:GetSequence()
local ss=Duel.GetLocationCount(tp,LOCATION_MZONE,tp,LOCATION_REASON_TOFIELD,zone)
if ss>0 then
local token=Duel.CreateToken(tp,57300402)
Duel.SpecialSummonStep(token,0,tp,tp,false,false,POS_FACEUP_ATTACK,zone)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_ADJUST)
e1:SetRange(LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED+LOCATION_HAND+LOCATION_EXTRA)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e1:SetOperation(s.backop)
token:RegisterEffect(e1)
Duel.SpecialSummonComplete()
local fid=token:GetFieldID()
token:RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1,fid)
local ct=Duel.GetTurnCount(tp)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e2:SetCode(EVENT_PHASE+PHASE_END,2)
e2:SetReset(RESET_PHASE+PHASE_END,2)
e2:SetCountLimit(1)
e2:SetLabel(fid,ct)
e2:SetLabelObject(token)
e2:SetCondition(s.descon3)
e2:SetOperation(s.desop3)
Duel.RegisterEffect(e2,tp)
else
return
end
end
function s.backop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Exile(c,0)
end
function s.desfilter(c,fid)
return c:GetFlagEffectLabel(id)==fid
end
function s.descon3(e,tp,eg,ep,ev,re,r,rp)
local fid,ct=e:GetLabel()
local g=e:GetLabelObject()
if ct==Duel.GetTurnCount(tp) return false end
if not g:IsExists(s.desfilter,1,nil,fid) then
g:DeleteGroup()
e:Reset()
return false
else return true end
end
function s.desop3(e,tp,eg,ep,ev,re,r,rp)
local fid,ct=e:GetLabel()
local g=e:GetLabelObject()
local dg=g:Filter(s.desfilter,nil,fid)
g:DeleteGroup()
Duel.Destroy(dg,REASON_EFFECT)
end
\ No newline at end of file
--pvz bt z 普通僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,400)
end
--pvz bt z 普通小鬼僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,400)
end
\ No newline at end of file
--pvz bt z 路障僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,400)
end
\ No newline at end of file
--pvz bt z 铁桶僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,400)
end
\ No newline at end of file
--pvz bt z 胖墩僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,1000)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_BATTLE_CONFIRM)
e1:SetTarget(s.targ)
e1:SetOperation(s.op)
c:RegisterEffect(e1)
end
function s.targ(e,tp,eg,ep,ev,re,r,rp,chk)
local t=Duel.GetAttackTarget()
if chk==0 then return Duel.GetAttacker()==e:GetHandler() and t~=nil and not t:IsAttackPos() and t:IsAbleToGrave() and t:IsDefenseBelow(800) end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,t,1,0,0)
end
function s.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local t=Duel.GetAttackTarget()
if t~=nil and t:IsRelateToBattle() and not t:IsAttackPos() then
Duel.SendtoGrave(t,REASON_EFFECT)
if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_DEFENSE)
e1:SetValue(800)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE)
c:RegisterEffect(e1)
end
end
end
\ No newline at end of file
--pvz bt z 铁钢门僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,400)
end
\ No newline at end of file
--pvz bt z 玻璃门僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,400)
end
\ No newline at end of file
--pvz bt z 垃圾桶僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,400)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_ATTACK_ANNOUNCE)
e1:SetCondition(s.natkcon)
c:RegisterEffect(e1)
end
function s.natkcon(e)
local c=e:GetHandler()
return c:GetDefense()>=1100
end
\ No newline at end of file
--pvz bt z 读报僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,500)
end
\ No newline at end of file
--pvz bt z 狂暴读报僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddXyzProcedure(c,nil,5,2,s.ovfilter,aux.Stringid(id,0),3,nil)
c:EnableReviveLimit()
Zombie_Characteristics(c,500)
end
function s.ovfilter(c)
return c:IsFaceup() and c:IsCode(57300410) and c:IsDefenseBelow(1000)
end
\ No newline at end of file
--pvz bt z 忍者小鬼僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,700)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_SINGLE)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetOperation(s.btop)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e2)
end
function s.btop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and c:IsFaceup() then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EFFECT_CANNOT_BE_BATTLE_TARGET)
e1:SetValue(aux.imval1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END+RESET_OPPO_TURN)
c:RegisterEffect(e1)
end
end
\ No newline at end of file
--pvz bt z 伴舞僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics(c,400)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_ATTACK_ANNOUNCE)
e1:SetCondition(s.natkcon)
c:RegisterEffect(e1)
if not s.global_check then
s.global_check=true
local ge1=Effect.GlobalEffect()
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_ATTACK_ANNOUNCE)
ge1:SetOperation(s.checkop)
Duel.RegisterEffect(ge1,0)
end
end
function s.checkop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetAttacker():IsCode(id,id+1) then
Duel.RegisterFlagEffect(Duel.GetAttacker():GetControler(),id,RESET_PHASE+PHASE_END,0,1)
end
end
function s.natkcon(e)
return Duel.GetFlagEffect(e:GetHandlerPlayer(),id)>0
end
\ No newline at end of file
--pvz bt z 迪斯科僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,700)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_ATTACK_ANNOUNCE)
e1:SetCondition(s.natkcon)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EVENT_PHASE+PHASE_END)
e2:SetCountLimit(1)
e2:SetCondition(s.spcon)
e2:SetTarget(s.sptg)
e2:SetOperation(s.spop)
c:RegisterEffect(e2)
if not s.global_check then
s.global_check=true
local ge1=Effect.GlobalEffect()
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_ATTACK_ANNOUNCE)
ge1:SetOperation(s.checkop)
Duel.RegisterEffect(ge1,0)
end
end
function s.checkop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetAttacker():IsCode(id,id-1) then
Duel.RegisterFlagEffect(Duel.GetAttacker():GetControler(),id,RESET_PHASE+PHASE_END,0,1)
end
end
function s.natkcon(e)
return Duel.GetFlagEffect(e:GetHandlerPlayer(),id)>0
end
function s.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,0)
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
if not Duel.IsPlayerCanSpecialSummonMonster(tp,57300413,0xc520,TYPES_TOKEN_MONSTER,600,2000,1,RACE_ZOMBIE,ATTRIBUTE_DARK,POS_FACEUP_ATTACK) then return end
local seq=c:GetSequence()
if seq==5 or seq==6 then return end
local zone=0
if seq>0 then zone=zone|(1<<(seq-1)) end
if seq<4 then zone=zone|(1<<(seq+1)) end
local ss=Duel.GetLocationCount(tp,LOCATION_MZONE,tp,LOCATION_REASON_TOFIELD,zone)
if ss>1 then
local token1=Duel.CreateToken(tp,57300413)
Duel.SpecialSummonStep(token1,0,tp,tp,false,false,POS_FACEUP_ATTACK,zone)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_ADJUST)
e1:SetRange(LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED+LOCATION_HAND+LOCATION_EXTRA)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e1:SetOperation(s.backop)
token1:RegisterEffect(e1)
local token2=Duel.CreateToken(tp,57300413)
Duel.SpecialSummonStep(token2,0,tp,tp,false,false,POS_FACEUP_ATTACK,zone)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_ADJUST)
e1:SetRange(LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED+LOCATION_HAND+LOCATION_EXTRA)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e1:SetOperation(s.backop)
token2:RegisterEffect(e1)
Duel.SpecialSummonComplete()
elseif ss>0 then
local token=Duel.CreateToken(tp,57300413)
Duel.SpecialSummon(token,0,tp,tp,false,false,POS_FACEUP_ATTACK,zone)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_ADJUST)
e1:SetRange(LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED+LOCATION_HAND+LOCATION_EXTRA)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e1:SetOperation(s.backop)
token:RegisterEffect(e1)
Duel.SpecialSummonComplete()
else
return
end
end
function s.backop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Exile(c,0)
end
\ No newline at end of file
--pvz bt z 香肠小鬼僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,700)
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DEFCHANGE)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetTarget(s.deftg)
e1:SetOperation(s.defop)
c:RegisterEffect(e1)
end
function s.deffilter(c,tp)
return c:IsType(TYPE_MONSTER) and c:IsDefenseAbove(1) and c:IsFaceup() and c:IsControler(1-tp) and not (c:GetFlagEffect(57300424)~=0)
end
function s.deftg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local seq=c:GetSequence()
local g=c:GetColumnGroup():Filter(s.deffilter,nil,tp)
if chk==0 then return g:GetCount()>0 and (seq>0 and Duel.CheckLocation(tp,LOCATION_MZONE,seq-1))
or (seq<4 and Duel.CheckLocation(tp,LOCATION_MZONE,seq+1))
and c:IsAttackAbove(1) end
end
function s.defop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or not c:IsControler(tp) then return end
local g=c:GetColumnGroup():Filter(s.deffilter,nil,tp)
if g:GetCount()>0 then
for tc in aux.Next(g) do
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetCode(EFFECT_UPDATE_DEFENSE)
e1:SetValue(c:GetAttack()*-1)
tc:RegisterEffect(e1)
end
local seq=c:GetSequence()
local flag=0
if seq>0 and Duel.CheckLocation(tp,LOCATION_MZONE,seq-1) then flag=flag|(1<<(seq-1)) end
if seq<4 and Duel.CheckLocation(tp,LOCATION_MZONE,seq+1) then flag=flag|(1<<(seq+1)) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOZONE)
local s=Duel.SelectDisableField(tp,1,LOCATION_MZONE,0,~flag)
local seq=math.log(s,2)
Duel.MoveSequence(c,seq)
end
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_ATTACK)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
end
\ No newline at end of file
--pvz bt z 撑杆僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,400)
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DEFCHANGE)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_NO_TURN_RESET)
e1:SetCountLimit(1)
e1:SetTarget(s.deftg)
e1:SetOperation(s.defop)
c:RegisterEffect(e1)
end
function s.filter(c,g)
return c:IsDefenseBelow(3000) and c:IsFaceup() and g:IsContains(c)
end
function s.deftg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local c=e:GetHandler()
local cg=c:GetColumnGroup()
cg:AddCard(c)
if chkc then return s.filter(chkc,cg) and chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(s.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil,cg) end
e:GetHandler():RegisterFlagEffect(0,RESET_EVENT+RESETS_STANDARD,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(id,3))
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,s.filter,tp,0,LOCATION_MZONE,1,1,nil,cg)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
end
function s.defop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsFaceup() and c:IsFaceup() and c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DIRECT_ATTACK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
e2:SetCode(EFFECT_UPDATE_DEFENSE)
e2:SetValue(tc:GetAttack()*-1)
c:RegisterEffect(e2)
end
end
\ No newline at end of file
--pvz bt z 超新星僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,600)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,0))
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1)
e2:SetTarget(s.target)
e2:SetOperation(s.operation)
c:RegisterEffect(e2)
end
function s.filter(c)
return c:IsFaceup() and c:IsSetCard(0x33) and not c:IsCode(2009101)
end
function s.spcon(e,c)
if c==nil then return true end
return Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0 and
Duel.IsExistingMatchingCard(s.filter,c:GetControler(),LOCATION_MZONE,0,1,nil)
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil)
end
function s.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then
local c=e:GetHandler()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetLabel(tc:GetOriginalCode())
e1:SetTargetRange(0,1)
e1:SetValue(s.actlimit)
e1:SetReset(RESET_PHASE+PHASE_END,2)
Duel.RegisterEffect(e1,tp)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_SET_ATTACK_FINAL)
e2:SetLabel(tc:GetOriginalCode())
e2:SetProperty(0,EFFECT_FLAG2_WICKED)
e2:SetTargetRange(0,LOCATION_MZONE)
e2:SetTarget(s.atktg)
e2:SetValue(s.atkval)
e2:SetReset(RESET_PHASE+PHASE_END,2)
Duel.RegisterEffect(e2,tp)
end
end
function s.actlimit(e,re,tp)
return re:GetHandler():IsOriginalCodeRule(e:GetLabel()) and re:IsActiveType(TYPE_MONSTER)
end
function s.atktg(e,c)
return c:IsOriginalCodeRule(e:GetLabel())
end
function s.atkval(e,c)
return 0
end
\ No newline at end of file
--pvz bt z 乌龟骑手僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,600)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_PHASE+PHASE_BATTLE_START)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetOperation(s.atkop)
c:RegisterEffect(e1)
end
function s.atkfilter(c,tp)
return not c:IsAttack(0) and c:IsFaceup() and c:IsControler(1-tp)
end
function s.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or not c:IsControler(tp) then return end
local g=c:GetColumnGroup():Filter(s.atkfilter,nil,tp)
if g:GetCount()>0 then
for tc in aux.Next(g) do
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_BATTLE)
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
e1:SetValue(math.ceil(c:GetAttack()/2))
tc:RegisterEffect(e1)
end
end
end
\ No newline at end of file
--pvz bt z 闹鬼僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,400)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetCondition(s.spcon)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
c:RegisterEffect(e1)
end
function s.spcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:GetDefense()>=700
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetMZoneCount(tp,e:GetHandler())>0
and Duel.IsPlayerCanSpecialSummonMonster(tp,id+1,0xc520,TYPES_TOKEN_MONSTER,0,1700,4,RACE_ZOMBIE,ATTRIBUTE_DARK) end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,e:GetHandler(),1,0,0)
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.Destroy(c,REASON_EFFECT)~=0
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsPlayerCanSpecialSummonMonster(tp,id+1,0xc520,TYPES_TOKEN_MONSTER,0,1700,4,RACE_ZOMBIE,ATTRIBUTE_DARK) then
local token=Duel.CreateToken(tp,id+1)
Duel.SpecialSummonStep(token,0,tp,tp,false,false,POS_FACEUP)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetValue(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
token:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_NO_BATTLE_DAMAGE)
e2:SetValue(1)
token:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_AVOID_BATTLE_DAMAGE)
e3:SetValue(1)
token:RegisterEffect(e3)
local e4=Effect.CreateEffect(e:GetHandler())
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e4:SetCode(EVENT_PHASE+PHASE_END)
e4:SetCountLimit(1)
e4:SetRange(LOCATION_MZONE)
e4:SetCondition(s.descon)
e4:SetOperation(s.desop)
e4:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END+RESET_OPPO_TURN,2)
e:GetHandler():RegisterEffect(e4)
e:GetHandler():RegisterFlagEffect(id,RESET_PHASE+PHASE_END+RESET_OPPO_TURN,0,2)
s[e:GetHandler()]=e4
Duel.SpecialSummonComplete()
end
end
function s.descon(e,tp,eg,ep,ev,re,r,rp)
return tp~=Duel.GetTurnPlayer()
end
function s.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local ct=c:GetTurnCounter()
ct=ct+1
c:SetTurnCounter(ct)
if ct==2 then
Duel.Destroy(c,REASON_RULE)
c:ResetFlagEffect(1082946)
end
end
\ No newline at end of file
--pvz bt z Z科技射线僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,300)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1)
e1:SetTarget(s.dtg)
e1:SetOperation(s.dop)
c:RegisterEffect(e1)
end
function s.filter(c,g)
return c:IsFaceup() and g:IsContains(c)
end
function s.dtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local c=e:GetHandler()
local cg=c:GetColumnGroup()
cg:AddCard(c)
if chkc then return s.filter(chkc,cg) and chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(s.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil,cg) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,s.filter,tp,0,LOCATION_MZONE,1,1,nil,cg)
end
function s.dop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and tc:IsFaceup() then
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EFFECT_IGNORE_BATTLE_TARGET)
e2:SetValue(1)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,2)
tc:RegisterEffect(e2)
end
if c:IsFaceup() and c:IsRelateToEffect(e) then
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetCode(EFFECT_IGNORE_BATTLE_TARGET)
e2:SetValue(1)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,2)
c:RegisterEffect(e2)
end
end
\ No newline at end of file
--pvz bt z 魔术师僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_X(c)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_DECKDES+CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetCondition(s.spcon)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
c:RegisterEffect(e1)
end
function s.spcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:GetDefense()<=200
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanSpecialSummon(tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and not Duel.IsPlayerAffectedByEffect(tp,63060238)
and Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>0 end
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)==0 then return end
Duel.ConfirmDecktop(tp,1)
local g=Duel.GetDecktopGroup(tp,1)
local tc=g:GetFirst()
if tc:IsSetCard(0xc520) and tc:IsCanBeSpecialSummoned(e,0,tp,false,false) then
Duel.DisableShuffleCheck()
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
else
Duel.SendtoGrave(tc,REASON_EFFECT)
end
end
\ No newline at end of file
--pvz bt z Z科技悬浮机器人
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_X(c)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_PHASE+PHASE_BATTLE_START)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(s.atkcon)
e1:SetTarget(s.atktg)
e1:SetOperation(s.atkop)
c:RegisterEffect(e1)
end
function s.atkcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)==0
end
function s.atktg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function s.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
e1:SetValue(c:GetAttack()*2)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
end
if c:IsRelateToEffect(e) then
c:RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,2)
end
end
\ No newline at end of file
--pvz bt z Z科技护盾机器人
local s,id,o=GetID()
function s.initial_effect(c)
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e0:SetCode(EVENT_BATTLED)
e0:SetCondition(s.damcon)
e0:SetOperation(s.damop)
c:RegisterEffect(e0)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e1:SetTarget(s.indtg)
e1:SetValue(1)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_AVOID_BATTLE_DAMAGE)
e2:SetRange(LOCATION_MZONE)
e2:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e2:SetValue(s.tglimit)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_DESTROY_REPLACE)
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e3:SetRange(LOCATION_MZONE)
e3:SetTarget(s.desreptg)
e3:SetOperation(s.desrepop)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e4:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e4:SetCode(EVENT_ADJUST)
e4:SetRange(LOCATION_MZONE)
e4:SetOperation(s.adjustop)
c:RegisterEffect(e4)
end
function s.damcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local bc=Duel.GetAttackTarget()
return Duel.GetAttacker()==c
and ((c:IsPosition(POS_ATTACK) and bc and bc:IsSetCard(0xc520) and bc:IsPosition(POS_ATTACK))
or bc==nil and Duel.GetFlagEffect(0,id)==0)
end
function s.damop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local bc=Duel.GetAttackTarget()
local aatk=0
if c:IsPosition(POS_ATTACK) then
aatk=c:GetAttack()*-1
end
local batk=0
if bc and bc:IsSetCard(0xc520) and bc:IsPosition(POS_ATTACK) then
batk=bc:GetAttack()*-1
end
if bc and bc:IsSetCard(0xc520) and bc:IsPosition(POS_ATTACK) and not (c:GetFlagEffect(57300424)~=0) then
local e1=Effect.CreateEffect(bc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetCode(EFFECT_UPDATE_DEFENSE)
e1:SetValue(batk)
c:RegisterEffect(e1)
end
if bc and c:IsPosition(POS_ATTACK) and not (bc:GetFlagEffect(57300424)~=0) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetCode(EFFECT_UPDATE_DEFENSE)
e1:SetValue(aatk)
bc:RegisterEffect(e1)
end
if bc==nil and c:GetAttack()>0 and Duel.GetFlagEffect(0,id)~=0 then
local dam=math.ceil(c:GetAttack()/1000)
if dam>0 then
local rt=0
for i=1,dam do
if Duel.GetDecktopGroup(1-tp,i):GetCount()==i then rt=rt+1 end
end
local tg=Duel.GetDecktopGroup(1-tp,rt)
if #tg==0 then return end
Duel.DisableShuffleCheck()
if Duel.Remove(tg,POS_FACEDOWN,REASON_EFFECT)>0 and Duel.GetMatchingGroupCount(nil,tp,0,LOCATION_DECK,nil)==0 then
Duel.Win(tp,WIN_REASON_EXODIA)
end
end
end
end
function s.indtg(e,c)
local tc=e:GetHandler()
return (c==tc and tc:GetBattleTarget():IsSetCard(0xc520) or c==tc:GetBattleTarget() and tc:IsSetCard(0xc520))
end
function s.tglimit(e,c)
local tc=e:GetHandler()
return (c==tc and tc:GetBattleTarget():IsSetCard(0xc520) or c==tc:GetBattleTarget() and tc:IsSetCard(0xc520))
end
function s.desreptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsReason(REASON_BATTLE+REASON_EFFECT) and not c:IsReason(REASON_REPLACE)
and not c:GetDefense()==0 end
if Duel.SelectEffectYesNo(tp,c,96) then
return true
else return false end
end
function s.desrepop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_DEFENSE_FINAL)
e1:SetValue(0)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
function s.desfilter2(c,s,tp)
local seq=c:GetSequence()
return seq<5 and math.abs(seq-s)==1 and c:IsControler(tp)
end
function s.adjustop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local seq=c:GetSequence()
local g=Duel.GetMatchingGroup(s.desfilter2,tp,LOCATION_MZONE,LOCATION_MZONE,nil,seq,c:GetControler())
if g:GetCount()~=0 then
for tc in aux.Next(g) do
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetValue(1)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
e2:SetProperty(EFFECT_FLAG_CLIENT_HINT)
tc:RegisterEffect(e2)
tc:RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end
Duel.Readjust()
end
end
\ No newline at end of file
--pvz bt z Z科技压制者机器人
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_X(c)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EXTRA_ATTACK)
e1:SetValue(3)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_ATTACK_ANNOUNCE)
e2:SetOperation(s.atkop)
c:RegisterEffect(e2)
end
function s.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
c:RegisterFlagEffect(57300424,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end
\ No newline at end of file
--pvz bt z Z科技磁暴履带车
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_X(c)
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(id,1))
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e3:SetCode(EVENT_BATTLED)
e3:SetOperation(s.defop)
c:RegisterEffect(e3)
end
function s.deffilter(c,tp)
if c:IsLocation(LOCATION_FZONE) then return false end
if not (c:IsDefenseAbove(1) and c:IsFaceup() and c:IsControler(1-tp) and not (c:GetFlagEffect(57300424)~=0)) then return false end
if ((i==0 or i==2) and c:GetSequence()==5) or ((o==2 or i==4) and c:GetSequence()==6) then return true end
return i+c:GetSequence()==5 or i+c:GetSequence()==3
end
function s.defop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or not c:IsControler(tp) then return end
local dis=c:GetSequence()
local g=Duel.IsExistingMatchingCard(s.deffilter,tp,0,LOCATION_MZONE,1,nil,i)
if g:GetCount()>0 then
for tc in aux.Next(g) do
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetCode(EFFECT_UPDATE_DEFENSE)
e1:SetValue(c:GetAttack()*-1)
tc:RegisterEffect(e1)
end
end
end
\ No newline at end of file
--pvz bt z Z科技堡垒机器人
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddFusionProcFunRep(c,s.ffilter,5,true)
aux.AddContactFusionProcedure(c,Card.IsAbleToRemoveAsCost,LOCATION_HAND+LOCATION_ONFIELD+LOCATION_GRAVE,0,Duel.Remove,POS_FACEUP,REASON_COST)
c:EnableReviveLimit()
Zombie_Characteristics_X(c)
end
function s.ffilter(c,fc,sub,mg,sg)
return c:IsFusionSetCard(0x5521) and (not sg or not sg:IsExists(Card.IsFusionCode,1,c,c:GetFusionCode()))
end
\ No newline at end of file
--pvz bt z Z科技传送僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,600)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCode(EVENT_BE_BATTLE_TARGET)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e1:SetCondition(s.condition)
e1:SetCost(s.cost)
e1:SetOperation(s.operation)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_FIELD)
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetCode(EVENT_PHASE+PHASE_END)
e2:SetRange(LOCATION_REMOVED)
e2:SetCountLimit(1)
e2:SetTarget(s.sumtg)
e2:SetOperation(s.sumop)
c:RegisterEffect(e2)
end
function s.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(id)==0
end
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToRemoveAsCost() end
Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST)
end
function s.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.NegateAttack()
e:GetHandler():RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,0)
end
function s.sumtg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:GetFlagEffect(id)>0
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
end
function s.sumop(e,tp,eg,ep,ev,re,r,rp)
if e:GetHandler():IsRelateToEffect(e) and Duel.SpecialSummon(e:GetHandler(),0,tp,tp,false,false,POS_FACEUP)~=0 then
e:GetHandler():RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD,0,1)
end
end
\ No newline at end of file
--pvz bt z 矿工僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,600)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e2:SetCode(EVENT_SUMMON_SUCCESS)
e2:SetOperation(s.coinop)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e3)
local e4=e2:Clone()
e4:SetCode(EVENT_FLIP_SUMMON_SUCCESS)
c:RegisterEffect(e4)
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
e5:SetCode(EFFECT_CANNOT_BE_BATTLE_TARGET)
e5:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e5:SetRange(LOCATION_MZONE)
e5:SetValue(aux.imval1)
c:RegisterEffect(e5)
local e6=Effect.CreateEffect(c)
e6:SetType(EFFECT_TYPE_SINGLE)
e6:SetCode(EFFECT_DIRECT_ATTACK)
c:RegisterEffect(e6)
end
function s.coinop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
e1:SetValue(0)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CANNOT_ATTACK)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e2)
end
\ No newline at end of file
--pvz bt z 史莱姆僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_X(c)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_DEFCHANGE)
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(s.defcon)
e1:SetTarget(s.deftg)
e1:SetOperation(s.defop)
c:RegisterEffect(e1)
end
function s.defcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:GetDefense()<=400 and e:GetHandler():GetFlagEffect(id)<2
end
function s.deftg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function s.defop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
e1:SetValue(c:GetBaseDefense())
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_CANNOT_ATTACK)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
if Duel.GetTurnPlayer()==tp then
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END+RESET_OPPO_TURN)
else
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END+RESET_OPPO_TURN,2)
end
c:RegisterEffect(e2)
c:RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD,0,1)
end
\ No newline at end of file
--pvz bt z 黑暗骑士僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
c:EnableReviveLimit()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_SPSUMMON_PROC)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e2:SetRange(LOCATION_EXTRA)
e2:SetCondition(s.sprcon)
e2:SetTarget(s.sprtg)
e2:SetOperation(s.sprop)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_UPDATE_DEFENSE)
e3:SetRange(LOCATION_MZONE)
e3:SetTargetRange(LOCATION_MZONE,0)
e3:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0xc520))
e3:SetValue(300)
c:RegisterEffect(e3)
Zombie_Characteristics_X(c)
end
function s.sprfilter(c)
return c:IsFaceupEx() and c:IsAbleToRemoveAsCost()
end
function s.filter1(c,g)
return c:IsCode(57300403) and g:IsExists(s.filter2,1,c,g,c)
end
function s.filter2(c,g,ec)
return c:IsSetCard(0x5521) and g:IsExists(s.filter3,1,Group.FromCards(c,ec),g,c:GetCode())
end
function s.filter3(c,g,code)
return c:IsSetCard(0x5521) and not c:IsCode(code)
end
function s.fselect(g,tp,sc)
return g:IsExists(s.filter1,1,nil,g) and Duel.GetLocationCountFromEx(tp,tp,g,sc)>0
end
function s.sprcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
local g=Duel.GetMatchingGroup(s.sprfilter,tp,LOCATION_HAND+LOCATION_MZONE+LOCATION_GRAVE,0,nil)
return g:CheckSubGroup(s.fselect,3,3,tp,c)
end
function s.sprtg(e,tp,eg,ep,ev,re,r,rp,chk,c)
local g=Duel.GetMatchingGroup(s.sprfilter,tp,LOCATION_HAND+LOCATION_MZONE+LOCATION_GRAVE,0,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local sg=g:SelectSubGroup(tp,s.fselect,true,3,3,tp,c)
if sg then
sg:KeepAlive()
e:SetLabelObject(sg)
return true
else return false end
end
function s.sprop(e,tp,eg,ep,ev,re,r,rp,c)
local g=e:GetLabelObject()
Duel.Remove(g,POS_FACEUP,REASON_SPSUMMON+REASON_COST)
g:DeleteGroup()
end
\ No newline at end of file
--pvz bt z 忍者僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,400)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_BE_BATTLE_TARGET)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_NO_TURN_RESET)
e1:SetCondition(s.atkcon)
e1:SetTarget(s.atktg)
e1:SetOperation(s.atkop)
c:RegisterEffect(e1)
end
function s.atkcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:GetDefense()>=400
end
function s.atktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local a=Duel.GetAttacker()
if chkc then return chkc==a end
if chk==0 then return a~=nil and a:IsCanBeEffectTarget(e) and a:GetAttack()>0 end
Duel.SetTargetCard(a)
end
function s.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if Duel.NegateAttack() and c:IsFaceup() and c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
e1:SetValue(c:GetAttack()*2)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_BATTLE,RESET_SELF_TURN)
c:RegisterEffect(e1)
end
end
\ No newline at end of file
--pvz bt z 军团报僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,400)
end
--pvz bt z 周刊僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,400)
end
--pvz bt z 狂暴周刊僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddXyzProcedure(c,nil,12,2,s.ovfilter,aux.Stringid(id,0),3,nil)
c:EnableReviveLimit()
Zombie_Characteristics(c,500)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCountLimit(1,id)
e1:SetCondition(s.atkcon)
e1:SetTarget(s.atktg)
e1:SetOperation(s.atkop)
c:RegisterEffect(e1)
end
function s.ovfilter(c)
return c:IsFaceup() and c:IsCode(57300434) and c:IsDefenseBelow(1200)
end
function s.atkcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonLocation(LOCATION_EXTRA)
end
function s.atktg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function s.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
e1:SetValue(c:GetAttack()*2)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END+RESET_OPPO_TURN)
c:RegisterEffect(e1)
end
if c:IsRelateToEffect(e) then
c:RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end
end
\ No newline at end of file
--pvz bt z 狂暴军团僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
aux.AddXyzProcedure(c,nil,6,2,s.ovfilter,aux.Stringid(id,0),3,nil)
c:EnableReviveLimit()
Zombie_Characteristics(c,500)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_PHASE+PHASE_BATTLE_START)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetCondition(s.ctcon)
e1:SetTarget(s.cttg)
e1:SetOperation(s.ctop)
c:RegisterEffect(e1)
end
function s.ovfilter(c)
return c:IsFaceup() and c:IsCode(57300433) and c:IsDefenseBelow(1000)
end
function s.ctcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp
end
function s.cttg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function s.ctop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
c:RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_BATTLE,0,1)
end
end
\ No newline at end of file
--pvz bt z 气球僵尸
Duel.LoadScript("c57300400.lua")
local s,id,o=GetID()
function s.initial_effect(c)
Zombie_Characteristics_EX(c,400)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1)
e1:SetCondition(s.condition)
e1:SetOperation(s.operation)
c:RegisterEffect(e1)
end
function s.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsAbleToEnterBP() and not e:GetHandler():IsHasEffect(EFFECT_DIRECT_ATTACK)
end
function s.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DIRECT_ATTACK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
end
end
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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