Commit db70ee6c authored by Amiya's avatar Amiya

修复

parent 332ec1bb
Pipeline #41600 passed with stages
in 3 minutes and 3 seconds
No preview for this file type
...@@ -24,17 +24,17 @@ function s.initial_effect(c) ...@@ -24,17 +24,17 @@ function s.initial_effect(c)
e2:SetOperation(s.lvop) e2:SetOperation(s.lvop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--special summon --special summon
local e2=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,2)) e3:SetDescription(aux.Stringid(id,2))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_BE_MATERIAL) e3:SetCode(EVENT_BE_MATERIAL)
e2:SetCountLimit(1,id+o*2) e3:SetCountLimit(1,id+o*2)
e2:SetCondition(s.spcon2) e3:SetCondition(s.spcon2)
e2:SetTarget(s.sptg2) e3:SetTarget(s.sptg2)
e2:SetOperation(s.spop2) e3:SetOperation(s.spop2)
c:RegisterEffect(e2) c:RegisterEffect(e3)
end end
function s.cfilter(c) function s.cfilter(c)
return c:IsRace(RACE_FIEND) and c:IsType(TYPE_TUNER) and c:IsFaceup() return c:IsRace(RACE_FIEND) and c:IsType(TYPE_TUNER) and c:IsFaceup()
...@@ -58,7 +58,7 @@ function s.lvtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -58,7 +58,7 @@ function s.lvtg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function s.lvop(e,tp,eg,ep,ev,re,r,rp) function s.lvop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) and not c:IsImmuneToEffect(e) and c:IsLevelAbove(2) then if c:IsFaceup() and c:IsRelateToChain() and not c:IsImmuneToEffect(e) and c:IsLevelAbove(2) then
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_LEVEL) e1:SetCode(EFFECT_UPDATE_LEVEL)
...@@ -89,7 +89,7 @@ function s.sptg2(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -89,7 +89,7 @@ function s.sptg2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
end end
function s.spop2(e,tp,eg,ep,ev,re,r,rp) function s.spop2(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToChain() then if tc:IsRelateToChain() and aux.NecroValleyFilter()(tc) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP_DEFENSE) Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP_DEFENSE)
end end
end end
\ No newline at end of file
...@@ -102,7 +102,7 @@ end ...@@ -102,7 +102,7 @@ end
function s.spop(e,tp,eg,ep,ev,re,r,rp) function s.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp) local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.spfilter),tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end end
......
--クリムゾン・ブレード・ドラゴン --クリムゾン・ブレード・ドラゴン
local s,id,o=GetID() local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
aux.AddCodeList(c,70902743)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x57),aux.NonTuner(nil),1) aux.AddSynchroProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x57),aux.NonTuner(nil),1)
c:EnableReviveLimit() c:EnableReviveLimit()
...@@ -68,7 +67,7 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -68,7 +67,7 @@ function s.thop(e,tp,eg,ep,ev,re,r,rp)
end end
function s.destg(e,tp,eg,ep,ev,re,r,rp,chk) function s.destg(e,tp,eg,ep,ev,re,r,rp,chk)
local tc=e:GetHandler():GetBattleTarget() local tc=e:GetHandler():GetBattleTarget()
if chk==0 then return tc and tc:IsFaceup() and tc:IsLevelAbove(5) end if chk==0 then return tc and tc:IsFaceup() and tc:IsLevelAbove(5) and tc:IsControler(1-tp) end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,tc,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,tc,1,0,0)
end end
function s.desop(e,tp,eg,ep,ev,re,r,rp) function s.desop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -24,7 +24,7 @@ function s.initial_effect(c) ...@@ -24,7 +24,7 @@ function s.initial_effect(c)
e2:SetOperation(s.atkop) e2:SetOperation(s.atkop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function s.cfilter(c,res) function s.cfilter(c)
return c:IsFaceup() and (c:IsCode(70902743) or aux.IsCodeListed(c,70902743) and c:IsType(TYPE_SYNCHRO)) return c:IsFaceup() and (c:IsCode(70902743) or aux.IsCodeListed(c,70902743) and c:IsType(TYPE_SYNCHRO))
end end
function s.thfilter(c,res) function s.thfilter(c,res)
...@@ -48,7 +48,7 @@ end ...@@ -48,7 +48,7 @@ end
function s.atkcon(e,tp,eg,ep,ev,re,r,rp) function s.atkcon(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetAttacker() local tc=Duel.GetAttacker()
return tc:IsControler(tp) and (tc:IsSetCard(0x104f) or tc:IsCode(70902743)) and tc:IsRelateToBattle() return tc:IsControler(tp) and (tc:IsSetCard(0x104f) or tc:IsCode(70902743)) and tc:IsRelateToBattle()
and tc:IsChainAttackable() and tc:IsControler(tp) and tc:IsChainAttackable()
end end
function s.atkop(e,tp,eg,ep,ev,re,r,rp) function s.atkop(e,tp,eg,ep,ev,re,r,rp)
Duel.ChainAttack() Duel.ChainAttack()
......
...@@ -46,12 +46,9 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -46,12 +46,9 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_POSITION,g,g:GetCount(),0,0)
end end
if ct>=10 and e:GetHandler():GetOriginalCode()==id and e:IsHasType(EFFECT_TYPE_ACTIVATE) then if ct>=10 and e:GetHandler():GetOriginalCode()==id and e:IsHasType(EFFECT_TYPE_ACTIVATE) then
Duel.SetChainLimit(s.chainlm) Duel.SetChainLimit(aux.FALSE)
end end
end end
function s.chainlm(e,rp,tp)
return tp==rp
end
function s.activate(e,tp,eg,ep,ev,re,r,rp) function s.activate(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.GetFlagEffect(1-tp,id) local ct=Duel.GetFlagEffect(1-tp,id)
if ct>=1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if ct>=1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
......
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