Commit ccd1736b authored by 未闻皂名's avatar 未闻皂名

2023/11/11 新增:24PR新卡,融合术解除调整

parent 4e6deb21
Pipeline #24026 passed with stages
in 7 minutes and 54 seconds
No preview for this file type
No preview for this file type
...@@ -3,7 +3,7 @@ local cm=_G["c"..m] ...@@ -3,7 +3,7 @@ local cm=_G["c"..m]
cm.name="五神龙" cm.name="五神龙"
function cm.initial_effect(c) function cm.initial_effect(c)
--Fusion Material --Fusion Material
aux.AddFusionProcFunRep(c,cm.material,5,true) aux.AddFusionProcFunRep(c,cm.matfilter,5,true)
--Only Fusion Summon --Only Fusion Summon
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
...@@ -21,7 +21,8 @@ function cm.initial_effect(c) ...@@ -21,7 +21,8 @@ function cm.initial_effect(c)
RushDuel.AddContinuousEffect(c,e1) RushDuel.AddContinuousEffect(c,e1)
end end
--Fusion Material --Fusion Material
function cm.material(c) cm.unspecified_funsion=true
function cm.matfilter(c)
return c:IsRace(RACE_DRAGON) return c:IsRace(RACE_DRAGON)
end end
--Indes --Indes
......
...@@ -5,7 +5,7 @@ cm.name="银河冠临融合夏娃" ...@@ -5,7 +5,7 @@ cm.name="银河冠临融合夏娃"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Fusion Material --Fusion Material
aux.AddFusionProcCodeFun(c,list[1],cm.material,1,true,true) aux.AddFusionProcCodeFun(c,list[1],cm.matfilter,1,true,true)
--Draw --Draw
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
...@@ -19,7 +19,8 @@ function cm.initial_effect(c) ...@@ -19,7 +19,8 @@ function cm.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
--Fusion Material --Fusion Material
function cm.material(c) cm.unspecified_funsion=true
function cm.matfilter(c)
return c:IsFusionAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_GALAXY) return c:IsFusionAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_GALAXY)
end end
--Draw --Draw
......
...@@ -5,7 +5,7 @@ cm.name="永恒银河舰忘却龙" ...@@ -5,7 +5,7 @@ cm.name="永恒银河舰忘却龙"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Fusion Material --Fusion Material
aux.AddFusionProcCodeFun(c,list[1],cm.material,2,true,true) aux.AddFusionProcCodeFun(c,list[1],cm.matfilter,2,true,true)
--Indes --Indes
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
...@@ -18,7 +18,8 @@ function cm.initial_effect(c) ...@@ -18,7 +18,8 @@ function cm.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
--Fusion Material --Fusion Material
function cm.material(c) cm.unspecified_funsion=true
function cm.matfilter(c)
return c:IsFusionAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_GALAXY) return c:IsFusionAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_GALAXY)
end end
--Indes --Indes
......
...@@ -5,7 +5,7 @@ cm.name="太空融合-额外探险等离子体号" ...@@ -5,7 +5,7 @@ cm.name="太空融合-额外探险等离子体号"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Fusion Material --Fusion Material
aux.AddFusionProcCodeFun(c,list[1],cm.material,1,true,true) aux.AddFusionProcCodeFun(c,list[1],cm.matfilter,1,true,true)
--Destroy --Destroy
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
...@@ -18,7 +18,8 @@ function cm.initial_effect(c) ...@@ -18,7 +18,8 @@ function cm.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
--Fusion Material --Fusion Material
function cm.material(c) cm.unspecified_funsion=true
function cm.matfilter(c)
return c:IsFusionAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_GALAXY) return c:IsFusionAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_GALAXY)
end end
--Destroy --Destroy
......
...@@ -5,7 +5,7 @@ cm.name="暗冥厄运巨星" ...@@ -5,7 +5,7 @@ cm.name="暗冥厄运巨星"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Fusion Material --Fusion Material
aux.AddFusionProcCodeFun(c,list[1],cm.material,1,true,true) aux.AddFusionProcCodeFun(c,list[1],cm.matfilter,1,true,true)
--To Hand --To Hand
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
...@@ -17,7 +17,8 @@ function cm.initial_effect(c) ...@@ -17,7 +17,8 @@ function cm.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
--Fusion Material --Fusion Material
function cm.material(c) cm.unspecified_funsion=true
function cm.matfilter(c)
return c:IsFusionAttribute(ATTRIBUTE_LIGHT+ATTRIBUTE_DARK) and c:IsRace(RACE_GALAXY) return c:IsFusionAttribute(ATTRIBUTE_LIGHT+ATTRIBUTE_DARK) and c:IsRace(RACE_GALAXY)
end end
--To Hand --To Hand
......
...@@ -14,6 +14,7 @@ function cm.initial_effect(c) ...@@ -14,6 +14,7 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCondition(cm.condition) e1:SetCondition(cm.condition)
e1:SetCost(cm.cost) e1:SetCost(cm.cost)
e1:SetTarget(cm.target)
e1:SetOperation(cm.operation) e1:SetOperation(cm.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
...@@ -26,6 +27,9 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -26,6 +27,9 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.confilter,tp,LOCATION_GRAVE,0,1,nil) return Duel.IsExistingMatchingCard(cm.confilter,tp,LOCATION_GRAVE,0,1,nil)
end end
cm.cost=RD.CostSendDeckTopToGrave(1) cm.cost=RD.CostSendDeckTopToGrave(1)
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return RD.IsCanAttachEffectIndes(e:GetHandler(),tp,cm.indval) end
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp) function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then if c:IsFaceup() and c:IsRelateToEffect(e) then
......
...@@ -15,11 +15,12 @@ end ...@@ -15,11 +15,12 @@ end
function cm.filter(c) function cm.filter(c)
return c:IsFaceup() and c:IsType(TYPE_FUSION) and c:IsAbleToExtra() return c:IsFaceup() and c:IsType(TYPE_FUSION) and c:IsAbleToExtra()
end end
function cm.spfilter(c,e,tp,fc,mg) function cm.spfilter(c,e,tp,fc)
return c:IsControler(tp) and c:IsLocation(LOCATION_GRAVE) and aux.IsMaterialListCode(fc,c:GetCode()) return c:IsControler(tp) and c:IsLocation(LOCATION_GRAVE) and aux.IsMaterialListCode(fc,c:GetCode())
and c:GetReason()&(REASON_FUSION+REASON_MATERIAL)==(REASON_FUSION+REASON_MATERIAL) and c:GetReasonCard()==fc
and RD.IsCanBeSpecialSummoned(c,e,tp,POS_FACEUP) and RD.IsCanBeSpecialSummoned(c,e,tp,POS_FACEUP)
and fc:CheckFusionMaterial(mg,c,PLAYER_NONE,true) end
function cm.check(g,fc)
return fc:CheckFusionMaterial(g,nil,PLAYER_NONE,true)
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
...@@ -29,18 +30,22 @@ end ...@@ -29,18 +30,22 @@ end
function cm.activate(e,tp,eg,ep,ev,re,r,rp) function cm.activate(e,tp,eg,ep,ev,re,r,rp)
RD.SelectAndDoAction(HINTMSG_TODECK,cm.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,function(g) RD.SelectAndDoAction(HINTMSG_TODECK,cm.filter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,function(g)
local tc=g:GetFirst() local tc=g:GetFirst()
local mg=tc:GetMaterial()
local ct=mg:GetCount()
local min,max=aux.GetMaterialListCount(tc) local min,max=aux.GetMaterialListCount(tc)
local sump=tc:GetControler() local sump=tc:GetControler()
local sumtype=tc:GetSummonType() local sumtype=tc:GetSummonType()
local mg=Duel.GetMatchingGroup(aux.NecroValleyFilter(cm.spfilter),sump,LOCATION_GRAVE,0,nil,e,sump,tc)
if RD.SendToDeckAndExists(tc) and sumtype&SUMMON_TYPE_FUSION==SUMMON_TYPE_FUSION if RD.SendToDeckAndExists(tc) and sumtype&SUMMON_TYPE_FUSION==SUMMON_TYPE_FUSION
and ct>0 and min==max and min==ct and ct<=Duel.GetLocationCount(sump,LOCATION_MZONE) and not tc.unspecified_funsion
and mg:FilterCount(aux.NecroValleyFilter(cm.spfilter),nil,e,tp,tc,mg)==ct and min>0 and min==max and min<=Duel.GetLocationCount(sump,LOCATION_MZONE)
and mg:CheckSubGroup(cm.check,min,min,tc)
and not Duel.IsPlayerAffectedByEffect(sump,59822133) and not Duel.IsPlayerAffectedByEffect(sump,59822133)
and Duel.SelectYesNo(sump,aux.Stringid(m,1)) then and Duel.SelectYesNo(sump,aux.Stringid(m,1)) then
Duel.BreakEffect() Duel.Hint(HINT_SELECTMSG,sump,HINTMSG_SPSUMMON)
Duel.SpecialSummon(mg,0,sump,sump,false,false,POS_FACEUP) local g=mg:SelectSubGroup(sump,cm.check,false,min,min,tc)
if g:GetCount()>0 then
Duel.BreakEffect()
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end end
end) end)
end end
\ No newline at end of file
local m=120256002
local list={120256002,120216018}
local cm=_G["c"..m]
cm.name="星际史莱瓦"
function cm.initial_effect(c)
--Draw
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1))
e1:SetCategory(CATEGORY_DRAW)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(cm.condition)
e1:SetTarget(cm.target)
e1:SetOperation(cm.operation)
c:RegisterEffect(e1)
end
--Draw
function cm.confilter(c)
return c:IsFaceup() and c:IsCode(list[1],list[2])
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>9
and Duel.IsExistingMatchingCard(cm.confilter,tp,LOCATION_ONFIELD,0,2,nil)
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) end
RD.TargetDraw(tp,1)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
RD.Draw()
end
\ No newline at end of file
local m=120256004
local list={120207008,120237008}
local cm=_G["c"..m]
cm.name="凯撒龙"
function cm.initial_effect(c)
RD.AddCodeList(c,list)
--Fusion Material
RD.AddFusionProcedure(c,list[1],list[2])
end
\ No newline at end of file
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