Commit 54ba43bb authored by xiaoye's avatar xiaoye

fix

parent 79bfddcb
...@@ -5,11 +5,11 @@ function cm.initial_effect(c) ...@@ -5,11 +5,11 @@ function cm.initial_effect(c)
--通过【费用】[使用1张以上的你希望的张数的卡进行计数爆发]施放! --通过【费用】[使用1张以上的你希望的张数的卡进行计数爆发]施放!
--由于这个费用支付的计数爆发1每有1张,选择对手的1张后防者,退场。 --由于这个费用支付的计数爆发1每有1张,选择对手的1张后防者,退场。
vgd.Order(c,m,cm.op,cm.cost) vgd.Order(c,m,cm.op,cm.cost)
vgf.AddMixCostGroupFrom(c,m,"LOCATION_DAMAGE") vgf.AddAlchemagicFrom(c,m,"LOCATION_DAMAGE")
vgf.AddMixCostGroupTo(c,m,"POSCHANGE") vgf.AddAlchemagicTo(c,m,"POSCHANGE")
vgf.AddMixCostGroupFilter(c,m,Card.IsFaceup) vgf.AddAlchemagicFilter(c,m,Card.IsFaceup)
vgf.AddMixCostGroupCountMin(c,m,1) vgf.AddAlchemagicCountMin(c,m,1)
vgf.AddMixCostGroupCountMax(c,m,100) vgf.AddAlchemagicCountMax(c,m,100)
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local ct=vgf.GetMatchingGroupCount(Card.IsFaceup,tp,LOCATION_DAMAGE,0,nil) local ct=vgf.GetMatchingGroupCount(Card.IsFaceup,tp,LOCATION_DAMAGE,0,nil)
......
...@@ -2,11 +2,11 @@ local cm,m,o=GetID() ...@@ -2,11 +2,11 @@ local cm,m,o=GetID()
function cm.initial_effect(c) function cm.initial_effect(c)
vgd.VgCard(c) vgd.VgCard(c)
vgd.Order(c,m,cm.op,cm.cost) vgd.Order(c,m,cm.op,cm.cost)
vgf.AddMixCostGroupFrom(c,m,"LOCATION_OVERLAY") vgf.AddAlchemagicFrom(c,m,"LOCATION_OVERLAY")
vgf.AddMixCostGroupTo(c,m,"LOCATION_DROP") vgf.AddAlchemagicTo(c,m,"LOCATION_DROP")
vgf.AddMixCostGroupFilter(c,m,function (tc) return tc:IsLevel(3) end) vgf.AddAlchemagicFilter(c,m,function (tc) return tc:IsLevel(3) end)
vgf.AddMixCostGroupCountMin(c,m,1) vgf.AddAlchemagicCountMin(c,m,1)
vgf.AddMixCostGroupCountMax(c,m,1) vgf.AddAlchemagicCountMax(c,m,1)
end end
function cm.filter(c,p) function cm.filter(c,p)
return c:IsControler(p) and vgf.RMonsterFilter(c) return c:IsControler(p) and vgf.RMonsterFilter(c)
......
...@@ -5,11 +5,11 @@ local cm,m,o=GetID() ...@@ -5,11 +5,11 @@ local cm,m,o=GetID()
function cm.initial_effect(c) function cm.initial_effect(c)
vgd.VgCard(c) vgd.VgCard(c)
vgd.Order(c,m,cm.op,vgf.LeaveFieldCost(vgf.RMonsterFilter,2,2)) vgd.Order(c,m,cm.op,vgf.LeaveFieldCost(vgf.RMonsterFilter,2,2))
vgf.AddMixCostGroupFrom(c,m,"LOCATION_MZONE") vgf.AddAlchemagicFrom(c,m,"LOCATION_MZONE")
vgf.AddMixCostGroupTo(c,m,"LOCATION_DROP") vgf.AddAlchemagicTo(c,m,"LOCATION_DROP")
vgf.AddMixCostGroupFilter(c,m,vgf.RMonsterFilter) vgf.AddAlchemagicFilter(c,m,vgf.RMonsterFilter)
vgf.AddMixCostGroupCountMin(c,m,2) vgf.AddAlchemagicCountMin(c,m,2)
vgf.AddMixCostGroupCountMax(c,m,2) vgf.AddAlchemagicCountMax(c,m,2)
end end
function cm.op(e,tp,eg,ep,ev,re,r,rp) function cm.op(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -2,11 +2,11 @@ local cm,m,o=GetID() ...@@ -2,11 +2,11 @@ local cm,m,o=GetID()
function cm.initial_effect(c) function cm.initial_effect(c)
vgd.VgCard(c) vgd.VgCard(c)
vgd.Order(c,m,cm.op,cm.cost) vgd.Order(c,m,cm.op,cm.cost)
vgf.AddMixCostGroupFilter(c,m,cm.filter) vgf.AddAlchemagicFilter(c,m,cm.filter)
vgf.AddMixCostGroupCountMin(c,m,1) vgf.AddAlchemagicCountMin(c,m,1)
vgf.AddMixCostGroupCountMax(c,m,1) vgf.AddAlchemagicCountMax(c,m,1)
vgf.AddMixCostGroupFrom(c,m,"LOCATION_HAND") vgf.AddAlchemagicFrom(c,m,"LOCATION_HAND")
vgf.AddMixCostGroupTo(c,m,"LOCATION_DROP") vgf.AddAlchemagicTo(c,m,"LOCATION_DROP")
end end
function cm.op(e,tp,eg,ep,ev,re,r,rp) function cm.op(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -630,11 +630,11 @@ function VgF.DisCardCost(val) ...@@ -630,11 +630,11 @@ function VgF.DisCardCost(val)
local m = c:GetOriginalCode() local m = c:GetOriginalCode()
if chk == 0 then if chk == 0 then
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
VgF.AddMixCostGroupFrom(c, m, "LOCATION_HAND") VgF.AddAlchemagicFrom(c, m, "LOCATION_HAND")
VgF.AddMixCostGroupTo(c, m, "LOCATION_DROP") VgF.AddAlchemagicTo(c, m, "LOCATION_DROP")
VgF.AddMixCostGroupFilter(c, m, nil) VgF.AddAlchemagicFilter(c, m, nil)
VgF.AddMixCostGroupCountMin(c, m, val) VgF.AddAlchemagicCountMin(c, m, val)
VgF.AddMixCostGroupCountMax(c, m, val) VgF.AddAlchemagicCountMax(c, m, val)
end end
return VgF.IsExistingMatchingCard(nil, tp, LOCATION_HAND, 0, val, nil) return VgF.IsExistingMatchingCard(nil, tp, LOCATION_HAND, 0, val, nil)
end end
...@@ -653,11 +653,11 @@ function VgF.EnergyCost(val) ...@@ -653,11 +653,11 @@ function VgF.EnergyCost(val)
local m = c:GetOriginalCode() local m = c:GetOriginalCode()
if chk == 0 then if chk == 0 then
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
VgF.AddMixCostGroupFrom(c, m, "LOCATION_EMBLEM") VgF.AddAlchemagicFrom(c, m, "LOCATION_EMBLEM")
VgF.AddMixCostGroupTo(c, m, "0") VgF.AddAlchemagicTo(c, m, "0")
VgF.AddMixCostGroupFilter(c, m, function(tc) tc:IsCode(CARD_ENERGY) end) VgF.AddAlchemagicFilter(c, m, function(tc) tc:IsCode(CARD_ENERGY) end)
VgF.AddMixCostGroupCountMin(c, m, val) VgF.AddAlchemagicCountMin(c, m, val)
VgF.AddMixCostGroupCountMax(c, m, val) VgF.AddAlchemagicCountMax(c, m, val)
end end
return VgF.IsExistingMatchingCard(Card.IsCode, tp, LOCATION_EMBLEM, 0, val, nil, CARD_ENERGY) return VgF.IsExistingMatchingCard(Card.IsCode, tp, LOCATION_EMBLEM, 0, val, nil, CARD_ENERGY)
end end
...@@ -676,11 +676,11 @@ function VgF.OverlayCost(val) ...@@ -676,11 +676,11 @@ function VgF.OverlayCost(val)
local m = c:GetOriginalCode() local m = c:GetOriginalCode()
if chk == 0 then if chk == 0 then
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
VgF.AddMixCostGroupFrom(c, m, "LOCATION_OVERLAY") VgF.AddAlchemagicFrom(c, m, "LOCATION_OVERLAY")
VgF.AddMixCostGroupTo(c, m, "LOCATION_DROP") VgF.AddAlchemagicTo(c, m, "LOCATION_DROP")
VgF.AddMixCostGroupFilter(c, m, nil) VgF.AddAlchemagicFilter(c, m, nil)
VgF.AddMixCostGroupCountMin(c, m, val) VgF.AddAlchemagicCountMin(c, m, val)
VgF.AddMixCostGroupCountMax(c, m, val) VgF.AddAlchemagicCountMax(c, m, val)
end end
return Duel.GetMatchingGroup(VgF.VMonsterFilter, tp, LOCATION_MZONE, 0, nil, nil):GetFirst():GetOverlayCount() >= val return Duel.GetMatchingGroup(VgF.VMonsterFilter, tp, LOCATION_MZONE, 0, nil, nil):GetFirst():GetOverlayCount() >= val
end end
...@@ -699,11 +699,11 @@ function VgF.OverlayFill(val) ...@@ -699,11 +699,11 @@ function VgF.OverlayFill(val)
local m = c:GetOriginalCode() local m = c:GetOriginalCode()
if chk == 0 then if chk == 0 then
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
VgF.AddMixCostGroupFrom(c, m, "LOCATION_DECK") VgF.AddAlchemagicFrom(c, m, "LOCATION_DECK")
VgF.AddMixCostGroupTo(c, m, "LOCATION_OVERLAY") VgF.AddAlchemagicTo(c, m, "LOCATION_OVERLAY")
VgF.AddMixCostGroupFilter(c, m, nil) VgF.AddAlchemagicFilter(c, m, nil)
VgF.AddMixCostGroupCountMin(c, m, val) VgF.AddAlchemagicCountMin(c, m, val)
VgF.AddMixCostGroupCountMax(c, m, val) VgF.AddAlchemagicCountMax(c, m, val)
end end
return Duel.GetFieldGroupCount(tp, LOCATION_DECK, 0) >= val return Duel.GetFieldGroupCount(tp, LOCATION_DECK, 0) >= val
end end
...@@ -724,11 +724,11 @@ function VgF.DamageCost(val) ...@@ -724,11 +724,11 @@ function VgF.DamageCost(val)
local m = c:GetOriginalCode() local m = c:GetOriginalCode()
if chk == 0 then if chk == 0 then
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
VgF.AddMixCostGroupFrom(c, m, "LOCATION_DAMAGE") VgF.AddAlchemagicFrom(c, m, "LOCATION_DAMAGE")
VgF.AddMixCostGroupTo(c, m, "POSCHANGE") VgF.AddAlchemagicTo(c, m, "POSCHANGE")
VgF.AddMixCostGroupFilter(c, m, Card.IsFaceup) VgF.AddAlchemagicFilter(c, m, Card.IsFaceup)
VgF.AddMixCostGroupCountMin(c, m, val) VgF.AddAlchemagicCountMin(c, m, val)
VgF.AddMixCostGroupCountMax(c, m, val) VgF.AddAlchemagicCountMax(c, m, val)
end end
return VgF.IsExistingMatchingCard(Card.IsFaceup, tp, LOCATION_DAMAGE, 0, val, nil) return VgF.IsExistingMatchingCard(Card.IsFaceup, tp, LOCATION_DAMAGE, 0, val, nil)
end end
...@@ -1430,35 +1430,35 @@ function VgF.AddRideMaterialCode(c, m, ...) ...@@ -1430,35 +1430,35 @@ function VgF.AddRideMaterialCode(c, m, ...)
table.insert(cm.ride_code, v) table.insert(cm.ride_code, v)
end end
end end
function VgF.AddMixCostGroupFrom(c, m, ...) function VgF.AddAlchemagicFrom(c, m, ...)
local cm = _G["c"..m] local cm = _G["c"..m]
if VgF.GetValueType(cm.cos_from) ~= "table" then cm.cos_from = {} end if VgF.GetValueType(cm.cos_from) ~= "table" then cm.cos_from = {} end
for i, v in ipairs({...}) do for i, v in ipairs({...}) do
table.insert(cm.cos_from, v) table.insert(cm.cos_from, v)
end end
end end
function VgF.AddMixCostGroupTo(c, m, ...) function VgF.AddAlchemagicTo(c, m, ...)
local cm = _G["c"..m] local cm = _G["c"..m]
if VgF.GetValueType(cm.cos_to) ~= "table" then cm.cos_to = {} end if VgF.GetValueType(cm.cos_to) ~= "table" then cm.cos_to = {} end
for i, v in ipairs({...}) do for i, v in ipairs({...}) do
table.insert(cm.cos_to, v) table.insert(cm.cos_to, v)
end end
end end
function VgF.AddMixCostGroupCountMin(c, m, ...) function VgF.AddAlchemagicCountMin(c, m, ...)
local cm = _G["c"..m] local cm = _G["c"..m]
if VgF.GetValueType(cm.cos_val) ~= "table" then cm.cos_val = {} end if VgF.GetValueType(cm.cos_val) ~= "table" then cm.cos_val = {} end
for i, v in ipairs({...}) do for i, v in ipairs({...}) do
table.insert(cm.cos_val, v) table.insert(cm.cos_val, v)
end end
end end
function VgF.AddMixCostGroupCountMax(c, m, ...) function VgF.AddAlchemagicCountMax(c, m, ...)
local cm = _G["c"..m] local cm = _G["c"..m]
if VgF.GetValueType(cm.cos_val_max) ~= "table" then cm.cos_val_max = {} end if VgF.GetValueType(cm.cos_val_max) ~= "table" then cm.cos_val_max = {} end
for i, v in ipairs({...}) do for i, v in ipairs({...}) do
table.insert(cm.cos_val_max, v) table.insert(cm.cos_val_max, v)
end end
end end
function VgF.AddMixCostGroupFilter(c, m, ...) function VgF.AddAlchemagicFilter(c, m, ...)
local cm = _G["c"..m] local cm = _G["c"..m]
if VgF.GetValueType(cm.cos_filter) ~= "table" then cm.cos_filter = {} end if VgF.GetValueType(cm.cos_filter) ~= "table" then cm.cos_filter = {} end
for i, v in ipairs({...}) do for i, v in ipairs({...}) do
......
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