Commit 2f2e8f01 authored by nanahira's avatar nanahira

8.5

parent 144227b1
#created by ...
#main
1141005
1141702
10199990
10199991
17050938
17090009
18010001
18010002
18010003
18010004
18010007
26800004
26805006
26805007
26806025
26806026
26806027
26807057
26807058
26807059
26807060
81006028
81040035
81041010
81041011
81041012
81041013
81041014
81041016
81041017
81041999
#extra
17050937
17051037
18010005
18010006
26802004
26802005
26806028
26806029
26806030
#created by ...
#main
#extra
26807041
81006027
81008035
81011003
81011029
81040037
81041009
81041015
#created by ...
#main
9980129
9980200
9980201
9980202
9980205
9980206
9980207
9980208
9980209
9980210
9980211
9980213
9980225
9980226
9980227
9980250
9980251
9980252
9980253
9980254
9980255
9980256
9980262
9980263
9980264
9980265
9980266
9980270
9980496
9980525
9980526
9980527
9980528
9980529
9980530
9980531
9980532
9980533
9980549
9980550
9980552
9980553
9980555
9980556
9980557
9980558
9980559
9980560
9980561
9980562
9980563
9980564
9980565
9980573
9980574
9980575
#extra
1146016
1146018
9980203
9980204
9980212
9980228
9980229
9980257
9980258
9980259
9980260
9980261
9980534
#created by ...
#main
9980576
9980577
9980578
9980579
9980580
9980581
9980583
10199990
10199991
12033000
12033001
12033002
12033006
12033008
12033010
12033011
12033012
12033013
14000055
14000056
14000057
14000058
14000059
14000531
14000532
14000533
14000534
14000535
14000536
14000537
14000556
14000557
14000558
14000559
14000560
14000561
14000562
14000563
14000601
14000602
14000604
14000605
14000607
14010046
14010058
14010106
14010108
14010110
14010120
14010145
14010210
17050935
26807044
26807045
26807046
#extra
9980535
9980546
9980547
9980548
9980551
9980554
9980566
9980567
9980568
9980569
9980570
9980571
9980572
#created by ...
#main
26807047
26807049
26807050
26807051
26807052
26807053
26807054
26807055
26807056
33330400
33330401
33330402
33330403
33330404
33330405
33330406
33330407
33330408
33330409
33330411
33330412
75646000
75646009
75646900
75646901
75646902
75646903
75646905
75646906
75646907
75646910
81006022
81006023
81006024
81006025
81007035
81007036
81007037
81009038
81010006
81011025
81011027
81011028
81011100
81011116
81040032
81040033
81040034
81041005
81041008
88946420
88946425
88946426
88946427
88946428
#extra
9980582
12033003
12033004
12033005
14000060
14000538
14000539
14000555
14000564
14000603
14000606
14000608
14010047
#created by ...
#main
#extra
14010048
14010049
14010115
17050936
17050937
26804005
26807048
33330410
33330413
75646050
75646054
75646057
75646061
#created by ...
#main
#extra
75646534
75646904
75646908
75646909
75646911
81005005
81006026
81008100
81008101
81008102
81008103
81008104
81008105
#created by ...
#main
#extra
81009011
81011005
81011026
81011117
81011305
81015047
81018040
81040037
87600001
87600002
88946421
88946422
88946423
No preview for this file type
......@@ -119,6 +119,7 @@
12013007 1 --紫阳花的火枪手 伊瓦尔
12010016 0 --LA SG Wrath 艾拉斯
12033001 0 --舞台 momoko
12033012 1 --忧物 momoko
#140
14000509 2 --异态魔女·过去式
......@@ -159,7 +160,7 @@
17060917 2 --未来型菲迪露玛
17082107 0 --枪神·古兰
17090008 0 --开辟的预言者
17090009 0 --冰狱之王·撒旦
17090009 1 --冰狱之王·撒旦
17082113 0 --黑暗剑士·古兰
17010302 2 --带来光明者 路西欧
17011108 0 --风之军神·格尼姆尔
......@@ -221,6 +222,7 @@
26805005 1 --黛冬优子
26807033 1 --小巷探秘
26807046 0 --被雨淋湿不知所措
26805007 0 --西京夏日约会
#328
32828002 1 --风卷浪
#333
......@@ -307,79 +309,81 @@
40008651 0 --智天兵龙 乌利提斯
#475
#47510239 1 --神魔之钥 阿米拉
#47510229 1 --漆黑的解放者 阿萨谢尔
#47590005 1 --地之天使
#47500001 2 --炼金术师 姬塔
#47500003 0 --枪神 姬塔
#47500007 2 --暗杀者 姬塔
#47500025 2 --苍之命运
#47501004 0 --神盾 布罗迪亚
#47510001 1 --守护的星晶兽 雅典娜
#47510007 1 --苍之少女 露莉雅
#47510044 1 --魔王 布伦希尔德
#47510054 0 --史诗星晶兽 普罗米迪乌斯
#47510057 0 --史诗星晶兽 拜乌卡
#47510060 0 --史诗星晶兽 吉尔伽美什
#47510063 0 --史诗星晶兽 卡·昂
#47510066 0 --史诗星晶兽 赫克托耳
#47510069 0 --史诗星晶兽 阿努比斯
#47510122 0 --暗夜的星晶兽 纳哈特
#47510129 0 --魅惑的星晶兽 萨提洛斯
#47511101 1 --星晶融合
#47511102 0 --原初兽封印之地 万魔殿
#47591822 0 --觉醒十天众 索恩
#47578901 0 --天司的创造者 路西法
#47578905 0 --黑暗天司 奥利维尔
#47578930 0 --天司圣域—迦南
#47578903 1 --天司的反抗者 圣德芬
#47578912 0 --天司长的继承
#47578915 1 --天司的裁决
#47578922 1 --天司长的化身 路西欧
#47578926 2 --堕天司 阿萨谢尔
#47590006 0 --风之天司 拉斐尔
#47512001 1 --真龙 斯卡哈
#47591002 0 --二王的反抗
#47591822 0 --觉醒十天众 索恩
#47509999 0 --第三之目,开眼
#47510250 0 --铃铛天使 叮咚
#47510300 0 --星龙 迪斯卡特里波卡
#47551111 0 --盛装的决斗者 特蕾兹
#47514966 0 --红莲的战女神 雅典娜
#47530031 1 --可能性之兽
#47570500 0 --修瓦利耶·马格纳
#47598773 0 --堕落的圣少女 贞德
#47530096 0 --拜亚兰
#47550007 0 --人偶的少女 奥尔琪斯
#47552431 1 --露☆娜☆酱
#47578934 0 --守护天使 武器幻影
#47578935 0 --守护天使 炽天摇篮
#47510402 1 --魔法少女 美杜莎
#47511551 0 --zai?出来丢人
#47570100 0 --利维亚桑·马格纳
#47571269 1 --异空龙 异界巴哈姆特
#47577900 0 --堕天司的诡计
#47578932 0 --天司长副官 贝利亚
#47577902 1 --堕天司的假死
#47577906 2 --堕天司的救世主
#47577914 1 --堕天司的主炮 基路伯
#47578932 0 --天司长副官 贝利亚
#47578936 1 --堕天司 奥利维尔
#47510252 0 --维拉=修瓦利耶
#47510303 0 --纯白的灵蝶 希尔芙
#47511003 0 --紫电的黎明 麒麟
#47517001 0 --天司原核
#47530006 0 --高机动型杰钢
#47554352 0 --斑☆比☆酱
#47578999 0 --路西法的遗产 化身
#47550003 0 --苍天的守护骑士 卡塔丽娜
#47500001 1 --炼金术师 姬塔
#47500007 1 --暗杀者 姬塔
#47530019 0 --全装甲高达·雷霆宙域
#47530020 0 --精神感应扎古
#47530050 0 --兹达
#47530052 0 --Hi-v高达
#47591004 0 --四天的叹息
47510239 1 --神魔之钥 阿米拉
47510229 1 --漆黑的解放者 阿萨谢尔
47590005 1 --地之天使
47500001 2 --炼金术师 姬塔
47500003 0 --枪神 姬塔
47500007 2 --暗杀者 姬塔
47500025 2 --苍之命运
47501004 0 --神盾 布罗迪亚
47510001 1 --守护的星晶兽 雅典娜
47510007 1 --苍之少女 露莉雅
47510044 1 --魔王 布伦希尔德
47510054 0 --史诗星晶兽 普罗米迪乌斯
47510057 0 --史诗星晶兽 拜乌卡
47510060 0 --史诗星晶兽 吉尔伽美什
47510063 0 --史诗星晶兽 卡·昂
47510066 0 --史诗星晶兽 赫克托耳
47510069 0 --史诗星晶兽 阿努比斯
47510122 0 --暗夜的星晶兽 纳哈特
47510129 0 --魅惑的星晶兽 萨提洛斯
47511101 1 --星晶融合
47511102 0 --原初兽封印之地 万魔殿
47591822 0 --觉醒十天众 索恩
47578901 0 --天司的创造者 路西法
47578905 0 --黑暗天司 奥利维尔
47578930 0 --天司圣域—迦南
47578903 1 --天司的反抗者 圣德芬
47578912 0 --天司长的继承
47578915 1 --天司的裁决
47578922 1 --天司长的化身 路西欧
47578926 2 --堕天司 阿萨谢尔
47590006 0 --风之天司 拉斐尔
47512001 1 --真龙 斯卡哈
47591002 0 --二王的反抗
47591822 0 --觉醒十天众 索恩
47509999 0 --第三之目,开眼
47510250 0 --铃铛天使 叮咚
47510300 0 --星龙 迪斯卡特里波卡
47551111 0 --盛装的决斗者 特蕾兹
47514966 0 --红莲的战女神 雅典娜
47530031 1 --可能性之兽
47570500 0 --修瓦利耶·马格纳
47598773 0 --堕落的圣少女 贞德
47530096 0 --拜亚兰
47550007 0 --人偶的少女 奥尔琪斯
47552431 1 --露☆娜☆酱
47578934 0 --守护天使 武器幻影
47578935 0 --守护天使 炽天摇篮
47510402 1 --魔法少女 美杜莎
47511551 0 --zai?出来丢人
47570100 0 --利维亚桑·马格纳
47571269 1 --异空龙 异界巴哈姆特
47577900 0 --堕天司的诡计
47578932 0 --天司长副官 贝利亚
47577902 1 --堕天司的假死
47577906 2 --堕天司的救世主
47577914 1 --堕天司的主炮 基路伯
47578932 0 --天司长副官 贝利亚
47578936 1 --堕天司 奥利维尔
47510252 0 --维拉=修瓦利耶
47510303 0 --纯白的灵蝶 希尔芙
47511003 0 --紫电的黎明 麒麟
47517001 0 --天司原核
47530006 0 --高机动型杰钢
47554352 0 --斑☆比☆酱
47578999 0 --路西法的遗产 化身
47550003 0 --苍天的守护骑士 卡塔丽娜
47500001 1 --炼金术师 姬塔
47500007 1 --暗杀者 姬塔
47530019 0 --全装甲高达·雷霆宙域
47530020 0 --精神感应扎古
47530050 0 --兹达
47530052 0 --Hi-v高达
47591004 0 --四天的叹息
47577910 0 --刑死的堕天司 沙利叶
47510402 0 --魔法少女 美杜莎
#写的禁卡比鸟卡还多更恶心,又没人管,是时候放出来恶心一下两次周赛了
#500
......@@ -429,7 +433,7 @@
60150624 0 --千夜 天堂武装
#610
61000010 1 --神赐之门的巡礼
#61000010 1 --神赐之门的巡礼
#622
62200000 0 --从那里开始的一切
......@@ -571,11 +575,24 @@
81015012 2 --思想者·北上丽花
81015016 1 --上课小动作·北上丽花
81011305 0 --灰姑娘女孩·本田未央
81009003 0 --梦见的妖精·橘爱丽丝
81011203 0 --选择困难症侯群 艾露玛
81012012 1 --浅绿时间·爱米莉
81016004 1 --望月杏奈Festival
81018017 0 --动物朋友·最上静香
81040004 0 --周子·重游古道
81040016 1 --警戒地带·周子
81040022 0 --每日锻炼·周子
81040033 0 --散花世界·小雅
81040037 1 --冬日回忆·周子
#888
88800000 0 --迅刃机 冲阵者
#889
88946403 1 --生死轮舞 塞娜蕾菈·约束
88946411 1 --生死轮舞 虚化的安魂绘卷
88946426 0 --折幸 智语
88946425 0 --折幸 压制
88946427 2 --折幸 斩截
#952
95280011 0 --机动·争锋对决
#983
......
expansions/pics/1141002.jpg

47.8 KB | W: | H:

expansions/pics/1141002.jpg

46 KB | W: | H:

expansions/pics/1141002.jpg
expansions/pics/1141002.jpg
expansions/pics/1141002.jpg
expansions/pics/1141002.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/81011003.jpg

60.4 KB | W: | H:

expansions/pics/81011003.jpg

62 KB | W: | H:

expansions/pics/81011003.jpg
expansions/pics/81011003.jpg
expansions/pics/81011003.jpg
expansions/pics/81011003.jpg
  • 2-up
  • Swipe
  • Onion skin
......@@ -935,16 +935,29 @@ end
rsef.QO_OPPONENT_TURN=rsef.RegisterOPTurn
--Effect: Register Condition, Cost, Target and Operation
function rsef.RegisterSolve(e,con,cost,tg,op)
local code=e:GetOwner():GetCode()
if con then
if type(con)~="function" then
Debug.Message(code .. " RegisterSolve con must be function")
end
e:SetCondition(con)
end
if cost then
if type(cost)~="function" then
Debug.Message(code .. " RegisterSolve cost must be function")
end
e:SetCost(cost)
end
if tg then
if type(tg)~="function" then
Debug.Message(code .. " RegisterSolve tg must be function")
end
e:SetTarget(tg)
end
if op then
if type(op)~="function" then
Debug.Message(code .. " RegisterSolve op must be function")
end
e:SetOperation(op)
end
end
......@@ -1975,7 +1988,7 @@ function rscost.lpcost2(lp,max,islabel)
if chk==0 then return Duel.CheckLPCost(tp,lp) end
local costmaxlp=math.floor(maxlp/lp)
local t={}
for i=1,m do
for i=1,costmaxlp do
t[i]=i*lp
end
local cost=Duel.AnnounceNumber(tp,table.unpack(t))
......@@ -2450,10 +2463,17 @@ function rscf.SetSpecialSummonProduce(cardtbl,range,con,op,desctbl,ctlimittbl,re
local tc1,tc2,ignore=rsef.GetRegisterCard(cardtbl)
if not desctbl then desctbl=rshint.spproc end
local flag=not tc2:IsSummonableCard() and "uc,cd" or "uc"
local e1=rsef.Register(cardtbl,EFFECT_TYPE_FIELD,EFFECT_SPSUMMON_PROC,desctbl,ctlimittbl,nil,flag,range,con,nil,nil,op,nil,nil,nil,resettbl)
local e1=rsef.Register(cardtbl,EFFECT_TYPE_FIELD,EFFECT_SPSUMMON_PROC,desctbl,ctlimittbl,nil,flag,range,rscf.SetSpecialSummonProduce_con(con),nil,nil,op,nil,nil,nil,resettbl)
return e1
end
rssf.SetSpecialSummonProduce=rscf.SetSpecialSummonProduce
function rscf.SetSpecialSummonProduce_con(con)
return function(e,c)
if c==nil then return true end
local tp=c:GetControler()
return con(e,c,tp)
end
end
--Card/Summon effect: Is monster can normal or special summon
function rscf.SetSummonCondition(cardtbl,isnsable,sumvalue,iseffectspsum,resettbl)
local tc1,tc2,ignore=rsef.GetRegisterCard(cardtbl)
......@@ -2809,6 +2829,7 @@ function rsef.ChangeFunction_Synchro()
end
function rscf.SynMixCheckGoal2(tp,sg,minc,ct,syncard,sg1,smat,gc)
local g=rsgf.Mix2(sg,sg1)
if syncard.rssyncheckfun and not syncard.rssyncheckfun(g,syncard,tp) then return false end
local f=Card.GetLevel
local f2=Card.GetSynchroLevel
local darktunerg=g:Filter(Card.IsType,nil,TYPE_TUNER)
......@@ -2883,6 +2904,15 @@ function rscf.AddSynchroMixProcedure_ChangeTunerLevel(c,f1,lv,f2,f3,f4,minc,maxc
return e1
end
rssf.AddSynchroMixProcedure_ChangeTunerLevel=rscf.AddSynchroMixProcedure_ChangeTunerLevel
function rscf.AddSynchroMixProcedure_CheckMaterial(c,f1,f2,f3,f4,minc,maxc,extrafilter)
if c:IsStatus(STATUS_COPYING_EFFECT) then return end
local mt=getmetatable(c)
mt.rssyncheckfun=extrafilter
rsef.ChangeFunction_Synchro()
local e1=rscf.AddSynchroMixProcedure(c,f1,f2,f3,f4,minc,maxc)
return e1
end
rssf.AddSynchroMixProcedure_CheckMaterial=rscf.AddSynchroMixProcedure_CheckMaterial
--Card effect: Set field info
function rscf.SetFieldInfo(c)
local seq=c:IsOnField() and c:GetSequence() or c:GetPreviousSequence()
......@@ -3193,6 +3223,8 @@ function cm.initial_effect(c)
"rsan" = "Arknights"
"rsnm" = "Nightmare"
"rsdt" = "DarkTale"
"rseee" = "EEE"
"rshr" = "HarmonicRhythm"
}--]]
end
end
\ No newline at end of file
--夜间游荡的唐伞妖怪
function c1141005.initial_effect(c)
--
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_HAND)
e1:SetHintTiming(0,TIMING_END_PHASE)
e1:SetCost(c1141005.cost1)
e1:SetTarget(c1141005.tg1)
e1:SetOperation(c1141005.op1)
c:RegisterEffect(e1)
--
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(1141005,0))
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e2:SetCode(EVENT_FLIP)
e2:SetTarget(c1141005.tg2)
e2:SetOperation(c1141005.op2)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e3:SetCode(EVENT_FLIP_SUMMON_SUCCESS)
e3:SetOperation(c1141005.op3)
c:RegisterEffect(e3)
--
end
--
c1141005.muxu_ih_KTatara=1
--
function c1141005.cost1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,e:GetHandler(),REASON_COST) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD)
local sg=Duel.SelectMatchingCard(tp,Card.IsDiscardable,tp,LOCATION_HAND,0,1,1,e:GetHandler(),REASON_COST)
Duel.SendtoGrave(sg,REASON_COST+REASON_DISCARD)
end
--
function c1141005.tg1(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return not c:IsStatus(STATUS_CHAINING)
and Duel.GetMZoneCount(tp)>0
and (c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_ATTACK) or c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENSE)) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
--
function c1141005.op1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local pos1=c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_ATTACK) and POS_FACEUP_ATTACK or 0
local pos2=c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENSE) and POS_FACEDOWN_DEFENSE or 0
if not c:IsRelateToEffect(e) then return end
Duel.SpecialSummon(c,0,tp,tp,false,false,pos1+pos2)
if c:IsFacedown() then Duel.ConfirmCards(1-tp,c) end
end
--
function c1141005.tfilter2(c)
return c.muxu_ih_KTatara and c:IsType(TYPE_TRAP) and c:IsSSetable()
end
function c1141005.tg2(e,tp,eg,ep,ev,re,r,rp,chk)
local b1=Duel.IsExistingMatchingCard(c1141005.tfilter2,tp,LOCATION_HAND,0,1,nil)
local c=e:GetHandler()
if chk==0 then
local b1=Duel.IsExistingMatchingCard(c1141005.tfilter2,tp,LOCATION_HAND,0,1,nil)
local b2=Duel.IsExistingMatchingCard(c1141005.tfilter2,tp,LOCATION_DECK,0,1,nil) and c:GetFlagEffect(1141005)>0
return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 and (b1 or b2)
end
if e:GetHandler():GetFlagEffect(1141005)~=0 then
e:SetLabel(1)
e:GetHandler():ResetFlagEffect(1141005)
else
e:SetLabel(0)
end
end
--
function c1141005.op2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local loc=LOCATION_HAND
if e:GetLabel()==1 then loc=LOCATION_DECK+LOCATION_HAND end
if Duel.GetLocationCount(tp,LOCATION_SZONE)<1 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
local sg=Duel.SelectMatchingCard(tp,c1141005.tfilter2,tp,loc,0,1,1,nil)
if sg:GetCount()>0 then
Duel.SSet(tp,sg)
Duel.ConfirmCards(1-tp,sg)
local e2_1=Effect.CreateEffect(c)
e2_1:SetType(EFFECT_TYPE_SINGLE)
e2_1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN)
e2_1:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e2_1:SetReset(RESET_EVENT+0x1fe0000)
sg:GetFirst():RegisterEffect(e2_1,true)
end
end
--
function c1141005.op3(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(1141005,0,0,0)
end
\ No newline at end of file
--光晕『唐伞惊吓闪光』
function c1141702.initial_effect(c)
--
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_NEGATE+CATEGORY_POSITION)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_CHAINING)
e1:SetCondition(c1141702.con1)
e1:SetTarget(c1141702.tg1)
e1:SetOperation(c1141702.op1)
c:RegisterEffect(e1)
--
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_GRAVE)
e2:SetCost(c1141702.cost2)
e2:SetCondition(c1141702.con2)
e2:SetOperation(c1141702.op2)
c:RegisterEffect(e2)
--
end
--
c1141702.muxu_ih_KTatara=1
--
function c1141702.con1(e,tp,eg,ep,ev,re,r,rp)
local loc=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_LOCATION)
return loc==LOCATION_MZONE and re:IsActiveType(TYPE_MONSTER) and Duel.IsChainNegatable(ev)
end
--
function c1141702.tfilter1(c,e,tp)
local b1=c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_ATTACK)
local b2=c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENSE)
return b1 or b2
end
function c1141702.tg1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and c1141702.tfilter1(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c1141702.tfilter1,tp,LOCATION_GRAVE,0,1,nil,e,tp) and re:GetHandler():IsCanTurnSet() end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c1141702.tfilter1,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
if re:GetHandler():IsCanTurnSet() and re:GetHandler():IsRelateToEffect(re) then
Duel.SetOperationInfo(0,CATEGORY_POSITION,eg,1,0,0)
end
end
--
function c1141702.op1(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if not tc:IsRelateToEffect(e) then return end
local Pos1=tc:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_ATTACK) and POS_FACEUP_ATTACK or 0
local Pos2=tc:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENSE) and POS_FACEDOWN_DEFENSE or 0
if Duel.SpecialSummon(c,0,tp,tp,false,false,Pos1+Pos2)>0 then
Duel.NegateActivation(ev)
if not re:GetHandler():IsRelateToEffect(re) then return end
Duel.Destroy(eg,REASON_EFFECT)
end
end
--
function c1141702.cost2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToRemoveAsCost() end
Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST)
end
--
function c1141702.tfilter2(c,tp)
return c:GetSummonPlayer()==tp and muxu.check_set_Tatara(c) and c:GetPreviousLocation()==LOCATION_EXTRA
end
function c1141702.con2(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()~=tp and Duel.GetCurrentPhase()==PHASE_MAIN1 and eg:IsExists(c1141702.tfilter2,1,nil,tp)
end
--
function c1141702.op2(e,tp,eg,ep,ev,re,r,rp)
Duel.SkipPhase(1-tp,PHASE_MAIN1,RESET_PHASE+PHASE_MAIN1,1)
end
--
......@@ -5,9 +5,16 @@ function cm.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkType,TYPE_EFFECT),3)
c:EnableReviveLimit()
--cannot link material
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e0:SetValue(1)
c:RegisterEffect(e0)
--to grave
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetDescription(aux.Stringid(17050937,5))
e1:SetCategory(CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
......@@ -31,7 +38,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e3)
--special summon
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(m,1))
e4:SetDescription(aux.Stringid(17050937,6))
e4:SetCategory(CATEGORY_SPECIAL_SUMMON)
e4:SetType(EFFECT_TYPE_IGNITION)
e4:SetRange(LOCATION_GRAVE)
......@@ -39,6 +46,34 @@ function cm.initial_effect(c)
e4:SetTarget(cm.sptg)
e4:SetOperation(cm.spop)
c:RegisterEffect(e4)
--spsummon voice
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e5:SetCode(EVENT_SPSUMMON_SUCCESS)
e5:SetOperation(cm.sumsuc)
c:RegisterEffect(e5)
--atk voice
local e6=Effect.CreateEffect(c)
e6:SetCategory(CATEGORY_ATKCHANGE)
e6:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e6:SetCode(EVENT_ATTACK_ANNOUNCE)
e6:SetOperation(cm.atksuc)
c:RegisterEffect(e6)
--destroy voice
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e7:SetCode(EVENT_DESTROYED)
e7:SetProperty(EFFECT_FLAG_DELAY)
e7:SetCondition(cm.descon)
e7:SetOperation(cm.dessuc)
c:RegisterEffect(e7)
--attk voice
local e8=Effect.CreateEffect(c)
e8:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e8:SetCode(EVENT_BATTLE_DAMAGE)
e8:SetCondition(cm.attkcon)
e8:SetOperation(cm.attksuc)
c:RegisterEffect(e8)
end
function cm.tgcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
......@@ -74,4 +109,28 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
if c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end
end
function cm.descon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsPreviousLocation(LOCATION_MZONE+LOCATION_SZONE) and c:IsFaceup()
end
function cm.attkcon(e,tp,eg,ep,ev,re,r,rp)
return ep~=tp and Duel.GetAttackTarget()==nil
end
function cm.sumsuc(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:GetSummonLocation()==LOCATION_GRAVE then
Duel.Hint(HINT_SOUND,0,aux.Stringid(17050937,4))
else
Duel.Hint(HINT_SOUND,0,aux.Stringid(17050937,0))
end
end
function cm.atksuc(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SOUND,0,aux.Stringid(17050937,1))
end
function cm.attksuc(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SOUND,0,aux.Stringid(17050937,2))
end
function cm.dessuc(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SOUND,0,aux.Stringid(17050937,3))
end
\ No newline at end of file
--培冬
local m=17050938
local cm=_G["c"..m]
function cm.initial_effect(c)
--summon with 3 tribute
local e1=Effect.CreateEffect(c)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_LIMIT_SUMMON_PROC)
e1:SetCondition(cm.ttcon)
e1:SetOperation(cm.ttop)
e1:SetValue(SUMMON_TYPE_ADVANCE)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_LIMIT_SET_PROC)
c:RegisterEffect(e2)
--remove
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_REMOVE)
e3:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_SINGLE)
e3:SetCode(EVENT_SUMMON_SUCCESS)
e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetTarget(cm.target)
e3:SetOperation(cm.activate)
c:RegisterEffect(e3)
end
function cm.ttcon(e,c,minc)
if c==nil then return true end
return minc<=3 and Duel.CheckTribute(c,3)
end
function cm.ttop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.SelectTribute(tp,c,3,3)
c:SetMaterial(g)
Duel.Release(g,REASON_SUMMON+REASON_MATERIAL)
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>0 end
end
function cm.filter(c)
return c:IsLevelBelow(7) and c:IsAbleToRemove()
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetFieldGroup(tp,LOCATION_DECK,0)
if g:GetCount()<1 then return end
Duel.ConfirmCards(tp,g)
local sg=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_DECK,0,nil)
Duel.Remove(sg,POS_FACEUP,REASON_EFFECT)
Duel.ShuffleDeck(tp)
end
\ No newline at end of file
--冥守的顶点·艾夏
local m=17051037
local cm=_G["c"..m]
function cm.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkType,TYPE_EFFECT),3)
c:EnableReviveLimit()
--cannot link material
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCode(EFFECT_CANNOT_BE_LINK_MATERIAL)
e0:SetValue(1)
c:RegisterEffect(e0)
--to grave
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(17051037,5))
e1:SetCategory(CATEGORY_TOGRAVE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCondition(cm.tgcon)
e1:SetTarget(cm.tgtg)
e1:SetOperation(cm.tgop)
c:RegisterEffect(e1)
--extra attack
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_EXTRA_ATTACK)
e2:SetCondition(cm.acon)
e2:SetValue(1)
c:RegisterEffect(e2)
--direct attack
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_DIRECT_ATTACK)
e3:SetCondition(cm.acon)
c:RegisterEffect(e3)
--special summon
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(17051037,6))
e4:SetCategory(CATEGORY_SPECIAL_SUMMON)
e4:SetType(EFFECT_TYPE_IGNITION)
e4:SetRange(LOCATION_GRAVE)
e4:SetCost(cm.spcost)
e4:SetTarget(cm.sptg)
e4:SetOperation(cm.spop)
c:RegisterEffect(e4)
--spsummon voice
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e5:SetCode(EVENT_SPSUMMON_SUCCESS)
e5:SetOperation(cm.sumsuc)
c:RegisterEffect(e5)
--atk voice
local e6=Effect.CreateEffect(c)
e6:SetCategory(CATEGORY_ATKCHANGE)
e6:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e6:SetCode(EVENT_ATTACK_ANNOUNCE)
e6:SetOperation(cm.atksuc)
c:RegisterEffect(e6)
--destroy voice
local e7=Effect.CreateEffect(c)
e7:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e7:SetCode(EVENT_DESTROYED)
e7:SetProperty(EFFECT_FLAG_DELAY)
e7:SetCondition(cm.descon)
e7:SetOperation(cm.dessuc)
c:RegisterEffect(e7)
--attk voice
local e8=Effect.CreateEffect(c)
e8:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e8:SetCode(EVENT_BATTLE_DAMAGE)
e8:SetCondition(cm.attkcon)
e8:SetOperation(cm.attksuc)
c:RegisterEffect(e8)
end
function cm.tgcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end
function cm.tgtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsLocation(LOCATION_MZONE) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectTarget(tp,nil,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,1,0,0)
end
function cm.tgop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.SendtoGrave(tc,REASON_EFFECT)
end
end
function cm.acon(e)
return e:GetHandler():GetSummonLocation()==LOCATION_GRAVE
end
function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToRemoveAsCost,tp,LOCATION_GRAVE,LOCATION_GRAVE,8,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToRemoveAsCost,tp,LOCATION_GRAVE,LOCATION_GRAVE,8,8,e:GetHandler())
Duel.Remove(g,POS_FACEUP,REASON_COST)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end
end
function cm.descon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsPreviousLocation(LOCATION_MZONE+LOCATION_SZONE) and c:IsFaceup()
end
function cm.attkcon(e,tp,eg,ep,ev,re,r,rp)
return ep~=tp and Duel.GetAttackTarget()==nil
end
function cm.sumsuc(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:GetSummonLocation()==LOCATION_GRAVE then
Duel.Hint(HINT_SOUND,0,aux.Stringid(17051037,4))
else
Duel.Hint(HINT_SOUND,0,aux.Stringid(17051037,0))
end
end
function cm.atksuc(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SOUND,0,aux.Stringid(17051037,1))
end
function cm.attksuc(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SOUND,0,aux.Stringid(17051037,2))
end
function cm.dessuc(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SOUND,0,aux.Stringid(17051037,3))
end
\ No newline at end of file
......@@ -2,46 +2,34 @@
local m=17090009
local cm=_G["c"..m]
function cm.initial_effect(c)
c:EnableReviveLimit()
--pendulum summon
aux.EnablePendulumAttribute(c)
--to deck
local e0=Effect.CreateEffect(c)
e0:SetDescription(aux.Stringid(m,0))
e0:SetCategory(CATEGORY_DESTROY+CATEGORY_TODECK)
e0:SetType(EFFECT_TYPE_IGNITION)
e0:SetProperty(EFFECT_FLAG_CARD_TARGET)
e0:SetRange(LOCATION_PZONE)
e0:SetTarget(cm.tdtg)
e0:SetOperation(cm.tdop)
c:RegisterEffect(e0)
--special summon condition
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION)
c:RegisterEffect(e1)
--special summon
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_SPSUMMON_PROC)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e2:SetRange(LOCATION_EXTRA+LOCATION_HAND)
e2:SetCondition(cm.spcon)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
--summon success
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
e3:SetOperation(cm.sumsuc)
c:RegisterEffect(e3)
c:EnableReviveLimit()
--pendulum summon
aux.EnablePendulumAttribute(c)
--to deck
local e0=Effect.CreateEffect(c)
e0:SetDescription(aux.Stringid(17090009,0))
e0:SetCategory(CATEGORY_DESTROY+CATEGORY_TODECK)
e0:SetType(EFFECT_TYPE_IGNITION)
e0:SetProperty(EFFECT_FLAG_CARD_TARGET)
e0:SetRange(LOCATION_PZONE)
e0:SetTarget(cm.tdtg)
e0:SetOperation(cm.tdop)
c:RegisterEffect(e0)
--deck remove
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SUMMON_SUCCESS)
e2:SetTarget(cm.target)
e2:SetOperation(cm.activate)
local e3=e2:Clone()
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e3)
end
function cm.tdfilter(c)
return c:IsAbleToDeck()
return c:IsAbleToDeck()
end
function cm.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_REMOVED) and chkc:IsControler(tp) and cm.tdfilter(chkc) end
if chkc then return chkc:IsLocation(LOCATION_REMOVED) and chkc:IsControler(tp) and cm.tdfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(cm.tdfilter,tp,LOCATION_REMOVED,0,3,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g=Duel.SelectTarget(tp,cm.tdfilter,tp,LOCATION_REMOVED,0,3,3,nil)
......@@ -54,73 +42,13 @@ function cm.tdop(e,tp,eg,ep,ev,re,r,rp)
Duel.SendtoDeck(g,nil,2,REASON_EFFECT)
end
end
function cm.spcon(e,c)
if c==nil then return true end
local tp=c:GetControler()
return ((c:IsLocation(LOCATION_HAND) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0) or
(c:IsLocation(LOCATION_EXTRA) and Duel.GetLocationCountFromEx(tp)>0))
and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_EXTRA,0,1,e:GetHandler())
function cm.rmfilter(c)
return not c:IsSetCard(0x701)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_EXTRA,0,e:GetHandler())
Duel.Remove(g,POS_FACEDOWN,REASON_COST)
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.rmfilter,tp,LOCATION_DECK,0,1,nil) end
end
function cm.sumsuc(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local g=Duel.GetFieldGroup(tp,LOCATION_DECK,0)
if g:GetCount()<1 then return end
Duel.Remove(g,POS_FACEDOWN,REASON_EFFECT)
--to deck
local e_1=Effect.CreateEffect(e:GetHandler())
e_1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e_1:SetCategory(CATEGORY_TODECK)
e_1:SetCode(EVENT_PHASE+PHASE_END)
e_1:SetCountLimit(1)
e_1:SetCondition(cm.epcon)
e_1:SetOperation(cm.activate)
Duel.RegisterEffect(e_1,tp)
--discard
local e_2=Effect.CreateEffect(e:GetHandler())
e_2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e_2:SetCategory(CATEGORY_HANDES)
e_2:SetCode(EVENT_SUMMON_SUCCESS)
e_2:SetCountLimit(1)
e_2:SetCondition(cm.condition)
e_2:SetOperation(cm.operation)
Duel.RegisterEffect(e_2,tp)
--remove
local e_3=Effect.CreateEffect(e:GetHandler())
e_3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e_3:SetCategory(CATEGORY_REMOVE)
e_3:SetCode(EVENT_CHAIN_SOLVING)
e_3:SetCountLimit(1)
e_3:SetCondition(cm.rmon)
e_3:SetOperation(cm.rmop)
Duel.RegisterEffect(e_3,tp)
end
function cm.epcon(e,tp,eg,ep,ev,re,r,rp)
return tp~=Duel.GetTurnPlayer()
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local g2=Duel.GetFieldGroup(tp,LOCATION_REMOVED,0):RandomSelect(tp,3)
Duel.SendtoDeck(g2,nil,2,REASON_EFFECT)
end
function cm.cfilter(c,tp)
return c:GetSummonPlayer()==tp
local g=Duel.GetMatchingGroup(cm.rmfilter,tp,LOCATION_DECK,0,nil)
Duel.Remove(g,POS_FACEDOWN,REASON_EFFECT)
end
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return not eg:IsContains(e:GetHandler()) and eg:IsExists(cm.cfilter,1,nil,tp)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.DiscardHand(1-tp,nil,1,1,REASON_EFFECT+REASON_DISCARD)
end
function cm.rmon(e,tp,eg,ep,ev,re,r,rp)
return rp==tp and re:IsHasType(EFFECT_TYPE_ACTIVATE) and re:IsActiveType(TYPE_SPELL)
end
function cm.rmop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,0,LOCATION_MZONE,1,2,nil)
if g:GetCount()>0 then
Duel.Remove(g,POS_FACEDOWN,REASON_EFFECT)
end
end
\ No newline at end of file
--谐律 轻盈电音
if not pcall(function() require("expansions/script/c10199990") end) then require("script/c10199990") end
local m=18010001
local cm=_G["c"..m]
if not rsv.HarmonicRhythm then
rsv.HarmonicRhythm={}
rshr=rsv.HarmonicRhythm
function rshr.Set(c)
if not c:IsStatus(STATUS_COPYING_EFFECT) then
local mt=getmetatable(c)
mt.rssetcode="HarmonicRhythm"
end
end
function rshr.IsSet(c)
return c:CheckSetCard("HarmonicRhythm")
end
function rshr.DiscardFun(c,code,cate,tg,op)
local e1=rsef.I(c,{m,0},{1,code},cate,nil,LOCATION_HAND,nil,rscost.cost({Card.IsDiscardable,nil},{rshr.cfilter,{"dish",rshr.disfun},LOCATION_HAND,0,1,1,c}),tg,op)
return e1
end
function rshr.disfun(g,e,tp)
g:AddCard(e:GetHandler())
Duel.SendtoGrave(g,REASON_COST+REASON_DISCARD)
end
function rshr.cfilter(c)
return c:IsDiscardable() and c:IsType(TYPE_TUNER)
end
function rshr.GraveFun(c,code,cate,extraop)
local e1=rsef.FTO(c,EVENT_TO_GRAVE,{m,1},{1,code},{cate,"sp"},"de",LOCATION_GRAVE,rshr.spcon,nil,rsop.target(rshr.spfilter,"sp"),rshr.spop(extraop))
return e1
end
function rshr.spcon(e,tp,eg)
local c=e:GetHandler()
return not eg:IsContains(c) and eg:IsExists(Card.IsType,1,nil,TYPE_TUNER)
end
function rshr.spfilter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
end
function rshr.spop(extraop)
return function(e,tp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(1,0)
e1:SetTarget(rshr.splimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local c=rscf.GetRelationThisCard(e)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 or not c or rssf.SpecialSummon(c)<=0 then return end
if extraop then
extraop(e,tp)
end
end
end
function rshr.splimit(e,c)
return not c:IsType(TYPE_TUNER)
end
---------------
end
---------------
if cm then
function cm.initial_effect(c)
rshr.Set(c)
rshr.DiscardFun(c,m,"th",rsop.target(cm.thfilter,"th",LOCATION_DECK),cm.thop)
rshr.GraveFun(c,m,nil,cm.op)
end
function cm.thfilter(c)
return c:IsAbleToHand() and rshr.IsSet(c)
end
function cm.thop(e,tp)
rsof.SelectHint(tp,"th")
local g=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
function cm.op(e,tp)
local g=Duel.GetMatchingGroup(Card.IsType,tp,LOCATION_MZONE,0,nil,TYPE_TUNER)
if #g>0 and Duel.IsExistingMatchingCard(Card.IsSynchroSummonable,tp,LOCATION_EXTRA,0,1,nil,nil,g) and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
Duel.BreakEffect()
rsof.SelectHint(tp,"sp")
local sc=Duel.SelectMatchingCard(tp,Card.IsSynchroSummonable,tp,LOCATION_EXTRA,0,1,1,nil,nil,g):GetFirst()
Duel.SynchroSummon(tp,sc,nil,g)
end
end
---------------
end
--谐律 热烈打击
if not pcall(function() require("expansions/script/c18010001") end) then require("script/c18010001") end
local m=18010002
local cm=_G["c"..m]
function cm.initial_effect(c)
rshr.Set(c)
rshr.DiscardFun(c,m,"sp",rsop.target(cm.spfilter,"sp",LOCATION_DECK),cm.spop)
rshr.GraveFun(c,m,"th",cm.op)
end
function cm.spfilter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and rshr.IsSet(c)
end
function cm.spop(e,tp)
rsof.SelectHint(tp,"sp")
local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp)
if #g>0 then
rssf.SpecialSummon(g)
end
end
function cm.thfilter(c)
local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_MZONE,0,nil)
local att=0
for tc in aux.Next(g) do
local att2=tc:GetAttribute()
if att2 then
att=att|att2
end
end
return c:IsType(TYPE_TUNER) and c:IsAbleToHand() and c:IsAttribute(att)
end
function cm.op(e,tp)
if Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(m,0)) then
Duel.BreakEffect()
rsof.SelectHint(tp,"th")
local tg=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if #tg>0 then
Duel.SendtoHand(tg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tg)
end
end
end
\ No newline at end of file
--谐律 柔情弦乐
if not pcall(function() require("expansions/script/c18010001") end) then require("script/c18010001") end
local m=18010003
local cm=_G["c"..m]
function cm.initial_effect(c)
rshr.Set(c)
rshr.DiscardFun(c,m,"th",rsop.target(cm.thfilter,"th",LOCATION_GRAVE),cm.thop)
rshr.GraveFun(c,m,"th",cm.op)
end
function cm.thfilter(c)
return c:IsAbleToHand() and c:IsType(TYPE_TUNER)
end
function cm.thop(e,tp)
rsof.SelectHint(tp,"th")
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.thfilter),tp,LOCATION_GRAVE,0,1,1,nil)
if #g>0 then
Duel.HintSelection(g)
Duel.SendtoHand(g,tp,REASON_EFFECT)
end
end
function cm.op(e,tp)
if Duel.IsExistingMatchingCard(aux.NecroValleyFilter(cm.thfilter),tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(m,0)) then
Duel.BreakEffect()
rsof.SelectHint(tp,"th")
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.thfilter),tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil)
if #g>0 then
Duel.HintSelection(g)
Duel.SendtoHand(g,tp,REASON_EFFECT)
end
end
end
\ No newline at end of file
--谐律 稳重吹管
if not pcall(function() require("expansions/script/c18010001") end) then require("script/c18010001") end
local m=18010004
local cm=_G["c"..m]
function cm.initial_effect(c)
rshr.Set(c)
rshr.DiscardFun(c,m,"sp",rsop.target(cm.spfilter,"sp",LOCATION_GRAVE),cm.spop)
rshr.GraveFun(c,m,nil,cm.op)
end
function cm.spfilter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and rshr.IsSet(c)
end
function cm.spop(e,tp)
rsof.SelectHint(tp,"sp")
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.spfilter),tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
if #g>0 then
rssf.SpecialSummon(g)
end
end
function cm.op(e,tp)
if Duel.IsExistingMatchingCard(aux.NecroValleyFilter(cm.spfilter),tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil,e,tp) and Duel.SelectYesNo(tp,aux.Stringid(m,0)) then
Duel.BreakEffect()
rsof.SelectHint(tp,"sp")
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.spfilter),tp,LOCATION_GRAVE,LOCATION_GRAVE,1,1,nil,e,tp)
if #g>0 then
rssf.SpecialSummon(g)
end
end
end
\ No newline at end of file
--谐律调 崇高奏鸣
if not pcall(function() require("expansions/script/c18010001") end) then require("script/c18010001") end
local m=18010005
local cm=_G["c"..m]
function cm.initial_effect(c)
rshr.Set(c)
rscf.AddSynchroMixProcedure_CheckMaterial(c,aux.Tuner(nil),nil,nil,aux.Tuner(nil),1,99,cm.checkfun)
local e1=rsef.STO(c,EVENT_SPSUMMON_SUCCESS,{m,0},nil,"td","de,dsp",rscon.sumtype("syn"),nil,cm.tg,cm.op)
local e2=rsef.FTO(c,EVENT_TO_GRAVE,{m,1},1,"td","de",LOCATION_MZONE,cm.tdcon,nil,rsop.target(Card.IsAbleToDeck,"td",LOCATION_ONFIELD+LOCATION_GRAVE,LOCATION_ONFIELD+LOCATION_GRAVE),cm.tdop)
--local e3=rsef.STO(c,EVENT_LEAVE_FIELD,{m,3},nil,"th","de,dsp",rscon.sumtype("syn"),nil,cm.tg2,cm.op2)
--splimit
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e4:SetCode(EFFECT_SPSUMMON_CONDITION)
e4:SetValue(cm.splimit)
c:RegisterEffect(e4)
--summon success
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e5:SetCode(EVENT_SPSUMMON_SUCCESS)
e5:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e5:SetCondition(cm.sumcon)
e5:SetOperation(cm.sumsuc)
c:RegisterEffect(e5)
end
function cm.sumcon(e,tp)
local c=e:GetHandler()
return c:IsSummonType(SUMMON_TYPE_SYNCHRO) and Duel.GetTurnPlayer()~=tp
end
function cm.sumsuc(e,tp)
local c=e:GetHandler()
local e1=rsef.SV_IMMUNE_EFFECT(c,rsval.imoe,nil,rsreset.est)
end
function cm.splimit(e,se,sp,st)
if st&SUMMON_TYPE_SYNCHRO ~=0 then return not se or not se:IsHasType(EFFECT_TYPE_ACTIONS)
else
return true
end
end
function cm.checkfun(mg)
return mg:IsExists(Card.IsLevel,2,nil,3) and mg:GetClassCount(Card.GetAttribute)==#mg
end
function cm.tg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>=3 and Duel.GetFieldGroupCount(tp,0,LOCATION_DECK)>=3 and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
end
function cm.op(e,tp)
local plist={tp,1-tp}
local tct=0
for i=1,2 do
local p=plist[i]
Duel.ConfirmDecktop(p,3)
local g=Duel.GetDecktopGroup(p,3)
local ct=g:FilterCount(Card.IsType,nil,TYPE_TUNER)
tct=tct+ct
Duel.ShuffleDeck(p)
end
if tct==0 then return end
rsof.SelectHint(tp,"td")
local tg=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(Card.IsAbleToDeck),tp,LOCATION_ONFIELD+LOCATION_GRAVE,LOCATION_ONFIELD+LOCATION_GRAVE,1,tct,nil)
if #tg>0 then
Duel.HintSelection(tg)
Duel.SendtoDeck(tg,nil,2,REASON_EFFECT)
end
end
function cm.tdcon(e,tp,eg)
return eg:IsExists(Card.IsType,1,nil,TYPE_TUNER)
end
function cm.tdop(e,tp)
rsof.SelectHint(tp,"td")
local tg=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(Card.IsAbleToDeck),tp,LOCATION_ONFIELD+LOCATION_GRAVE,LOCATION_ONFIELD+LOCATION_GRAVE,1,1,nil)
if #tg>0 then
Duel.HintSelection(tg)
Duel.SendtoDeck(tg,nil,2,REASON_EFFECT)
end
end
function cm.thfilter(c)
return c:IsAbleToHand() and c:IsType(TYPE_TUNER)
end
function cm.tg2(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(cm.thfilter,tp,LOCATION_GRAVE,LOCATION_GRAVE,nil)
if chk==0 then return g:GetClassCount(Card.GetCode)>=4 end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,4,PLAYER_ALL,LOCATION_GRAVE)
end
function cm.op2(e,tp)
local g=Duel.GetMatchingGroup(cm.thfilter,tp,LOCATION_GRAVE,LOCATION_GRAVE,nil)
if g:GetClassCount(Card.GetCode)<=3 then return end
rsof.SelectHint(tp,"th")
local tg=g:SelectSubGroup(tp,aux.dncheck,false,4,4)
if #tg>0 then
Duel.HintSelection(tg)
Duel.SendtoHand(tg,tp,REASON_EFFECT)
end
end
\ No newline at end of file
--谐律调 优美和声
if not pcall(function() require("expansions/script/c18010001") end) then require("script/c18010001") end
local m=18010006
local cm=_G["c"..m]
function cm.initial_effect(c)
rshr.Set(c)
c:EnableReviveLimit()
rscf.AddSynchroMixProcedure(c,aux.Tuner(Card.IsLevel,3),nil,nil,aux.Tuner(Card.IsLevel,3),1,1)
local e1=rsef.STO(c,EVENT_SPSUMMON_SUCCESS,{m,0},nil,"th","de,dsp",rscon.sumtype("syn"),nil,rsop.target({cm.thfilter,"th",LOCATION_GRAVE },{cm.thfilter,"th",0,LOCATION_GRAVE }),cm.op)
local e2=rsef.FTO(c,EVENT_TO_GRAVE,{m,1},1,"se,th","de",LOCATION_MZONE,cm.thcon,nil,rsop.target(cm.thfilter2,"th",LOCATION_DECK),cm.thop)
local e3=rsef.QO(c,nil,{m,2},1,"sp",nil,LOCATION_MZONE,cm.syncon,nil,rsop.target(cm.synfilter,"sp",LOCATION_EXTRA),cm.synop)
end
function cm.thfilter(c)
return c:IsType(TYPE_TUNER) and c:IsAbleToHand()
end
function cm.op(e,tp)
local g1=Duel.GetMatchingGroup(aux.NecroValleyFilter(cm.thfilter),tp,LOCATION_GRAVE,0,nil)
local g2=Duel.GetMatchingGroup(aux.NecroValleyFilter(cm.thfilter),tp,0,LOCATION_GRAVE,nil)
if #g1<=0 or #g2<=0 then return end
rsof.SelectHint(tp,"th")
local tg1=g1:Select(tp,1,1,nil)
rsof.SelectHint(tp,"th")
local tg2=g2:Select(tp,1,1,nil)
tg1:Merge(tg2)
Duel.HintSelection(tg1)
Duel.SendtoHand(tg1,tp,REASON_EFFECT)
end
function cm.tdcon(e,tp,eg)
return eg:IsExists(Card.IsType,1,nil,TYPE_TUNER)
end
function cm.cfilter(c,lv)
return c:IsType(TYPE_TUNER) and c:IsLevel(lv)
end
function cm.thfilter(c,e,tp,eg)
return c:IsAbleToHand() and c:IsType(TYPE_TUNER) and eg and eg:IsExists(cm.cfilter,1,nil,c:GetLevel())
end
function cm.thop(e,tp,eg)
rsof.SelectHint(tp,"th")
local g=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp,eg)
if #g>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
function cm.syncon(e,tp)
return Duel.GetTurnPlayer()~=tp
end
function cm.synfilter(c,e,tp)
local g=Duel.GetMatchingGroup(Card.IsType,tp,LOCATION_MZONE,0,nil,TYPE_TUNER)
return #g>0 and c:IsSynchroSummonable(nil,g)
end
function cm.synop(e,tp)
local g=Duel.GetMatchingGroup(Card.IsType,tp,LOCATION_MZONE,0,nil,TYPE_TUNER)
rsof.SelectHint(tp,"sp")
local sc=Duel.SelectMatchingCard(tp,Card.IsSynchroSummonable,tp,LOCATION_EXTRA,0,1,1,nil,nil,g):GetFirst()
if sc then
Duel.SynchroSummon(tp,sc,nil,g)
end
end
\ No newline at end of file
--调谐律法
if not pcall(function() require("expansions/script/c18010001") end) then require("script/c18010001") end
local m=18010007
local cm=_G["c"..m]
function cm.initial_effect(c)
rshr.Set(c)
local e1=rsef.ACT(c,nil,nil,{1,m,1})
--local e2=rsef.I(c,{m,0},1,"se,th",nil,LOCATION_FZONE,nil,rscost.cost(cm.cfilter,"dish",LOCATION_HAND),cm.thtg,cm.thop)
local e2=rsef.I(c,{m,0},1,"se,th,ga",nil,LOCATION_FZONE,nil,rscost.cost(cm.cfilter,"dish",LOCATION_HAND),rsop.target(cm.thfilter,"th",LOCATION_GRAVE),cm.thop2)
local e3=rsef.FTO(c,EVENT_SPSUMMON_SUCCESS,{m,1},nil,"dr,td","de",LOCATION_FZONE,nil,nil,cm.drtg,cm.drop)
end
function cm.cfilter(c)
return c:IsDiscardable() and c:IsType(TYPE_TUNER)
end
function cm.thfilter(c)
return c:IsAbleToHand() and rshr.IsSet(c) and c:IsType(TYPE_MONSTER)
end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(cm.thfilter,tp,LOCATION_DECK,0,nil)
if chk==0 then return g:GetClassCount(Card.GetCode)>=2 end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,2,tp,LOCATION_DECK)
end
function cm.thop(e,tp)
local g=Duel.GetMatchingGroup(cm.thfilter,tp,LOCATION_DECK,0,nil)
if g:GetClassCount(Card.GetCode)<=1 then return end
rsof.SelectHint(tp,"th")
local tg=g:SelectSubGroup(tp,aux.dncheck,false,2,2)
if #tg>0 then
Duel.SendtoHand(tg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tg)
end
end
function cm.thfilter2(c,tc)
return c:IsType(TYPE_TUNER) and c:IsAbleToHand() and c:IsAttack(tc:GetAttack()) and c:IsDefense(tc:GetDefense()) and c:IsAttribute(tc:GetAttribute()) and c:IsLevel(tc:GetLevel())
end
function cm.thop2(e,tp)
rsof.SelectHint(tp,"th")
local tc=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil):GetFirst()
if tc and Duel.SendtoHand(tc,nil,REASON_EFFECT)~=0 then
Duel.ConfirmCards(1-tp,tc)
local g=Duel.GetMatchingGroup(aux.NecroValleyFilter(cm.thfilter2),tp,LOCATION_GRAVE,0,nil,tc)
if #g>0 and Duel.SelectYesNo(tp,aux.Stringid(m,3)) then
Duel.BreakEffect()
rsof.SelectHint(tp,"th")
local tg=g:Select(tp,1,1,nil)
Duel.HintSelection(tg)
Duel.SendtoHand(tg,nil,REASON_EFFECT)
end
end
end
function cm.cfilter2(c)
local mat=c:GetMaterial()
return c:IsSummonType(SUMMON_TYPE_SYNCHRO) and #mat>0 and mat:IsExists(Card.IsType,1,nil,TYPE_TUNER)
end
function cm.matcheck(eg)
local dct=0
for tc in aux.Next(eg) do
local mat=tc:GetMaterial()
if tc:IsSummonType(SUMMON_TYPE_SYNCHRO) and #mat>0 then
local tct=mat:FilterCount(Card.IsType,nil,TYPE_TUNER)
dct=dct+tct
end
end
return dct
end
function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
local dct=cm.matcheck(eg)
if chk==0 then return dct>0 and Duel.IsPlayerCanDraw(tp,dct) and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_HAND,0,2,nil) end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(dct)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,dct)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,2,tp,LOCATION_HAND)
end
function cm.drop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
if Duel.Draw(p,d,REASON_EFFECT)>0 then
rsof.SelectHint(tp,"td")
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToDeck,tp,LOCATION_HAND,0,2,2,nil)
if #g==2 and Duel.SendtoDeck(g,nil,0,REASON_EFFECT)==2 then
Duel.SortDecktop(tp,tp,2)
end
end
end
\ No newline at end of file
--柳暗花明·和久井留美
function c26802004.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,nil,2)
c:EnableReviveLimit()
--shuffle and draw
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(26802004,0))
e1:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetCountLimit(1,26802004+EFFECT_COUNT_CODE_SINGLE)
e1:SetRange(LOCATION_MZONE)
e1:SetCondition(c26802004.condition)
e1:SetTarget(c26802004.tdtg)
e1:SetOperation(c26802004.tdop)
c:RegisterEffect(e1)
--todeck
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(26802004,1))
e2:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetCountLimit(1,26802004+EFFECT_COUNT_CODE_SINGLE)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(c26802004.condition)
e2:SetTarget(c26802004.sdtg)
e2:SetOperation(c26802004.sdop)
c:RegisterEffect(e2)
end
function c26802004.condition(e)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end
function c26802004.tdfilter(c)
return c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToDeck()
end
function c26802004.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_GRAVE) and c26802004.tdfilter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c26802004.tdfilter,tp,LOCATION_GRAVE,0,1,nil)
and Duel.IsPlayerCanDraw(tp,1) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g=Duel.SelectTarget(tp,c26802004.tdfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end
function c26802004.tdop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if not tc:IsRelateToEffect(e) then return end
Duel.SendtoDeck(tc,nil,0,REASON_EFFECT)
if tc:IsLocation(LOCATION_DECK) then Duel.ShuffleDeck(tp) end
if tc:IsLocation(LOCATION_DECK+LOCATION_EXTRA) then
Duel.BreakEffect()
Duel.Draw(tp,1,REASON_EFFECT)
end
end
function c26802004.sdtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,1)
and Duel.IsExistingMatchingCard(c26802004.tdfilter,tp,LOCATION_HAND,0,1,e:GetHandler()) end
Duel.SetTargetPlayer(tp)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,1,tp,LOCATION_HAND)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end
function c26802004.sdop(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER)
local g=Duel.GetMatchingGroup(c26802004.tdfilter,p,LOCATION_HAND,0,nil)
if g:GetCount()>0 then
Duel.Hint(HINT_SELECTMSG,p,HINTMSG_TODECK)
local sg=g:Select(p,1,1,nil)
Duel.ConfirmCards(1-p,sg)
Duel.SendtoDeck(sg,nil,2,REASON_EFFECT)
Duel.ShuffleDeck(p)
Duel.BreakEffect()
Duel.Draw(p,1,REASON_EFFECT)
end
end
--月夜祈福·鹰富士茄子
function c26802005.initial_effect(c)
--fusion summon
c:EnableReviveLimit()
aux.AddFusionProcFunRep(c,aux.FilterBoolFunction(Card.IsFusionType,TYPE_LINK),3,true)
--spsummon condition
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetCode(EFFECT_SPSUMMON_CONDITION)
e1:SetValue(aux.fuslimit)
c:RegisterEffect(e1)
--spsummon
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e2:SetCode(EFFECT_SPSUMMON_PROC)
e2:SetRange(LOCATION_EXTRA)
e2:SetCondition(c26802005.hspcon)
e2:SetOperation(c26802005.hspop)
c:RegisterEffect(e2)
--atk up
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_ATKCHANGE)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1,26802005)
e3:SetCost(c26802005.atkcost)
e3:SetOperation(c26802005.atkop)
c:RegisterEffect(e3)
--damage
local e4=Effect.CreateEffect(c)
e4:SetCategory(CATEGORY_DAMAGE+CATEGORY_TODECK)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_PHASE+PHASE_BATTLE)
e4:SetRange(LOCATION_MZONE)
e4:SetProperty(EFFECT_FLAG_CARD_TARGET)
e4:SetCountLimit(1,26802905)
e4:SetCondition(c26802005.damcon)
e4:SetTarget(c26802005.damtg)
e4:SetOperation(c26802005.damop)
c:RegisterEffect(e4)
end
function c26802005.hspfilter(c,tp,sc)
return c:IsType(TYPE_LINK) and c:IsLink(5) and c:IsControler(tp) and Duel.GetLocationCountFromEx(tp,tp,sc,c)>0
end
function c26802005.hspcon(e,c)
if c==nil then return true end
return Duel.CheckReleaseGroup(c:GetControler(),c26802005.hspfilter,1,nil,c:GetControler(),c)
end
function c26802005.hspop(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.SelectReleaseGroup(tp,c26802005.hspfilter,1,1,nil,tp,c)
Duel.Release(g,REASON_COST)
end
function c26802005.cfilter(c)
return c:GetAttack()>0 and c:IsAbleToRemoveAsCost()
end
function c26802005.atkcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c26802005.cfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,c26802005.cfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.Remove(g,POS_FACEUP,REASON_COST)
e:SetLabel(g:GetFirst():GetAttack())
end
function c26802005.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(e:GetLabel())
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
end
end
function c26802005.damcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:GetBattledGroupCount()>0
end
function c26802005.filter(c)
return c:IsFaceup() and c:IsType(TYPE_MONSTER) and c:IsAbleToDeck()
end
function c26802005.damtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_REMOVED) and chkc:IsControler(tp) and c26802005.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c26802005.filter,tp,LOCATION_REMOVED,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,c26802005.filter,tp,LOCATION_REMOVED,0,1,1,nil)
local ask=g:GetFirst():GetBaseAttack()
local atk=ask/2
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,atk)
Duel.SetOperationInfo(0,CATEGORY_TODECK,g,1,0,0)
end
function c26802005.damop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
local bmw=tc:GetBaseAttack()
local bs=bmw/2
if tc:IsRelateToEffect(e) and Duel.Damage(1-tp,bs,REASON_EFFECT)~=0 then
Duel.BreakEffect()
Duel.SendtoDeck(tc,nil,2,REASON_EFFECT)
end
end
--月刊CLIMAX
function c26805006.initial_effect(c)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetOperation(c26805006.activate)
c:RegisterEffect(e1)
--draw
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_DRAW)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_SZONE)
e3:SetCountLimit(1,26805006)
e3:SetCondition(c26805006.drcon)
e3:SetCost(c26805006.drcost)
e3:SetTarget(c26805006.drtg)
e3:SetOperation(c26805006.drop)
c:RegisterEffect(e3)
end
function c26805006.filter(c,tp)
return c:IsCode(81010004) and c:GetActivateEffect() and c:GetActivateEffect():IsActivatable(tp,true,true)
end
function c26805006.activate(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local g=Duel.GetMatchingGroup(aux.NecroValleyFilter(c26805006.filter),tp,LOCATION_HAND+LOCATION_GRAVE,0,nil,tp)
if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(26805006,0)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local tc=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c26805006.filter),tp,LOCATION_HAND+LOCATION_GRAVE,0,1,1,nil,tp):GetFirst()
if tc then
local fc=Duel.GetFieldCard(tp,LOCATION_SZONE,5)
if fc then
Duel.SendtoGrave(fc,REASON_RULE)
Duel.BreakEffect()
end
Duel.MoveToField(tc,tp,tp,LOCATION_SZONE,POS_FACEUP,true)
local te=tc:GetActivateEffect()
te:UseCountLimit(tp,1,true)
local tep=tc:GetControler()
local cost=te:GetCost()
if cost then cost(te,tep,eg,ep,ev,re,r,rp,1) end
Duel.RaiseEvent(tc,4179255,te,0,tp,tp,Duel.GetCurrentChain())
end
end
end
function c26805006.cfilter(c)
return c:IsCode(81010005) and c:IsFaceup()
end
function c26805006.drcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c26805006.cfilter,tp,LOCATION_MZONE,0,1,nil)
end
function c26805006.drfilter(c)
return c:IsAttribute(ATTRIBUTE_WIND) and c:IsDiscardable()
end
function c26805006.drcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c26805006.drfilter,tp,LOCATION_HAND,0,1,nil) end
Duel.DiscardHand(tp,c26805006.drfilter,1,1,REASON_COST+REASON_DISCARD)
end
function c26805006.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,1) end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(1)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end
function c26805006.drop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Draw(p,d,REASON_EFFECT)
end
--西京夏日约会
function c26805007.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DRAW)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,26805007+EFFECT_COUNT_CODE_OATH)
e1:SetCost(c26805007.cost)
e1:SetTarget(c26805007.target)
e1:SetOperation(c26805007.activate)
c:RegisterEffect(e1)
end
function c26805007.filter(c)
return c:IsFaceup() and bit.band(c:GetType(),0x20002)==0x20002 and c:IsAbleToGraveAsCost()
end
function c26805007.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c26805007.filter,tp,LOCATION_ONFIELD,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c26805007.filter,tp,LOCATION_ONFIELD,0,1,1,nil)
Duel.SendtoGrave(g,REASON_COST)
end
function c26805007.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,2) end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(2)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,2)
end
function c26805007.activate(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Draw(p,d,REASON_EFFECT)
end
--七月炎夏·诗岸
function c26806025.initial_effect(c)
--xyz effect
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(26806025,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_GRAVE)
e1:SetHintTiming(0,TIMING_END_PHASE+TIMINGS_CHECK_MONSTER)
e1:SetCountLimit(1,26806025)
e1:SetCost(aux.bfgcost)
e1:SetTarget(c26806025.xyztg)
e1:SetOperation(c26806025.xyzop)
c:RegisterEffect(e1)
--synchro effect
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(26806025,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_GRAVE)
e2:SetHintTiming(0,TIMING_END_PHASE+TIMINGS_CHECK_MONSTER)
e2:SetCountLimit(1,26806925)
e2:SetCost(aux.bfgcost)
e2:SetTarget(c26806025.sctg)
e2:SetOperation(c26806025.scop)
c:RegisterEffect(e2)
end
function c26806025.xyzfilter(c)
return c:IsAttack(2200) and c:IsDefense(600) and c:IsXyzSummonable(nil)
end
function c26806025.xyztg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c26806025.xyzfilter,tp,LOCATION_EXTRA,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end
function c26806025.xyzop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(c26806025.xyzfilter,tp,LOCATION_EXTRA,0,nil)
if g:GetCount()>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tg=g:Select(tp,1,1,nil)
Duel.XyzSummon(tp,tg:GetFirst(),nil)
end
end
function c26806025.scfilter(c)
return c:IsAttack(3200) and c:IsLinkSummonable(nil)
end
function c26806025.sctg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c26806025.scfilter,tp,LOCATION_EXTRA,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,0)
end
function c26806025.scop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c26806025.scfilter,tp,LOCATION_EXTRA,0,1,1,nil)
local tc=g:GetFirst()
if tc then
Duel.LinkSummon(tp,tc,nil)
end
end
--月夜回想·盐见周子
function c81008031.initial_effect(c)
--水晶玉座·海伊
function c26806026.initial_effect(c)
c:EnableReviveLimit()
--search
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(26806026,1))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,81008031)
e1:SetCost(c81008031.thcost)
e1:SetTarget(c81008031.thtg)
e1:SetOperation(c81008031.thop)
e1:SetCountLimit(1,26806026)
e1:SetCost(c26806026.cost)
e1:SetTarget(c26806026.target)
e1:SetOperation(c26806026.operation)
c:RegisterEffect(e1)
end
function c81008031.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
function c26806026.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsDiscardable() end
Duel.SendtoGrave(c,REASON_COST+REASON_DISCARD)
end
function c81008031.thfilter(c)
return c:IsCode(81008031) and c:IsAbleToHand()
function c26806026.filter(c)
return c:IsAttack(2200) and c:IsDefense(600) and c:IsAbleToHand()
end
function c81008031.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingMatchingCard(c81008031.thfilter,tp,LOCATION_DECK,0,1,nil) end
function c26806026.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c26806026.filter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c81008031.thop(e,tp,eg,ep,ev,re,r,rp,chk)
local tg=Duel.GetFirstMatchingCard(c81008031.thfilter,tp,LOCATION_DECK,0,nil)
if tg then
function c26806026.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local tg=Duel.SelectMatchingCard(tp,c26806026.filter,tp,LOCATION_DECK,0,1,1,nil)
if tg:GetCount()>0 then
Duel.SendtoHand(tg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tg)
end
......
--深夜回想·海伊
function c26806027.initial_effect(c)
--special summon
local e0=Effect.CreateEffect(c)
e0:SetCategory(CATEGORY_SPECIAL_SUMMON)
e0:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e0:SetProperty(EFFECT_FLAG_DELAY)
e0:SetCode(EVENT_TO_HAND)
e0:SetCountLimit(1,26806027)
e0:SetCondition(c26806027.spcon1)
e0:SetTarget(c26806027.sptg1)
e0:SetOperation(c26806027.spop1)
c:RegisterEffect(e0)
--tohand
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_BE_MATERIAL)
e1:SetCountLimit(1,26806027)
e1:SetCondition(c26806027.thcon)
e1:SetTarget(c26806027.thtg)
e1:SetOperation(c26806027.thop)
c:RegisterEffect(e1)
end
function c26806027.spcon1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return c:IsPreviousLocation(LOCATION_DECK) and c:GetPreviousControler()==tp and not c:IsPublic()
end
function c26806027.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsRelateToEffect(e) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c26806027.spop1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end
end
function c26806027.thcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and r==REASON_SYNCHRO
end
function c26806027.filter(c)
return c:IsAttack(2200) and c:IsDefense(600) and c:IsAbleToHand()
end
function c26806027.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c26806027.filter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c26806027.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c26806027.filter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
--好久不见·海伊
function c26806028.initial_effect(c)
c:EnableReviveLimit()
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkType,TYPE_EFFECT),3,99,c26806028.lcheck)
--damage
local e0=Effect.CreateEffect(c)
e0:SetCategory(CATEGORY_DAMAGE)
e0:SetType(EFFECT_TYPE_IGNITION)
e0:SetRange(LOCATION_MZONE)
e0:SetCountLimit(1,26806028)
e0:SetCost(c26806028.damcost)
e0:SetTarget(c26806028.damtg)
e0:SetOperation(c26806028.damop)
c:RegisterEffect(e0)
--indes
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetCondition(c26806028.indcon)
e1:SetValue(1)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
c:RegisterEffect(e2)
--search
local e4=Effect.CreateEffect(c)
e4:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_LEAVE_FIELD)
e4:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e4:SetCountLimit(1,26806928)
e4:SetCondition(c26806028.thcon)
e4:SetTarget(c26806028.thtg)
e4:SetOperation(c26806028.thop)
c:RegisterEffect(e4)
end
function c26806028.lcheck(g,lc)
return g:IsExists(c26806028.mzfilter,2,nil)
end
function c26806028.mzfilter(c)
return c:IsAttack(2200) and c:IsDefense(600)
end
function c26806028.indcon(e)
return e:GetHandler():IsLinkState()
end
function c26806028.damcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetCurrentPhase()==PHASE_MAIN1 end
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_BP)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e1:SetTargetRange(1,0)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
function c26806028.damtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetTargetPlayer(1-tp)
Duel.SetTargetParam(2200)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,2200)
end
function c26806028.damop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Damage(p,d,REASON_EFFECT)
end
function c26806028.thcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return (c:GetReasonPlayer()==1-tp and c:IsReason(REASON_EFFECT)) and c:IsPreviousPosition(POS_FACEUP)
end
function c26806028.thfilter(c)
return c:IsCode(26806000) and c:IsAbleToHand()
end
function c26806028.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c26806028.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c26806028.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c26806028.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
--天方夜谭·海伊
function c26806029.initial_effect(c)
--xyz summon
aux.AddXyzProcedure(c,nil,6,2)
c:EnableReviveLimit()
--attack up
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_POSITION)
e1:SetDescription(aux.Stringid(26806029,0))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,26806029)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetHintTiming(TIMING_DAMAGE_STEP)
e1:SetCost(c26806029.cost)
e1:SetTarget(c26806029.target)
e1:SetOperation(c26806029.operation)
c:RegisterEffect(e1)
--to grave
local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(26806029,1))
e4:SetCategory(CATEGORY_REMOVE)
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_F)
e4:SetCode(EVENT_FLIP)
e4:SetTarget(c26806029.tgtg)
e4:SetOperation(c26806029.tgop)
c:RegisterEffect(e4)
end
function c26806029.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function c26806029.filter(c)
return c:IsFaceup() and c:IsAttack(2200) and c:IsDefense(600)
end
function c26806029.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c26806029.filter(chkc) end
if chk==0 then return Duel.IsExistingTarget(c26806029.filter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,c26806029.filter,tp,LOCATION_MZONE,0,1,1,nil)
end
function c26806029.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and c26806029.filter(tc) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCode(EFFECT_SET_BASE_ATTACK)
e1:SetValue(3200)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
end
Duel.BreakEffect()
local c=e:GetHandler()
if c:IsRelateToEffect(e) and c:IsFaceup() then
Duel.ChangePosition(c,POS_FACEDOWN_DEFENSE)
end
end
function c26806029.tgtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
local g=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,nil)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0)
end
function c26806029.tgop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
if g:GetCount()>0 then
Duel.HintSelection(g)
Duel.Remove(g,POS_FACEUP,REASON_EFFECT)
end
end
--亚特兰蒂斯·海伊
function c26806030.initial_effect(c)
--synchro summon
aux.AddSynchroProcedure(c,aux.FilterBoolFunction(Card.IsCode,26807044),aux.NonTuner(c26806030.synfilter),1,1)
c:EnableReviveLimit()
--xyzlv
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_XYZ_LEVEL)
e0:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e0:SetRange(LOCATION_MZONE)
e0:SetValue(c26806030.xyzlv)
c:RegisterEffect(e0)
--remove
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(26806030,0))
e1:SetCategory(CATEGORY_DISABLE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCountLimit(1,26806030)
e1:SetCondition(c26806030.rmcon)
e1:SetTarget(c26806030.rmtg)
e1:SetOperation(c26806030.rmop)
c:RegisterEffect(e1)
--
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_ATKCHANGE)
e2:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_SINGLE)
e2:SetCode(EVENT_PRE_DAMAGE_CALCULATE)
e2:SetCountLimit(1,26806930)
e2:SetCondition(c26806030.atkcon)
e2:SetOperation(c26806030.atkop)
c:RegisterEffect(e2)
end
function c26806030.synfilter(c)
return c:IsAttack(2200) and c:IsDefense(600)
end
function c26806030.rmcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_SYNCHRO)
end
function c26806030.rmtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(aux.disfilter1,tp,0,LOCATION_MZONE,1,e:GetHandler()) end
local g=Duel.GetMatchingGroup(aux.disfilter1,tp,0,LOCATION_MZONE,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,g:GetCount(),0,0)
end
function c26806030.rmop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(aux.disfilter1,tp,0,LOCATION_MZONE,nil)
local tc=g:GetFirst()
while tc do
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_DISABLE_EFFECT)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e2)
tc=g:GetNext()
end
end
function c26806030.atkcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local bc=c:GetBattleTarget()
return bc and bc:IsControler(1-tp)
end
function c26806030.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local bc=c:GetBattleTarget()
if c:IsRelateToBattle() and c:IsFaceup() and bc:IsRelateToBattle() and bc:IsFaceup() then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetReset(RESET_PHASE+PHASE_DAMAGE_CAL)
e1:SetValue(bc:GetAttack())
c:RegisterEffect(e1)
end
end
function c26806030.xyzlv(e,c,rc)
return 0x60000+e:GetHandler():GetLevel()
end
......@@ -3,7 +3,7 @@ function c26807041.initial_effect(c)
c:EnableReviveLimit()
c:SetSPSummonOnce(26807041)
--link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsSummonType,SUMMON_TYPE_NORMAL),1,1)
aux.AddLinkProcedure(c,nil,1,1)
--splimit
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
......
--The SkyScrapers
function c26807057.initial_effect(c)
local e1=aux.AddRitualProcGreater2(c,nil,nil,nil,c26807057.mfilter)
e1:SetCountLimit(1,26807057+EFFECT_COUNT_CODE_OATH)
end
function c26807057.mfilter(c)
return c:IsType(TYPE_MONSTER) and not c:IsSummonableCard()
end
\ No newline at end of file
--雨落心音
function c26807058.initial_effect(c)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DRAW)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,26807058+EFFECT_COUNT_CODE_OATH)
e1:SetCost(c26807058.cost)
e1:SetTarget(c26807058.target)
e1:SetOperation(c26807058.activate)
c:RegisterEffect(e1)
Duel.AddCustomActivityCounter(26807058,ACTIVITY_SPSUMMON,c26807058.counterfilter)
end
function c26807058.counterfilter(c)
return c:IsSummonType(SUMMON_TYPE_RITUAL)
end
function c26807058.costfilter(c)
return bit.band(c:GetType(),0x81)==0x81 and c:IsFaceup() and c:IsAbleToGraveAsCost()
end
function c26807058.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c26807058.costfilter,tp,LOCATION_EXTRA+LOCATION_MZONE,0,1,nil) and Duel.GetCustomActivityCount(26807058,tp,ACTIVITY_SPSUMMON)==0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,c26807058.costfilter,tp,LOCATION_EXTRA+LOCATION_MZONE,0,1,1,nil)
Duel.SendtoGrave(g,REASON_COST)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetReset(RESET_PHASE+PHASE_END)
e1:SetTargetRange(1,0)
e1:SetTarget(c26807058.splimit)
Duel.RegisterEffect(e1,tp)
end
function c26807058.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return bit.band(sumtype,SUMMON_TYPE_RITUAL)~=SUMMON_TYPE_RITUAL
end
function c26807058.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsPlayerCanDraw(tp,2) end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(2)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,2)
end
function c26807058.activate(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Draw(p,d,REASON_EFFECT)
end
--真实噩梦
function c26807059.initial_effect(c)
--damage
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCategory(CATEGORY_DAMAGE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetTarget(c26807059.damtg)
e1:SetOperation(c26807059.damop)
c:RegisterEffect(e1)
end
function c26807059.damtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetTargetPlayer(tp)
Duel.SetTargetParam(1500)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,1500)
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then
Duel.SetChainLimit(aux.FALSE)
end
end
function c26807059.damop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Damage(p,d,REASON_EFFECT)
end
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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