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

2022/8/14 新增:5张装备,为装备卡机制添加单独的lua

parent 29d333a5
Pipeline #15590 passed with stages
in 4 minutes and 30 seconds
No preview for this file type
-- Rush Duel 装备
RushDuel = RushDuel or {}
-- 注册效果: 装备魔法的装备效果
function RushDuel.RegisterEquipEffect(card, condition, cost, target)
-- Activate
local e1 = Effect.CreateEffect(card)
e1:SetCategory(CATEGORY_EQUIP)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
if condition ~= nil then
e1:SetCondition(condition)
end
if cost ~= nil then
e1:SetCost(cost)
end
e1:SetTarget(RushDuel.EquipTarget(target))
e1:SetOperation(RushDuel.EquipOperation(target))
card:RegisterEffect(e1)
-- Equip Limit
local e2 = Effect.CreateEffect(card)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_EQUIP_LIMIT)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetValue(RushDuel.EquipFilter(target))
card:RegisterEffect(e2)
return e1
end
function RushDuel.EquipTarget(target)
return function(e, tp, eg, ep, ev, re, r, rp, chk)
if chk == 0 then
return Duel.IsExistingMatchingCard(target, tp, LOCATION_MZONE, LOCATION_MZONE, 1, nil, e, tp)
end
Duel.SetOperationInfo(0, CATEGORY_EQUIP, e:GetHandler(), 1, 0, 0)
end
end
function RushDuel.EquipOperation(target)
return function(e, tp, eg, ep, ev, re, r, rp)
local c = e:GetHandler()
Duel.Hint(HINT_SELECTMSG, tp, HINTMSG_EQUIP)
local g = Duel.SelectMatchingCard(tp, target, tp, LOCATION_MZONE, LOCATION_MZONE, 1, 1, nil, e, tp)
local tc = g:GetFirst()
if tc and c:IsRelateToEffect(e) then
Duel.HintSelection(g)
Duel.Equip(tp, c, tc)
end
end
end
function RushDuel.EquipFilter(target)
return function(e, c)
return target(c, e, e:GetHandlerPlayer())
end
end
local m=120229041
local cm=_G["c"..m]
cm.name="接合科技超速角枪"
function cm.initial_effect(c)
--Activate
RD.RegisterEquipEffect(c,nil,nil,cm.target)
--Atk Up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(300)
c:RegisterEffect(e1)
--Pierce
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_EQUIP)
e2:SetCode(EFFECT_PIERCE)
c:RegisterEffect(e2)
end
--Activate
function cm.target(c,e,tp)
return c:IsControler(tp) and c:IsFaceup() and c:IsRace(RACE_MACHINE)
end
\ No newline at end of file
local m=120229042
local cm=_G["c"..m]
cm.name="查询键刃"
function cm.initial_effect(c)
--Activate
RD.RegisterEquipEffect(c,nil,nil,cm.target)
--Atk Up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(cm.upval)
c:RegisterEffect(e1)
--Pierce
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_EQUIP)
e2:SetCode(EFFECT_PIERCE)
e2:SetCondition(cm.prccon)
c:RegisterEffect(e2)
end
--Activate
function cm.target(c,e,tp)
return c:IsControler(tp) and c:IsFaceup() and c:IsRace(RACE_DRAGON)
end
--Atk Up
function cm.upfilter(c)
return c:IsFaceup() and c:IsType(TYPE_SPELL)
end
function cm.upval(e,c)
return Duel.GetMatchingGroupCount(cm.upfilter,e:GetHandlerPlayer(),LOCATION_ONFIELD,0,nil)*200
end
--Pierce
function cm.prccon(e)
return e:GetHandler():GetEquipTarget():IsAttribute(ATTRIBUTE_DARK)
end
\ No newline at end of file
local m=120229043
local cm=_G["c"..m]
cm.name="化学武器·红"
function cm.initial_effect(c)
--Activate
RD.RegisterEquipEffect(c,nil,nil,cm.target)
--Atk Up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(300)
c:RegisterEffect(e1)
--Indes
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_EQUIP)
e2:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
e2:SetValue(cm.indval)
c:RegisterEffect(e2)
end
--Activate
function cm.target(c,e,tp)
return c:IsControler(tp) and c:IsFaceup() and c:IsRace(RACE_PYRO)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP,true)
\ No newline at end of file
local m=120229050
local list={120105001}
local cm=_G["c"..m]
cm.name="大道武装-七星枪"
function cm.initial_effect(c)
aux.AddCodeList(c,list[1])
--Activate
RD.RegisterEquipEffect(c,cm.condition,nil,cm.target)
--Atk Up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(cm.upval)
c:RegisterEffect(e1)
--Indes
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_EQUIP)
e2:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
e2:SetValue(cm.indval)
c:RegisterEffect(e2)
end
--Activate
function cm.confilter(c)
return c:IsFaceup() and c:IsCode(m)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return not Duel.IsExistingMatchingCard(cm.confilter,tp,LOCATION_ONFIELD,0,1,e:GetHandler())
end
function cm.target(c,e,tp)
return c:IsControler(tp) and c:IsFaceup() and c:IsCode(list[1])
end
--Atk Up
function cm.upfilter(c)
return c:IsType(TYPE_MONSTER)
end
function cm.upval(e,c)
local g=Duel.GetMatchingGroup(cm.upfilter,e:GetHandlerPlayer(),LOCATION_GRAVE,0,nil)
return g:GetClassCount(Card.GetAttribute)*400
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP,true)
\ No newline at end of file
local m=120229059
local cm=_G["c"..m]
cm.name="升阵的装备品"
function cm.initial_effect(c)
--Activate
RD.RegisterEquipEffect(c,nil,nil,cm.target)
--Level Up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_EQUIP)
e1:SetCode(EFFECT_UPDATE_LEVEL)
e1:SetValue(2)
c:RegisterEffect(e1)
--Atk & Def Up
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_EQUIP)
e2:SetCode(EFFECT_UPDATE_ATTACK)
e2:SetValue(200)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e3)
end
--Activate
function cm.target(c,e,tp)
return c:IsControler(tp) and c:IsFaceup()
end
\ No newline at end of file
......@@ -9,6 +9,7 @@ Duel.LoadScript("RDTarget.lua")
Duel.LoadScript("RDValue.lua")
Duel.LoadScript("RDAttach.lua")
Duel.LoadScript("RDAction.lua")
Duel.LoadScript("RDEquip.lua")
RD = RushDuel
function Auxiliary.PreloadUds()
......
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