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

2023/10/17 新增:KP15新卡,标记所有的【永续效果】

parent fbbc4c6d
Pipeline #23766 failed with stages
in 7 minutes and 27 seconds
No preview for this file type
...@@ -38,6 +38,10 @@ end ...@@ -38,6 +38,10 @@ end
function RushDuel.AttachDoubleTribute(e, card, value, desc, reset, forced) function RushDuel.AttachDoubleTribute(e, card, value, desc, reset, forced)
return RushDuel.CreateSingleEffect(e, desc, card, EFFECT_DOUBLE_TRIBUTE, value, reset, forced) return RushDuel.CreateSingleEffect(e, desc, card, EFFECT_DOUBLE_TRIBUTE, value, reset, forced)
end end
-- 赋予: 三重解放
function RushDuel.AttachTripleTribute(e, card, value, desc, reset, forced)
return RushDuel.CreateSingleEffect(e, desc, card, EFFECT_TRIPLE_TRIBUTE, value, reset, forced)
end
-- 赋予: 使用对方的怪兽解放 -- 赋予: 使用对方的怪兽解放
function RushDuel.AttachOpponentTribute(e, card, flag, desc, reset, reset_player) function RushDuel.AttachOpponentTribute(e, card, flag, desc, reset, reset_player)
local tp = e:GetHandlerPlayer() local tp = e:GetHandlerPlayer()
...@@ -140,6 +144,10 @@ end ...@@ -140,6 +144,10 @@ end
function RushDuel.AttachCannotTrigger(e, card, desc, reset, forced) function RushDuel.AttachCannotTrigger(e, card, desc, reset, forced)
return RushDuel.CreateSingleEffect(e, desc, card, EFFECT_CANNOT_TRIGGER, nil, reset, forced) return RushDuel.CreateSingleEffect(e, desc, card, EFFECT_CANNOT_TRIGGER, nil, reset, forced)
end end
-- 赋予: 永续效果无效化
function RushDuel.AttachDisableContinuous(e, card, desc, reset, forced)
return RushDuel.CreateSingleEffect(e, desc, card, EFFECT_DISABLE, nil, reset, forced)
end
-- 赋予: 变更原本攻守 -- 赋予: 变更原本攻守
function RushDuel.SetBaseAtkDef(e, card, atk, def, reset, forced) function RushDuel.SetBaseAtkDef(e, card, atk, def, reset, forced)
if atk ~= nil then if atk ~= nil then
......
...@@ -435,6 +435,20 @@ function RushDuel.AddCodeList(card, ...) ...@@ -435,6 +435,20 @@ function RushDuel.AddCodeList(card, ...)
end end
end end
end end
-- 添加永续效果列表
function RushDuel.AddContinuousEffect(c, ...)
if c:IsStatus(STATUS_COPYING_EFFECT) then
return
end
if c.continuous_effect == nil then
local mt = getmetatable(c)
mt.continuous_effect = {...}
else
for _, e in ipairs {...} do
table.insert(c.continuous_effect, e)
end
end
end
-- 获取效果值列表 -- 获取效果值列表
function RushDuel.GetEffectValues(card, code) function RushDuel.GetEffectValues(card, code)
......
...@@ -120,6 +120,17 @@ function RushDuel.IsCanAttachDoubleTribute(card, value) ...@@ -120,6 +120,17 @@ function RushDuel.IsCanAttachDoubleTribute(card, value)
local values = RushDuel.GetEffectValues(card, EFFECT_DOUBLE_TRIBUTE) local values = RushDuel.GetEffectValues(card, EFFECT_DOUBLE_TRIBUTE)
return RushDuel.CheckValueDoubleTribute(values, value) return RushDuel.CheckValueDoubleTribute(values, value)
end end
-- 条件: 可否赋予效果 - 三重解放
function RushDuel.IsCanAttachTripleTribute(card, value)
if Duel.IsPlayerAffectedByEffect(card:GetControler(), EFFECT_CANNOT_DOUBLE_TRIBUTE) then
return false
end
if card:IsHasEffect(EFFECT_UNRELEASABLE_SUM) then
return false
end
local values = RushDuel.GetEffectValues(card, EFFECT_TRIPLE_TRIBUTE)
return RushDuel.CheckValueDoubleTribute(values, value)
end
-- 条件: 可否赋予效果 - 使用对方的怪兽解放 -- 条件: 可否赋予效果 - 使用对方的怪兽解放
function RushDuel.IsCanAttachOpponentTribute(card, flag) function RushDuel.IsCanAttachOpponentTribute(card, flag)
return card:GetFlagEffect(flag) == 0 return card:GetFlagEffect(flag) == 0
...@@ -140,6 +151,16 @@ function RushDuel.IsCanAttachEffectIndes(card, player, value) ...@@ -140,6 +151,16 @@ function RushDuel.IsCanAttachEffectIndes(card, player, value)
local values = RushDuel.GetEffectValues(card, EFFECT_INDESTRUCTABLE_EFFECT) local values = RushDuel.GetEffectValues(card, EFFECT_INDESTRUCTABLE_EFFECT)
return RushDuel.CheckValueEffectIndesType(swap, values, value) return RushDuel.CheckValueEffectIndesType(swap, values, value)
end end
-- 条件: 可否赋予效果 - 永续效果无效化
function RushDuel.IsCanAttachDisableContinuous(card)
local has_effect = card.continuous_effect
if RushDuel.IsMaximumMode(card) then
card:GetOverlayGroup():ForEach(function(tc)
has_effect = has_effect or tc.continuous_effect
end)
end
return has_effect and not card:IsHasEffect(EFFECT_DISABLE)
end
-- 条件: 玩家是否能够使用特定种族进行攻击 -- 条件: 玩家是否能够使用特定种族进行攻击
function RushDuel.IsPlayerCanUseRaceAttack(player, race) function RushDuel.IsPlayerCanUseRaceAttack(player, race)
......
This diff is collapsed.
...@@ -33,7 +33,8 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -33,7 +33,8 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
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 p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER) local p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER)
local ct=RD.Draw() local d=Duel.GetFieldGroupCount(tp,0,LOCATION_MZONE)
local ct=Duel.Draw(p,d,REASON_EFFECT)
if ct==0 then return end if ct==0 then return end
RD.SelectAndDoAction(HINTMSG_TODECK,Card.IsAbleToDeck,p,LOCATION_HAND,0,ct,ct,nil,function(g) RD.SelectAndDoAction(HINTMSG_TODECK,Card.IsAbleToDeck,p,LOCATION_HAND,0,ct,ct,nil,function(g)
Duel.BreakEffect() Duel.BreakEffect()
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -9,6 +9,8 @@ function cm.initial_effect(c) ...@@ -9,6 +9,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indes) e1:SetValue(cm.indes)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
function cm.indes(e,c) function cm.indes(e,c)
......
...@@ -11,6 +11,8 @@ function cm.initial_effect(c) ...@@ -11,6 +11,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -34,6 +34,8 @@ function cm.initial_effect(c) ...@@ -34,6 +34,8 @@ function cm.initial_effect(c)
e4:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e4:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e4:SetTarget(cm.distg) e4:SetTarget(cm.distg)
c:RegisterEffect(e4) c:RegisterEffect(e4)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3,e4)
end end
--Disable --Disable
function cm.distg(e,c) function cm.distg(e,c)
......
...@@ -9,6 +9,8 @@ function cm.initial_effect(c) ...@@ -9,6 +9,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.atkval(e,c) function cm.atkval(e,c)
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -10,6 +10,8 @@ function cm.initial_effect(c) ...@@ -10,6 +10,8 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -12,6 +12,8 @@ function cm.initial_effect(c) ...@@ -12,6 +12,8 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -10,6 +10,8 @@ function cm.initial_effect(c) ...@@ -10,6 +10,8 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.atkval(e,c) function cm.atkval(e,c)
......
...@@ -22,6 +22,8 @@ function cm.initial_effect(c) ...@@ -22,6 +22,8 @@ function cm.initial_effect(c)
e2:SetProperty(EFFECT_FLAG_CLIENT_HINT) e2:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e2:SetCondition(cm.prccon) e2:SetCondition(cm.prccon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -12,6 +12,8 @@ function cm.initial_effect(c) ...@@ -12,6 +12,8 @@ function cm.initial_effect(c)
e1:SetCondition(cm.condition) e1:SetCondition(cm.condition)
e1:SetValue(cm.aclimit) e1:SetValue(cm.aclimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
function cm.condition(e) function cm.condition(e)
local ph=Duel.GetCurrentPhase() local ph=Duel.GetCurrentPhase()
......
...@@ -17,6 +17,8 @@ function cm.initial_effect(c) ...@@ -17,6 +17,8 @@ function cm.initial_effect(c)
e2:SetProperty(EFFECT_FLAG_CLIENT_HINT) e2:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e2:SetCondition(cm.prccon) e2:SetCondition(cm.prccon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Atk Up --Atk Up
function cm.atkval(e,c) function cm.atkval(e,c)
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -13,7 +13,8 @@ function cm.initial_effect(c) ...@@ -13,7 +13,8 @@ function cm.initial_effect(c)
e1:SetCondition(cm.actcon) e1:SetCondition(cm.actcon)
e1:SetValue(cm.actlimit) e1:SetValue(cm.actlimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
--Special Summon Check --Special Summon Check
if not cm.global_check then if not cm.global_check then
cm.global_check=true cm.global_check=true
......
...@@ -23,6 +23,8 @@ function cm.initial_effect(c) ...@@ -23,6 +23,8 @@ function cm.initial_effect(c)
e2:SetTarget(cm.target) e2:SetTarget(cm.target)
e2:SetValue(1) e2:SetValue(1)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -10,6 +10,8 @@ function cm.initial_effect(c) ...@@ -10,6 +10,8 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -10,6 +10,8 @@ function cm.initial_effect(c) ...@@ -10,6 +10,8 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -11,6 +11,8 @@ function cm.initial_effect(c) ...@@ -11,6 +11,8 @@ function cm.initial_effect(c)
e1:SetTargetRange(1,1) e1:SetTargetRange(1,1)
e1:SetTarget(cm.sumlimit) e1:SetTarget(cm.sumlimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Cannot Special Summon --Cannot Special Summon
function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp,se) function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp,se)
......
...@@ -12,6 +12,8 @@ function cm.initial_effect(c) ...@@ -12,6 +12,8 @@ function cm.initial_effect(c)
e1:SetCondition(cm.condition) e1:SetCondition(cm.condition)
e1:SetValue(cm.aclimit) e1:SetValue(cm.aclimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
function cm.condition(e) function cm.condition(e)
local ph=Duel.GetCurrentPhase() local ph=Duel.GetCurrentPhase()
......
...@@ -8,6 +8,8 @@ function cm.initial_effect(c) ...@@ -8,6 +8,8 @@ function cm.initial_effect(c)
e1:SetCode(EFFECT_DOUBLE_TRIBUTE) e1:SetCode(EFFECT_DOUBLE_TRIBUTE)
e1:SetValue(cm.trival) e1:SetValue(cm.trival)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Double Tribute --Double Tribute
cm.trival=RD.ValueDoubleTributeAttrRace(ATTRIBUTE_FIRE,nil) cm.trival=RD.ValueDoubleTributeAttrRace(ATTRIBUTE_FIRE,nil)
\ No newline at end of file
...@@ -11,6 +11,8 @@ function cm.initial_effect(c) ...@@ -11,6 +11,8 @@ function cm.initial_effect(c)
e1:SetTargetRange(1,1) e1:SetTargetRange(1,1)
e1:SetTarget(cm.sumlimit) e1:SetTarget(cm.sumlimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Cannot Special Summon --Cannot Special Summon
function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp) function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp)
......
...@@ -11,6 +11,8 @@ function cm.initial_effect(c) ...@@ -11,6 +11,8 @@ function cm.initial_effect(c)
e1:SetCondition(cm.condition) e1:SetCondition(cm.condition)
e1:SetValue(700) e1:SetValue(700)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -20,6 +20,8 @@ function cm.initial_effect(c) ...@@ -20,6 +20,8 @@ function cm.initial_effect(c)
e2:SetCondition(cm.condition) e2:SetCondition(cm.condition)
e2:SetValue(cm.indval) e2:SetValue(cm.indval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Indes --Indes
function cm.filter(c) function cm.filter(c)
......
...@@ -10,6 +10,8 @@ function cm.initial_effect(c) ...@@ -10,6 +10,8 @@ function cm.initial_effect(c)
e1:SetTargetRange(0,LOCATION_MZONE) e1:SetTargetRange(0,LOCATION_MZONE)
e1:SetValue(cm.target) e1:SetValue(cm.target)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Cannot Be Battle Target --Cannot Be Battle Target
function cm.target(e,c) function cm.target(e,c)
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -16,6 +16,8 @@ function cm.initial_effect(c) ...@@ -16,6 +16,8 @@ function cm.initial_effect(c)
e2:SetCondition(RD.MaximumMode) e2:SetCondition(RD.MaximumMode)
e2:SetValue(cm.indval2) e2:SetValue(cm.indval2)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Indes --Indes
cm.indval1=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval1=RD.ValueEffectIndesType(0,TYPE_TRAP)
......
...@@ -25,6 +25,8 @@ function cm.initial_effect(c) ...@@ -25,6 +25,8 @@ function cm.initial_effect(c)
e3:SetCondition(RD.MaximumMode) e3:SetCondition(RD.MaximumMode)
e3:SetTarget(cm.setlimit) e3:SetTarget(cm.setlimit)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3)
end end
--Cannot Special Summon --Cannot Special Summon
function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp) function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp)
......
...@@ -9,6 +9,8 @@ function cm.initial_effect(c) ...@@ -9,6 +9,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indes) e1:SetValue(cm.indes)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
function cm.indes(e,c) function cm.indes(e,c)
......
...@@ -24,6 +24,8 @@ function cm.initial_effect(c) ...@@ -24,6 +24,8 @@ function cm.initial_effect(c)
e2:SetCondition(RD.MaximumMode) e2:SetCondition(RD.MaximumMode)
e2:SetValue(cm.indval) e2:SetValue(cm.indval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -11,4 +11,6 @@ function cm.initial_effect(c) ...@@ -11,4 +11,6 @@ function cm.initial_effect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_PIERCE) e1:SetCode(EFFECT_PIERCE)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
\ No newline at end of file
...@@ -12,4 +12,6 @@ function cm.initial_effect(c) ...@@ -12,4 +12,6 @@ function cm.initial_effect(c)
e1:SetCode(EFFECT_EXTRA_ATTACK) e1:SetCode(EFFECT_EXTRA_ATTACK)
e1:SetValue(1) e1:SetValue(1)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
\ No newline at end of file
...@@ -24,6 +24,8 @@ function cm.initial_effect(c) ...@@ -24,6 +24,8 @@ function cm.initial_effect(c)
e2:SetCondition(cm.condition) e2:SetCondition(cm.condition)
e2:SetValue(cm.indval) e2:SetValue(cm.indval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Summon Procedure --Summon Procedure
function cm.matfilter(c,tp) function cm.matfilter(c,tp)
......
...@@ -4,5 +4,5 @@ local cm=_G["c"..m] ...@@ -4,5 +4,5 @@ local cm=_G["c"..m]
cm.name="原始电子龙" cm.name="原始电子龙"
function cm.initial_effect(c) function cm.initial_effect(c)
--Change Code --Change Code
RD.EnableChangeCode(c,list[1]) RushDuel.AddContinuousEffect(c,RD.EnableChangeCode(c,list[1]))
end end
...@@ -16,6 +16,8 @@ function cm.initial_effect(c) ...@@ -16,6 +16,8 @@ function cm.initial_effect(c)
local e2=e1:Clone() local e2=e1:Clone()
e2:SetCode(EFFECT_UPDATE_DEFENSE) e2:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Special Summon Procedure --Special Summon Procedure
function cm.spconfilter(c) function cm.spconfilter(c)
......
...@@ -12,6 +12,8 @@ function cm.initial_effect(c) ...@@ -12,6 +12,8 @@ function cm.initial_effect(c)
e1:SetTargetRange(LOCATION_MZONE,0) e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetTarget(cm.target) e1:SetTarget(cm.target)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Special Summon Procedure --Special Summon Procedure
function cm.spconfilter(c) function cm.spconfilter(c)
......
...@@ -11,6 +11,8 @@ function cm.initial_effect(c) ...@@ -11,6 +11,8 @@ function cm.initial_effect(c)
e1:SetTargetRange(1,0) e1:SetTargetRange(1,0)
e1:SetValue(cm.drawval) e1:SetValue(cm.drawval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Draw Count --Draw Count
function cm.drawval(e) function cm.drawval(e)
......
...@@ -11,6 +11,8 @@ function cm.initial_effect(c) ...@@ -11,6 +11,8 @@ function cm.initial_effect(c)
e1:SetTarget(cm.target) e1:SetTarget(cm.target)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
......
...@@ -4,7 +4,7 @@ cm.name="兽机界王 滑翔机狐" ...@@ -4,7 +4,7 @@ cm.name="兽机界王 滑翔机狐"
function cm.initial_effect(c) function cm.initial_effect(c)
--Destroy --Destroy
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1)) e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_DESTROY) e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
......
...@@ -8,6 +8,8 @@ function cm.initial_effect(c) ...@@ -8,6 +8,8 @@ function cm.initial_effect(c)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE) e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetValue(cm.indes) e1:SetValue(cm.indes)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
function cm.indes(e,c) function cm.indes(e,c)
......
...@@ -12,6 +12,8 @@ function cm.initial_effect(c) ...@@ -12,6 +12,8 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -7,7 +7,7 @@ function cm.initial_effect(c) ...@@ -7,7 +7,7 @@ function cm.initial_effect(c)
local mat=RD.CreateAdvanceCount(c,3) local mat=RD.CreateAdvanceCount(c,3)
--Destroy --Destroy
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,1))
e1:SetCategory(CATEGORY_DESTROY) e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
......
...@@ -10,6 +10,8 @@ function cm.initial_effect(c) ...@@ -10,6 +10,8 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetTargetRange(0,1) e1:SetTargetRange(0,1)
e1:SetValue(cm.limit) e1:SetValue(cm.limit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Cannot Activate --Cannot Activate
function cm.limit(e,re,tp) function cm.limit(e,re,tp)
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetTarget(cm.target) e1:SetTarget(cm.target)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_MONSTER+TYPE_SPELL+TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_MONSTER+TYPE_SPELL+TYPE_TRAP)
......
...@@ -17,6 +17,8 @@ function cm.initial_effect(c) ...@@ -17,6 +17,8 @@ function cm.initial_effect(c)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE) e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetValue(cm.indes) e1:SetValue(cm.indes)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Fusion Material --Fusion Material
function cm.material(c) function cm.material(c)
......
...@@ -5,18 +5,33 @@ function cm.initial_effect(c) ...@@ -5,18 +5,33 @@ function cm.initial_effect(c)
--Atk Up --Atk Up
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_MATERIAL_CHECK) e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(cm.check) e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Summon Only --Material Check
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_SUMMON_COST) e2:SetCode(EFFECT_MATERIAL_CHECK)
e2:SetOperation(cm.facechk)
e2:SetLabelObject(e1) e2:SetLabelObject(e1)
e2:SetValue(cm.check)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Summon Only
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_SUMMON_COST)
e3:SetOperation(cm.facechk)
e3:SetLabelObject(e2)
c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Summon Only
function cm.facechk(e,tp,eg,ep,ev,re,r,rp)
e:GetLabelObject():SetLabel(1)
end
--Material Check
function cm.check(e,c) function cm.check(e,c)
local atk=0 local atk=0
local g=c:GetMaterial() local g=c:GetMaterial()
...@@ -27,10 +42,12 @@ function cm.check(e,c) ...@@ -27,10 +42,12 @@ function cm.check(e,c)
end end
if atk>0 and e:GetLabel()==1 then if atk>0 and e:GetLabel()==1 then
e:SetLabel(0) e:SetLabel(0)
RD.AttachAtkDef(e,c,atk,0,RESET_EVENT+0xff0000) e:GetLabelObject():SetLabel(atk)
else
e:GetLabelObject():SetLabel(0)
end end
end end
--Summon Only --Atk Up
function cm.facechk(e,tp,eg,ep,ev,re,r,rp) function cm.atkval(e,c)
e:GetLabelObject():SetLabel(1) if c:IsSummonType(SUMMON_TYPE_ADVANCE) then return e:GetLabel() else return 0 end
end end
\ No newline at end of file
...@@ -18,6 +18,8 @@ function cm.initial_effect(c) ...@@ -18,6 +18,8 @@ function cm.initial_effect(c)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetValue(cm.atkval) e2:SetValue(cm.atkval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -16,4 +16,6 @@ function cm.initial_effect(c) ...@@ -16,4 +16,6 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(1,1) e1:SetTargetRange(1,1)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
\ No newline at end of file
...@@ -5,28 +5,45 @@ function cm.initial_effect(c) ...@@ -5,28 +5,45 @@ function cm.initial_effect(c)
--Atk Up --Atk Up
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_MATERIAL_CHECK) e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(cm.check) e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Summon Only --Material Check
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_SUMMON_COST) e2:SetCode(EFFECT_MATERIAL_CHECK)
e2:SetOperation(cm.facechk)
e2:SetLabelObject(e1) e2:SetLabelObject(e1)
e2:SetValue(cm.check)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Summon Only
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_SUMMON_COST)
e3:SetOperation(cm.facechk)
e3:SetLabelObject(e2)
c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Summon Only
function cm.facechk(e,tp,eg,ep,ev,re,r,rp)
e:GetLabelObject():SetLabel(1)
end
--Material Check
function cm.check(e,c) function cm.check(e,c)
local tc=c:GetMaterial():GetFirst() local tc=c:GetMaterial():GetFirst()
local atk=0 local atk=0
if tc then atk=RD.GetBaseAttackOnTribute(tc)*2 end if tc then atk=RD.GetBaseAttackOnTribute(tc)*2 end
if atk>0 and e:GetLabel()==1 then if atk>0 and e:GetLabel()==1 then
e:SetLabel(0) e:SetLabel(0)
RD.AttachAtkDef(e,c,atk,0,RESET_EVENT+0xff0000) e:GetLabelObject():SetLabel(atk)
else
e:GetLabelObject():SetLabel(0)
end end
end end
--Summon Only --Atk Up
function cm.facechk(e,tp,eg,ep,ev,re,r,rp) function cm.atkval(e,c)
e:GetLabelObject():SetLabel(1) if c:IsSummonType(SUMMON_TYPE_ADVANCE) then return e:GetLabel() else return 0 end
end end
\ No newline at end of file
...@@ -17,7 +17,7 @@ function cm.initial_effect(c) ...@@ -17,7 +17,7 @@ function cm.initial_effect(c)
end end
--Discard Deck --Discard Deck
function cm.spfilter(c,e,tp) function cm.spfilter(c,e,tp)
return c:IsCode(list[1]) and RD.IsCanBeSpecialSummoned(c,e,tp,POS_FACEUP) return c:IsCode(list[1]) and c:IsLocation(LOCATION_GRAVE) and RD.IsCanBeSpecialSummoned(c,e,tp,POS_FACEUP)
end end
function cm.condition(e,tp,eg,ep,ev,re,r,rp) function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return RD.IsSummonTurn(e:GetHandler()) and Duel.GetFieldGroupCount(tp,0,LOCATION_MZONE)>0 return RD.IsSummonTurn(e:GetHandler()) and Duel.GetFieldGroupCount(tp,0,LOCATION_MZONE)>0
......
...@@ -16,6 +16,8 @@ function cm.initial_effect(c) ...@@ -16,6 +16,8 @@ function cm.initial_effect(c)
e2:SetCode(EFFECT_PIERCE) e2:SetCode(EFFECT_PIERCE)
e2:SetCondition(cm.prccon) e2:SetCondition(cm.prccon)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Atk Up --Atk Up
function cm.atkval(e,c) function cm.atkval(e,c)
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
e1:SetCondition(RD.MaximumMode) e1:SetCondition(RD.MaximumMode)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -13,7 +13,8 @@ function cm.initial_effect(c) ...@@ -13,7 +13,8 @@ function cm.initial_effect(c)
e1:SetCondition(cm.actcon) e1:SetCondition(cm.actcon)
e1:SetValue(cm.actlimit) e1:SetValue(cm.actlimit)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
--Special Summon Check --Special Summon Check
if not cm.global_check then if not cm.global_check then
cm.global_check=true cm.global_check=true
......
...@@ -22,6 +22,8 @@ function cm.initial_effect(c) ...@@ -22,6 +22,8 @@ function cm.initial_effect(c)
e2:SetCondition(cm.indcon) e2:SetCondition(cm.indcon)
e2:SetValue(cm.indval) e2:SetValue(cm.indval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Cannot Activate --Cannot Activate
function cm.confilter(c) function cm.confilter(c)
......
...@@ -25,6 +25,8 @@ function cm.initial_effect(c) ...@@ -25,6 +25,8 @@ function cm.initial_effect(c)
e3:SetCondition(cm.setcon2) e3:SetCondition(cm.setcon2)
e3:SetTarget(cm.setlimit) e3:SetTarget(cm.setlimit)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3)
end end
--Cannot Set Monster --Cannot Set Monster
function cm.confilter1(c) function cm.confilter1(c)
......
...@@ -22,6 +22,8 @@ function cm.initial_effect(c) ...@@ -22,6 +22,8 @@ function cm.initial_effect(c)
e2:SetCondition(cm.actcon) e2:SetCondition(cm.actcon)
e2:SetOperation(cm.actlimit) e2:SetOperation(cm.actlimit)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_SPELL+TYPE_TRAP+TYPE_MONSTER) cm.indval=RD.ValueEffectIndesType(0,TYPE_SPELL+TYPE_TRAP+TYPE_MONSTER)
......
...@@ -20,6 +20,8 @@ function cm.initial_effect(c) ...@@ -20,6 +20,8 @@ function cm.initial_effect(c)
e2:SetCondition(cm.indcon) e2:SetCondition(cm.indcon)
e2:SetValue(1) e2:SetValue(1)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -15,6 +15,8 @@ function cm.initial_effect(c) ...@@ -15,6 +15,8 @@ function cm.initial_effect(c)
local e2=e1:Clone() local e2=e1:Clone()
e2:SetCode(EFFECT_NO_EFFECT_DAMAGE) e2:SetCode(EFFECT_NO_EFFECT_DAMAGE)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Damage Reduce --Damage Reduce
function cm.damcon(e) function cm.damcon(e)
......
...@@ -36,7 +36,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -36,7 +36,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local mg=g:SelectWithSumEqual(tp,Card.GetLevel,tc:GetLevel(),1,g:GetCount()) local mg=g:SelectWithSumEqual(tp,Card.GetLevel,tc:GetLevel(),1,g:GetCount())
if Duel.SendtoGrave(mg,REASON_EFFECT)~=0 then if Duel.SendtoGrave(mg,REASON_EFFECT)~=0 then
RD.AttachOpponentTribute(e,tc,20244046,aux.Stringid(m,1),RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,RESET_PHASE+PHASE_END) RD.AttachOpponentTribute(e,tc,20244046,aux.Stringid(m,2),RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,RESET_PHASE+PHASE_END)
end end
end) end)
end end
\ No newline at end of file
...@@ -13,6 +13,8 @@ function cm.initial_effect(c) ...@@ -13,6 +13,8 @@ function cm.initial_effect(c)
e1:SetCondition(cm.indcon) e1:SetCondition(cm.indcon)
e1:SetValue(cm.indval) e1:SetValue(cm.indval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Special Summon Procedure --Special Summon Procedure
function cm.spfilter(c) function cm.spfilter(c)
......
...@@ -10,6 +10,8 @@ function cm.initial_effect(c) ...@@ -10,6 +10,8 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -4,7 +4,7 @@ local cm=_G["c"..m] ...@@ -4,7 +4,7 @@ local cm=_G["c"..m]
cm.name="鹰身三姐妹[L]" cm.name="鹰身三姐妹[L]"
function cm.initial_effect(c) function cm.initial_effect(c)
--Change Code --Change Code
RD.EnableChangeCode(c,list[1],LOCATION_MZONE+LOCATION_GRAVE) RD.EnableChangeCode(c,list[1],LOCATION_GRAVE)
--Indes (Normal) --Indes (Normal)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
...@@ -28,6 +28,8 @@ function cm.initial_effect(c) ...@@ -28,6 +28,8 @@ function cm.initial_effect(c)
e3:SetCondition(RD.MaximumMode) e3:SetCondition(RD.MaximumMode)
e3:SetValue(5) e3:SetValue(5)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3,RD.EnableChangeCode(c,list[1],LOCATION_MZONE))
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP) cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
...@@ -4,7 +4,7 @@ local cm=_G["c"..m] ...@@ -4,7 +4,7 @@ local cm=_G["c"..m]
cm.name="鹰身三姐妹[R]" cm.name="鹰身三姐妹[R]"
function cm.initial_effect(c) function cm.initial_effect(c)
--Change Code --Change Code
RD.EnableChangeCode(c,list[1],LOCATION_MZONE+LOCATION_GRAVE) RD.EnableChangeCode(c,list[1],LOCATION_GRAVE)
--Indes (Normal) --Indes (Normal)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
...@@ -26,6 +26,8 @@ function cm.initial_effect(c) ...@@ -26,6 +26,8 @@ function cm.initial_effect(c)
e3:SetCondition(RD.MaximumMode) e3:SetCondition(RD.MaximumMode)
e3:SetValue(2) e3:SetValue(2)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3,RD.EnableChangeCode(c,list[1],LOCATION_MZONE))
end end
--Indes --Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_MONSTER) cm.indval=RD.ValueEffectIndesType(0,TYPE_MONSTER)
\ No newline at end of file
...@@ -4,7 +4,7 @@ local cm=_G["c"..m] ...@@ -4,7 +4,7 @@ local cm=_G["c"..m]
cm.name="鹰身女郎1" cm.name="鹰身女郎1"
function cm.initial_effect(c) function cm.initial_effect(c)
--Change Code --Change Code
RD.EnableChangeCode(c,list[1],LOCATION_MZONE+LOCATION_GRAVE) RD.EnableChangeCode(c,list[1],LOCATION_GRAVE)
--Atk Up --Atk Up
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
...@@ -14,6 +14,8 @@ function cm.initial_effect(c) ...@@ -14,6 +14,8 @@ function cm.initial_effect(c)
e1:SetTarget(cm.uptg) e1:SetTarget(cm.uptg)
e1:SetValue(300) e1:SetValue(300)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,RD.EnableChangeCode(c,list[1],LOCATION_MZONE))
end end
--Atk Up --Atk Up
function cm.uptg(e,c) function cm.uptg(e,c)
......
...@@ -12,6 +12,8 @@ function cm.initial_effect(c) ...@@ -12,6 +12,8 @@ function cm.initial_effect(c)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval) e1:SetValue(cm.atkval)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Atk Up --Atk Up
function cm.filter(c,code) function cm.filter(c,code)
......
...@@ -24,6 +24,8 @@ function cm.initial_effect(c) ...@@ -24,6 +24,8 @@ function cm.initial_effect(c)
e2:SetCondition(cm.indcon) e2:SetCondition(cm.indcon)
e2:SetValue(cm.indval) e2:SetValue(cm.indval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Indes --Indes
function cm.filter(c) function cm.filter(c)
......
...@@ -19,6 +19,8 @@ function cm.initial_effect(c) ...@@ -19,6 +19,8 @@ function cm.initial_effect(c)
e2:SetCondition(cm.indcon) e2:SetCondition(cm.indcon)
e2:SetValue(cm.indval) e2:SetValue(cm.indval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end end
--Atk Up --Atk Up
function cm.filter(c) function cm.filter(c)
......
...@@ -8,6 +8,8 @@ function cm.initial_effect(c) ...@@ -8,6 +8,8 @@ function cm.initial_effect(c)
e1:SetCode(EFFECT_DOUBLE_TRIBUTE) e1:SetCode(EFFECT_DOUBLE_TRIBUTE)
e1:SetValue(cm.trival) e1:SetValue(cm.trival)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Double Tribute --Double Tribute
cm.trival=RD.ValueDoubleTributeAttrType(ATTRIBUTE_LIGHT,TYPE_NORMAL) cm.trival=RD.ValueDoubleTributeAttrType(ATTRIBUTE_LIGHT,TYPE_NORMAL)
\ No newline at end of file
local m=120253003
local cm=_G["c"..m]
cm.name="暗冥矮人"
function cm.initial_effect(c)
--Fusion Summon
local e1=RD.CreateFusionEffect(c,cm.matfilter,cm.spfilter,nil,0,0,nil,nil,nil,nil,true)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_FUSION_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCost(cm.cost)
c:RegisterEffect(e1)
end
--Fusion Summon
function cm.matfilter(c)
return c:IsFaceup() and c:IsOnField()
end
function cm.spfilter(c)
return c:IsAttribute(ATTRIBUTE_DARK)
end
function cm.costfilter(c,e,tp)
return c:IsFaceup() and c:IsRace(RACE_GALAXY) and c:IsAbleToGraveAsCost()
and RD.IsCanFusionSummon(e,tp,cm.matfilter,cm.spfilter,nil,0,0,nil,true,c)
end
cm.cost=RD.CostSendMZoneToGrave(cm.costfilter,1,1,true)
\ No newline at end of file
local m=120253004
local cm=_G["c"..m]
cm.name="暗冥穿越侍·危机"
function cm.initial_effect(c)
--Summon Procedure
cm.sumproc(c,aux.Stringid(m,2),ATTRIBUTE_LIGHT)
cm.sumproc(c,aux.Stringid(m,3),ATTRIBUTE_DARK)
cm.sumproc(c,aux.Stringid(m,4),ATTRIBUTE_FIRE)
cm.sumproc(c,aux.Stringid(m,5),ATTRIBUTE_WATER)
cm.sumproc(c,aux.Stringid(m,6),ATTRIBUTE_EARTH)
cm.sumproc(c,aux.Stringid(m,7),ATTRIBUTE_WIND)
cm.sumproc(c,aux.Stringid(m,8),ATTRIBUTE_DIVINE)
local mat=RD.CreateAdvanceCount(c,3)
--Destroy
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_DESTROY+CATEGORY_ATKCHANGE)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetLabelObject(mat)
e1:SetCondition(cm.condition)
e1:SetTarget(cm.target)
e1:SetOperation(cm.operation)
c:RegisterEffect(e1)
end
--Summon Procedure
function cm.sumproc(c,desc,attr)
RD.AddSummonProcedure(c,desc,cm.sumcon(attr),cm.sumop(attr),SUMMON_TYPE_ADVANCE+SUMMON_VALUE_SELF)
end
function cm.sumcon(attr)
return function(e,c,minc)
if c==nil then return true end
local mg=Duel.GetTributeGroup(c):Filter(Card.IsAttribute,nil,attr)
return minc<=3 and Duel.CheckTribute(c,3,3,mg)
end
end
function cm.sumop(attr)
return function(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetTributeGroup(c):Filter(Card.IsAttribute,nil,attr)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g=Duel.SelectTribute(tp,c,3,3,mg)
c:SetMaterial(g)
Duel.Release(g,REASON_SUMMON+REASON_MATERIAL)
end
end
--Destroy
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return RD.IsSummonTurn(c) and e:GetLabelObject():GetLabel()==3
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(nil,tp,0,LOCATION_ONFIELD,1,nil) end
local g=Duel.GetMatchingGroup(nil,tp,0,LOCATION_ONFIELD,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
RD.SelectAndDoAction(HINTMSG_DESTROY,nil,tp,0,LOCATION_ONFIELD,1,1,nil,function(g)
local c=e:GetHandler()
local tc=g:GetFirst()
if Duel.Destroy(tc,REASON_EFFECT)~=0 and tc:IsLevelAbove(1)
and c:IsFaceup() and c:IsRelateToEffect(e) and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
Duel.BreakEffect()
local atk=tc:GetOriginalLevel()*200
RD.AttachAtkDef(e,c,atk,0,RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END)
end
end)
end
\ No newline at end of file
local m=120253008
local list={120244012,120244011,120196050}
local cm=_G["c"..m]
cm.name="名蔷薇女巫"
function cm.initial_effect(c)
RD.AddCodeList(c,list)
--Discard Deck
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_DECKDES+CATEGORY_TOHAND+CATEGORY_GRAVE_ACTION)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(cm.condition)
e1:SetCost(cm.cost)
e1:SetTarget(cm.target)
e1:SetOperation(cm.operation)
c:RegisterEffect(e1)
end
--Discard Deck
function cm.costfilter(c,e,tp)
return not c:IsPublic() and ((c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_SPELLCASTER)) or c:IsType(TYPE_EQUIP))
end
function cm.thfilter(c)
return c:IsCode(list[1],list[2],list[3]) and c:IsLocation(LOCATION_GRAVE) and c:IsAbleToHand()
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return RD.IsSummonTurn(e:GetHandler())
end
cm.cost=RD.CostShowHand(cm.costfilter,1,1)
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDiscardDeck(tp,4) end
Duel.SetOperationInfo(0,CATEGORY_DECKDES,nil,0,tp,4)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
if RD.SendDeckTopToGraveAndExists(tp,4) then
local og=Duel.GetOperatedGroup()
if og:IsExists(cm.thfilter,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=og:FilterSelect(tp,cm.thfilter,1,1,nil)
Duel.BreakEffect()
RD.SendToHandAndExists(sg,1-tp)
end
end
end
\ No newline at end of file
local m=120253009
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:IsLevelAbove(5) and c:IsRace(RACE_SPELLCASTER)
end
function cm.costfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsAbleToDeckOrExtraAsCost()
end
function cm.filter(c)
return c:IsFaceup() and c:IsLevelAbove(7)
end
function cm.costcheck(g)
return g:GetClassCount(Card.GetAttribute)==1
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,1,nil)
end
cm.cost=RD.CostSendGraveSubToDeck(cm.costfilter,cm.costcheck,3,3)
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
local ct=Duel.GetMatchingGroupCount(cm.filter,tp,0,LOCATION_MZONE,nil)
if chk==0 then return ct>0 and Duel.IsPlayerCanDraw(tp,ct) end
RD.TargetDraw(tp,ct)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER)
local d=Duel.GetMatchingGroupCount(cm.filter,tp,0,LOCATION_MZONE,nil)
Duel.Draw(p,d,REASON_EFFECT)
end
\ No newline at end of file
...@@ -8,6 +8,8 @@ function cm.initial_effect(c) ...@@ -8,6 +8,8 @@ function cm.initial_effect(c)
e1:SetCode(EFFECT_DOUBLE_TRIBUTE) e1:SetCode(EFFECT_DOUBLE_TRIBUTE)
e1:SetValue(cm.trival) e1:SetValue(cm.trival)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
end end
--Double Tribute --Double Tribute
cm.trival=RD.ValueDoubleTributeAttrType(ATTRIBUTE_DARK,TYPE_NORMAL) cm.trival=RD.ValueDoubleTributeAttrType(ATTRIBUTE_DARK,TYPE_NORMAL)
\ No newline at end of file
local m=120253035
local list={120253003,120196050}
local cm=_G["c"..m]
cm.name="暗冥厄运巨人"
function cm.initial_effect(c)
RD.AddCodeList(c,list)
--Fusion Material
aux.AddFusionProcCodeFun(c,list[1],cm.material,1,true,true)
--To Hand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_GRAVE_ACTION)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetTarget(cm.target)
e1:SetOperation(cm.operation)
c:RegisterEffect(e1)
end
--Fusion Material
function cm.material(c)
return c:IsFusionAttribute(ATTRIBUTE_LIGHT+ATTRIBUTE_DARK) and c:IsRace(RACE_GALAXY)
end
--To Hand
cm.trival=RD.ValueDoubleTributeLvAttrRace(8,nil,RACE_GALAXY)
function cm.thfilter(c)
return ((c:IsLevel(7,8) and c:IsRace(RACE_GALAXY)) or c:IsCode(list[2])) and c:IsAbleToHand()
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_GRAVE)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
RD.SelectAndDoAction(HINTMSG_ATOHAND,aux.NecroValleyFilter(cm.thfilter),tp,LOCATION_GRAVE,0,1,1,nil,function(g)
local c=e:GetHandler()
if RD.SendToHandAndExists(g,1-tp) and c:IsFaceup() and c:IsRelateToEffect(e) then
RD.AttachDoubleTribute(e,c,cm.trival,aux.Stringid(m,1),RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END)
RD.AttachTripleTribute(e,c,cm.trival,aux.Stringid(m,2),RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END)
end
end)
end
\ No newline at end of file
local m=120253036
local list={120208002,120253003}
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])
--Atk Down
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_ATKCHANGE)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCost(cm.cost)
e1:SetTarget(cm.target)
e1:SetOperation(cm.operation)
c:RegisterEffect(e1)
end
--Atk Down
function cm.filter(c)
return c:IsFaceup() and c:GetBaseAttack()>=100 and c:IsType(TYPE_EFFECT)
end
cm.cost=RD.CostSendDeckTopToGrave(1)
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,0,LOCATION_MZONE,1,nil) end
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
RD.SelectAndDoAction(aux.Stringid(m,1),cm.filter,tp,0,LOCATION_MZONE,1,1,nil,function(g)
local tc=g:GetFirst()
local atk=tc:GetBaseAttack()
RD.AttachAtkDef(e,tc,-atk,0,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
if RD.IsCanAttachDisableContinuous(tc) and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
RD.AttachDisableContinuous(e,tc,aux.Stringid(m,3),RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
end
end)
end
\ No newline at end of file
local m=120253038
local list={120244011,120253009}
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])
--Destroy
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_DESTROY+CATEGORY_DRAW)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetTarget(cm.target)
e1:SetOperation(cm.operation)
c:RegisterEffect(e1)
end
--Destroy
function cm.desfilter(c)
return c:IsType(TYPE_SPELL+TYPE_TRAP)
end
function cm.exfilter(c)
return c:IsFaceup() and c:IsType(TYPE_SPELL)
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
local ex=Duel.IsExistingMatchingCard(cm.exfilter,tp,LOCATION_ONFIELD,0,1,nil)
if chk==0 then return Duel.IsExistingMatchingCard(cm.desfilter,tp,0,LOCATION_ONFIELD,1,nil)
and (not ex or Duel.IsPlayerCanDraw(tp,1)) end
local g=Duel.GetMatchingGroup(cm.desfilter,tp,0,LOCATION_ONFIELD,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
if ex then
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
RD.SelectAndDoAction(HINTMSG_DESTROY,cm.desfilter,tp,0,LOCATION_ONFIELD,1,1,nil,function(g)
if Duel.Destroy(g,REASON_EFFECT)~=0 and Duel.IsExistingMatchingCard(cm.exfilter,tp,LOCATION_ONFIELD,0,1,nil) then
Duel.Draw(tp,1,REASON_EFFECT)
end
end)
end
\ No newline at end of file
local m=120253039
local list={120244012,120253009}
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])
--Atk Up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Indes
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(cm.indcon)
e2:SetValue(1)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
end
--Atk Up
function cm.atkfilter(c)
return c:IsType(TYPE_EQUIP)
end
function cm.atkval(e,c)
return Duel.GetMatchingGroupCount(cm.atkfilter,c:GetControler(),LOCATION_GRAVE,0,nil)*400
end
--Indes
function cm.indfilter(c)
return c:IsFaceup() and c:IsType(TYPE_SPELL)
end
function cm.indcon(e)
return Duel.IsExistingMatchingCard(cm.indfilter,e:GetHandlerPlayer(),LOCATION_ONFIELD,0,1,nil)
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