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

2023/12/17 新增:KP16与PR24新卡,更新妥协召唤手续

parent d9cb6a3d
Pipeline #24416 passed with stages
in 15 minutes and 16 seconds
No preview for this file type
No preview for this file type
......@@ -309,160 +309,6 @@ function RushDuel.CreateMultiChooseEffect(card, condition, cost, hint1, target1,
return e1, e2
end
-- 添加通常召唤手续
function RushDuel.AddSummonProcedure(card, desc, condition, operation, value)
local e1 = Effect.CreateEffect(card)
e1:SetDescription(desc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SUMMON_PROC)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE + EFFECT_FLAG_UNCOPYABLE)
e1:SetCondition(condition)
if operation ~= nil then
e1:SetOperation(operation)
end
if value ~= nil then
e1:SetValue(value)
end
card:RegisterEffect(e1)
return e1
end
-- 添加手卡特殊召唤手续
function RushDuel.AddHandSpecialSummonProcedure(card, desc, condition, target, operation, value, position)
local e1 = Effect.CreateEffect(card)
e1:SetDescription(desc)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SPSUMMON_PROC)
if position == nil then
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE + EFFECT_FLAG_UNCOPYABLE)
else
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE + EFFECT_FLAG_UNCOPYABLE + EFFECT_FLAG_SPSUM_PARAM)
e1:SetTargetRange(position, 0)
end
e1:SetRange(LOCATION_HAND)
if condition ~= nil then
e1:SetCondition(condition)
end
if target ~= nil then
e1:SetTarget(target)
end
if operation ~= nil then
e1:SetOperation(operation)
end
if value ~= nil then
e1:SetValue(value)
end
card:RegisterEffect(e1)
return e1
end
-- 上级召唤时的解放怪兽检测
function RushDuel.CreateAdvanceCheck(card, filter, count, flag)
local e1 = Effect.CreateEffect(card)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_MATERIAL_CHECK)
e1:SetValue(function(e, c)
local mg = c:GetMaterial()
local ct = math.min(count, mg:GetCount())
local label = 0
if c:IsLevelBelow(6) and count == 2 then
-- 当前等级小于解放要求
elseif ct > 0 and mg:IsExists(filter, ct, nil, e) then
label = flag
end
e:SetLabel(label)
end)
card:RegisterEffect(e1)
local e2 = Effect.CreateEffect(card)
e2:SetType(EFFECT_TYPE_SINGLE + EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_SUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e2:SetLabelObject(e1)
e2:SetCondition(RushDuel.AdvanceCheckCondition)
e2:SetOperation(RushDuel.AdvanceCheckOperation)
card:RegisterEffect(e2)
return e1, e2
end
function RushDuel.AdvanceCheckCondition(e, tp, eg, ep, ev, re, r, rp)
return e:GetLabelObject():GetLabel() ~= 0 and e:GetHandler():IsSummonType(SUMMON_TYPE_ADVANCE)
end
function RushDuel.AdvanceCheckOperation(e, tp, eg, ep, ev, re, r, rp)
e:GetHandler():RegisterFlagEffect(e:GetLabelObject():GetLabel(), RESET_EVENT + RESETS_STANDARD, 0, 1)
end
-- 记录召唤的解放数量
function RushDuel.CreateAdvanceCount(card, self_value)
local e1 = Effect.CreateEffect(card)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_MATERIAL_CHECK)
e1:SetValue(function(e, c)
if c:IsSummonType(SUMMON_VALUE_SELF) then
e:SetLabel(self_value)
elseif c:IsLevelBelow(4) then
e:SetLabel(0)
elseif c:IsLevelBelow(6) then
e:SetLabel(1)
else
e:SetLabel(2)
end
end)
card:RegisterEffect(e1)
return e1
end
-- 记录攻击表示上级召唤的状态
function RushDuel.CreateAdvanceSummonFlag(card, flag)
local e1 = Effect.CreateEffect(card)
e1:SetType(EFFECT_TYPE_SINGLE + EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetLabel(flag)
e1:SetCondition(RushDuel.AdvanceSummonFlagCondition)
e1:SetOperation(RushDuel.AdvanceSummonFlagOperation)
card:RegisterEffect(e1)
return e1
end
function RushDuel.AdvanceSummonFlagCondition(e, tp, eg, ep, ev, re, r, rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_ADVANCE)
end
function RushDuel.AdvanceSummonFlagOperation(e, tp, eg, ep, ev, re, r, rp)
e:GetHandler():RegisterFlagEffect(e:GetLabel(), RESET_EVENT + RESETS_STANDARD, 0, 1)
end
-- 三重解放 (临时处理方法)
function RushDuel.CreateTripleTribute(source, card, desc, value, forced)
local e1 = Effect.CreateEffect(source)
e1:SetDescription(desc)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SUMMON_PROC)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(LOCATION_HAND, 0)
e1:SetCondition(RushDuel.TripleTributeCondition)
e1:SetTarget(RushDuel.TripleTributeTarget(value))
e1:SetOperation(RushDuel.TripleTributeOperation)
e1:SetValue(SUMMON_TYPE_ADVANCE + SUMMON_VALUE_SELF)
card:RegisterEffect(e1, forced)
return e1
end
function RushDuel.TripleTributeCondition(e, c, minc)
if c == nil then
return true
end
local tc = e:GetHandler()
local tp = c:GetControler()
local mg = Duel.GetTributeGroup(c)
return minc <= 3 and mg:IsContains(tc) and Duel.GetMZoneCount(tp, tc) > 0
end
function RushDuel.TripleTributeTarget(value)
return function(e, c)
return value(e, c) and c:IsCode(120235000, 120253004)
end
end
function RushDuel.TripleTributeOperation(e, tp, eg, ep, ev, re, r, rp, c)
local mg = Group.FromCards(e:GetHandler())
c:SetMaterial(mg)
Duel.Release(mg, REASON_SUMMON + REASON_MATERIAL)
end
-- 添加记述卡牌列表
function RushDuel.AddCodeList(card, ...)
for _, list in ipairs {...} do
......
......@@ -169,6 +169,20 @@ function RushDuel.IsCanAttachDisableContinuous(card)
return has_effect and not card:IsHasEffect(EFFECT_DISABLE)
end
-- 条件: 是否可以使用双重解放
function RushDuel.IsCanDoubleTribute(card, target)
local effects = {card:IsHasEffect(EFFECT_DOUBLE_TRIBUTE)}
for i, effect in ipairs(effects) do
local value = effect:GetValue()
if value == 1 then
return true
elseif value(effect, target) then
return true
end
end
return false
end
-- 条件: 玩家是否能够使用特定种族进行攻击
function RushDuel.IsPlayerCanUseRaceAttack(player, race)
if Duel.IsPlayerAffectedByEffect(player, EFFECT_PLAYER_CANNOT_ATTACK) then
......
......@@ -9,12 +9,12 @@ function RushDuel.Init()
end
-- 决斗开始
RushDuel.CreateFieldGlobalEffect(true, EVENT_PHASE_START + PHASE_DRAW, function(e)
-- 传说卡
RushDuel.InitLegend()
-- 先攻抽卡
if not Auxiliary.Load2PickRule then
Duel.Draw(0, 1, REASON_RULE)
end
-- 传说卡
RushDuel.InitLegend()
e:Reset()
end)
end
......@@ -67,14 +67,4 @@ function RushDuel.InitRule()
RushDuel.CreatePlayerTargetGlobalEffect(EFFECT_HAND_LIMIT, 100)
-- 极大怪兽
RushDuel.InitMaximum()
-- 调整: 召唤·特殊召唤的回合被盖放, 不再符合召唤·特殊召唤的回合的条件
local function is_turn_set(c)
return c:IsPreviousPosition(POS_FACEUP) and c:IsFacedown()
end
RushDuel.CreateFieldGlobalEffect(true, EVENT_CHANGE_POS, function(e, tp, eg, ep, ev, re, r, rp)
local g = eg:Filter(is_turn_set,nil)
g:ForEach(function(tc)
tc:RegisterFlagEffect(FLAG_NOT_SUMMON_TURN, RESET_EVENT + RESETS_STANDARD - RESET_TURN_SET, 0, 1)
end)
end)
end
This diff is collapsed.
......@@ -3,13 +3,9 @@ local cm=_G["c"..m]
cm.name="疾风之暗黑骑士 盖亚"
function cm.initial_effect(c)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon)
RD.AddSummonProcedureZero(c,aux.Stringid(m,0),cm.sumcon)
end
--Summon Procedure
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
return minc==0 and c:IsLevelAbove(5)
and Duel.GetFieldGroupCount(tp,LOCATION_HAND,0)==1
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
function cm.sumcon(c,e,tp)
return Duel.GetFieldGroupCount(tp,LOCATION_HAND,0)==1
end
\ No newline at end of file
......@@ -5,7 +5,7 @@ cm.name="电子搜索龙"
function cm.initial_effect(c)
RD.AddCodeList(c,list)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE)
RD.AddSummonProcedureOne(c,aux.Stringid(m,0),nil,cm.sumfilter)
--Special Summon
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1))
......@@ -19,21 +19,9 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
end
--Summon Procedure
function cm.matfilter(c,tp)
function cm.sumfilter(c,e,tp)
return c:IsFaceup() and c:IsCode(list[1])
end
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
local sg=Duel.SelectTribute(tp,c,1,1,mg)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
--Special Summon
function cm.spfilter(c,e,tp)
return c:IsCode(list[1]) and RD.IsCanBeSpecialSummoned(c,e,tp,POS_FACEUP)
......
......@@ -14,7 +14,7 @@ function cm.initial_effect(c)
e1:SetValue(300)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Special Summon Procedure
function cm.spconfilter(c)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -10,7 +10,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indes)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
function cm.indes(e,c)
......
......@@ -12,7 +12,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -17,7 +17,7 @@ function cm.initial_effect(c)
e2:SetCondition(cm.tricon)
e2:SetTarget(cm.eftg)
e2:SetOperation(cm.triop)
e2:SetValue(SUMMON_TYPE_ADVANCE)
e2:SetValue(SUMMON_TYPE_ADVANCE+SUMMON_VALUE_ONE)
c:RegisterEffect(e2)
end
--Activate
......
......@@ -35,7 +35,7 @@ function cm.initial_effect(c)
e4:SetTarget(cm.distg)
c:RegisterEffect(e4)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3,e4)
RD.AddContinuousEffect(c,e1,e2,e3,e4)
end
--Disable
function cm.distg(e,c)
......
......@@ -10,7 +10,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.atkval(e,c)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -11,7 +11,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.filter(c)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -13,7 +13,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.filter(c)
......
......@@ -19,7 +19,7 @@ function cm.filter(c)
return c:IsFaceup() and not c:IsLevel(3) and c:IsRace(RACE_SPELLCASTER) and c:IsAbleToHand()
end
function cm.exfilter(c)
return c:IsCode(list[1]) and c:IsLocation(LOCATION_HAND)
return c:IsOriginalCodeRule(list[1]) and c:IsLocation(LOCATION_HAND)
end
cm.cost=RD.CostSendDeckTopToGrave(1)
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
......
......@@ -11,7 +11,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.atkval(e,c)
......
......@@ -23,7 +23,7 @@ function cm.initial_effect(c)
e2:SetCondition(cm.prccon)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Atk Up
function cm.filter(c)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -13,7 +13,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.aclimit)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
function cm.condition(e)
local ph=Duel.GetCurrentPhase()
......
......@@ -18,7 +18,7 @@ function cm.initial_effect(c)
e2:SetCondition(cm.prccon)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Atk Up
function cm.atkval(e,c)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -14,7 +14,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.actlimit)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
--Special Summon Check
if not cm.global_check then
cm.global_check=true
......
......@@ -24,7 +24,7 @@ function cm.initial_effect(c)
e2:SetValue(1)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Atk Up
function cm.filter(c)
......
......@@ -11,7 +11,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.filter(c)
......
......@@ -11,7 +11,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.filter(c)
......
......@@ -12,7 +12,7 @@ function cm.initial_effect(c)
e1:SetTarget(cm.sumlimit)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Cannot Special Summon
function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp,se)
......
......@@ -13,7 +13,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.aclimit)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
function cm.condition(e)
local ph=Duel.GetCurrentPhase()
......
......@@ -9,7 +9,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.trival)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Double Tribute
cm.trival=RD.ValueDoubleTributeAttrRace(ATTRIBUTE_FIRE,nil)
\ No newline at end of file
......@@ -12,7 +12,7 @@ function cm.initial_effect(c)
e1:SetTarget(cm.sumlimit)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Cannot Special Summon
function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp)
......
......@@ -3,7 +3,7 @@ local cm=_G["c"..m]
cm.name="堕天使 杰拉特"
function cm.initial_effect(c)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE)
RD.AddSummonProcedureOne(c,aux.Stringid(m,0),cm.sumcon,cm.sumfilter)
--Destroy
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1))
......@@ -16,22 +16,12 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
end
--Summon Procedure
function cm.matfilter(c,tp)
return c:IsAttribute(ATTRIBUTE_DARK) and (c:IsFaceup() or c:IsControler(tp))
end
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
function cm.sumcon(c,e,tp)
local g=Duel.GetMatchingGroup(Card.IsAttribute,tp,LOCATION_GRAVE,0,nil,ATTRIBUTE_DARK)
if g:GetClassCount(Card.GetLinkCode)<4 then return false end
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
return g:GetClassCount(Card.GetLinkCode)>3
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
local sg=Duel.SelectTribute(tp,c,1,1,mg)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
function cm.sumfilter(c,e,tp)
return c:IsAttribute(ATTRIBUTE_DARK) and (c:IsFaceup() or c:IsControler(tp))
end
--Destroy
function cm.costfilter(c)
......
......@@ -12,7 +12,7 @@ function cm.initial_effect(c)
e1:SetValue(700)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.filter(c)
......
......@@ -21,7 +21,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.indval)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Indes
function cm.filter(c)
......
......@@ -11,7 +11,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.target)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Cannot Be Battle Target
function cm.target(e,c)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -17,7 +17,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.indval2)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Indes
cm.indval1=RD.ValueEffectIndesType(0,TYPE_TRAP)
......
......@@ -26,7 +26,7 @@ function cm.initial_effect(c)
e3:SetTarget(cm.setlimit)
c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3)
RD.AddContinuousEffect(c,e1,e2,e3)
end
--Cannot Special Summon
function cm.sumlimit(e,c,sump,sumtype,sumpos,targetp)
......
......@@ -10,7 +10,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indes)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
function cm.indes(e,c)
......
......@@ -25,7 +25,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.indval)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -12,5 +12,5 @@ function cm.initial_effect(c)
e1:SetCode(EFFECT_PIERCE)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
\ No newline at end of file
......@@ -13,5 +13,5 @@ function cm.initial_effect(c)
e1:SetValue(1)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
\ No newline at end of file
......@@ -5,7 +5,7 @@ cm.name="电子强袭龙"
function cm.initial_effect(c)
RD.AddCodeList(c,list)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE)
RD.AddSummonProcedureOne(c,aux.Stringid(m,0),nil,cm.sumfilter)
--Destroy
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1))
......@@ -18,21 +18,9 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
end
--Summon Procedure
function cm.matfilter(c,tp)
function cm.sumfilter(c,e,tp)
return c:IsFaceup() and c:IsCode(list[1])
end
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
local sg=Duel.SelectTribute(tp,c,1,1,mg)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
--Destroy
function cm.costfilter(c)
return c:IsCode(list[1]) and c:IsAbleToDeckOrExtraAsCost()
......
......@@ -5,7 +5,7 @@ cm.name="电子隐形龙"
function cm.initial_effect(c)
RD.AddCodeList(c,list)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE)
RD.AddSummonProcedureOne(c,aux.Stringid(m,0),nil,cm.sumfilter)
--Def Up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
......@@ -25,24 +25,12 @@ function cm.initial_effect(c)
e2:SetValue(cm.indval)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Summon Procedure
function cm.matfilter(c,tp)
function cm.sumfilter(c,e,tp)
return c:IsFaceup() and c:IsCode(list[1])
end
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
local sg=Duel.SelectTribute(tp,c,1,1,mg)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
--Def Up
function cm.confilter(c)
return c:IsCode(list[1])
......
......@@ -4,5 +4,5 @@ local cm=_G["c"..m]
cm.name="原始电子龙"
function cm.initial_effect(c)
--Change Code
RushDuel.AddContinuousEffect(c,RD.EnableChangeCode(c,list[1]))
RD.AddContinuousEffect(c,RD.EnableChangeCode(c,list[1]))
end
......@@ -17,7 +17,7 @@ function cm.initial_effect(c)
e2:SetCode(EFFECT_UPDATE_DEFENSE)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Special Summon Procedure
function cm.spconfilter(c)
......
......@@ -13,7 +13,7 @@ function cm.initial_effect(c)
e1:SetTarget(cm.target)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Special Summon Procedure
function cm.spconfilter(c)
......
......@@ -12,7 +12,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.drawval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Draw Count
function cm.drawval(e)
......
......@@ -12,7 +12,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
......
......@@ -9,7 +9,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indes)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
function cm.indes(e,c)
......
......@@ -13,7 +13,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.filter(c)
......
......@@ -3,35 +3,22 @@ local cm=_G["c"..m]
cm.name="闪电之战士 吉尔福德"
function cm.initial_effect(c)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE+SUMMON_VALUE_SELF)
local mat=RD.CreateAdvanceCount(c,3)
RD.AddSummonProcedureThree(c,aux.Stringid(m,0))
--Destroy
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1))
e1:SetCategory(CATEGORY_DESTROY)
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.sumcon(e,c,minc)
if c==nil then return true end
return minc<=3 and Duel.CheckTribute(c,3)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g=Duel.SelectTribute(tp,c,3,3)
c:SetMaterial(g)
Duel.Release(g,REASON_SUMMON+REASON_MATERIAL)
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
return RD.IsSummonTurn(c) and c:IsSummonType(SUMMON_VALUE_THREE)
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(nil,tp,0,LOCATION_MZONE,1,nil) end
......
......@@ -11,7 +11,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.filter(c)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.limit)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Cannot Activate
function cm.limit(e,re,tp)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_MONSTER+TYPE_SPELL+TYPE_TRAP)
......
......@@ -18,7 +18,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indes)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Fusion Material
cm.unspecified_funsion=true
......
......@@ -3,29 +3,20 @@ local cm=_G["c"..m]
cm.name="百兽王 贝希摩斯"
function cm.initial_effect(c)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE+SUMMON_VALUE_SELF)
local mat=RD.CreateAdvanceCount(c,1)
RD.AddSummonProcedureOne(c,aux.Stringid(m,0),nil,nil,cm.sumop)
--To Hand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_GRAVE_ACTION)
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.sumcon(e,c,minc)
if c==nil then return true end
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.SelectTribute(tp,c,1,1)
c:SetMaterial(g)
Duel.Release(g,REASON_SUMMON+REASON_MATERIAL)
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c,mg)
--Change Base Attack
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
......@@ -44,7 +35,7 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return RD.IsSummonTurn(e:GetHandler())
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
local ct=e:GetLabelObject():GetLabel()
local ct=RD.GetTributeCount(e:GetHandler(),2)
if chk==0 then return ct>0 and Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_GRAVE,0,ct,nil) end
e:SetLabel(ct)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_GRAVE)
......
......@@ -2,7 +2,7 @@ local m=120238004
local cm=_G["c"..m]
cm.name="合成魔兽 加泽特"
function cm.initial_effect(c)
RushDuel.CreateAdvanceSummonFlag(c,20238004)
RD.CreateAdvanceSummonFlag(c,20238004)
--Atk Up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
......@@ -19,7 +19,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.check)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Material Check
function cm.check(e,c)
......
......@@ -19,7 +19,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.atkval)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Atk Up
function cm.filter(c)
......
......@@ -17,5 +17,5 @@ function cm.initial_effect(c)
e1:SetTargetRange(1,1)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
\ No newline at end of file
......@@ -2,7 +2,7 @@ local m=120238019
local cm=_G["c"..m]
cm.name="伟大魔兽 加泽特"
function cm.initial_effect(c)
RushDuel.CreateAdvanceSummonFlag(c,20238019)
RD.CreateAdvanceSummonFlag(c,20238019)
--Atk Up
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
......@@ -19,7 +19,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.check)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Material Check
function cm.check(e,c)
......
......@@ -17,7 +17,7 @@ function cm.initial_effect(c)
e2:SetCondition(cm.prccon)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Atk Up
function cm.atkval(e,c)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -14,7 +14,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.actlimit)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
--Special Summon Check
if not cm.global_check then
cm.global_check=true
......
......@@ -23,7 +23,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.indval)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Cannot Activate
function cm.confilter(c)
......
......@@ -26,7 +26,7 @@ function cm.initial_effect(c)
e3:SetTarget(cm.setlimit)
c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3)
RD.AddContinuousEffect(c,e1,e2,e3)
end
--Cannot Set Monster
function cm.confilter1(c)
......
......@@ -23,7 +23,7 @@ function cm.initial_effect(c)
e2:SetOperation(cm.actlimit)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_SPELL+TYPE_TRAP+TYPE_MONSTER)
......
......@@ -21,7 +21,7 @@ function cm.initial_effect(c)
e2:SetValue(1)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Atk Up
function cm.filter(c)
......
......@@ -3,7 +3,7 @@ local cm=_G["c"..m]
cm.name="才贤帝 威廉"
function cm.initial_effect(c)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE)
RD.AddSummonProcedureOne(c,aux.Stringid(m,0),nil,cm.sumfilter)
--Advance Flag
RD.CreateAdvanceSummonFlag(c,20244018)
--Destroy
......@@ -18,21 +18,9 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
end
--Summon Procedure
function cm.matfilter(c,tp)
function cm.sumfilter(c,e,tp)
return c:IsFaceup() and c:IsLevelAbove(5) and RD.IsDefense(c,1000)
end
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
local sg=Duel.SelectTribute(tp,c,1,1,mg)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
--Destroy
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -3,7 +3,7 @@ local cm=_G["c"..m]
cm.name="煌星帝 艾斯特罗姆"
function cm.initial_effect(c)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE)
RD.AddSummonProcedureOne(c,aux.Stringid(m,0),nil,cm.sumfilter)
--Advance Flag
RD.CreateAdvanceSummonFlag(c,20244019)
--Destroy
......@@ -18,21 +18,9 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
end
--Summon Procedure
function cm.matfilter(c,tp)
function cm.sumfilter(c,e,tp)
return c:IsFaceup() and c:IsLevelAbove(5) and RD.IsDefense(c,1000)
end
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.matfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
local sg=Duel.SelectTribute(tp,c,1,1,mg)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
--Destroy
function cm.filter(c)
return Duel.IsExistingMatchingCard(nil,0,LOCATION_ONFIELD,LOCATION_ONFIELD,1,c)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e2:SetCode(EFFECT_NO_EFFECT_DAMAGE)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Damage Reduce
function cm.damcon(e)
......
......@@ -14,7 +14,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Special Summon Procedure
function cm.spfilter(c)
......
......@@ -11,7 +11,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.filter(c)
......
......@@ -29,7 +29,7 @@ function cm.initial_effect(c)
e3:SetValue(5)
c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3,RD.EnableChangeCode(c,list[1],LOCATION_MZONE))
RD.AddContinuousEffect(c,e1,e2,e3,RD.EnableChangeCode(c,list[1],LOCATION_MZONE))
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_TRAP)
\ No newline at end of file
......@@ -27,7 +27,7 @@ function cm.initial_effect(c)
e3:SetValue(2)
c:RegisterEffect(e3)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2,e3,RD.EnableChangeCode(c,list[1],LOCATION_MZONE))
RD.AddContinuousEffect(c,e1,e2,e3,RD.EnableChangeCode(c,list[1],LOCATION_MZONE))
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_MONSTER)
\ No newline at end of file
......@@ -15,7 +15,7 @@ function cm.initial_effect(c)
e1:SetValue(300)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,RD.EnableChangeCode(c,list[1],LOCATION_MZONE))
RD.AddContinuousEffect(c,e1,RD.EnableChangeCode(c,list[1],LOCATION_MZONE))
end
--Atk Up
function cm.uptg(e,c)
......
......@@ -13,7 +13,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.atkval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Atk Up
function cm.filter(c,code)
......
......@@ -25,7 +25,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.indval)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Indes
function cm.filter(c)
......
......@@ -20,7 +20,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.indval)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Atk Up
function cm.filter(c)
......
......@@ -5,7 +5,7 @@ cm.name="历战的暗黑骑士 盖亚"
function cm.initial_effect(c)
RD.AddCodeList(c,list)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE)
RD.AddSummonProcedureOne(c,aux.Stringid(m,0),nil,cm.sumfilter)
--Change Code
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1))
......@@ -17,21 +17,9 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
end
--Summon Procedure
function cm.sumfilter(c,tp)
function cm.sumfilter(c,e,tp)
return c:IsFaceup() and c:IsLevelAbove(5)
end
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
local mg=Duel.GetMatchingGroup(cm.sumfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.sumfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
local sg=Duel.SelectTribute(tp,c,1,1,mg)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
--Change Code
function cm.matfilter(c)
return c:IsOnField() and c:IsAbleToDeck()
......
......@@ -9,7 +9,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.trival)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Double Tribute
cm.trival=RD.ValueDoubleTributeAttrType(ATTRIBUTE_LIGHT,TYPE_NORMAL)
\ No newline at end of file
......@@ -3,50 +3,34 @@ 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)
RD.AddSummonProcedureThree(c,aux.Stringid(m,2),nil,cm.sumfilter(ATTRIBUTE_LIGHT))
RD.AddSummonProcedureThree(c,aux.Stringid(m,3),nil,cm.sumfilter(ATTRIBUTE_DARK))
RD.AddSummonProcedureThree(c,aux.Stringid(m,4),nil,cm.sumfilter(ATTRIBUTE_FIRE))
RD.AddSummonProcedureThree(c,aux.Stringid(m,5),nil,cm.sumfilter(ATTRIBUTE_WATER))
RD.AddSummonProcedureThree(c,aux.Stringid(m,6),nil,cm.sumfilter(ATTRIBUTE_EARTH))
RD.AddSummonProcedureThree(c,aux.Stringid(m,7),nil,cm.sumfilter(ATTRIBUTE_WIND))
RD.AddSummonProcedureThree(c,aux.Stringid(m,8),nil,cm.sumfilter(ATTRIBUTE_DIVINE))
--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)
function cm.sumfilter(attr)
return function(c,e,tp)
return c:IsAttribute(attr) and (c:IsFaceup() or c:IsControler(tp))
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
return RD.IsSummonTurn(c) and c:IsSummonType(SUMMON_VALUE_THREE)
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
......
......@@ -3,16 +3,12 @@ local cm=_G["c"..m]
cm.name="电子鲨"
function cm.initial_effect(c)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon)
RD.AddSummonProcedureZero(c,aux.Stringid(m,0),cm.sumcon)
end
--Summon Procedure
function cm.filter(c)
return c:IsFaceup() and c:IsAttribute(ATTRIBUTE_WATER)
end
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
return minc==0 and c:IsLevelAbove(5)
and Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_MZONE,0,1,nil)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
function cm.sumcon(c,e,tp)
return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_MZONE,0,1,nil)
end
\ No newline at end of file
......@@ -12,7 +12,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.indval)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_MONSTER+TYPE_SPELL+TYPE_TRAP)
......
......@@ -16,7 +16,7 @@ function cm.initial_effect(c)
e1:SetValue(list[1])
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Fusion Code
function cm.condition(e)
......
......@@ -15,7 +15,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.battle)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Indes
function cm.indes(e,c)
......
......@@ -9,7 +9,7 @@ function cm.initial_effect(c)
e1:SetValue(cm.trival)
c:RegisterEffect(e1)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1)
RD.AddContinuousEffect(c,e1)
end
--Double Tribute
cm.trival=RD.ValueDoubleTributeAttrType(ATTRIBUTE_DARK,TYPE_NORMAL)
\ No newline at end of file
......@@ -24,7 +24,7 @@ function cm.initial_effect(c)
e2:SetValue(1)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Atk Up
function cm.atkfilter(c)
......
......@@ -23,7 +23,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.actlimit)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Direct Attack
function cm.dirfilter(c)
......
......@@ -21,7 +21,7 @@ function cm.initial_effect(c)
e2:SetValue(cm.indval)
c:RegisterEffect(e2)
--Continuous Effect
RushDuel.AddContinuousEffect(c,e1,e2)
RD.AddContinuousEffect(c,e1,e2)
end
--Indes
cm.indval=RD.ValueEffectIndesType(0,TYPE_MONSTER+TYPE_SPELL+TYPE_TRAP)
......
local m=120254028
local cm=_G["c"..m]
cm.name="魔力惩戒"
cm.name="魔力报应"
function cm.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
......
......@@ -3,7 +3,7 @@ local cm=_G["c"..m]
cm.name="焰魔神 光魔"
function cm.initial_effect(c)
--Summon Procedure
RD.AddSummonProcedure(c,aux.Stringid(m,0),cm.sumcon,cm.sumop,SUMMON_TYPE_ADVANCE)
RD.AddSummonProcedureOne(c,aux.Stringid(m,0),nil,cm.sumfilter)
--To Hand / Special Summon
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,1))
......@@ -16,21 +16,9 @@ function cm.initial_effect(c)
c:RegisterEffect(e1)
end
--Summon Procedure
function cm.sumfilter(c,tp)
function cm.sumfilter(c,e,tp)
return c:IsType(TYPE_MAXIMUM)
end
function cm.sumcon(e,c,minc)
if c==nil then return true end
local tp=c:GetControler()
local mg=Duel.GetMatchingGroup(cm.sumfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
return c:IsLevelAbove(7) and minc<=1 and Duel.CheckTribute(c,1,1,mg)
end
function cm.sumop(e,tp,eg,ep,ev,re,r,rp,c)
local mg=Duel.GetMatchingGroup(cm.sumfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil,tp)
local sg=Duel.SelectTribute(tp,c,1,1,mg)
c:SetMaterial(sg)
Duel.Release(sg,REASON_SUMMON+REASON_MATERIAL)
end
--To Hand
function cm.confilter(c)
return c:IsRace(RACE_FIEND)
......
local m=120254041
local list={120170029,120196050}
local cm=_G["c"..m]
cm.name="花牙封禁之绘都兰世"
cm.name="花牙封 绘都兰世"
function cm.initial_effect(c)
RD.AddCodeList(c,list)
--Change Code
......
local m=120254072
local cm=_G["c"..m]
cm.name="花牙铠·铁线莲"
cm.name="花牙铠·小木通"
function cm.initial_effect(c)
--Indes Battle
local e1=Effect.CreateEffect(c)
......
local m=120254075
local cm=_G["c"..m]
cm.name="双冷星"
cm.name="双冷星"
function cm.initial_effect(c)
--Level Up
local e1=Effect.CreateEffect(c)
......
local m=120254084
local cm=_G["c"..m]
cm.name="魔力火风暴"
cm.name="魔力火风暴"
function cm.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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