Commit feba7e85 authored by Tachibana's avatar Tachibana

ndyd

parent 925255c1
Pipeline #4881 passed with stages
in 27 minutes and 36 seconds
No preview for this file type
#[2021.8 DIY]
!2021.8 DIY
#[2021.9 DIY]
!2021.9 DIY
#1
00113217 1 --小红花
......@@ -170,6 +170,7 @@
11451414 1 --龙宫城的龙王 敖广
11451415 1 --水晶之都 龙王宫
11451422 1 --龙宫城·四海龙怒
11451437 1 --波动武士·紫外军刺
#117
11700002 1 --ZEON-扎古II·F
11700012 1 --ZEON-龟霸
......@@ -179,7 +180,7 @@
#118
11800003 0 --『创造物』 绚烂
11800010 1 --『音速机械』 洛拉米亚
11800014 0 --『神秘守门人』丝碧涅
11800014 1 --『神秘守门人』丝碧涅
11800016 0 --外界之理
11800057 0 --紧急着装
11800060 0 --机·构·解·放
......@@ -514,20 +515,31 @@
#187
18734605 0 --樱风乐章 二宫飞鸟
18734613 1 --娇羞姑娘 小日向美穗
#195
19500012 0 --七色人形剧·迷失子人形
19500018 0 --七色人形剧·荷兰人形
19500029 0 --Trichromatic rotation·Alice Margatroid
#200
20000000 1 --史黛拉
20000003 1 --再起的双星
20000050 1 --藏于心之Chein
20000054 0 --星屑茶
20000056 1 --疾速机械剑齿虎
20000057 0 --七夕的花嫁骑士
20000060 1 --夹心猫
20000061 0 --溶解之恋
20000074 1 --For love
20000102 2 --核心输入
20000101 1 --死寂萦绕之城
20000102 1 --核心输入
20000106 1 --终局核心 熔岩
20000107 1 --终局核心 盎芯
20000119 1 --人工核心智能
20000120 1 --艾尔缇丝的选择
20000111 1 --终局核心 时核
20000162 1 --虚构素体 A001
20000162 2 --虚构素体 A001
20000163 1 --虚构素体 B001
20000164 1 --虚构素体 C001
20000165 1 --虚构素体 D001
20000164 2 --虚构素体 C001
20000165 2 --虚构素体 D001
#201
20100214 2 --御刀使-柳濑舞衣
20100233 2 --出阵!刻下一闪之灯火
......@@ -734,12 +746,12 @@
33310150 2 --引临魔源 地侧之月
33310158 1 --临魔浮生
33310161 0 --临魔终形
33310200 0 --空想融合
33310200 1 --空想融合
33310207 1 --空想虚景 造物之扉
33310210 1 --空想夜王 月天
33310212 1 --空想寒晶 冰凰
33310213 0 --空想祈羽 虚龙
33310250 1 --梅古梅古
33310250 0 --梅古梅古
33310251 1 --脏东西要清理干净
33310252 1 --危险的亢奋状态
33310302 1 --幽桐的璀璨庆典
......@@ -893,6 +905,7 @@
33502413 0 --青空之羽 伊雷娜
33502705 0 --灵祟 来自暗处的深情
33502722 0 --灵祟 凄
33502906 0 --情感的思索
#337
33700028 0 --Proto-Protoform
33700036 0 --Protoform 咲夜
......@@ -944,8 +957,16 @@
33711601 0 --七色之魂
33711702 0 --深层思考
#351
35100103 1 --异质绝望狂宴
35100109 1 --绝对平凡少女 苗木困
35100119 0 --异质绝望领主 空洞彷徨之灵
35100121 1 --异质绝望领主 无妄战士
35100123 1 --异质绝望舞台-塔和
35100131 0 --希望机关见习生 腐川冬子
35100135 1 --异质绝望聚集
35100139 1 --异质绝望 黑白熊幼仔
35100141 1 --异质绝望 坏击喷射
35100143 1 --异质绝望-摇奖机
#375
37564012 0 --元灵毁灭者·Aya Ayane
37564041 0 --阎-少女之梦·虚无的世界
......@@ -1133,6 +1154,7 @@
57340001 0 --灵樱的永眠
#600
60000016 1 --迷石宫的猎龙
60002005 0 --竹子 临冰的决意
#601
60150541 1 --幻想曲的回转乐章
60150616 1 --千夜 黑白
......@@ -1271,6 +1293,8 @@
66915001 2 --璀璨的星辉
66915002 1 --星曜观星台
66915005 1 --光辉星曜·圣芒
#672
67200023 0 --神采-赛尔维『隶姬装着』
#696
69691901 0 --探索安戈洛
69691902 0 --哈尔拉兹,山猫之神
......@@ -1279,7 +1303,7 @@
69696903 0 --电磁蜘蛛
69696915 0 --迁跃融合
69696916 0 --星灵虎
69696918 1 --梦魇术士
69696918 0 --梦魇术士
69696931 0 --奇璞
69696934 0 --落石之径
69696961 1 --产量激增
......@@ -1353,6 +1377,8 @@
77777765 0 --Orange
#810
81000006 2 --甜花无敌
81002002 1 --砂冢明音·流回
81002010 0 --玫瑰天堂·砂冢明音
81007002 0 --白雪安娜·泯灭
81007017 2 --白雪安娜·初恋
81011003 1 --大轮之华·桑山千雪
......
......@@ -18,6 +18,16 @@ function cm.initial_effect(c)
e1:SetValue(1)
e1:SetCondition(cm.actcon)
c:RegisterEffect(e1)
--cannot remove
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_CANNOT_REMOVE)
e4:SetRange(LOCATION_FZONE)
e4:SetTargetRange(LOCATION_GRAVE,0)
c:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetTargetRange(0,LOCATION_GRAVE)
c:RegisterEffect(e5)
--CANNOT_DISCARD_DECK
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
......
......@@ -28,20 +28,20 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
end
function cm.actop(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft>0 and Duel.IsPlayerCanSpecialSummonMonster(tp,12084034,nil,TYPES_TOKEN_MONSTER+TYPE_TUNER,0,0,4,RACE_RACE_PYRO,ATTRIBUTE_FIRE) and Duel.IsPlayerCanSpecialSummonMonster(tp,12084035,nil,TYPES_TOKEN_MONSTER+TYPE_TUNER,0,0,4,RACE_PYRO,ATTRIBUTE_FIRE,POS_FACEUP,1-tp) and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
if ft>0 and Duel.IsPlayerCanSpecialSummonMonster(tp,12084034,nil,TYPES_TOKEN_MONSTER+TYPE_TUNER,0,0,4,RACE_RACE_PYRO,ATTRIBUTE_FIRE) and Duel.IsPlayerCanSpecialSummonMonster(tp,12084035,nil,TYPES_TOKEN_MONSTER+TYPE_TUNER,0,0,4,RACE_PYRO,ATTRIBUTE_FIRE,POS_FACEUP_DEFENSE,1-tp) and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
Duel.BreakEffect()
local token=Duel.CreateToken(tp,12084034)
local token1=Duel.CreateToken(tp,12084035)
Duel.SpecialSummonStep(token,0,tp,tp,false,false,POS_FACEUP)
Duel.SpecialSummonStep(token1,0,tp,1-tp,false,false,POS_FACEUP)
Duel.SpecialSummonStep(token,0,tp,tp,false,false,POS_FACEUP_DEFENSE)
Duel.SpecialSummonStep(token1,0,tp,1-tp,false,false,POS_FACEUP_DEFENSE)
Duel.SpecialSummonComplete()
end
end
function cm.tfilter(c,e,tp,att,race,lv)
function cm.spfilter(c,e,tp,att,race,lv)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsLevel(lv) and c:IsRace(race) and c:IsAttribute(att)
end
function cm.tfilter(c,e,tp)
return c:IsSetCard(0x9fa8) and Duel.IsExistingMatchingCard(card.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp,c:GetAttribute(),c:GetRace(),c:GetLevel())
return c:IsSetCard(0x9fa8) and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp,c:GetAttribute(),c:GetRace(),c:GetLevel())
end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and e:GetHandler():IsAbleToHand() and Duel.IsExistingTarget(cm.tfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
......@@ -59,5 +59,13 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.spfilter),tp,LOCATION_GRAVE,0,1,1,nil,e,tp,att,race,lv)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
g:GetFirst():RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_DISABLE_EFFECT)
g:GetFirst():RegisterEffect(e2)
end
end
......@@ -7,13 +7,13 @@ function c19500000.initial_effect(c)
e1:SetCode(EFFECT_SUMMON_PROC)
e1:SetCondition(c19500000.ntcon)
c:RegisterEffect(e1)
--pos
--equip
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(19500000,1))
e2:SetCategory(CATEGORY_EQUIP)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e2:SetCategory(CATEGORY_DESTROY+CATEGORY_EQUIP)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SUMMON_SUCCESS)
--e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCountLimit(1,19500000)
e2:SetTarget(c19500000.destg)
e2:SetOperation(c19500000.desop)
......@@ -30,7 +30,6 @@ function c19500000.initial_effect(c)
e3:SetCountLimit(1,19500000+100)
e3:SetTarget(c19500000.sptg)
e3:SetOperation(c19500000.spop)
--e3:SetCondition(c19500000.eqcon)
c:RegisterEffect(e3)
end
function c19500000.ntcon(e,c,minc)
......@@ -40,70 +39,49 @@ function c19500000.ntcon(e,c,minc)
and Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0
end
function c19500000.desfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x3190) and c:IsRace(RACE_MACHINE)
return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x3990) and c:IsRace(RACE_MACHINE)
end
function c19500000.eqfilter(c,tp)
return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x3190) and c:IsRace(RACE_MACHINE) and c:CheckUniqueOnField(tp) and not c:IsForbidden()
return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x3990) and c:IsRace(RACE_MACHINE) and c:CheckUniqueOnField(tp) and not c:IsForbidden()
end
function c19500000.destg(e,tp,eg,ep,ev,re,r,rp,chk)
--if chk==0 then return Duel.IsExistingMatchingCard(c19500000.desfilter,tp,LOCATION_DECK,0,1,e:GetHandler())
--and Duel.IsExistingMatchingCard(c19500000.eqfilter,tp,LOCATION_GRAVE,0,1,nil,tp) end
-- local g=Duel.GetMatchingGroup(c19500000.desfilter,tp,LOCATION_DECK,0,e:GetHandler())
-- Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
-- Duel.SetOperationInfo(0,CATEGORY_EQUIP,nil,1,tp,LOCATION_GRAVE)
-- Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,1,tp,0)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0
and Duel.IsExistingMatchingCard(c19500000.eqfilter,tp,LOCATION_GRAVE+LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,1,tp,LOCATION_GRAVE+LOCATION_DECK)
if chk==0 then return Duel.IsExistingMatchingCard(c19500000.desfilter,tp,LOCATION_DECK,0,1,e:GetHandler()) end
local g=Duel.GetMatchingGroup(c19500000.desfilter,tp,LOCATION_DECK,0,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_EQUIP,nil,1,tp,LOCATION_GRAVE)
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,nil,1,tp,0)
end
function c19500000.desop(e,tp,eg,ep,ev,re,r,rp)
--local c=e:GetHandler()
--if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
-- Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
--local g=Duel.SelectMatchingCard(tp,c19500000.desfilter,tp,LOCATION_DECK,0,1,1,aux.ExceptThisCard(e))
--if g:GetCount()>0 and Duel.Destroy(g,REASON_EFFECT)~=0 and not c:IsFacedown() then
--Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
-- local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c19500000.eqfilter),tp,LOCATION_GRAVE,0,1,1,nil,tp)
-- local tc=g:GetFirst()
-- if tc then
-- if not Duel.Equip(tp,tc,c) then return end
-- local e1=Effect.CreateEffect(c)
-- e1:SetProperty(EFFECT_FLAG_COPY_INHERIT+EFFECT_FLAG_OWNER_RELATE)
-- e1:SetType(EFFECT_TYPE_SINGLE)
-- e1:SetCode(EFFECT_EQUIP_LIMIT)
-- e1:SetReset(RESET_EVENT+RESETS_STANDARD)
-- e1:SetValue(c19500000.eqlimit)
-- tc:RegisterEffect(e1)
-- end
-- end
local c=e:GetHandler()
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
if c:IsFacedown() or not c:IsRelateToEffect(e) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c19500000.desfilter),tp,LOCATION_GRAVE+LOCATION_DECK,0,1,1,nil)
local tc=g:GetFirst()
if tc then
if not Duel.Equip(tp,tc,c) then return end
local e1=Effect.CreateEffect(c)
e1:SetProperty(EFFECT_FLAG_COPY_INHERIT+EFFECT_FLAG_OWNER_RELATE)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EQUIP_LIMIT)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(c19500000.eqlimit)
tc:RegisterEffect(e1)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectMatchingCard(tp,c19500000.desfilter,tp,LOCATION_DECK,0,1,1,aux.ExceptThisCard(e))
if g:GetCount()>0 and Duel.Destroy(g,REASON_EFFECT)~=0 and not c:IsFacedown() then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c19500000.eqfilter),tp,LOCATION_GRAVE,0,1,1,nil,tp)
local tc=g:GetFirst()
if tc then
if not Duel.Equip(tp,tc,c) then return end
local e1=Effect.CreateEffect(c)
e1:SetProperty(EFFECT_FLAG_COPY_INHERIT+EFFECT_FLAG_OWNER_RELATE)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_EQUIP_LIMIT)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(c19500000.eqlimit)
tc:RegisterEffect(e1)
end
end
end
function c19500000.eqlimit(e,c)
return e:GetOwner()==c
end
function c19500000.desfilter1(c)
return c:IsSetCard(0x3190)
return c:IsSetCard(0x3990) and (c:IsFaceup() or not c:IsLocation(LOCATION_ONFIELD))
end
function c19500000.spfilter(c,e,tp)
return c:IsSetCard(0x3190) and c:IsRace(RACE_MACHINE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
return c:IsSetCard(0x3990) and c:IsRace(RACE_MACHINE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c19500000.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetEquipCount()>0 end
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if chk==0 then
local res=nil
......@@ -111,24 +89,26 @@ function c19500000.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local res2=Duel.IsExistingMatchingCard(c19500000.desfilter1,tp,LOCATION_MZONE,0,1,nil)
and Duel.IsExistingMatchingCard(c19500000.desfilter1,tp,LOCATION_ONFIELD+LOCATION_HAND,0,1,nil)
if ft>0 then res=res1 else res=res2 end
return res and Duel.IsExistingMatchingCard(c19500000.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
return e:GetHandler():GetEquipCount()>0 and res and Duel.IsExistingMatchingCard(c19500000.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,2,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c19500000.spop(e,tp,eg,ep,ev,re,r,rp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local cg=Duel.GetMatchingGroup(c19500000.desfilter1,tp,LOCATION_HAND+LOCATION_ONFIELD,0,nil,e,tp)
if #cg<2 then return end
local g=nil
if ft>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
g=Duel.SelectMatchingCard(tp,c19500000.desfilter1,tp,LOCATION_HAND+LOCATION_ONFIELD,0,2,2,nil)
g=cg:Select(tp,2,2,nil)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
g=Duel.SelectMatchingCard(tp,c19500000.desfilter1,tp,LOCATION_MZONE,0,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g1=Duel.SelectMatchingCard(tp,c19500000.desfilter1,tp,LOCATION_HAND+LOCATION_ONFIELD,0,1,1,nil)
local g1=cg:Select(tp,1,1,nil)
g:Merge(g1)
end
if g:GetCount()>0 and Duel.Destroy(g,REASON_EFFECT)~=0 then
if g:GetCount()>1 and Duel.Destroy(g,REASON_EFFECT)~=0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g1=Duel.SelectMatchingCard(tp,c19500000.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if g1:GetCount()>0 then
......
......@@ -10,7 +10,6 @@ function c19500004.initial_effect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_SUMMON_SUCCESS)
e2:SetRange(LOCATION_FZONE)
e2:SetCountLimit(3,19500004)
e2:SetOperation(c19500004.ctop)
c:RegisterEffect(e2)
local e3=e2:Clone()
......@@ -33,6 +32,7 @@ function c19500004.initial_effect(c)
e5:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e5:SetCode(EVENT_DESTROYED)
e5:SetProperty(EFFECT_FLAG_DELAY)
e5:SetCountLimit(1,19500004)
e5:SetTarget(c19500004.thtg)
e5:SetOperation(c19500004.thop)
c:RegisterEffect(e5)
......@@ -46,13 +46,21 @@ function c19500004.initial_effect(c)
Duel.RegisterEffect(ge2,0)
end
end
function c19500004.clear(e,tp,eg,ep,ev,re,r,rp)
c19500004[0]=0
end
function c19500004.ctfilter(c)
return c:IsFaceup() and c:IsCanAddCounter(0x1990,1)
end
function c19500004.ctop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_COUNTER)
local g=Duel.SelectMatchingCard(tp,c19500003.ctfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
g:GetFirst():AddCounter(0x1990,1)
if c19500004[0]>2 then return end
local g=Duel.GetMatchingGroup(c19500004.ctfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
if #g>0 and c19500004[0]<3 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_COUNTER)
local sg=g:Select(tp,1,1,nil)
sg:GetFirst():AddCounter(0x1990,1)
c19500004[0]=c19500004[0]+1
end
end
function c19500004.atkcon(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetAttacker()
......@@ -85,10 +93,9 @@ function c19500004.atkop(e,tp,eg,ep,ev,re,r,rp)
end
end
function c19500004.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFlagEffect(tp,19500005)==0 and Duel.IsExistingMatchingCard(Card.IsAbleToHand,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToHand,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
local g=Duel.GetMatchingGroup(Card.IsAbleToHand,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
Duel.RegisterFlagEffect(tp,19500005,RESET_PHASE+PHASE_END,EFFECT_FLAG_OATH,1)
end
function c19500004.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
......
......@@ -18,12 +18,16 @@ function c19500014.initial_effect(c)
e2:SetDescription(aux.Stringid(19500014,1))
e2:SetCategory(CATEGORY_TOHAND)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE)
e2:SetRange(LOCATION_MZONE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCost(aux.bfgcost)
e2:SetTarget(c19500014.tdtg)
e2:SetOperation(c19500014.tdop)
c:RegisterEffect(e2)
local e3=e2:Clone()
e3:SetRange(LOCATION_GRAVE)
e3:SetCondition(aux.exccon)
c:RegisterEffect(e3)
end
function c19500014.descost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end
......
......@@ -50,7 +50,9 @@ function c19500016.atkop(e,tp,eg,ep,ev,re,r,rp,chk)
end
function c19500016.atkcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c.Mobius==999 or aux.exccon(e)
local res=true
if c:IsLocation(LOCATION_GRAVE) then res=aux.exccon(e) end
return c.Mobius==999 or res
end
function c19500016.atkcost2(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
......@@ -58,11 +60,13 @@ function c19500016.atkcost2(e,tp,eg,ep,ev,re,r,rp,chk)
if c.Mobius~=999 then Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST) else end
end
function c19500016.atktg2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and chkc:IsFaceup() and c19500016.atkfilter(chkc) end
if chk==0 then return Duel.GetFlagEffect(tp,19500016)==0 and Duel.IsExistingTarget(c19500016.atkfilter,tp,LOCATION_MZONE,0,1,nil) end
local c=e:GetHandler()
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c19500016.atkfilter(chkc) end
local sbkr=c
if c.Mobius==999 then sbkr=nil end
if chk==0 then return Duel.IsExistingTarget(c19500016.atkfilter,tp,LOCATION_MZONE,0,1,sbkr) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,c19500016.atkfilter,tp,LOCATION_MZONE,0,1,1,nil)
Duel.RegisterFlagEffect(tp,19500016,RESET_PHASE+PHASE_END,EFFECT_FLAG_OATH,1)
Duel.SelectTarget(tp,c19500016.atkfilter,tp,LOCATION_MZONE,0,1,1,sbkr)
end
function c19500016.atkop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -45,7 +45,7 @@ function c19500019.tfilter(c,tp)
return c:IsControler(tp) and c:IsSetCard(0x3990,0x3991) and c:IsOnField()
end
function c19500019.discon(e,tp,eg,ep,ev,re,r,rp)
if e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) or not Duel.IsChainNegatable(ev) then return false end
if not Duel.IsChainNegatable(ev) then return false end
if re:IsHasCategory(CATEGORY_NEGATE)
and Duel.GetChainInfo(ev-1,CHAININFO_TRIGGERING_EFFECT):IsHasType(EFFECT_TYPE_ACTIVATE) then return false end
local ex1,tg,tc=Duel.GetOperationInfo(ev,CATEGORY_DESTROY)
......
......@@ -91,7 +91,7 @@ function c19500043.eqlimit(e,c)
return e:GetOwner()==c
end
function c19500043.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>=3 end
if chk==0 then return e:GetHandler():GetEquipCount()>0 and Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>=3 end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,0,LOCATION_DECK)
end
function c19500043.thop(e,tp,eg,ep,ev,re,r,rp)
......@@ -162,6 +162,8 @@ function c19500043.thop(e,tp,eg,ep,ev,re,r,rp)
dam=atk1-atk2
desg=c
p=tp
elseif atk1==atk2 then
desg=Group.FromCards(tc,c)
end
Duel.Destroy(desg,REASON_BATTLE)
Duel.Damage(p,dam,REASON_BATTLE)
......@@ -172,14 +174,14 @@ function c19500043.thop(e,tp,eg,ep,ev,re,r,rp)
end
end
function c19500043.tdtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return c19500043[0]==0 and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
if chk==0 then return c19500043[0]==0 and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil) end
local g=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_GRAVE,LOCATION_GRAVE,nil)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,1,0,0)
c19500043[0]=c19500043[0]+1
end
function c19500043.tdop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(Card.IsAbleToDeck),tp,LOCATION_ONFIELD,LOCATION_ONFIELD,2,2,nil)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(Card.IsAbleToDeck),tp,LOCATION_GRAVE,LOCATION_GRAVE,2,2,nil)
if g:GetCount()>0 then
Duel.HintSelection(g)
if Duel.SendtoDeck(g,nil,2,REASON_EFFECT)~=0 then
......
......@@ -26,6 +26,7 @@ function cm.initial_effect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN)
e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e1:SetTarget(aux.TargetBoolFunction(cm.filter))
e1:SetTargetRange(LOCATION_SZONE,0)
c:RegisterEffect(e1)
......
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