Commit 7142e96e authored by 未闻皂名's avatar 未闻皂名

2025/10/12 融合/仪式召唤修改

parent d46447c2
Pipeline #41015 passed with stages
in 13 minutes and 9 seconds
...@@ -32,8 +32,7 @@ function RushDuel.AddFusionProcedure(card, sub, insf, ...) ...@@ -32,8 +32,7 @@ function RushDuel.AddFusionProcedure(card, sub, insf, ...)
-- 融合素材 -- 融合素材
local codes, funcs = RushDuel.MakeFusionMaterial(card, table.unpack(vals)) local codes, funcs = RushDuel.MakeFusionMaterial(card, table.unpack(vals))
RushDuel.SetFusionMaterialData(card, codes, #funcs, #funcs) RushDuel.SetFusionMaterialData(card, codes, #funcs, #funcs)
local rep = table.remove(funcs) return RushDuel.CreateFusionProcedure(card, sub, insf, funcs, nil, 0, 0, nil)
return RushDuel.CreateFusionProcedure(card, sub, insf, funcs, rep, 1, 1, nil)
end end
-- 添加融合手续: 指定条件, 不固定数量 -- 添加融合手续: 指定条件, 不固定数量
...@@ -197,6 +196,7 @@ function RushDuel.FusionProcedureOperation(sub, insf, funcs, rep, min, max, chec ...@@ -197,6 +196,7 @@ function RushDuel.FusionProcedureOperation(sub, insf, funcs, rep, min, max, chec
if RushDuel.MaxFusionMaterialCount ~= nil then if RushDuel.MaxFusionMaterialCount ~= nil then
maxc = math.min(maxc, RushDuel.MaxFusionMaterialCount) maxc = math.min(maxc, RushDuel.MaxFusionMaterialCount)
end end
maxc = math.min(maxc, #mg)
local sg = mg:SelectSubGroup(tp, RushDuel.FusionProcedureMaterialChecker, true, minc, maxc, tp, c, chkfnf, sub, funcs, rep, checker) local sg = mg:SelectSubGroup(tp, RushDuel.FusionProcedureMaterialChecker, true, minc, maxc, tp, c, chkfnf, sub, funcs, rep, checker)
if sg == nil then if sg == nil then
sg = Group.CreateGroup() sg = Group.CreateGroup()
...@@ -225,23 +225,25 @@ function RushDuel.FusionProcedureMaterialChecker(mg, tp, fc, chkfnf, sub, funcs, ...@@ -225,23 +225,25 @@ function RushDuel.FusionProcedureMaterialChecker(mg, tp, fc, chkfnf, sub, funcs,
end end
end end
-- 融合手续 - 素材组合 -- 融合手续 - 素材组合
function RushDuel.FusionProcedureCheckStep(c, mg, sg, fc, sub, rep, func, ...) function RushDuel.FusionProcedureCheckStep(c, mg, sg, fc, sub, rep, func1, func2, ...)
if func2 then
local res = false local res = false
if func then
sg:AddCard(c) sg:AddCard(c)
if func(c, fc, false, mg, sg) then if func1(c, fc, false, mg, sg) then
res = mg:IsExists(RushDuel.FusionProcedureCheckStep, 1, sg, mg, sg, fc, sub, rep, ...) res = mg:IsExists(RushDuel.FusionProcedureCheckStep, 1, sg, mg, sg, fc, sub, rep, func2, ...)
elseif sub and func(c, fc, true, mg, sg) then elseif sub and func1(c, fc, true, mg, sg) then
res = mg:IsExists(RushDuel.FusionProcedureCheckStep, 1, sg, mg, sg, fc, false, rep, ...) res = mg:IsExists(RushDuel.FusionProcedureCheckStep, 1, sg, mg, sg, fc, false, rep, func2, ...)
end end
sg:RemoveCard(c) sg:RemoveCard(c)
return res return res
elseif func1 then
return func1(c, fc, sub, mg, sg)
elseif rep then elseif rep then
local eg = mg:Clone() local eg = mg:Clone()
eg:Sub(sg) eg:Sub(sg)
return eg:FilterCount(rep, nil, fc, false, mg, sg) == #eg return eg:FilterCount(rep, nil, fc, false, mg, sg) == #eg
end end
return res return false
end end
-- 可以进行接触融合术 -- 可以进行接触融合术
......
...@@ -5,14 +5,22 @@ RushDuel.CurrentRitualEffect = nil ...@@ -5,14 +5,22 @@ RushDuel.CurrentRitualEffect = nil
-- 额外的仪式检测 -- 额外的仪式检测
RushDuel.RitualExtraChecker = nil RushDuel.RitualExtraChecker = nil
-- 等级相同 -- 原本等级相同
RITUAL_LEVEL_EQUAL = 0x0 RITUAL_ORIGINAL_LEVEL_EQUAL = 1
-- 等级超过 -- 原本等级超过
RITUAL_LEVEL_GREATER = 0x1 RITUAL_ORIGINAL_LEVEL_GREATER = 2
-- 攻击相同 -- 当前等级相同
RITUAL_ATTACK_EQUAL = 0x2 RITUAL_CURRENT_LEVEL_EQUAL = 3
-- 攻击超过 -- 当前等级超过
RITUAL_ATTACK_GREATER = 0x3 RITUAL_CURRENT_LEVEL_GREATER = 4
-- 原本攻击相同
RITUAL_ORIGINAL_ATTACK_EQUAL = 5
-- 原本攻击超过
RITUAL_ORIGINAL_ATTACK_GREATER = 6
-- 当前攻击相同
RITUAL_CURRENT_ATTACK_EQUAL = 7
-- 当前攻击超过
RITUAL_CURRENT_ATTACK_GREATER = 8
-- 添加仪式手续 -- 添加仪式手续
function RushDuel.AddRitualProcedure(card) function RushDuel.AddRitualProcedure(card)
...@@ -40,21 +48,69 @@ function RushDuel.CreateRitualEffect(card, type, matfilter, spfilter, exfilter, ...@@ -40,21 +48,69 @@ function RushDuel.CreateRitualEffect(card, type, matfilter, spfilter, exfilter,
e:SetOperation(RushDuel.RitualOperation(type, matfilter, spfilter, exfilter, self_range, opponent_range, mat_check, move, include, leave, operation_action, limit_action)) e:SetOperation(RushDuel.RitualOperation(type, matfilter, spfilter, exfilter, self_range, opponent_range, mat_check, move, include, leave, operation_action, limit_action))
return e return e
end end
-- 仪式召唤 - 类型素材过滤
function RushDuel.RitualTypeFilter(c, type)
if type == RITUAL_ORIGINAL_LEVEL_EQUAL or type == RITUAL_ORIGINAL_LEVEL_GREATER then
return c:IsLevelAbove(1)
elseif type == RITUAL_CURRENT_LEVEL_EQUAL or type == RITUAL_CURRENT_LEVEL_GREATER then
return c:IsLevelAbove(1)
elseif type == RITUAL_ORIGINAL_ATTACK_EQUAL or type == RITUAL_ORIGINAL_ATTACK_GREATER then
return c:IsAttackAbove(1)
elseif type == RITUAL_CURRENT_ATTACK_EQUAL or type == RITUAL_CURRENT_ATTACK_GREATER then
return c:IsAttackAbove(1)
end
end
-- 仪式召唤 - 数值合计参考
function RushDuel.GetRitualTypeValue(c, type)
if type == RITUAL_ORIGINAL_LEVEL_EQUAL or type == RITUAL_ORIGINAL_LEVEL_GREATER then
return c:GetOriginalLevel()
elseif type == RITUAL_CURRENT_LEVEL_EQUAL or type == RITUAL_CURRENT_LEVEL_GREATER then
return c:GetLevel()
elseif type == RITUAL_ORIGINAL_ATTACK_EQUAL or type == RITUAL_ORIGINAL_ATTACK_GREATER then
return c:GetBaseAttack()
elseif type == RITUAL_CURRENT_ATTACK_EQUAL or type == RITUAL_CURRENT_ATTACK_GREATER then
return c:GetAttack()
end
end
-- 仪式召唤 - 素材数值参考
function RushDuel.GetRitualMaterialGetter(type)
if type == RITUAL_ORIGINAL_LEVEL_EQUAL or type == RITUAL_ORIGINAL_LEVEL_GREATER or type == RITUAL_CURRENT_LEVEL_EQUAL or type == RITUAL_CURRENT_LEVEL_GREATER then
return RushDuel.RitualCheckAdditionalLevel
elseif type == RITUAL_ORIGINAL_ATTACK_EQUAL or type == RITUAL_ORIGINAL_ATTACK_GREATER or type == RITUAL_CURRENT_ATTACK_EQUAL or type == RITUAL_CURRENT_ATTACK_GREATER then
return RushDuel.RitualCheckAdditionalAttack
end
end
-- 仪式召唤 - 使用等级
function RushDuel.RitualCheckAdditionalLevel(c, rc)
local raw_level = c:GetRitualLevel(rc)
local lv1 = raw_level&0xffff
local lv2 = raw_level>>16
if lv2 > 0 then
return math.min(lv1, lv2)
else
return lv1
end
end
-- 仪式召唤 - 使用攻击力
function RushDuel.RitualCheckAdditionalAttack(c, rc)
local x = c:GetAttack()
if x > MAX_PARAMETER then
return MAX_PARAMETER
else
return x
end
end
-- 仪式召唤 - 素材过滤 -- 仪式召唤 - 素材过滤
function RushDuel.RitualMaterialFilter(c, type, filter, e) function RushDuel.RitualMaterialFilter(c, type, filter, e)
local ext = true return RushDuel.RitualTypeFilter(c, type) and (not filter or filter(c)) and (not e or not c:IsImmuneToEffect(e))
if type == RITUAL_LEVEL_EQUAL or type == RITUAL_LEVEL_GREATER then
ext = c:IsLevelAbove(1)
elseif type == RITUAL_ATTACK_EQUAL or type == RITUAL_ATTACK_GREATER then
ext = c:IsAttackAbove(1)
end
return ext and (not filter or filter(c)) and (not e or not c:IsImmuneToEffect(e))
end end
-- 仪式召唤 - 仪式召唤的怪兽过滤 -- 仪式召唤 - 仪式召唤的怪兽过滤
function RushDuel.RitualSpecialSummonFilter(c, e, tp, type, mat, f, gc, chkf, filter) function RushDuel.RitualSpecialSummonFilter(c, e, tp, type, mat, f, gc, chkf, filter)
RushDuel.CurrentRitualEffect = e RushDuel.CurrentRitualEffect = e
local res = c:GetType() & 0x81 == 0x81 and (not filter or filter(c, e, tp, mat, f, chkf)) and (not f or f(c)) and c:IsCanBeSpecialSummoned(e, SUMMON_TYPE_RITUAL, tp, false, false) and local res = c:GetType() & 0x81 == 0x81 and (not filter or filter(c, e, tp, mat, f, chkf)) and (not f or f(c))
RushDuel.CheckRitualMaterial(tp, c, type, mat, gc) and RushDuel.GetRitualTypeValue(c, type) > 0
and c:IsCanBeSpecialSummoned(e, SUMMON_TYPE_RITUAL, tp, false, false)
and RushDuel.CheckRitualMaterial(tp, c, type, mat, gc)
RushDuel.CurrentRitualEffect = nil RushDuel.CurrentRitualEffect = nil
return res return res
end end
...@@ -64,10 +120,7 @@ function RushDuel.GetRitualMaterial(tp, rc, type, mat) ...@@ -64,10 +120,7 @@ function RushDuel.GetRitualMaterial(tp, rc, type, mat)
if rc.mat_filter then if rc.mat_filter then
mg = mg:Filter(rc.mat_filter, rc, tp) mg = mg:Filter(rc.mat_filter, rc, tp)
end end
local max = #mg local max = math.min(#mg, RushDuel.GetRitualTypeValue(rc, type))
if type == RITUAL_LEVEL_EQUAL or type == RITUAL_LEVEL_GREATER then
max = rc:GetLevel()
end
return mg, max return mg, max
end end
-- 仪式召唤 - 检测仪式素材 -- 仪式召唤 - 检测仪式素材
...@@ -89,32 +142,16 @@ function RushDuel.SelectRitualMaterial(tp, rc, type, mat, gc) ...@@ -89,32 +142,16 @@ function RushDuel.SelectRitualMaterial(tp, rc, type, mat, gc)
end end
-- 仪式召唤 - 素材不能超过必要的数量 -- 仪式召唤 - 素材不能超过必要的数量
function RushDuel.RitualCheckAdditional(rc, type) function RushDuel.RitualCheckAdditional(rc, type)
local lv = rc:GetLevel() local value = RushDuel.GetRitualTypeValue(rc, type)
local atk = rc:GetAttack() local getter = RushDuel.GetRitualMaterialGetter(type)
if type == RITUAL_LEVEL_EQUAL then if type == RITUAL_ORIGINAL_LEVEL_EQUAL or type == RITUAL_CURRENT_LEVEL_EQUAL or type == RITUAL_ORIGINAL_ATTACK_EQUAL or type == RITUAL_CURRENT_ATTACK_EQUAL then
return function(g) return function(g)
return (not Auxiliary.RGCheckAdditional or Auxiliary.RGCheckAdditional(g)) and g:GetSum(Auxiliary.RitualCheckAdditionalLevel, rc) <= lv return (not Auxiliary.RGCheckAdditional or Auxiliary.RGCheckAdditional(g)) and g:GetSum(getter, rc) <= value
end end
elseif type == RITUAL_LEVEL_GREATER then elseif type == RITUAL_ORIGINAL_LEVEL_GREATER or type == RITUAL_CURRENT_LEVEL_GREATER or type == RITUAL_ORIGINAL_ATTACK_GREATER or type == RITUAL_CURRENT_ATTACK_GREATER then
return function(g, ec) return function(g, ec)
if ec then if ec then
return (not Auxiliary.RGCheckAdditional or Auxiliary.RGCheckAdditional(g, ec)) and g:GetSum(Auxiliary.RitualCheckAdditionalLevel, rc) - Auxiliary.RitualCheckAdditionalLevel(ec, rc) <= return (not Auxiliary.RGCheckAdditional or Auxiliary.RGCheckAdditional(g, ec)) and g:GetSum(getter, rc) - getter(ec, rc) <= value
lv
else
return not Auxiliary.RGCheckAdditional or Auxiliary.RGCheckAdditional(g)
end
end
elseif type == RITUAL_ATTACK_EQUAL then
return function(g)
return (not aux.RGCheckAdditional or aux.RGCheckAdditional(g)) and g:GetSum(Auxiliary.GetCappedAttack) <= atk
end
elseif type == RITUAL_ATTACK_GREATER then
return function(g, ec)
if atk == 0 then
return #g <= 1
end
if ec then
return (not Auxiliary.RGCheckAdditional or Auxiliary.RGCheckAdditional(g, ec)) and g:GetSum(Auxiliary.GetCappedAttack) - Auxiliary.GetCappedAttack(ec) <= atk
else else
return not Auxiliary.RGCheckAdditional or Auxiliary.RGCheckAdditional(g) return not Auxiliary.RGCheckAdditional or Auxiliary.RGCheckAdditional(g)
end end
...@@ -132,16 +169,17 @@ function RushDuel.RitualChecker(mg, rc, tp, type, gc) ...@@ -132,16 +169,17 @@ function RushDuel.RitualChecker(mg, rc, tp, type, gc)
elseif Auxiliary.RCheckAdditional and not Auxiliary.RCheckAdditional(tp, mg, rc) then elseif Auxiliary.RCheckAdditional and not Auxiliary.RCheckAdditional(tp, mg, rc) then
return false return false
else else
if type == RITUAL_LEVEL_EQUAL then local value = RushDuel.GetRitualTypeValue(rc, type)
return mg:CheckWithSumEqual(Card.GetRitualLevel, rc:GetLevel(), #mg, #mg, rc) if type == RITUAL_ORIGINAL_LEVEL_EQUAL or type == RITUAL_CURRENT_LEVEL_EQUAL then
elseif type == RITUAL_LEVEL_GREATER then return mg:CheckWithSumEqual(Card.GetRitualLevel, value, #mg, #mg, rc)
elseif type == RITUAL_ORIGINAL_LEVEL_GREATER or type == RITUAL_CURRENT_LEVEL_GREATER then
Duel.SetSelectedCard(mg) Duel.SetSelectedCard(mg)
return mg:CheckWithSumGreater(Card.GetRitualLevel, rc:GetLevel(), rc) return mg:CheckWithSumGreater(Card.GetRitualLevel, value, rc)
elseif type == RITUAL_ATTACK_EQUAL then elseif type == RITUAL_ORIGINAL_ATTACK_EQUAL or type == RITUAL_CURRENT_ATTACK_EQUAL then
return mg:CheckWithSumEqual(Card.GetAttack, rc:GetAttack(), #mg, #mg, rc) return mg:CheckWithSumEqual(Card.GetAttack, value, #mg, #mg, rc)
elseif type == RITUAL_ATTACK_GREATER then elseif type == RITUAL_ORIGINAL_ATTACK_GREATER or type == RITUAL_CURRENT_ATTACK_GREATER then
Duel.SetSelectedCard(mg) Duel.SetSelectedCard(mg)
return mg:CheckWithSumGreater(Card.GetAttack, rc:GetAttack(), rc) return mg:CheckWithSumGreater(Card.GetAttack, value, rc)
end end
end end
return false return false
......
...@@ -4,7 +4,7 @@ cm.name="混沌-黑魔术的仪式" ...@@ -4,7 +4,7 @@ cm.name="混沌-黑魔术的仪式"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,nil,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,nil,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="仪式法之门" ...@@ -4,7 +4,7 @@ cm.name="仪式法之门"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="等离子塑料模型对接" ...@@ -4,7 +4,7 @@ cm.name="等离子塑料模型对接"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,nil,cm.limit) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,nil,cm.limit)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="等离子塑料模型竞玩" ...@@ -4,7 +4,7 @@ cm.name="等离子塑料模型竞玩"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,nil,cm.limit) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,nil,cm.limit)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -6,7 +6,7 @@ function cm.initial_effect(c) ...@@ -6,7 +6,7 @@ function cm.initial_effect(c)
--Fake Legend --Fake Legend
RD.EnableFakeLegend(c,LOCATION_HAND+LOCATION_GRAVE) RD.EnableFakeLegend(c,LOCATION_HAND+LOCATION_GRAVE)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="杰拉的仪式" ...@@ -4,7 +4,7 @@ cm.name="杰拉的仪式"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,nil,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,nil,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -6,7 +6,7 @@ function cm.initial_effect(c) ...@@ -6,7 +6,7 @@ function cm.initial_effect(c)
--Change Code --Change Code
RD.EnableChangeCode(c,list[1],LOCATION_GRAVE) RD.EnableChangeCode(c,list[1],LOCATION_GRAVE)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="饶有情趣的菓子袴着" ...@@ -4,7 +4,7 @@ cm.name="饶有情趣的菓子袴着"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="双焰魔的祭坛" ...@@ -4,7 +4,7 @@ cm.name="双焰魔的祭坛"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_EQUAL,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,cm.operation) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_EQUAL,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,cm.operation)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_ATKCHANGE+CATEGORY_DEFCHANGE) e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_ATKCHANGE+CATEGORY_DEFCHANGE)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -6,7 +6,7 @@ function cm.initial_effect(c) ...@@ -6,7 +6,7 @@ function cm.initial_effect(c)
--Special Summon Counter --Special Summon Counter
Duel.AddCustomActivityCounter(m,ACTIVITY_SPSUMMON,aux.FALSE) Duel.AddCustomActivityCounter(m,ACTIVITY_SPSUMMON,aux.FALSE)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="汉堡的食谱" ...@@ -4,7 +4,7 @@ cm.name="汉堡的食谱"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,nil,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,nil,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="汉堡的快餐食谱" ...@@ -4,7 +4,7 @@ cm.name="汉堡的快餐食谱"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -6,7 +6,7 @@ function cm.initial_effect(c) ...@@ -6,7 +6,7 @@ function cm.initial_effect(c)
--Change Code --Change Code
RD.EnableChangeCode(c,list[1],LOCATION_GRAVE) RD.EnableChangeCode(c,list[1],LOCATION_GRAVE)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,nil,cm.limit) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,nil,cm.limit)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -6,7 +6,7 @@ function cm.initial_effect(c) ...@@ -6,7 +6,7 @@ function cm.initial_effect(c)
--Change Code --Change Code
RD.EnableChangeCode(c,list[1],LOCATION_GRAVE) RD.EnableChangeCode(c,list[1],LOCATION_GRAVE)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="饶有情趣的菓子发置" ...@@ -4,7 +4,7 @@ cm.name="饶有情趣的菓子发置"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -6,7 +6,7 @@ function cm.initial_effect(c) ...@@ -6,7 +6,7 @@ function cm.initial_effect(c)
--Special Summon Counter --Special Summon Counter
Duel.AddCustomActivityCounter(m,ACTIVITY_SPSUMMON,cm.ctfilter) Duel.AddCustomActivityCounter(m,ACTIVITY_SPSUMMON,cm.ctfilter)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,cm.operation) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter,nil,0,0,nil,RD.RitualToGrave,nil,cm.operation)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -4,7 +4,7 @@ cm.name="混沌的仪式" ...@@ -4,7 +4,7 @@ cm.name="混沌的仪式"
function cm.initial_effect(c) function cm.initial_effect(c)
RD.AddCodeList(c,list) RD.AddCodeList(c,list)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,nil,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,nil,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
...@@ -6,7 +6,7 @@ function cm.initial_effect(c) ...@@ -6,7 +6,7 @@ function cm.initial_effect(c)
--Fake Legend --Fake Legend
RD.EnableFakeLegend(c,LOCATION_HAND+LOCATION_GRAVE) RD.EnableFakeLegend(c,LOCATION_HAND+LOCATION_GRAVE)
--Activate --Activate
local e1=RD.CreateRitualEffect(c,RITUAL_LEVEL_GREATER,cm.matfilter,cm.spfilter) local e1=RD.CreateRitualEffect(c,RITUAL_ORIGINAL_LEVEL_GREATER,cm.matfilter,cm.spfilter)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
......
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