Commit 502d56de authored by REIKAI's avatar REIKAI 💬

fixed

parent dad41925
Pipeline #23765 passed with stages
in 26 minutes and 29 seconds
No preview for this file type
expansions/pics/50218635.jpg

76.7 KB | W: | H:

expansions/pics/50218635.jpg

80.5 KB | W: | H:

expansions/pics/50218635.jpg
expansions/pics/50218635.jpg
expansions/pics/50218635.jpg
expansions/pics/50218635.jpg
  • 2-up
  • Swipe
  • Onion skin
--零之镇魂曲 --零之镇魂曲
function c16400081.initial_effect(c) function c16400081.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
...@@ -8,7 +8,7 @@ function c16400081.initial_effect(c) ...@@ -8,7 +8,7 @@ function c16400081.initial_effect(c)
e1:SetCountLimit(1,16400081+EFFECT_COUNT_CODE_OATH) e1:SetCountLimit(1,16400081+EFFECT_COUNT_CODE_OATH)
e1:SetOperation(c16400081.activate) e1:SetOperation(c16400081.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--spsummon --spsummon
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(16400081,1)) e2:SetDescription(aux.Stringid(16400081,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOGRAVE) e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOGRAVE)
...@@ -36,29 +36,29 @@ function c16400081.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -36,29 +36,29 @@ function c16400081.activate(e,tp,eg,ep,ev,re,r,rp)
end end
end end
--spsummon --spsummon
function c16400081.cfilter(c) function c16400081.cfilter(c,tp)
return c:IsFaceup() and c:IsControler(1-tp) return c:IsFaceup() and c:IsControler(1-tp)
end end
function c16400081.spcon(e,tp,eg,ep,ev,re,r,rp) function c16400081.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c16400081.cfilter,1,nil) return eg:IsExists(c16400081.cfilter,1,nil,tp)
end end
function c16400081.spfilter(c,e,tp) function c16400081.spfilter(c,e,tp)
return c:IsSetCard(0xce2) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0xce2) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c16400081.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c16400081.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local ct=Duel.GetFieldGroupCount(tp,LOCATION_ONFIELD,0) local ct=Duel.GetFieldGroupCount(tp,LOCATION_ONFIELD,0)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c16400081.spfilter,tp,LOCATION_REMOVED+LOCATION_HAND+LOCATION_GRAVE,0,1,nil,e,tp) if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c16400081.spfilter,tp,LOCATION_REMOVED+LOCATION_HAND+LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.IsPlayerCanDiscardDeck(tp,ct) and Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>ct end and Duel.IsPlayerCanDiscardDeck(tp,ct) and Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>ct end
Duel.SetOperationInfo(0,CATEGORY_DECKDES,nil,0,tp,ct) Duel.SetOperationInfo(0,CATEGORY_DECKDES,nil,0,tp,ct)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_REMOVED+LOCATION_HAND+LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_REMOVED+LOCATION_HAND+LOCATION_GRAVE)
end end
function c16400081.spop(e,tp,eg,ep,ev,re,r,rp) function c16400081.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return false end if not c:IsRelateToEffect(e) then return false end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c16400081.spfilter),tp,LOCATION_REMOVED+LOCATION_HAND+LOCATION_GRAVE,0,1,1,nil,e,tp):GetFirst() local sg=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c16400081.spfilter),tp,LOCATION_REMOVED+LOCATION_HAND+LOCATION_GRAVE,0,1,1,nil,e,tp):GetFirst()
if Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)~=0 then if Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)~=0 then
local ct=Duel.GetFieldGroupCount(tp,LOCATION_ONFIELD,0) local ct=Duel.GetFieldGroupCount(tp,LOCATION_ONFIELD,0)
Duel.DiscardDeck(tp,ct,REASON_EFFECT) Duel.DiscardDeck(tp,ct,REASON_EFFECT)
end end
end end
\ No newline at end of file
--短暂的时间-罗洛·兰佩路基 --短暂的时间-罗洛·兰佩路基
function c16400097.initial_effect(c) function c16400097.initial_effect(c)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0xce2),aux.NonTuner(nil),1) aux.AddSynchroProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0xce2),aux.NonTuner(nil),1)
c:EnableReviveLimit() c:EnableReviveLimit()
--cannot special summon --cannot special summon
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
...@@ -50,8 +50,8 @@ function c16400097.filter(c) ...@@ -50,8 +50,8 @@ function c16400097.filter(c)
return c:IsSetCard(0xce2) and c:IsAbleToDeck() return c:IsSetCard(0xce2) and c:IsAbleToDeck()
end end
function c16400097.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c16400097.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c67169062.filter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c16400097.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c67169062.filter,tp,LOCATION_GRAVE,0,4,nil) end if chk==0 then return Duel.IsExistingTarget(c16400097.filter,tp,LOCATION_GRAVE,0,4,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g=Duel.SelectTarget(tp,c16400097.filter,tp,LOCATION_GRAVE,0,4,4,nil) local g=Duel.SelectTarget(tp,c16400097.filter,tp,LOCATION_GRAVE,0,4,4,nil)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_TODECK,g,g:GetCount(),0,0)
......
--向导兵器-兰斯洛特 --向导兵器-兰斯洛特
function c16400098.initial_effect(c) function c16400098.initial_effect(c)
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0xce1),2,4) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0xce1),2,4)
c:EnableReviveLimit() c:EnableReviveLimit()
--to grave --to grave
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(16400098,0)) e1:SetDescription(aux.Stringid(16400098,0))
e1:SetCategory(CATEGORY_TOGRAVE) e1:SetCategory(CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY) e1:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCountLimit(1,16400098) e1:SetCountLimit(1,16400098)
e1:SetCondition(c16400098.thcon) e1:SetCondition(c16400098.thcon)
e1:SetTarget(c16400098.thtg) e1:SetTarget(c16400098.thtg)
e1:SetOperation(c16400098.thop) e1:SetOperation(c16400098.thop)
...@@ -46,10 +46,10 @@ function c16400098.tgfilter(c) ...@@ -46,10 +46,10 @@ function c16400098.tgfilter(c)
end end
function c16400098.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c16400098.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK)
end end
function c16400098.thop(e,tp,eg,ep,ev,re,r,rp) function c16400098.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c16400098.tgfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c16400098.tgfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoGrave(g,REASON_EFFECT) Duel.SendtoGrave(g,REASON_EFFECT)
......
--Geass-身份的更替 --Geass-身份的更替
function c16400099.initial_effect(c) function c16400099.initial_effect(c)
--copy --copy
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(c16400099,1)) e1:SetDescription(aux.Stringid(16400099,1))
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_SZONE) e1:SetRange(LOCATION_SZONE)
e1:SetCountLimit(1,c16400099) e1:SetCountLimit(1,16400099)
e1:SetCost(c16400099.cpcost) e1:SetCost(c16400099.cpcost)
e1:SetTarget(c16400099.cptg) e1:SetTarget(c16400099.cptg)
e1:SetOperation(c16400099.cpop) e1:SetOperation(c16400099.cpop)
...@@ -17,7 +17,7 @@ function c16400099.initial_effect(c) ...@@ -17,7 +17,7 @@ function c16400099.initial_effect(c)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_GRAVE) e2:SetRange(LOCATION_GRAVE)
e2:SetCode(EVENT_FREE_CHAIN) e2:SetCode(EVENT_FREE_CHAIN)
e2:SetCountLimit(1,c16400199) e2:SetCountLimit(1,16400199)
e2:SetHintTiming(0,TIMING_END_PHASE) e2:SetHintTiming(0,TIMING_END_PHASE)
e2:SetTarget(c16400099.thtg) e2:SetTarget(c16400099.thtg)
e2:SetOperation(c16400099.thop) e2:SetOperation(c16400099.thop)
......
...@@ -25,6 +25,7 @@ function c50218635.initial_effect(c) ...@@ -25,6 +25,7 @@ function c50218635.initial_effect(c)
c:RegisterEffect(e21) c:RegisterEffect(e21)
--lv --lv
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(50218635,0))
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e3:SetCode(EVENT_SUMMON_SUCCESS) e3:SetCode(EVENT_SUMMON_SUCCESS)
...@@ -36,6 +37,20 @@ function c50218635.initial_effect(c) ...@@ -36,6 +37,20 @@ function c50218635.initial_effect(c)
e33:SetCode(EVENT_SPSUMMON_SUCCESS) e33:SetCode(EVENT_SPSUMMON_SUCCESS)
e33:SetCondition(c50218635.lvcon) e33:SetCondition(c50218635.lvcon)
c:RegisterEffect(e33) c:RegisterEffect(e33)
--attr
local e34=Effect.CreateEffect(c)
e34:SetDescription(aux.Stringid(50218635,1))
e34:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e34:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e34:SetCode(EVENT_SUMMON_SUCCESS)
e34:SetCountLimit(1,50218635)
e34:SetTarget(c50218635.attg)
e34:SetOperation(c50218635.atop)
c:RegisterEffect(e34)
local e35=e34:Clone()
e35:SetCode(EVENT_SPSUMMON_SUCCESS)
e35:SetCondition(c50218635.lvcon)
c:RegisterEffect(e35)
--hand --hand
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE) e4:SetType(EFFECT_TYPE_SINGLE)
...@@ -52,7 +67,7 @@ end ...@@ -52,7 +67,7 @@ end
function c50218635.slfilter(c) function c50218635.slfilter(c)
local tc1=c:GetLeftScale() local tc1=c:GetLeftScale()
local tc2=c:GetRightScale() local tc2=c:GetRightScale()
return tc1~=0 and tc2~=0 and c:IsSetCard(0xcb6) return tc1~=0 and tc2~=0 and c:IsSetCard(0xcb6) and not c:IsCode(50218635)
end end
function c50218635.slcon(e) function c50218635.slcon(e)
return Duel.IsExistingMatchingCard(c50218635.slfilter,e:GetHandlerPlayer(),LOCATION_PZONE,0,1,e:GetHandler()) return Duel.IsExistingMatchingCard(c50218635.slfilter,e:GetHandlerPlayer(),LOCATION_PZONE,0,1,e:GetHandler())
...@@ -63,7 +78,7 @@ end ...@@ -63,7 +78,7 @@ end
function c50218635.lvtg(e,tp,eg,ep,ev,re,r,rp,chk) function c50218635.lvtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
local lv=e:GetHandler():GetLevel() local lv=e:GetHandler():GetLevel()
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(50218635,1)) Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(50218635,2))
e:SetLabel(Duel.AnnounceLevel(tp,1,6,lv)) e:SetLabel(Duel.AnnounceLevel(tp,1,6,lv))
end end
function c50218635.lvop(e,tp,eg,ep,ev,re,r,rp) function c50218635.lvop(e,tp,eg,ep,ev,re,r,rp)
...@@ -77,6 +92,23 @@ function c50218635.lvop(e,tp,eg,ep,ev,re,r,rp) ...@@ -77,6 +92,23 @@ function c50218635.lvop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
end end
function c50218635.attg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
local attr=e:GetHandler():GetAttribute()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATTRIBUTE)
e:SetLabel(Duel.AnnounceAttribute(tp,1,0x2f))
end
function c50218635.atop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CHANGE_ATTRIBUTE)
e1:SetValue(e:GetLabel())
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
end
end
function c50218635.con(e,c) function c50218635.con(e,c)
local c=e:GetHandler() local c=e:GetHandler()
return c:IsOnField() and c:IsFaceup() return c:IsOnField() and c:IsFaceup()
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
function c65050166.initial_effect(c) function c65050166.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcFun2(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0x6da8),c65050164.ffilter,true) aux.AddFusionProcFun2(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0x6da8),c65050166.ffilter,true)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(65050166,0)) e1:SetDescription(aux.Stringid(65050166,0))
...@@ -53,7 +53,7 @@ function c65050166.activate2(e,tp,eg,ep,ev,re,r,rp) ...@@ -53,7 +53,7 @@ function c65050166.activate2(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c65050164.ffilter(c) function c65050166.ffilter(c)
return c:IsFusionSetCard(0x6da8) and c:IsAttackAbove(2000) return c:IsFusionSetCard(0x6da8) and c:IsAttackAbove(2000)
end end
function c65050166.disfilter(c) function c65050166.disfilter(c)
......
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