Commit 0b003322 authored by 聖園ミカ's avatar 聖園ミカ 🐟

520

parent b2d805ff
...@@ -55,12 +55,12 @@ function s.sptg(e, tp, eg, ep, ev, re, r, rp, chk) ...@@ -55,12 +55,12 @@ function s.sptg(e, tp, eg, ep, ev, re, r, rp, chk)
end end
function s.spop(e, tp, eg, ep, ev, re, r, rp) function s.spop(e, tp, eg, ep, ev, re, r, rp)
local c = e:GetHandler() local c = e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c, 0, tp, tp, false, false, POS_FACEUP_ATTACK) ~= 0 then if c:IsRelateToEffect(e) and Duel.SpecialSummon(c, 0, tp, tp, false, false, POS_FACEUP) ~= 0 then
Duel.Draw(tp, 2, REASON_EFFECT) Duel.Draw(tp, 2, REASON_EFFECT)
end end
end end
function s.ctfilter(c) function s.ctfilter(c)
return not (c:IsReason(REASON_DRAW) or c:IsSetCard(0x144e)) return not c:IsSetCard(0x144e)
end end
function s.ctop(e, tp, eg, ep, ev, re, r, rp) function s.ctop(e, tp, eg, ep, ev, re, r, rp)
s[tp] = s[tp] + eg:FilterCount(s.ctfilter, nil) s[tp] = s[tp] + eg:FilterCount(s.ctfilter, nil)
...@@ -97,7 +97,7 @@ function s.chainreg(e, tp, eg, ep, ev, re, r, rp) ...@@ -97,7 +97,7 @@ function s.chainreg(e, tp, eg, ep, ev, re, r, rp)
e:GetHandler():RegisterFlagEffect(id, RESET_EVENT + 0x1fc0000 + RESET_CHAIN, 0, 1) e:GetHandler():RegisterFlagEffect(id, RESET_EVENT + 0x1fc0000 + RESET_CHAIN, 0, 1)
end end
function s.drcon(e, tp, eg, ep, ev, re, r, rp) function s.drcon(e, tp, eg, ep, ev, re, r, rp)
return ep ~= tp and e:GetHandler():GetFlagEffect(id) ~= 0 return ep ~= tp and e:GetHandler():GetFlagEffect(id) ~= 0 and Duel.GetTurnPlayer()~=tp
end end
function s.drop(e, tp, eg, ep, ev, re, r, rp) function s.drop(e, tp, eg, ep, ev, re, r, rp)
Duel.Hint(HINT_CARD, 0, id) Duel.Hint(HINT_CARD, 0, id)
......
...@@ -39,6 +39,7 @@ function c37900003.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -39,6 +39,7 @@ function c37900003.op(e,tp,eg,ep,ev,re,r,rp)
local e4=e3:Clone() local e4=e3:Clone()
e4:SetCode(EVENT_SPSUMMON_SUCCESS) e4:SetCode(EVENT_SPSUMMON_SUCCESS)
Duel.RegisterEffect(e4,tp) Duel.RegisterEffect(e4,tp)
Duel.RegisterFlagEffect(tp,37900003,0,0,0)
end end
end end
function c37900003.mattg(e,c) function c37900003.mattg(e,c)
......
This source diff could not be displayed because it is too large. You can view the blob instead.
local m=53728001 local m=53728001
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="迅征啼鸟 火星之春" cm.name="迅征啼鸟 火星之春"
Duel.LoadScript("c53702500.lua") if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c) function cm.initial_effect(c)
aux.AddLinkProcedure(c,function(c)return c:IsLinkType(TYPE_UNION) and c:IsLinkRace(RACE_MACHINE)end,1,1) aux.AddLinkProcedure(c,function(c)return c:IsLinkType(TYPE_UNION) and c:IsLinkRace(RACE_MACHINE)end,1,1)
SNNM.AnouguryLink(c) SNNM.AnouguryLink(c)
......
...@@ -2,24 +2,7 @@ local m=53728002 ...@@ -2,24 +2,7 @@ local m=53728002
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="征啼鸟 铁与石" cm.name="征啼鸟 铁与石"
function cm.initial_effect(c) function cm.initial_effect(c)
aux.EnableUnionAttribute(c,function(e,c)return c:IsRace(RACE_MACHINE) or e:GetHandler():GetEquipTarget()==c end) aux.EnableUnionAttribute(c,aux.FilterBoolFunction(Card.IsRace,RACE_MACHINE))
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_SZONE)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_EQUIP) e3:SetType(EFFECT_TYPE_EQUIP)
e3:SetCode(EFFECT_UPDATE_ATTACK) e3:SetCode(EFFECT_UPDATE_ATTACK)
...@@ -36,38 +19,6 @@ function cm.initial_effect(c) ...@@ -36,38 +19,6 @@ function cm.initial_effect(c)
e4:SetOperation(cm.unop) e4:SetOperation(cm.unop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.filter(c)
local ct1,ct2=c:GetUnionCount()
return c:IsFaceup() and c:IsRace(RACE_MACHINE) and ct2==0
end
function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.filter(chkc) end
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 and Duel.IsExistingTarget(cm.filter,tp,LOCATION_MZONE,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,cm.filter,tp,LOCATION_MZONE,0,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_EQUIP,g,1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
if not tc:IsRelateToEffect(e) or not cm.filter(tc) then
Duel.SendtoGrave(c,REASON_EFFECT)
return
end
if not Duel.Equip(tp,c,tc,false) then return end
aux.SetUnionState(c)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then Duel.SpecialSummon(c,0,tp,tp,true,false,POS_FACEUP) end
end
function cm.uncon(e,tp,eg,ep,ev,re,r,rp) function cm.uncon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
return c:IsPreviousLocation(LOCATION_SZONE) and c:GetPreviousSequence()<5 return c:IsPreviousLocation(LOCATION_SZONE) and c:GetPreviousSequence()<5
......
...@@ -2,24 +2,13 @@ local m=53728003 ...@@ -2,24 +2,13 @@ local m=53728003
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="征啼鸟 猎人" cm.name="征啼鸟 猎人"
function cm.initial_effect(c) function cm.initial_effect(c)
aux.EnableUnionAttribute(c,function(e,c)return c:IsRace(RACE_MACHINE) or e:GetHandler():GetEquipTarget()==c end) local f1=aux.UnionEquipTarget
local e1=Effect.CreateEffect(c) local f2=aux.UnionUnequipTarget
e1:SetDescription(aux.Stringid(m,0)) aux.UnionEquipTarget=cm.UnionEquipTarget
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) aux.UnionUnequipTarget=cm.UnionUnequipTarget
e1:SetCategory(CATEGORY_EQUIP) aux.EnableUnionAttribute(c,aux.FilterBoolFunction(Card.IsRace,RACE_MACHINE))
e1:SetType(EFFECT_TYPE_IGNITION) aux.UnionEquipTarget=f1
e1:SetRange(LOCATION_MZONE) aux.UnionUnequipTarget=f2
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_SZONE)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,2)) e3:SetDescription(aux.Stringid(m,2))
e3:SetCategory(CATEGORY_DESTROY) e3:SetCategory(CATEGORY_DESTROY)
...@@ -31,31 +20,24 @@ function cm.initial_effect(c) ...@@ -31,31 +20,24 @@ function cm.initial_effect(c)
e3:SetOperation(cm.desop) e3:SetOperation(cm.desop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.checkop(e,tp,eg,ep,ev,re,r,rp) function cm.UnionEquipTarget(equip_filter)
if eg then return function(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
Debug.Message(114) local c=e:GetHandler()
local e1=Effect.CreateEffect(e:GetHandler()) if chkc then return chkc:IsLocation(LOCATION_MZONE) and equip_filter(chkc,tp) end
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) if chk==0 then return c:GetFlagEffect(FLAG_ID_UNION)<2 and Duel.GetLocationCount(tp,LOCATION_SZONE)>0
e1:SetCode(EVENT_CHAIN_END) and Duel.IsExistingTarget(equip_filter,tp,LOCATION_MZONE,0,1,c,tp) end
e1:SetOperation(cm.trgop)
Duel.RegisterEffect(e1,e:GetHandler():GetControler())
end
end
function cm.trgop(e,tp,eg,ep,ev,re,r,rp)
Debug.Message(114)
Duel.RaiseSingleEvent(e:GetHandler(),EVENT_CUSTOM+53728000,re,r,rp,0,0)
end
function cm.filter(c)
local ct1,ct2=c:GetUnionCount()
return c:IsFaceup() and c:IsRace(RACE_MACHINE) and ct2==0
end
function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.filter(chkc) end
if chk==0 then return e:GetHandler():GetFlagEffect(m)<2 and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 and Duel.IsExistingTarget(cm.filter,tp,LOCATION_MZONE,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,cm.filter,tp,LOCATION_MZONE,0,1,1,e:GetHandler()) local g=Duel.SelectTarget(tp,equip_filter,tp,LOCATION_MZONE,0,1,1,c,tp)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_EQUIP,g,1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1) c:RegisterFlagEffect(FLAG_ID_UNION,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
end
function cm.UnionUnequipTarget(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:GetFlagEffect(FLAG_ID_UNION)<2 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and c:GetEquipTarget() and c:IsCanBeSpecialSummoned(e,0,tp,true,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
c:RegisterFlagEffect(FLAG_ID_UNION,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end end
function cm.eqop(e,tp,eg,ep,ev,re,r,rp) function cm.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
local m=53728005 local m=53728005
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="迅征啼鸟 敢死队" cm.name="迅征啼鸟 敢死队"
Duel.LoadScript("c53702500.lua") if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c) function cm.initial_effect(c)
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkRace,RACE_MACHINE),2,2) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkRace,RACE_MACHINE),2,2)
SNNM.AnouguryLink(c) SNNM.AnouguryLink(c)
......
...@@ -2,24 +2,7 @@ local m=53728008 ...@@ -2,24 +2,7 @@ local m=53728008
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="征啼鸟 幽灵" cm.name="征啼鸟 幽灵"
function cm.initial_effect(c) function cm.initial_effect(c)
aux.EnableUnionAttribute(c,function(e,c)return c:IsRace(RACE_MACHINE) or e:GetHandler():GetEquipTarget()==c end) aux.EnableUnionAttribute(c,aux.FilterBoolFunction(Card.IsRace,RACE_MACHINE))
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_SZONE)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_EQUIP) e3:SetType(EFFECT_TYPE_EQUIP)
e3:SetCode(EFFECT_IMMUNE_EFFECT) e3:SetCode(EFFECT_IMMUNE_EFFECT)
...@@ -36,38 +19,6 @@ function cm.initial_effect(c) ...@@ -36,38 +19,6 @@ function cm.initial_effect(c)
e4:SetOperation(cm.unop) e4:SetOperation(cm.unop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.filter(c)
local ct1,ct2=c:GetUnionCount()
return c:IsFaceup() and c:IsRace(RACE_MACHINE) and ct2==0
end
function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.filter(chkc) end
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 and Duel.IsExistingTarget(cm.filter,tp,LOCATION_MZONE,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,cm.filter,tp,LOCATION_MZONE,0,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_EQUIP,g,1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
if not tc:IsRelateToEffect(e) or not cm.filter(tc) then
Duel.SendtoGrave(c,REASON_EFFECT)
return
end
if not Duel.Equip(tp,c,tc,false) then return end
aux.SetUnionState(c)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then Duel.SpecialSummon(c,0,tp,tp,true,false,POS_FACEUP) end
end
function cm.efilter(e,te) function cm.efilter(e,te)
if te:GetHandlerPlayer()==e:GetHandlerPlayer() or not te:IsActivated() then return false end if te:GetHandlerPlayer()==e:GetHandlerPlayer() or not te:IsActivated() then return false end
if not te:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return true end if not te:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return true end
......
...@@ -2,24 +2,7 @@ local m=53728010 ...@@ -2,24 +2,7 @@ local m=53728010
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="征啼鸟 阴森小猫" cm.name="征啼鸟 阴森小猫"
function cm.initial_effect(c) function cm.initial_effect(c)
aux.EnableUnionAttribute(c,function(e,c)return c:IsRace(RACE_MACHINE) or e:GetHandler():GetEquipTarget()==c end) aux.EnableUnionAttribute(c,aux.FilterBoolFunction(Card.IsRace,RACE_MACHINE))
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_SZONE)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_DISABLE) e3:SetCode(EFFECT_DISABLE)
...@@ -44,38 +27,6 @@ function cm.initial_effect(c) ...@@ -44,38 +27,6 @@ function cm.initial_effect(c)
e5:SetOperation(cm.thop) e5:SetOperation(cm.thop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function cm.filter(c)
local ct1,ct2=c:GetUnionCount()
return c:IsFaceup() and c:IsRace(RACE_MACHINE) and ct2==0
end
function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.filter(chkc) end
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 and Duel.IsExistingTarget(cm.filter,tp,LOCATION_MZONE,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,cm.filter,tp,LOCATION_MZONE,0,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_EQUIP,g,1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
if not tc:IsRelateToEffect(e) or not cm.filter(tc) then
Duel.SendtoGrave(c,REASON_EFFECT)
return
end
if not Duel.Equip(tp,c,tc,false) then return end
aux.SetUnionState(c)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then Duel.SpecialSummon(c,0,tp,tp,true,false,POS_FACEUP) end
end
function cm.distg(e,c) function cm.distg(e,c)
if c:GetCardTargetCount()==0 then return false end if c:GetCardTargetCount()==0 then return false end
local eq=e:GetHandler():GetEquipTarget() local eq=e:GetHandler():GetEquipTarget()
......
local m=53728011 local m=53728011
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="迅征啼鸟 暮色匕首" cm.name="迅征啼鸟 暮色匕首"
Duel.LoadScript("c53702500.lua") if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c) function cm.initial_effect(c)
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0xc532),2,2) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkRace,RACE_MACHINE),2,2)
SNNM.AnouguryLink(c) SNNM.AnouguryLink(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
......
...@@ -2,24 +2,7 @@ local m=53728012 ...@@ -2,24 +2,7 @@ local m=53728012
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="征啼鸟 黄金列" cm.name="征啼鸟 黄金列"
function cm.initial_effect(c) function cm.initial_effect(c)
aux.EnableUnionAttribute(c,function(e,c)return c:IsRace(RACE_MACHINE) or e:GetHandler():GetEquipTarget()==c end) aux.EnableUnionAttribute(c,aux.FilterBoolFunction(Card.IsRace,RACE_MACHINE))
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_SZONE)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_EQUIP) e3:SetType(EFFECT_TYPE_EQUIP)
e3:SetCode(EFFECT_EXTRA_ATTACK_MONSTER) e3:SetCode(EFFECT_EXTRA_ATTACK_MONSTER)
...@@ -38,38 +21,6 @@ function cm.initial_effect(c) ...@@ -38,38 +21,6 @@ function cm.initial_effect(c)
e5:SetCode(EVENT_SPSUMMON_SUCCESS) e5:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function cm.filter(c)
local ct1,ct2=c:GetUnionCount()
return c:IsFaceup() and c:IsRace(RACE_MACHINE) and ct2==0
end
function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.filter(chkc) end
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 and Duel.IsExistingTarget(cm.filter,tp,LOCATION_MZONE,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,cm.filter,tp,LOCATION_MZONE,0,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_EQUIP,g,1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
if not tc:IsRelateToEffect(e) or not cm.filter(tc) then
Duel.SendtoGrave(c,REASON_EFFECT)
return
end
if not Duel.Equip(tp,c,tc,false) then return end
aux.SetUnionState(c)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then Duel.SpecialSummon(c,0,tp,tp,true,false,POS_FACEUP) end
end
function cm.cafilter(c) function cm.cafilter(c)
return c:IsType(TYPE_UNION) and c:IsRace(RACE_MACHINE) and c:IsSummonable(true,nil) return c:IsType(TYPE_UNION) and c:IsRace(RACE_MACHINE) and c:IsSummonable(true,nil)
end end
......
local m=53728013 local m=53728013
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="迅征啼鸟 黎明之刃" cm.name="迅征啼鸟 黎明之刃"
Duel.LoadScript("c53702500.lua") if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c) function cm.initial_effect(c)
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkRace,RACE_MACHINE),2) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkRace,RACE_MACHINE),2)
SNNM.AnouguryLink(c) SNNM.AnouguryLink(c)
......
local m=53728014 local m=53728014
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="高速征啼鸟 最后通牒" cm.name="高速征啼鸟 最后通牒"
Duel.LoadScript("c53702500.lua") if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c) function cm.initial_effect(c)
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkRace,RACE_MACHINE),3) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkRace,RACE_MACHINE),3)
SNNM.AnouguryLink(c) SNNM.AnouguryLink(c)
......
...@@ -2,24 +2,7 @@ local m=53728016 ...@@ -2,24 +2,7 @@ local m=53728016
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="征啼鸟 联合中队" cm.name="征啼鸟 联合中队"
function cm.initial_effect(c) function cm.initial_effect(c)
aux.EnableUnionAttribute(c,function(e,c)return c:IsRace(RACE_MACHINE) or e:GetHandler():GetEquipTarget()==c end) aux.EnableUnionAttribute(c,aux.FilterBoolFunction(Card.IsRace,RACE_MACHINE))
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetTarget(cm.eqtg)
e1:SetOperation(cm.eqop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_SZONE)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_EQUIP) e3:SetType(EFFECT_TYPE_EQUIP)
e3:SetCode(EFFECT_UPDATE_ATTACK) e3:SetCode(EFFECT_UPDATE_ATTACK)
...@@ -36,38 +19,6 @@ function cm.initial_effect(c) ...@@ -36,38 +19,6 @@ function cm.initial_effect(c)
e4:SetOperation(cm.rmop) e4:SetOperation(cm.rmop)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.filter(c)
local ct1,ct2=c:GetUnionCount()
return c:IsFaceup() and c:IsRace(RACE_MACHINE) and ct2==0
end
function cm.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.filter(chkc) end
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_SZONE)>0 and Duel.IsExistingTarget(cm.filter,tp,LOCATION_MZONE,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectTarget(tp,cm.filter,tp,LOCATION_MZONE,0,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_EQUIP,g,1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.eqop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=Duel.GetFirstTarget()
if not c:IsRelateToEffect(e) or c:IsFacedown() then return end
if not tc:IsRelateToEffect(e) or not cm.filter(tc) then
Duel.SendtoGrave(c,REASON_EFFECT)
return
end
if not Duel.Equip(tp,c,tc,false) then return end
aux.SetUnionState(c)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetFlagEffect(m)==0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,true,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+0x7e0000+RESET_PHASE+PHASE_END,0,1)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then Duel.SpecialSummon(c,0,tp,tp,true,false,POS_FACEUP) end
end
function cm.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.rmtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if e:GetHandler():GetEquipTarget()==nil then return false end if e:GetHandler():GetEquipTarget()==nil then return false end
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(1-tp) and chkc:IsAbleToRemove() end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(1-tp) and chkc:IsAbleToRemove() end
......
local m=53728021 local m=53728021
local cm=_G["c"..m] local cm=_G["c"..m]
cm.name="大征啼鸟 歼星激流" cm.name="大征啼鸟 歼星激流"
Duel.LoadScript("c53702500.lua") if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c) function cm.initial_effect(c)
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkRace,RACE_MACHINE),2) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkRace,RACE_MACHINE),2)
SNNM.AnouguryLink(c) SNNM.AnouguryLink(c)
......
--黄泉-远辞畴昔- --黄泉-远辞畴昔-
local cm,m,o=GetID() local cm,m,o=GetID()
function cm.initial_effect(c) function cm.initial_effect(c)
aux.AddCodeList(c,60010029)
-- --
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
...@@ -30,6 +31,9 @@ function cm.initial_effect(c) ...@@ -30,6 +31,9 @@ function cm.initial_effect(c)
Duel.RegisterEffect(ge1,0) Duel.RegisterEffect(ge1,0)
end end
end end
function cm.ffil(c)
return c:IsCode(60010029) and c:IsFaceup()
end
function cm.checkop(e,tp,eg,ep,ev,re,r,rp) function cm.checkop(e,tp,eg,ep,ev,re,r,rp)
if rp==tp then if rp==tp then
Duel.RegisterFlagEffect(rp,m,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(rp,m,RESET_PHASE+PHASE_END,0,1)
...@@ -40,16 +44,18 @@ function cm.retcon(e,tp,eg,ep,ev,re,r,rp,tc) ...@@ -40,16 +44,18 @@ function cm.retcon(e,tp,eg,ep,ev,re,r,rp,tc)
return Duel.GetFlagEffect(tp,m)>=9 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.GetTurnPlayer()==tp return Duel.GetFlagEffect(tp,m)>=9 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.GetTurnPlayer()==tp
end end
function cm.retop1(e,tp,eg,ep,ev,re,r,rp) function cm.retop1(e,tp,eg,ep,ev,re,r,rp)
if Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then
local g=Duel.GetMatchingGroup(aux.TRUE,tp,0,LOCATION_ONFIELD,nil) local g=Duel.GetMatchingGroup(aux.TRUE,tp,0,LOCATION_ONFIELD,nil)
if #g~=0 then if #g~=0 and Duel.IsExistingMatchingCard(cm.ffil,tp,LOCATION_FZONE,0,1,nil) then
Duel.SendtoGrave(g,REASON_EFFECT) Duel.SendtoGrave(g,REASON_EFFECT)
if #Duel.GetOperatedGroup()>=5 then if #Duel.GetOperatedGroup()>=5 then
Duel.SelectOption(tp,aux.Stringid(m,0)) Duel.SelectOption(tp,aux.Stringid(m,0))
Duel.Hint(HINT_MESSAGE,1-tp,aux.Stringid(m,0)) Duel.Hint(HINT_MESSAGE,1-tp,aux.Stringid(m,0))
Duel.SelectOption(tp,aux.Stringid(m,1)) Duel.SelectOption(tp,aux.Stringid(m,1))
Duel.Hint(HINT_MESSAGE,1-tp,aux.Stringid(m,1)) Duel.Hint(HINT_MESSAGE,1-tp,aux.Stringid(m,1))
e:GetHandler():SetCardData(CARDDATA_CODE,m+1) --e:GetHandler():SetCardData(CARDDATA_CODE,m+1)
end
end end
end end
end end
...@@ -69,6 +75,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,6 +75,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,aux.TRUE,tp,LOCATION_ONFIELD,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,aux.TRUE,tp,LOCATION_ONFIELD,0,1,1,nil)
if Duel.SendtoGrave(g,REASON_EFFECT)~=0 then if Duel.SendtoGrave(g,REASON_EFFECT)~=0 then
Duel.BreakEffect() Duel.BreakEffect()
Duel.SendtoHand(c,nil,REASON_EFFECT)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_INDESTRUCTABLE_EFFECT) e2:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
...@@ -81,5 +88,5 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -81,5 +88,5 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.indtg(e,c) function cm.indtg(e,c)
return c:IsFacedown() return c:IsFaceup()
end end
\ No newline at end of file
...@@ -42,8 +42,8 @@ function c67200251.initial_effect(c) ...@@ -42,8 +42,8 @@ function c67200251.initial_effect(c)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function c67200251.thcost(e,tp,eg,ep,ev,re,r,rp,chk) function c67200251.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(REASON_COST,tp,Card.IsSetCard,1,nil,0x674) end if chk==0 then return Duel.CheckReleaseGroup(tp,Card.IsSetCard,1,nil,0x674) end
local sg=Duel.SelectReleaseGroup(REASON_COST,tp,Card.IsSetCard,1,1,nil,0x674) local sg=Duel.SelectReleaseGroup(tp,Card.IsSetCard,1,1,nil,0x674)
Duel.Release(sg,REASON_COST) Duel.Release(sg,REASON_COST)
end end
function c67200251.thfilter(c) function c67200251.thfilter(c)
......
...@@ -41,8 +41,8 @@ function c67200254.spfilter1(c,tp) ...@@ -41,8 +41,8 @@ function c67200254.spfilter1(c,tp)
return c:IsFaceup() and c:IsSetCard(0x674) and c:IsReleasable() return c:IsFaceup() and c:IsSetCard(0x674) and c:IsReleasable()
end end
function c67200254.cost(e,tp,eg,ep,ev,re,r,rp,chk) function c67200254.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(REASON_COST,tp,c67200254.spfilter1,1,nil) end if chk==0 then return Duel.CheckReleaseGroup(tp,c67200254.spfilter1,1,nil) end
local sg=Duel.SelectReleaseGroup(REASON_COST,tp,c67200254.spfilter1,1,1,nil) local sg=Duel.SelectReleaseGroup(tp,c67200254.spfilter1,1,1,nil)
Duel.Release(sg,REASON_COST) Duel.Release(sg,REASON_COST)
end end
function c67200254.thfilter(c) function c67200254.thfilter(c)
......
...@@ -39,8 +39,8 @@ function c67200259.spfilter1(c,tp) ...@@ -39,8 +39,8 @@ function c67200259.spfilter1(c,tp)
return c:IsFaceup() and c:IsSetCard(0x674) and c:IsReleasable() return c:IsFaceup() and c:IsSetCard(0x674) and c:IsReleasable()
end end
function c67200259.thcost(e,tp,eg,ep,ev,re,r,rp,chk) function c67200259.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(REASON_COST,tp,c67200259.spfilter1,1,nil) end if chk==0 then return Duel.CheckReleaseGroup(tp,c67200259.spfilter1,1,nil) end
local sg=Duel.SelectReleaseGroup(REASON_COST,tp,c67200259.spfilter1,1,1,nil) local sg=Duel.SelectReleaseGroup(tp,c67200259.spfilter1,1,1,nil)
Duel.Release(sg,REASON_COST) Duel.Release(sg,REASON_COST)
end end
function c67200259.thfilter(c) function c67200259.thfilter(c)
......
...@@ -51,7 +51,7 @@ function c67200287.reptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -51,7 +51,7 @@ function c67200287.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return eg:IsExists(c67200287.repfilter,1,nil,tp) end if chk==0 then return eg:IsExists(c67200287.repfilter,1,nil,tp) end
if Duel.SelectYesNo(tp,aux.Stringid(67200287,1)) then if Duel.SelectYesNo(tp,aux.Stringid(67200287,1)) then
Duel.SendtoExtraP(c,tp,REASON_EFFECT) Duel.SendtoExtraP(c,tp,REASON_EFFECT+REASON_REPLACE)
return true return true
else return false end else return false end
end end
......
...@@ -13,6 +13,7 @@ function c67200309.initial_effect(c) ...@@ -13,6 +13,7 @@ function c67200309.initial_effect(c)
--to hand --to hand
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(67200309,1)) e2:SetDescription(aux.Stringid(67200309,1))
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_TO_DECK) e2:SetCode(EVENT_TO_DECK)
......
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