Commit be54eddc authored by Nemo Ma's avatar Nemo Ma

231231

parent 3b88e98a
...@@ -1992,6 +1992,11 @@ ...@@ -1992,6 +1992,11 @@
60362066 0 60362066 0
74920585 0 74920585 0
77103950 1 77103950 1
#231231
14010109 0
22174899 0
40009524 1
53799184 1
#231217 #231217
22348084 0 22348084 0
22348095 0 22348095 0
...@@ -2069,7 +2074,6 @@ ...@@ -2069,7 +2074,6 @@
91010023 0 91010023 0
9911075 1 9911075 1
11799915 1 11799915 1
29063597 1
60002185 1 60002185 1
71401002 2 71401002 2
88888014 1 88888014 1
...@@ -3031,7 +3035,6 @@ ...@@ -3031,7 +3035,6 @@
40009730 0 40009730 0
53796033 0 53796033 0
53796034 0 53796034 0
60060016 1
72100340 0 72100340 0
89388000 0 89388000 0
188853 1 188853 1
...@@ -3096,7 +3099,6 @@ ...@@ -3096,7 +3099,6 @@
60001146 0 60001146 0
60001145 0 60001145 0
40010272 0 40010272 0
40010388 0
60000002 0 60000002 0
82567875 0 82567875 0
82568068 0 82568068 0
...@@ -5909,7 +5911,6 @@ ...@@ -5909,7 +5911,6 @@
31178212 0 --Majespecter Unicorn - Kirin 31178212 0 --Majespecter Unicorn - Kirin
96782886 0 --Mind Master 96782886 0 --Mind Master
7563579 0 --Performage PlushFire 7563579 0 --Performage PlushFire
90411554 0 --Redox, Dragon Ruler of Boulders
88071625 0 --The Tyrant Neptune 88071625 0 --The Tyrant Neptune
26400609 0 --Tidal, Dragon Ruler of Waterfalls 26400609 0 --Tidal, Dragon Ruler of Waterfalls
44910027 0 --Victory Dragon 44910027 0 --Victory Dragon
...@@ -5921,19 +5922,20 @@ ...@@ -5921,19 +5922,20 @@
23558733 0 --Phoenixian Cluster Amaryllis 23558733 0 --Phoenixian Cluster Amaryllis
1357146 0 --Ronintoadin 1357146 0 --Ronintoadin
75732622 0 --Grinder Golem 75732622 0 --Grinder Golem
57835716 0 --Orcust Harp Horror
67441435 0 --Glow-up Bulb 67441435 0 --Glow-up Bulb
91258852 0 --SPYRAL Master Plan 91258852 0 --SPYRAL Master Plan
6728559 0 --Archnemeses Protos 6728559 0 --Archnemeses Protos
20292186 0 --Artifact Scythe 20292186 0 --Artifact Scythe
73356503 0 --Barrier Statue of the Stormwinds 73356503 0 --Barrier Statue of the Stormwinds
69015963 0 --Cyber-Stein 69015963 0 --Cyber-Stein
62320425 0 --Agido the Ancient Sentry
25926710 0 --Kelbek the Ancient Vanguard
36521307 0 --Mathmech Circular
17412721 0 --Elder Entity Norden EXTRA DECK MONSTERS 17412721 0 --Elder Entity Norden EXTRA DECK MONSTERS
43387895 0 --Supreme King Dragon Starving Venom 43387895 0 --Supreme King Dragon Starving Venom
15291624 0 --Thunder Dragon Colossus 15291624 0 --Thunder Dragon Colossus
92731385 0 --Tearlaments Kitkallos 92731385 0 --Tearlaments Kitkallos
3040496 0 --Chaos Ruler, the Chaotic Magical Dragon 3040496 0 --Chaos Ruler, the Chaotic Magical Dragon
94677445 0 --Ib the World Chalice Justiciar
63101919 0 --Tempest Magician 63101919 0 --Tempest Magician
34086406 0 --Lavalval Chain 34086406 0 --Lavalval Chain
81122844 0 --Wind-Up Carrier Zenmaity 81122844 0 --Wind-Up Carrier Zenmaity
...@@ -5965,6 +5967,8 @@ ...@@ -5965,6 +5967,8 @@
27381364 0 --Spright Elf 27381364 0 --Spright Elf
33918636 0 --Superheavy Samurai Scarecrow 33918636 0 --Superheavy Samurai Scarecrow
95474755 0 --Number 89: Diablosis the Mind Hacker 95474755 0 --Number 89: Diablosis the Mind Hacker
48626373 0 --Kashtira Arise-Heart
59934749 0 --Isolde, Two Tales of the Noble Knights
69243953 0 --Butterfly Dagger - Elma SPELLS CARDS 69243953 0 --Butterfly Dagger - Elma SPELLS CARDS
57953380 0 --Card of Safe Return 57953380 0 --Card of Safe Return
67616300 0 --Chicken Game 67616300 0 --Chicken Game
...@@ -5985,7 +5989,6 @@ ...@@ -5985,7 +5989,6 @@
41482598 0 --Mirage of Nightmare 41482598 0 --Mirage of Nightmare
7394770 0 --Brilliant Fusion 7394770 0 --Brilliant Fusion
70828912 0 --Premature Burial 70828912 0 --Premature Burial
45986603 0 --Snatch Steal
42829885 0 --The Forceful Sentry 42829885 0 --The Forceful Sentry
11110587 0 --That Grass Looks Greener 11110587 0 --That Grass Looks Greener
54447022 0 --Soul Charge 54447022 0 --Soul Charge
...@@ -6004,7 +6007,6 @@ ...@@ -6004,7 +6007,6 @@
5851097 0 --Vanity's Emptiness 5851097 0 --Vanity's Emptiness
43262273 0 --Appointer of the Red Lotus 43262273 0 --Appointer of the Red Lotus
1041278 0 --Branded Expulsion 1041278 0 --Branded Expulsion
48626373 0 --Kashtira Arise-Heart
#Limited TCG #Limited TCG
7902349 1 --Left Arm of the forbidden one MAIN DECK MONSTERS 7902349 1 --Left Arm of the forbidden one MAIN DECK MONSTERS
44519536 1 --Left Leg of the forbidden one 44519536 1 --Left Leg of the forbidden one
...@@ -6012,9 +6014,7 @@ ...@@ -6012,9 +6014,7 @@
8124921 1 --Right Leg of the forbidden one 8124921 1 --Right Leg of the forbidden one
61901281 1 --Black Dragon Collapserpent 61901281 1 --Black Dragon Collapserpent
33396948 1 --Exodia the Forbidden One 33396948 1 --Exodia the Forbidden One
99177923 1 --Infernity Archfiend
89399912 1 --Tempest, Dragon Ruler of Storms 89399912 1 --Tempest, Dragon Ruler of Storms
81275020 1 --Speedroid Terrortop
99234526 1 --White Dragon Wyverburster 99234526 1 --White Dragon Wyverburster
78872731 1 --Zoodiac Ratpier 78872731 1 --Zoodiac Ratpier
33508719 1 --Morphing Jar 33508719 1 --Morphing Jar
...@@ -6023,7 +6023,6 @@ ...@@ -6023,7 +6023,6 @@
12958919 1 --Phantom Skyblaster 12958919 1 --Phantom Skyblaster
43694650 1 --Danger!? Jackalope? 43694650 1 --Danger!? Jackalope?
99745551 1 --Danger!? Tsuchinoko? 99745551 1 --Danger!? Tsuchinoko?
82385847 1 --Dinowrestler Pankratops
38572779 1 --Miscellaneousaurus 38572779 1 --Miscellaneousaurus
76794549 1 --Astrograph Sorcerer 76794549 1 --Astrograph Sorcerer
83190280 1 --Lunalight Tiger 83190280 1 --Lunalight Tiger
...@@ -6031,16 +6030,18 @@ ...@@ -6031,16 +6030,18 @@
26118970 1 --Red Rose Dragon 26118970 1 --Red Rose Dragon
34124316 1 --Cyber Jar 34124316 1 --Cyber Jar
20663556 1 --Substitoad 20663556 1 --Substitoad
62320425 1 --Agido the Ancient Sentry
25926710 1 --Kelbek the Ancient Vanguard
63542003 1 --Keldo the Sacred Protector 63542003 1 --Keldo the Sacred Protector
99937011 1 --Mudora the Sword Oracle 99937011 1 --Mudora the Sword Oracle
37961969 1 --Tearlaments Havnis 37961969 1 --Tearlaments Havnis
74078255 1 --Tearlaments Merrli 74078255 1 --Tearlaments Merrli
572850 1 --Tearlaments Scheiren 572850 1 --Tearlaments Scheiren
53804307 1 --Blaster, Dragon Ruler of Infernos 53804307 1 --Blaster, Dragon Ruler of Infernos
36521307 1 --Mathmech Circular
38814750 1 --PSY-Framegear Gamma 38814750 1 --PSY-Framegear Gamma
33854624 1 --Bystial Magnamhut
57835716 1 --Orcust Harp Horror
90411554 1 --Redox, Dragon Ruler of Boulders
65734501 1 --Rescue-ACE Air Lifter
41165831 1 --Unchained Soul of Sharvara
39512984 1 --Gem-Knight Master Diamond EXTRA DECK MONSTERS 39512984 1 --Gem-Knight Master Diamond EXTRA DECK MONSTERS
25862681 1 --Ancient Fairy Dragon 25862681 1 --Ancient Fairy Dragon
90953320 1 --T.G. Hyper Librarian 90953320 1 --T.G. Hyper Librarian
...@@ -6049,6 +6050,9 @@ ...@@ -6049,6 +6050,9 @@
581014 1 --Daigusto Emeral 581014 1 --Daigusto Emeral
73539069 1 --Striker Dragon 73539069 1 --Striker Dragon
65536818 1 --Denglong, First of the Yang Zing 65536818 1 --Denglong, First of the Yang Zing
93896655 1 --Sunavalon Dryas
65563871 1 --Sunvine Healer
94677445 1 --Ib the World Chalice Justiciar
95308449 1 --Final Countdown SPELL CARDS 95308449 1 --Final Countdown SPELL CARDS
81439173 1 --Foolish Burial 81439173 1 --Foolish Burial
18144506 1 --Harpie's Feather Duster 18144506 1 --Harpie's Feather Duster
...@@ -6060,7 +6064,6 @@ ...@@ -6060,7 +6064,6 @@
73628505 1 --Terraforming 73628505 1 --Terraforming
58577036 1 --Reasoning 58577036 1 --Reasoning
27970830 1 --Gateway of the Six 27970830 1 --Gateway of the Six
70368879 1 --Upstart Goblin
83764718 1 --Monster Reborn 83764718 1 --Monster Reborn
83764719 1 --Monster Reborn 83764719 1 --Monster Reborn
71344451 1 --Slash Draw 71344451 1 --Slash Draw
...@@ -6076,24 +6079,25 @@ ...@@ -6076,24 +6079,25 @@
24224830 1 --Called by the Grave 24224830 1 --Called by the Grave
52340444 1 --Sky Striker Mecha - Hornet Drones 52340444 1 --Sky Striker Mecha - Hornet Drones
1845204 1 --Instant Fusion 1845204 1 --Instant Fusion
37520316 1 --Mind Control
43040603 1 --Monster Gate 43040603 1 --Monster Gate
4031928 1 --Change of Heart 4031928 1 --Change of Heart
46448938 1 --Spellbook of Judgement 99266988 1 --Chaos Space
45986603 1 --Snatch Steal
55584558 1 --Purrely Delicious Memory 55584558 1 --Purrely Delicious Memory
32723153 1 --Magical Explosion --TRAP CARDS 32723153 1 --Magical Explosion --TRAP CARDS
35316708 1 --Time Seal 35316708 1 --Time Seal
3734202 1 --Naturia Sacred Tree 3734202 1 --Naturia Sacred Tree
33854624 1 --Bystial Magnamhut 53334471 1 --Gozen Match
99266988 1 --Chaos Space 90846359 1 --Rivalry of Warlords
24207889 1 --There Can Be Only One
#Semi-Limited TCG #Semi-Limited TCG
9411399 2 --Destiny HERO - Malicious 9411399 2 --Destiny HERO - Malicious
68304193 2 --Kashtira Unicorn 82385847 2 --Dinowrestler Pankratops
35261759 2 --Pot of Desires 81275020 2 --Speedroid Terrortop
63166095 2 --Sky Striker Mobilize - Engage! 63166095 2 --Sky Striker Mobilize - Engage!
14532163 2 --Lightning Storm 14532163 2 --Lightning Storm
92107604 2 --Runick Fountain 92107604 2 --Runick Fountain
15443125 2 --Spright Starter 21347668 2 --Purrely Sleepy Memory
!THE WILD LIST !THE WILD LIST
20000 0 20000 0
...@@ -6580,9 +6584,7 @@ ...@@ -6580,9 +6584,7 @@
98730317 2 98730317 2
98730319 2 98730319 2
117960683 2 117960683 2
#Forbidden TCG
##MAIN DECK MONSTERS ##MAIN DECK MONSTERS
53804307 1 --Blaster, Dragon Ruler of Infernos
94689206 1 --Block Dragon 94689206 1 --Block Dragon
8903700 1 --Djinn Releaser of Rituals 8903700 1 --Djinn Releaser of Rituals
51858306 1 --Eclipse Wyvern 51858306 1 --Eclipse Wyvern
...@@ -6594,7 +6596,6 @@ ...@@ -6594,7 +6596,6 @@
31178212 1 --Majespecter Unicorn - Kirin 31178212 1 --Majespecter Unicorn - Kirin
96782886 1 --Mind Master 96782886 1 --Mind Master
7563579 1 --Performage PlushFire 7563579 1 --Performage PlushFire
90411554 1 --Redox, Dragon Ruler of Boulders
88071625 1 --The Tyrant Neptune 88071625 1 --The Tyrant Neptune
26400609 1 --Tidal, Dragon Ruler of Waterfalls 26400609 1 --Tidal, Dragon Ruler of Waterfalls
44910027 1 --Victory Dragon 44910027 1 --Victory Dragon
...@@ -6605,22 +6606,21 @@ ...@@ -6605,22 +6606,21 @@
21377582 1 --Master Peace, The True Dracoslaying King 21377582 1 --Master Peace, The True Dracoslaying King
23558733 1 --Phoenixian Cluster Amaryllis 23558733 1 --Phoenixian Cluster Amaryllis
1357146 1 --Ronintoadin 1357146 1 --Ronintoadin
5592689 1 --Samsara Lotus
75732622 1 --Grinder Golem 75732622 1 --Grinder Golem
57835716 1 --Orcust Harp Horror
67441435 1 --Glow-up Bulb 67441435 1 --Glow-up Bulb
91258852 1 --SPYRAL Master Plan 91258852 1 --SPYRAL Master Plan
6728559 1 --Archnemeses Protos 6728559 1 --Archnemeses Protos
20292186 1 --Artifact Scythe 20292186 1 --Artifact Scythe
73356503 1 --Barrier Statue of the Stormwinds 73356503 1 --Barrier Statue of the Stormwinds
69015963 1 --Cyber-Stein
62320425 1 --Agido the Ancient Sentry
25926710 1 --Kelbek the Ancient Vanguard
36521307 1 --Mathmech Circular
17412721 1 --Elder Entity Norden EXTRA DECK MONSTERS 17412721 1 --Elder Entity Norden EXTRA DECK MONSTERS
43387895 1 --Supreme King Dragon Starving Venom 43387895 1 --Supreme King Dragon Starving Venom
15291624 1 --Thunder Dragon Colossus 15291624 1 --Thunder Dragon Colossus
92731385 1 --Tearlaments Kitkallos 92731385 1 --Tearlaments Kitkallos
25862691 1 --Ancient Fairy Dragon (Pre-errata)
65536818 1 --Denglong, First of the Yang Zing
3040496 1 --Chaos Ruler, the Chaotic Magical Dragon 3040496 1 --Chaos Ruler, the Chaotic Magical Dragon
94677445 1 --Ib the World Chalice Justiciar
63101919 1 --Tempest Magician 63101919 1 --Tempest Magician
34086406 1 --Lavalval Chain 34086406 1 --Lavalval Chain
81122844 1 --Wind-Up Carrier Zenmaity 81122844 1 --Wind-Up Carrier Zenmaity
...@@ -6650,6 +6650,10 @@ ...@@ -6650,6 +6650,10 @@
70369116 1 --Predaplant Verte Anaconda 70369116 1 --Predaplant Verte Anaconda
98095162 1 --Curious, the Lightsworn Dominion 98095162 1 --Curious, the Lightsworn Dominion
27381364 1 --Spright Elf 27381364 1 --Spright Elf
33918636 1 --Superheavy Samurai Scarecrow
95474755 1 --Number 89: Diablosis the Mind Hacker
48626373 1 --Kashtira Arise-Heart
59934749 1 --Isolde, Two Tales of the Noble Knights
69243953 1 --Butterfly Dagger - Elma SPELLS CARDS 69243953 1 --Butterfly Dagger - Elma SPELLS CARDS
57953380 1 --Card of Safe Return 57953380 1 --Card of Safe Return
67616300 1 --Chicken Game 67616300 1 --Chicken Game
...@@ -6670,7 +6674,6 @@ ...@@ -6670,7 +6674,6 @@
41482598 1 --Mirage of Nightmare 41482598 1 --Mirage of Nightmare
7394770 1 --Brilliant Fusion 7394770 1 --Brilliant Fusion
70828912 1 --Premature Burial 70828912 1 --Premature Burial
45986603 1 --Snatch Steal
42829885 1 --The Forceful Sentry 42829885 1 --The Forceful Sentry
11110587 1 --That Grass Looks Greener 11110587 1 --That Grass Looks Greener
54447022 1 --Soul Charge 54447022 1 --Soul Charge
...@@ -6687,7 +6690,8 @@ ...@@ -6687,7 +6690,8 @@
80604091 1 --Ultimate Offering 80604091 1 --Ultimate Offering
80604092 1 --Ultimate Offering 80604092 1 --Ultimate Offering
5851097 1 --Vanity's Emptiness 5851097 1 --Vanity's Emptiness
48626373 1 --Kashtira Arise-Heart 43262273 1 --Appointer of the Red Lotus
1041278 1 --Branded Expulsion
53796106 0 53796106 0
25000000 0 25000000 0
25000001 0 25000001 0
...@@ -9510,7 +9514,6 @@ ...@@ -9510,7 +9514,6 @@
60002109 0 60002109 0
60009998 0 60009998 0
60009999 0 60009999 0
60060016 0
60060026 0 60060026 0
60060029 0 60060029 0
60150515 0 60150515 0
......
expansions/pics/11634026.jpg

89.8 KB | W: | H:

expansions/pics/11634026.jpg

89.9 KB | W: | H:

expansions/pics/11634026.jpg
expansions/pics/11634026.jpg
expansions/pics/11634026.jpg
expansions/pics/11634026.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/11634031.jpg

88.8 KB | W: | H:

expansions/pics/11634031.jpg

55 KB | W: | H:

expansions/pics/11634031.jpg
expansions/pics/11634031.jpg
expansions/pics/11634031.jpg
expansions/pics/11634031.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/31034013.jpg

18.3 KB | W: | H:

expansions/pics/31034013.jpg

18.1 KB | W: | H:

expansions/pics/31034013.jpg
expansions/pics/31034013.jpg
expansions/pics/31034013.jpg
expansions/pics/31034013.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/31034015.jpg

18.2 KB | W: | H:

expansions/pics/31034015.jpg

18.4 KB | W: | H:

expansions/pics/31034015.jpg
expansions/pics/31034015.jpg
expansions/pics/31034015.jpg
expansions/pics/31034015.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/31034017.jpg

16.1 KB | W: | H:

expansions/pics/31034017.jpg

18.9 KB | W: | H:

expansions/pics/31034017.jpg
expansions/pics/31034017.jpg
expansions/pics/31034017.jpg
expansions/pics/31034017.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010332.jpg

13 KB | W: | H:

expansions/pics/40010332.jpg

17.8 KB | W: | H:

expansions/pics/40010332.jpg
expansions/pics/40010332.jpg
expansions/pics/40010332.jpg
expansions/pics/40010332.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010334.jpg

13.5 KB | W: | H:

expansions/pics/40010334.jpg

18.9 KB | W: | H:

expansions/pics/40010334.jpg
expansions/pics/40010334.jpg
expansions/pics/40010334.jpg
expansions/pics/40010334.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010336.jpg

13.4 KB | W: | H:

expansions/pics/40010336.jpg

18.4 KB | W: | H:

expansions/pics/40010336.jpg
expansions/pics/40010336.jpg
expansions/pics/40010336.jpg
expansions/pics/40010336.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010338.jpg

13.5 KB | W: | H:

expansions/pics/40010338.jpg

18.8 KB | W: | H:

expansions/pics/40010338.jpg
expansions/pics/40010338.jpg
expansions/pics/40010338.jpg
expansions/pics/40010338.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010340.jpg

12.9 KB | W: | H:

expansions/pics/40010340.jpg

17.7 KB | W: | H:

expansions/pics/40010340.jpg
expansions/pics/40010340.jpg
expansions/pics/40010340.jpg
expansions/pics/40010340.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010342.jpg

12.9 KB | W: | H:

expansions/pics/40010342.jpg

17.7 KB | W: | H:

expansions/pics/40010342.jpg
expansions/pics/40010342.jpg
expansions/pics/40010342.jpg
expansions/pics/40010342.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010344.jpg

12.4 KB | W: | H:

expansions/pics/40010344.jpg

17.2 KB | W: | H:

expansions/pics/40010344.jpg
expansions/pics/40010344.jpg
expansions/pics/40010344.jpg
expansions/pics/40010344.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010346.jpg

12.7 KB | W: | H:

expansions/pics/40010346.jpg

17.7 KB | W: | H:

expansions/pics/40010346.jpg
expansions/pics/40010346.jpg
expansions/pics/40010346.jpg
expansions/pics/40010346.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010348.jpg

12.2 KB | W: | H:

expansions/pics/40010348.jpg

16.9 KB | W: | H:

expansions/pics/40010348.jpg
expansions/pics/40010348.jpg
expansions/pics/40010348.jpg
expansions/pics/40010348.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010350.jpg

13.2 KB | W: | H:

expansions/pics/40010350.jpg

18.3 KB | W: | H:

expansions/pics/40010350.jpg
expansions/pics/40010350.jpg
expansions/pics/40010350.jpg
expansions/pics/40010350.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010352.jpg

13.3 KB | W: | H:

expansions/pics/40010352.jpg

17.6 KB | W: | H:

expansions/pics/40010352.jpg
expansions/pics/40010352.jpg
expansions/pics/40010352.jpg
expansions/pics/40010352.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010354.jpg

12.8 KB | W: | H:

expansions/pics/40010354.jpg

17.9 KB | W: | H:

expansions/pics/40010354.jpg
expansions/pics/40010354.jpg
expansions/pics/40010354.jpg
expansions/pics/40010354.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010356.jpg

12.9 KB | W: | H:

expansions/pics/40010356.jpg

17.7 KB | W: | H:

expansions/pics/40010356.jpg
expansions/pics/40010356.jpg
expansions/pics/40010356.jpg
expansions/pics/40010356.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010358.jpg

11.7 KB | W: | H:

expansions/pics/40010358.jpg

16 KB | W: | H:

expansions/pics/40010358.jpg
expansions/pics/40010358.jpg
expansions/pics/40010358.jpg
expansions/pics/40010358.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010499.jpg

17.5 KB | W: | H:

expansions/pics/40010499.jpg

19.2 KB | W: | H:

expansions/pics/40010499.jpg
expansions/pics/40010499.jpg
expansions/pics/40010499.jpg
expansions/pics/40010499.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010501.jpg

17.2 KB | W: | H:

expansions/pics/40010501.jpg

18.7 KB | W: | H:

expansions/pics/40010501.jpg
expansions/pics/40010501.jpg
expansions/pics/40010501.jpg
expansions/pics/40010501.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010503.jpg

17.8 KB | W: | H:

expansions/pics/40010503.jpg

19.3 KB | W: | H:

expansions/pics/40010503.jpg
expansions/pics/40010503.jpg
expansions/pics/40010503.jpg
expansions/pics/40010503.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010505.jpg

17.4 KB | W: | H:

expansions/pics/40010505.jpg

19 KB | W: | H:

expansions/pics/40010505.jpg
expansions/pics/40010505.jpg
expansions/pics/40010505.jpg
expansions/pics/40010505.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010507.jpg

16.2 KB | W: | H:

expansions/pics/40010507.jpg

17.6 KB | W: | H:

expansions/pics/40010507.jpg
expansions/pics/40010507.jpg
expansions/pics/40010507.jpg
expansions/pics/40010507.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010608.jpg

16.9 KB | W: | H:

expansions/pics/40010608.jpg

18.7 KB | W: | H:

expansions/pics/40010608.jpg
expansions/pics/40010608.jpg
expansions/pics/40010608.jpg
expansions/pics/40010608.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010637.jpg

17.9 KB | W: | H:

expansions/pics/40010637.jpg

19.4 KB | W: | H:

expansions/pics/40010637.jpg
expansions/pics/40010637.jpg
expansions/pics/40010637.jpg
expansions/pics/40010637.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010639.jpg

14 KB | W: | H:

expansions/pics/40010639.jpg

15.3 KB | W: | H:

expansions/pics/40010639.jpg
expansions/pics/40010639.jpg
expansions/pics/40010639.jpg
expansions/pics/40010639.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010752.jpg

17.7 KB | W: | H:

expansions/pics/40010752.jpg

19.2 KB | W: | H:

expansions/pics/40010752.jpg
expansions/pics/40010752.jpg
expansions/pics/40010752.jpg
expansions/pics/40010752.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010846.jpg

15.9 KB | W: | H:

expansions/pics/40010846.jpg

17.6 KB | W: | H:

expansions/pics/40010846.jpg
expansions/pics/40010846.jpg
expansions/pics/40010846.jpg
expansions/pics/40010846.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40010906.jpg

16.1 KB | W: | H:

expansions/pics/40010906.jpg

17.6 KB | W: | H:

expansions/pics/40010906.jpg
expansions/pics/40010906.jpg
expansions/pics/40010906.jpg
expansions/pics/40010906.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40011034.jpg

15.8 KB | W: | H:

expansions/pics/40011034.jpg

17.3 KB | W: | H:

expansions/pics/40011034.jpg
expansions/pics/40011034.jpg
expansions/pics/40011034.jpg
expansions/pics/40011034.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40011372.jpg

17.8 KB | W: | H:

expansions/pics/40011372.jpg

19.3 KB | W: | H:

expansions/pics/40011372.jpg
expansions/pics/40011372.jpg
expansions/pics/40011372.jpg
expansions/pics/40011372.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/40011374.jpg

17.3 KB | W: | H:

expansions/pics/40011374.jpg

19 KB | W: | H:

expansions/pics/40011374.jpg
expansions/pics/40011374.jpg
expansions/pics/40011374.jpg
expansions/pics/40011374.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53720006.jpg

9.45 KB | W: | H:

expansions/pics/53720006.jpg

61.3 KB | W: | H:

expansions/pics/53720006.jpg
expansions/pics/53720006.jpg
expansions/pics/53720006.jpg
expansions/pics/53720006.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53729019.jpg

13.6 KB | W: | H:

expansions/pics/53729019.jpg

65.4 KB | W: | H:

expansions/pics/53729019.jpg
expansions/pics/53729019.jpg
expansions/pics/53729019.jpg
expansions/pics/53729019.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53755004.jpg

15.8 KB | W: | H:

expansions/pics/53755004.jpg

77 KB | W: | H:

expansions/pics/53755004.jpg
expansions/pics/53755004.jpg
expansions/pics/53755004.jpg
expansions/pics/53755004.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53755005.jpg

14.5 KB | W: | H:

expansions/pics/53755005.jpg

73 KB | W: | H:

expansions/pics/53755005.jpg
expansions/pics/53755005.jpg
expansions/pics/53755005.jpg
expansions/pics/53755005.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53759006.jpg

16.3 KB | W: | H:

expansions/pics/53759006.jpg

85 KB | W: | H:

expansions/pics/53759006.jpg
expansions/pics/53759006.jpg
expansions/pics/53759006.jpg
expansions/pics/53759006.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764001.jpg

15.5 KB | W: | H:

expansions/pics/53764001.jpg

79.4 KB | W: | H:

expansions/pics/53764001.jpg
expansions/pics/53764001.jpg
expansions/pics/53764001.jpg
expansions/pics/53764001.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764002.jpg

16.1 KB | W: | H:

expansions/pics/53764002.jpg

85 KB | W: | H:

expansions/pics/53764002.jpg
expansions/pics/53764002.jpg
expansions/pics/53764002.jpg
expansions/pics/53764002.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764003.jpg

15.5 KB | W: | H:

expansions/pics/53764003.jpg

79.3 KB | W: | H:

expansions/pics/53764003.jpg
expansions/pics/53764003.jpg
expansions/pics/53764003.jpg
expansions/pics/53764003.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764004.jpg

16 KB | W: | H:

expansions/pics/53764004.jpg

83 KB | W: | H:

expansions/pics/53764004.jpg
expansions/pics/53764004.jpg
expansions/pics/53764004.jpg
expansions/pics/53764004.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764005.jpg

15.1 KB | W: | H:

expansions/pics/53764005.jpg

78.5 KB | W: | H:

expansions/pics/53764005.jpg
expansions/pics/53764005.jpg
expansions/pics/53764005.jpg
expansions/pics/53764005.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764006.jpg

15.6 KB | W: | H:

expansions/pics/53764006.jpg

81.5 KB | W: | H:

expansions/pics/53764006.jpg
expansions/pics/53764006.jpg
expansions/pics/53764006.jpg
expansions/pics/53764006.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764007.jpg

17 KB | W: | H:

expansions/pics/53764007.jpg

89.7 KB | W: | H:

expansions/pics/53764007.jpg
expansions/pics/53764007.jpg
expansions/pics/53764007.jpg
expansions/pics/53764007.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764008.jpg

12.6 KB | W: | H:

expansions/pics/53764008.jpg

62.8 KB | W: | H:

expansions/pics/53764008.jpg
expansions/pics/53764008.jpg
expansions/pics/53764008.jpg
expansions/pics/53764008.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764009.jpg

15.3 KB | W: | H:

expansions/pics/53764009.jpg

78.6 KB | W: | H:

expansions/pics/53764009.jpg
expansions/pics/53764009.jpg
expansions/pics/53764009.jpg
expansions/pics/53764009.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764010.jpg

13.8 KB | W: | H:

expansions/pics/53764010.jpg

68.4 KB | W: | H:

expansions/pics/53764010.jpg
expansions/pics/53764010.jpg
expansions/pics/53764010.jpg
expansions/pics/53764010.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764011.jpg

13.1 KB | W: | H:

expansions/pics/53764011.jpg

65.1 KB | W: | H:

expansions/pics/53764011.jpg
expansions/pics/53764011.jpg
expansions/pics/53764011.jpg
expansions/pics/53764011.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764012.jpg

14.2 KB | W: | H:

expansions/pics/53764012.jpg

71.9 KB | W: | H:

expansions/pics/53764012.jpg
expansions/pics/53764012.jpg
expansions/pics/53764012.jpg
expansions/pics/53764012.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764013.jpg

13.7 KB | W: | H:

expansions/pics/53764013.jpg

70.4 KB | W: | H:

expansions/pics/53764013.jpg
expansions/pics/53764013.jpg
expansions/pics/53764013.jpg
expansions/pics/53764013.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764014.jpg

15.9 KB | W: | H:

expansions/pics/53764014.jpg

80 KB | W: | H:

expansions/pics/53764014.jpg
expansions/pics/53764014.jpg
expansions/pics/53764014.jpg
expansions/pics/53764014.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764015.jpg

12.9 KB | W: | H:

expansions/pics/53764015.jpg

62.8 KB | W: | H:

expansions/pics/53764015.jpg
expansions/pics/53764015.jpg
expansions/pics/53764015.jpg
expansions/pics/53764015.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764016.jpg

17.1 KB | W: | H:

expansions/pics/53764016.jpg

90.3 KB | W: | H:

expansions/pics/53764016.jpg
expansions/pics/53764016.jpg
expansions/pics/53764016.jpg
expansions/pics/53764016.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53764017.jpg

13.7 KB | W: | H:

expansions/pics/53764017.jpg

63 KB | W: | H:

expansions/pics/53764017.jpg
expansions/pics/53764017.jpg
expansions/pics/53764017.jpg
expansions/pics/53764017.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53796160.jpg

18.8 KB | W: | H:

expansions/pics/53796160.jpg

92.5 KB | W: | H:

expansions/pics/53796160.jpg
expansions/pics/53796160.jpg
expansions/pics/53796160.jpg
expansions/pics/53796160.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53796161.jpg

19.1 KB | W: | H:

expansions/pics/53796161.jpg

94.3 KB | W: | H:

expansions/pics/53796161.jpg
expansions/pics/53796161.jpg
expansions/pics/53796161.jpg
expansions/pics/53796161.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53796162.jpg

17.6 KB | W: | H:

expansions/pics/53796162.jpg

86.6 KB | W: | H:

expansions/pics/53796162.jpg
expansions/pics/53796162.jpg
expansions/pics/53796162.jpg
expansions/pics/53796162.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53796163.jpg

16.5 KB | W: | H:

expansions/pics/53796163.jpg

78.1 KB | W: | H:

expansions/pics/53796163.jpg
expansions/pics/53796163.jpg
expansions/pics/53796163.jpg
expansions/pics/53796163.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799040.jpg

12.3 KB | W: | H:

expansions/pics/53799040.jpg

73.9 KB | W: | H:

expansions/pics/53799040.jpg
expansions/pics/53799040.jpg
expansions/pics/53799040.jpg
expansions/pics/53799040.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799043.jpg

13.1 KB | W: | H:

expansions/pics/53799043.jpg

79.8 KB | W: | H:

expansions/pics/53799043.jpg
expansions/pics/53799043.jpg
expansions/pics/53799043.jpg
expansions/pics/53799043.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799047.jpg

11.7 KB | W: | H:

expansions/pics/53799047.jpg

69.3 KB | W: | H:

expansions/pics/53799047.jpg
expansions/pics/53799047.jpg
expansions/pics/53799047.jpg
expansions/pics/53799047.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799048.jpg

12.9 KB | W: | H:

expansions/pics/53799048.jpg

82.8 KB | W: | H:

expansions/pics/53799048.jpg
expansions/pics/53799048.jpg
expansions/pics/53799048.jpg
expansions/pics/53799048.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799052.jpg

11.6 KB | W: | H:

expansions/pics/53799052.jpg

75.3 KB | W: | H:

expansions/pics/53799052.jpg
expansions/pics/53799052.jpg
expansions/pics/53799052.jpg
expansions/pics/53799052.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799053.jpg

12 KB | W: | H:

expansions/pics/53799053.jpg

79.3 KB | W: | H:

expansions/pics/53799053.jpg
expansions/pics/53799053.jpg
expansions/pics/53799053.jpg
expansions/pics/53799053.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799056.jpg

11 KB | W: | H:

expansions/pics/53799056.jpg

65.4 KB | W: | H:

expansions/pics/53799056.jpg
expansions/pics/53799056.jpg
expansions/pics/53799056.jpg
expansions/pics/53799056.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799057.jpg

11.1 KB | W: | H:

expansions/pics/53799057.jpg

70.8 KB | W: | H:

expansions/pics/53799057.jpg
expansions/pics/53799057.jpg
expansions/pics/53799057.jpg
expansions/pics/53799057.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799058.jpg

11.5 KB | W: | H:

expansions/pics/53799058.jpg

73.2 KB | W: | H:

expansions/pics/53799058.jpg
expansions/pics/53799058.jpg
expansions/pics/53799058.jpg
expansions/pics/53799058.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799059.jpg

11.8 KB | W: | H:

expansions/pics/53799059.jpg

74.8 KB | W: | H:

expansions/pics/53799059.jpg
expansions/pics/53799059.jpg
expansions/pics/53799059.jpg
expansions/pics/53799059.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799060.jpg

11.3 KB | W: | H:

expansions/pics/53799060.jpg

75.3 KB | W: | H:

expansions/pics/53799060.jpg
expansions/pics/53799060.jpg
expansions/pics/53799060.jpg
expansions/pics/53799060.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799061.jpg

11.4 KB | W: | H:

expansions/pics/53799061.jpg

73.1 KB | W: | H:

expansions/pics/53799061.jpg
expansions/pics/53799061.jpg
expansions/pics/53799061.jpg
expansions/pics/53799061.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799062.jpg

11.9 KB | W: | H:

expansions/pics/53799062.jpg

77.6 KB | W: | H:

expansions/pics/53799062.jpg
expansions/pics/53799062.jpg
expansions/pics/53799062.jpg
expansions/pics/53799062.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799063.jpg

10.4 KB | W: | H:

expansions/pics/53799063.jpg

63.6 KB | W: | H:

expansions/pics/53799063.jpg
expansions/pics/53799063.jpg
expansions/pics/53799063.jpg
expansions/pics/53799063.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799066.jpg

10.7 KB | W: | H:

expansions/pics/53799066.jpg

66.5 KB | W: | H:

expansions/pics/53799066.jpg
expansions/pics/53799066.jpg
expansions/pics/53799066.jpg
expansions/pics/53799066.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799071.jpg

9.21 KB | W: | H:

expansions/pics/53799071.jpg

56.8 KB | W: | H:

expansions/pics/53799071.jpg
expansions/pics/53799071.jpg
expansions/pics/53799071.jpg
expansions/pics/53799071.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799072.jpg

13.8 KB | W: | H:

expansions/pics/53799072.jpg

88.2 KB | W: | H:

expansions/pics/53799072.jpg
expansions/pics/53799072.jpg
expansions/pics/53799072.jpg
expansions/pics/53799072.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799073.jpg

10.8 KB | W: | H:

expansions/pics/53799073.jpg

61.8 KB | W: | H:

expansions/pics/53799073.jpg
expansions/pics/53799073.jpg
expansions/pics/53799073.jpg
expansions/pics/53799073.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799074.jpg

13.1 KB | W: | H:

expansions/pics/53799074.jpg

85.9 KB | W: | H:

expansions/pics/53799074.jpg
expansions/pics/53799074.jpg
expansions/pics/53799074.jpg
expansions/pics/53799074.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799075.jpg

9.82 KB | W: | H:

expansions/pics/53799075.jpg

67.7 KB | W: | H:

expansions/pics/53799075.jpg
expansions/pics/53799075.jpg
expansions/pics/53799075.jpg
expansions/pics/53799075.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799076.jpg

12.5 KB | W: | H:

expansions/pics/53799076.jpg

79.2 KB | W: | H:

expansions/pics/53799076.jpg
expansions/pics/53799076.jpg
expansions/pics/53799076.jpg
expansions/pics/53799076.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799081.jpg

11.1 KB | W: | H:

expansions/pics/53799081.jpg

69.4 KB | W: | H:

expansions/pics/53799081.jpg
expansions/pics/53799081.jpg
expansions/pics/53799081.jpg
expansions/pics/53799081.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799082.jpg

12 KB | W: | H:

expansions/pics/53799082.jpg

76.1 KB | W: | H:

expansions/pics/53799082.jpg
expansions/pics/53799082.jpg
expansions/pics/53799082.jpg
expansions/pics/53799082.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799083.jpg

12.4 KB | W: | H:

expansions/pics/53799083.jpg

79.2 KB | W: | H:

expansions/pics/53799083.jpg
expansions/pics/53799083.jpg
expansions/pics/53799083.jpg
expansions/pics/53799083.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799085.jpg

11.2 KB | W: | H:

expansions/pics/53799085.jpg

75.9 KB | W: | H:

expansions/pics/53799085.jpg
expansions/pics/53799085.jpg
expansions/pics/53799085.jpg
expansions/pics/53799085.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799086.jpg

10.1 KB | W: | H:

expansions/pics/53799086.jpg

67 KB | W: | H:

expansions/pics/53799086.jpg
expansions/pics/53799086.jpg
expansions/pics/53799086.jpg
expansions/pics/53799086.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799087.jpg

10.6 KB | W: | H:

expansions/pics/53799087.jpg

72.2 KB | W: | H:

expansions/pics/53799087.jpg
expansions/pics/53799087.jpg
expansions/pics/53799087.jpg
expansions/pics/53799087.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799088.jpg

12.2 KB | W: | H:

expansions/pics/53799088.jpg

82.4 KB | W: | H:

expansions/pics/53799088.jpg
expansions/pics/53799088.jpg
expansions/pics/53799088.jpg
expansions/pics/53799088.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799096.jpg

10.5 KB | W: | H:

expansions/pics/53799096.jpg

65.3 KB | W: | H:

expansions/pics/53799096.jpg
expansions/pics/53799096.jpg
expansions/pics/53799096.jpg
expansions/pics/53799096.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799098.jpg

12.4 KB | W: | H:

expansions/pics/53799098.jpg

74.7 KB | W: | H:

expansions/pics/53799098.jpg
expansions/pics/53799098.jpg
expansions/pics/53799098.jpg
expansions/pics/53799098.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799099.jpg

14.1 KB | W: | H:

expansions/pics/53799099.jpg

91.8 KB | W: | H:

expansions/pics/53799099.jpg
expansions/pics/53799099.jpg
expansions/pics/53799099.jpg
expansions/pics/53799099.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799101.jpg

12.7 KB | W: | H:

expansions/pics/53799101.jpg

85 KB | W: | H:

expansions/pics/53799101.jpg
expansions/pics/53799101.jpg
expansions/pics/53799101.jpg
expansions/pics/53799101.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799104.jpg

15 KB | W: | H:

expansions/pics/53799104.jpg

96.6 KB | W: | H:

expansions/pics/53799104.jpg
expansions/pics/53799104.jpg
expansions/pics/53799104.jpg
expansions/pics/53799104.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799107.jpg

12.4 KB | W: | H:

expansions/pics/53799107.jpg

78.2 KB | W: | H:

expansions/pics/53799107.jpg
expansions/pics/53799107.jpg
expansions/pics/53799107.jpg
expansions/pics/53799107.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799108.jpg

12.6 KB | W: | H:

expansions/pics/53799108.jpg

80.7 KB | W: | H:

expansions/pics/53799108.jpg
expansions/pics/53799108.jpg
expansions/pics/53799108.jpg
expansions/pics/53799108.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799110.jpg

11.2 KB | W: | H:

expansions/pics/53799110.jpg

75.7 KB | W: | H:

expansions/pics/53799110.jpg
expansions/pics/53799110.jpg
expansions/pics/53799110.jpg
expansions/pics/53799110.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799111.jpg

11.9 KB | W: | H:

expansions/pics/53799111.jpg

76.5 KB | W: | H:

expansions/pics/53799111.jpg
expansions/pics/53799111.jpg
expansions/pics/53799111.jpg
expansions/pics/53799111.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799114.jpg

12.2 KB | W: | H:

expansions/pics/53799114.jpg

79.7 KB | W: | H:

expansions/pics/53799114.jpg
expansions/pics/53799114.jpg
expansions/pics/53799114.jpg
expansions/pics/53799114.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799118.jpg

10.4 KB | W: | H:

expansions/pics/53799118.jpg

66.1 KB | W: | H:

expansions/pics/53799118.jpg
expansions/pics/53799118.jpg
expansions/pics/53799118.jpg
expansions/pics/53799118.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799129.jpg

10.1 KB | W: | H:

expansions/pics/53799129.jpg

65.9 KB | W: | H:

expansions/pics/53799129.jpg
expansions/pics/53799129.jpg
expansions/pics/53799129.jpg
expansions/pics/53799129.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799130.jpg

13.8 KB | W: | H:

expansions/pics/53799130.jpg

91.7 KB | W: | H:

expansions/pics/53799130.jpg
expansions/pics/53799130.jpg
expansions/pics/53799130.jpg
expansions/pics/53799130.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/53799183.jpg

17.6 KB | W: | H:

expansions/pics/53799183.jpg

83.8 KB | W: | H:

expansions/pics/53799183.jpg
expansions/pics/53799183.jpg
expansions/pics/53799183.jpg
expansions/pics/53799183.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910202.jpg

11.5 KB | W: | H:

expansions/pics/9910202.jpg

50.3 KB | W: | H:

expansions/pics/9910202.jpg
expansions/pics/9910202.jpg
expansions/pics/9910202.jpg
expansions/pics/9910202.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910501.jpg

11.6 KB | W: | H:

expansions/pics/9910501.jpg

49.7 KB | W: | H:

expansions/pics/9910501.jpg
expansions/pics/9910501.jpg
expansions/pics/9910501.jpg
expansions/pics/9910501.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910503.jpg

12.6 KB | W: | H:

expansions/pics/9910503.jpg

54.7 KB | W: | H:

expansions/pics/9910503.jpg
expansions/pics/9910503.jpg
expansions/pics/9910503.jpg
expansions/pics/9910503.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910505.jpg

12 KB | W: | H:

expansions/pics/9910505.jpg

49.7 KB | W: | H:

expansions/pics/9910505.jpg
expansions/pics/9910505.jpg
expansions/pics/9910505.jpg
expansions/pics/9910505.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910507.jpg

11.9 KB | W: | H:

expansions/pics/9910507.jpg

43.6 KB | W: | H:

expansions/pics/9910507.jpg
expansions/pics/9910507.jpg
expansions/pics/9910507.jpg
expansions/pics/9910507.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910512.jpg

10.8 KB | W: | H:

expansions/pics/9910512.jpg

45.6 KB | W: | H:

expansions/pics/9910512.jpg
expansions/pics/9910512.jpg
expansions/pics/9910512.jpg
expansions/pics/9910512.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910515.jpg

9.9 KB | W: | H:

expansions/pics/9910515.jpg

40.5 KB | W: | H:

expansions/pics/9910515.jpg
expansions/pics/9910515.jpg
expansions/pics/9910515.jpg
expansions/pics/9910515.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910521.jpg

13.3 KB | W: | H:

expansions/pics/9910521.jpg

55 KB | W: | H:

expansions/pics/9910521.jpg
expansions/pics/9910521.jpg
expansions/pics/9910521.jpg
expansions/pics/9910521.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910527.jpg

11.3 KB | W: | H:

expansions/pics/9910527.jpg

47.4 KB | W: | H:

expansions/pics/9910527.jpg
expansions/pics/9910527.jpg
expansions/pics/9910527.jpg
expansions/pics/9910527.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/9910723.jpg

11.3 KB | W: | H:

expansions/pics/9910723.jpg

48.5 KB | W: | H:

expansions/pics/9910723.jpg
expansions/pics/9910723.jpg
expansions/pics/9910723.jpg
expansions/pics/9910723.jpg
  • 2-up
  • Swipe
  • Onion skin
--白夜猫箱
local cm,m=GetID()
function cm.initial_effect(c)
--activate
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetHintTiming(TIMING_END_PHASE)
e1:SetRange(LOCATION_HAND)
e1:SetCost(cm.cost)
e1:SetOperation(cm.operation)
c:RegisterEffect(e1)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDiscardable() end
Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.GetTurnCount()
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetTargetRange(1,0)
e1:SetCondition(function() return Duel.GetTurnCount()==ct+1 end)
e1:SetValue(aux.TRUE)
e1:SetReset(RESET_PHASE+PHASE_END,2)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetTargetRange(0,1)
e2:SetCondition(function() return Duel.GetTurnCount()==ct+2 end)
e2:SetReset(RESET_PHASE+PHASE_END,3)
Duel.RegisterEffect(e2,tp)
end
\ No newline at end of file
...@@ -19,13 +19,14 @@ function c11533700.initial_effect(c) ...@@ -19,13 +19,14 @@ function c11533700.initial_effect(c)
e1:SetTarget(c11533700.rrttg) e1:SetTarget(c11533700.rrttg)
e1:SetOperation(c11533700.rrtop) e1:SetOperation(c11533700.rrtop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--indes --tohand
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetCategory(CATEGORY_TOHAND)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetRange(LOCATION_MZONE) e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e2:SetCode(EFFECT_INDESTRUCTABLE_BATTLE) e2:SetCode(EVENT_REMOVE)
e2:SetValue(1) e2:SetTarget(c11533700.thtg)
e2:SetOperation(c11533700.thop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--rl and disable --rl and disable
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
...@@ -39,6 +40,21 @@ function c11533700.initial_effect(c) ...@@ -39,6 +40,21 @@ function c11533700.initial_effect(c)
e3:SetOperation(c11533700.rdisop) e3:SetOperation(c11533700.rdisop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c11533700.thfilter(c)
return c:IsSetCard(0xb4) and c:IsAbleToHand()
end
function c11533700.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c11533700.thfilter,tp,LOCATION_REMOVED,0,1,e:GetHandler()) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_REMOVED)
end
function c11533700.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c11533700.thfilter,tp,LOCATION_REMOVED,0,1,1,e:GetHandler())
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
function c11533700.mat_filter(c) function c11533700.mat_filter(c)
return not c:IsCode(11533700) return not c:IsCode(11533700)
end end
...@@ -46,6 +62,12 @@ function c11533700.rrtcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -46,6 +62,12 @@ function c11533700.rrtcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDiscardable() end if chk==0 then return e:GetHandler():IsDiscardable() end
Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD) Duel.SendtoGrave(e:GetHandler(),REASON_COST+REASON_DISCARD)
end end
function c11533700.rrfil1(c)
return c:IsSetCard(0xb4) and c:IsReleasable()
end
function c11533700.rrfil2(c)
return c:IsSetCard(0xb4) and c:IsAbleToRemove()
end
function c11533700.rrfil(c) function c11533700.rrfil(c)
if not c:IsSetCard(0xb4) then return false end if not c:IsSetCard(0xb4) then return false end
if c:IsLocation(LOCATION_HAND) then if c:IsLocation(LOCATION_HAND) then
...@@ -55,18 +77,15 @@ function c11533700.rrfil(c) ...@@ -55,18 +77,15 @@ function c11533700.rrfil(c)
else return false end else return false end
end end
function c11533700.rrttg(e,tp,eg,ep,ev,re,r,rp,chk) function c11533700.rrttg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c11533700.rrfil,tp,LOCATION_HAND,0,1,e:GetHandler()) end local b1=Duel.IsExistingMatchingCard(c11533700.rrfil1,tp,LOCATION_HAND,0,1,e:GetHandler()) and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_GRAVE,LOCATION_GRAVE,3,nil)
Duel.SetOperationInfo(0,CATEGORY_RELEASE,nil,1,tp,LOCATION_HAND) local b2=Duel.IsExistingMatchingCard(c11533700.rrfil2,tp,0,LOCATION_GRAVE,1,e:GetHandler()) and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_GRAVE,LOCATION_GRAVE,5,nil)
if chk==0 then return b1 or b2 end
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,0,tp,LOCATION_GRAVE)
end end
function c11533700.rrtop(e,tp,eg,ep,ev,re,r,rp) function c11533700.rrtop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g=Duel.GetMatchingGroup(c11533700.rrfil,tp,LOCATION_HAND,0,nil) local b1=Duel.IsExistingMatchingCard(c11533700.rrfil1,tp,LOCATION_HAND,0,1,c) and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_GRAVE,LOCATION_GRAVE,3,nil)
if g:GetCount()>0 then local b2=Duel.IsExistingMatchingCard(c11533700.rrfil2,tp,LOCATION_GRAVE,0,1,c) and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_GRAVE,LOCATION_GRAVE,5,nil)
local tc=g:Select(tp,1,1,nil):GetFirst()
local x=0
if tc:IsLocation(LOCATION_HAND) then
local b1=tc:IsReleasable()
local b2=tc:IsAbleToGrave()
local op=0 local op=0
if b1 and b2 then if b1 and b2 then
op=Duel.SelectOption(tp,aux.Stringid(11533700,2),aux.Stringid(11533700,3)) op=Duel.SelectOption(tp,aux.Stringid(11533700,2),aux.Stringid(11533700,3))
...@@ -75,18 +94,29 @@ function c11533700.rrtop(e,tp,eg,ep,ev,re,r,rp) ...@@ -75,18 +94,29 @@ function c11533700.rrtop(e,tp,eg,ep,ev,re,r,rp)
elseif b2 then elseif b2 then
op=Duel.SelectOption(tp,aux.Stringid(11533700,3))+1 op=Duel.SelectOption(tp,aux.Stringid(11533700,3))+1
end end
if op==0 then if op==0 then
x=Duel.Release(tc,REASON_EFFECT) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
elseif op==1 then local g1=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c11533700.rrfil1),tp,LOCATION_HAND,0,1,1,c)
x=Duel.SendtoGrave(tc,REASON_EFFECT) if g1:GetCount()>0 and Duel.Release(g1,REASON_EFFECT)>0 and Duel.IsExistingMatchingCard(aux.NecroValleyFilter(Card.IsAbleToRemove),tp,LOCATION_GRAVE,LOCATION_GRAVE,3,nil) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local rrg=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,LOCATION_GRAVE,LOCATION_GRAVE,3,3,nil)
if rrg:GetCount()>0 then
Duel.SendtoDeck(rrg,nil,SEQ_DECKSHUFFLE,REASON_EFFECT)
Duel.ShuffleDeck(tp)
end end
--elseif tc:IsLocation(LOCATION_GRAVE) then
--x=Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)
end end
if x>0 and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(11533700,0)) then elseif op==1 then
Duel.BreakEffect() Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local sg=Duel.SelectMatchingCard(tp,Card.IsAbleToDeck,tp,LOCATION_GRAVE,LOCATION_GRAVE,1,3,nil) local g3=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c11533700.rrfil2),tp,LOCATION_GRAVE,0,1,1,c)
Duel.SendtoDeck(sg,nil,2,REASON_EFFECT) if g3:GetCount()>0 and Duel.Remove(g3,POS_FACEUP,REASON_EFFECT)>0 and Duel.IsExistingMatchingCard(aux.NecroValleyFilter(Card.IsAbleToRemove),tp,LOCATION_GRAVE,LOCATION_GRAVE,5,nil) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local rrg=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,LOCATION_GRAVE,LOCATION_GRAVE,5,5,nil)
if rrg:GetCount()>0 then
Duel.SendtoDeck(rrg,nil,SEQ_DECKSHUFFLE,REASON_EFFECT)
Duel.ShuffleDeck(tp)
end
end end
end end
end end
......
...@@ -20,7 +20,7 @@ function c11533701.initial_effect(c) ...@@ -20,7 +20,7 @@ function c11533701.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--remove --remove
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_REMOVE) e2:SetCategory(CATEGORY_REMOVE+CATEGORY_TOGRAVE)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
...@@ -79,35 +79,44 @@ function c11533701.rmcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -79,35 +79,44 @@ function c11533701.rmcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_RITUAL) and mg and mg:FilterCount(Card.IsSetCard,nil,0xb4)==mg:GetCount() return e:GetHandler():IsSummonType(SUMMON_TYPE_RITUAL) and mg and mg:FilterCount(Card.IsSetCard,nil,0xb4)==mg:GetCount()
end end
function c11533701.rmtg(e,tp,eg,ep,ev,re,r,rp,chk) function c11533701.rmtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_DECK,0,1,nil) and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,0,LOCATION_DECK,1,nil) and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,0,LOCATION_EXTRA,1,nil) and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_GRAVE,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToGrave,tp,LOCATION_DECK,0,1,nil) and Duel.IsExistingMatchingCard(Card.IsAbleToGrave,tp,0,LOCATION_DECK,1,nil) and Duel.IsExistingMatchingCard(Card.IsAbleToGrave,tp,0,LOCATION_EXTRA,1,nil) and Duel.IsExistingMatchingCard(Card.IsAbleToGrave,tp,LOCATION_GRAVE,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,PLAYER_ALL,LOCATION_DECK+LOCATION_EXTRA) Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,4,PLAYER_ALL,LOCATION_DECK+LOCATION_EXTRA)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,3,PLAYER_ALL,LOCATION_GRAVE)
end end
function c11533701.rmop(e,tp,eg,ep,ev,re,r,rp) function c11533701.rmop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g1=Duel.GetDecktopGroup(tp,1) local g1=Duel.GetDecktopGroup(tp,1)
local mn=0
if g1:GetCount()>0 then if g1:GetCount()>0 then
Duel.ConfirmCards(1-tp,g1) Duel.ConfirmCards(1-tp,g1)
Duel.Remove(g1,POS_FACEUP,REASON_EFFECT) if Duel.SendtoGrave(g1,REASON_EFFECT)>0 then mn=mn+1 end
end end
local g2=Duel.GetDecktopGroup(1-tp,1) local g2=Duel.GetDecktopGroup(1-tp,1)
if g2:GetCount()>0 then if g2:GetCount()>0 then
Duel.ConfirmCards(tp,g2) Duel.ConfirmCards(tp,g2)
Duel.Remove(g2,POS_FACEUP,REASON_EFFECT) if Duel.SendtoGrave(g2,REASON_EFFECT)>0 then mn=mn+1 end
end end
local g3=Duel.GetFieldGroup(tp,0,LOCATION_EXTRA) local g3=Duel.GetFieldGroup(tp,0,LOCATION_EXTRA)
if g3:GetCount()>0 then if g3:GetCount()>0 then
Duel.ConfirmCards(tp,g3) Duel.ConfirmCards(tp,g3)
local rg=g3:Select(tp,1,1,nil) local rg=g3:Select(tp,1,1,nil)
Duel.Remove(rg,POS_FACEUP,REASON_EFFECT) if Duel.SendtoGrave(rg,REASON_EFFECT)>0 then mn=mn+1 end
end end
local g4=Duel.GetFieldGroup(tp,LOCATION_GRAVE,0) local g4=Duel.GetFieldGroup(tp,LOCATION_EXTRA,0)
if g4:GetCount()>0 then if g4:GetCount()>0 then
local rg=g4:Select(tp,1,1,nil) local rg=g4:Select(tp,1,1,nil)
Duel.Remove(rg,POS_FACEUP,REASON_EFFECT) if Duel.SendtoGrave(rg,REASON_EFFECT)>0 then mn=mn+1 end
end
if mn>0 and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_GRAVE,LOCATION_GRAVE,3,nil) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
Duel.BreakEffect()
local rrg=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,LOCATION_GRAVE,LOCATION_GRAVE,3,3,nil)
if rrg:GetCount()>0 then
Duel.Remove(rrg,POS_FACEUP,REASON_EFFECT)
end
end end
end end
function c11533701.xxrmtg(e,tp,eg,ep,ev,re,r,rp,chk) function c11533701.xxrmtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_DECK+LOCATION_GRAVE,LOCATION_DECK+LOCATION_HAND+LOCATION_EXTRA+LOCATION_GRAVE+LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,LOCATION_DECK+LOCATION_GRAVE,LOCATION_DECK+LOCATION_HAND+LOCATION_EXTRA+LOCATION_GRAVE+LOCATION_ONFIELD,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_DECK+LOCATION_HAND+LOCATION_EXTRA+LOCATION_GRAVE+LOCATION_ONFIELD) Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_DECK+LOCATION_HAND+LOCATION_EXTRA+LOCATION_GRAVE+LOCATION_ONFIELD)
......
...@@ -53,14 +53,41 @@ function c11533702.initial_effect(c) ...@@ -53,14 +53,41 @@ function c11533702.initial_effect(c)
e3:SetCode(EFFECT_INDESTRUCTABLE_BATTLE) e3:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e3:SetRange(LOCATION_FZONE) e3:SetRange(LOCATION_FZONE)
e3:SetTargetRange(LOCATION_MZONE,0) e3:SetTargetRange(LOCATION_MZONE,0)
e3:SetTarget(function(e,c) e3:SetTarget(
return c:IsSetCard(0xb4) and c:IsType(TYPE_RITUAL) end) function(e,c)
e3:SetValue(function(e,c) return c:IsType(TYPE_RITUAL)
return c:IsSummonLocation(LOCATION_EXTRA) end) end)
e3:SetCondition(function(e) e3:SetValue(
function(e,c)
return c:IsSummonLocation(LOCATION_EXTRA)
end)
e3:SetCondition(
function(e)
local tp=e:GetHandlerPlayer() local tp=e:GetHandlerPlayer()
return Duel.GetMatchingGroupCount(function(c) return c:IsFaceup() and c:IsSetCard(0xb4) and c:IsType(TYPE_RITUAL) end,tp,LOCATION_MZONE,0,nil)>=3 end) return Duel.GetMatchingGroupCount(function(c) return c:IsFaceup() and (c:IsSetCard(0xb4) or c:IsType(TYPE_RITUAL)) end,tp,LOCATION_MZONE,0,nil)>=3
end)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--immune
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD)
e4:SetCode(EFFECT_IMMUNE_EFFECT)
e4:SetRange(LOCATION_FZONE)
e4:SetTarget(
function(e,c)
return c:IsType(TYPE_RITUAL)
end)
e4:SetValue(
function(e,c)
return c:IsSummonLocation(LOCATION_EXTRA)
end)
e4:SetCondition(
function(e)
local tp=e:GetHandlerPlayer()
return Duel.GetMatchingGroupCount(function(c) return c:IsFaceup() and (c:IsSetCard(0xb4) or c:IsType(TYPE_RITUAL)) end,tp,LOCATION_MZONE,0,nil)>=3
end)
c:RegisterEffect(e4)
end end
function c11533702.filter(c) function c11533702.filter(c)
return c:IsSetCard(0xb4) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() return c:IsSetCard(0xb4) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
......
...@@ -82,7 +82,7 @@ function c11533717.atkop(e,tp,eg,ep,ev,re,r,rp) ...@@ -82,7 +82,7 @@ function c11533717.atkop(e,tp,eg,ep,ev,re,r,rp)
return c:IsType(TYPE_RITUAL) and c:IsAttribute(ATTRIBUTE_WATER) end) return c:IsType(TYPE_RITUAL) and c:IsAttribute(ATTRIBUTE_WATER) end)
e1:SetValue(function(e) e1:SetValue(function(e)
local tp=e:GetHandlerPlayer() local tp=e:GetHandlerPlayer()
return Duel.GetMatchingGroupCount(Card.IsAttribute,tp,LOCATION_GRAVE,0,nil,ATTRIBUTE_WATER)*300 end) return Duel.GetMatchingGroupCount(Card.IsAttribute,tp,LOCATION_GRAVE+LOCATION_MZONE,0,nil,ATTRIBUTE_WATER)*300 end)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
end end
......
...@@ -5,9 +5,10 @@ function c11560718.initial_effect(c) ...@@ -5,9 +5,10 @@ function c11560718.initial_effect(c)
aux.AddXyzProcedureLevelFree(c,c11560718.mfilter,c11560718.xyzcheck,2,99) aux.AddXyzProcedureLevelFree(c,c11560718.mfilter,c11560718.xyzcheck,2,99)
--xyz --xyz
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) -- e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_BATTLED) e1:SetCode(EVENT_BATTLED)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,11560718) e1:SetCountLimit(1,11560718)
--e1:SetCondition(function(e) --e1:SetCondition(function(e)
--return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) end) --return not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) end)
...@@ -16,16 +17,16 @@ function c11560718.initial_effect(c) ...@@ -16,16 +17,16 @@ function c11560718.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--get effect --get effect
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_XMATERIAL+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_XMATERIAL+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) -- e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
e2:SetCondition(c11560718.atkcon) e2:SetCondition(c11560718.atkcon)
e2:SetOperation(c11560718.atkop) e2:SetOperation(c11560718.atkop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
c11560718.SetCard_SR_Saier=true c11560718.SetCard_SR_Saier=true
function c11560718.mfilter(c,xyzc) function c11560718.mfilter(c,xyzc)
return c:IsXyzLevel(xyzc,2) or c:IsRank(2) return c:IsXyzLevel(xyzc,2) or c:IsRank(2) or c:IsLink(2)
end end
function c11560718.xyzcheck(g) function c11560718.xyzcheck(g)
return true return true
...@@ -40,11 +41,11 @@ function c11560718.xyztg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -40,11 +41,11 @@ function c11560718.xyztg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL) if chk==0 then return aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL)
and Duel.IsExistingMatchingCard(c11560718.xyzfil,tp,LOCATION_EXTRA,0,1,nil,e,tp,c) end and Duel.IsExistingMatchingCard(c11560718.xyzfil,tp,LOCATION_EXTRA,0,1,nil,e,tp,c) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA) -- Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
end end
function c11560718.xyzop(e,tp,eg,ep,ev,re,r,rp) function c11560718.xyzop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if c:IsFaceup() and c:IsRelateToEffect(e) and c:IsControler(tp) and not c:IsImmuneToEffect(e) and aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL) then if c:IsFaceup() and c:IsControler(tp) and not c:IsImmuneToEffect(e) and aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_XMATERIAL) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c11560718.xyzfil,tp,LOCATION_EXTRA,0,1,1,nil,e,tp,c) local g=Duel.SelectMatchingCard(tp,c11560718.xyzfil,tp,LOCATION_EXTRA,0,1,1,nil,e,tp,c)
local tc=g:GetFirst() local tc=g:GetFirst()
...@@ -69,9 +70,9 @@ function c11560718.efop(e,tp,eg,ep,ev,re,r,rp) ...@@ -69,9 +70,9 @@ function c11560718.efop(e,tp,eg,ep,ev,re,r,rp)
Debug.Message("x") Debug.Message("x")
local rc=c:GetReasonCard() local rc=c:GetReasonCard()
local e1=Effect.CreateEffect(rc) local e1=Effect.CreateEffect(rc)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) -- e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
e1:SetOperation(c11560718.atkop) e1:SetOperation(c11560718.atkop)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1,true) rc:RegisterEffect(e1,true)
......
...@@ -29,7 +29,7 @@ function c11560719.initial_effect(c) ...@@ -29,7 +29,7 @@ function c11560719.initial_effect(c)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
e2:SetValue(function(e) e2:SetValue(function(e)
local tp=e:GetHandlerPlayer() local tp=e:GetHandlerPlayer()
return math.abs(8000-Duel.GetLP(1-tp))/2 end) return math.abs(8000-Duel.GetLP(1-tp)) end)
e2:SetCondition(function(e) e2:SetCondition(function(e)
return e:GetHandler():GetOverlayGroup():IsExists(Card.IsType,1,nil,TYPE_XYZ) end) return e:GetHandler():GetOverlayGroup():IsExists(Card.IsType,1,nil,TYPE_XYZ) end)
c:RegisterEffect(e2) c:RegisterEffect(e2)
...@@ -58,7 +58,7 @@ function c11560719.initial_effect(c) ...@@ -58,7 +58,7 @@ function c11560719.initial_effect(c)
end end
c11560719.SetCard_SR_Saier=true c11560719.SetCard_SR_Saier=true
function c11560719.mfilter(c,xyzc) function c11560719.mfilter(c,xyzc)
return c:IsXyzLevel(xyzc,2) or c:IsRank(2) return c:IsXyzLevel(xyzc,2) or c:IsRank(2) or c:IsLink(2)
end end
function c11560719.xyzcheck(g) function c11560719.xyzcheck(g)
return true return true
......
...@@ -13,23 +13,19 @@ function s.initial_effect(c) ...@@ -13,23 +13,19 @@ function s.initial_effect(c)
e1:SetOperation(s.disop) e1:SetOperation(s.disop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
function s.costfilter(c) function s.sgfil(c)
return c:IsRace(RACE_FAIRY) and c:IsAbleToGraveAsCost() return c:IsCode(44665365) and c:IsFaceup()
end end
function s.discost(e,tp,eg,ep,ev,re,r,rp,chk) function s.discost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return c:IsAbleToGraveAsCost() and if chk==0 then return c:IsAbleToGraveAsCost() end
Duel.IsExistingMatchingCard(s.costfilter,tp,LOCATION_HAND,0,1,c) end Duel.SendtoGrave(c,REASON_COST)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(tp,s.costfilter,tp,LOCATION_HAND,0,1,1,c)
g:AddCard(c)
Duel.SendtoGrave(g,REASON_COST)
end end
function s.filter(c,tp) function s.filter(c,tp)
return c:IsSummonPlayer(tp) return c:IsSummonPlayer(tp)
end end
function s.discon(e,tp,eg,ep,ev,re,r,rp) function s.discon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetCurrentChain()==0 and rp==1-tp and eg:IsExists(s.filter,1,nil,1-tp) return Duel.GetCurrentChain()==0 and rp==1-tp and eg:IsExists(s.filter,1,nil,1-tp) and Duel.IsExistingMatchingCard(s.sgfil,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil)
end end
function s.distg(e,tp,eg,ep,ev,re,r,rp,chk) function s.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -4,7 +4,7 @@ function s.initial_effect(c) ...@@ -4,7 +4,7 @@ function s.initial_effect(c)
--to hand --to hand
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0)) e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH+CATEGORY_RELEASE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY) e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SUMMON_SUCCESS) e1:SetCode(EVENT_SUMMON_SUCCESS)
...@@ -17,17 +17,26 @@ function s.initial_effect(c) ...@@ -17,17 +17,26 @@ function s.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function s.thfilter(c) function s.thfilter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) and c:IsAbleToHand() return (c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) and c:IsAttack(300) and c:IsDefense(500) and c:IsLevel(2))
or c:IsCode(44665365) or c:IsCode(48546368) or (c:IsType(TYPE_SPELL) and c:IsType(TYPE_RITUAL)) and c:IsAbleToHand()
end
function s.rfilter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) and c:IsReleasableByEffect()
end end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_RELEASE,nil,1,tp,LOCATION_HAND+LOCATION_MZONE)
end end
function s.thop(e,tp,eg,ep,ev,re,r,rp) function s.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local rg=Duel.SelectMatchingCard(tp,s.rfilter,tp,LOCATION_HAND+LOCATION_MZONE,0,1,1,nil)
if Duel.Release(rg,REASON_EFFECT)~=0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
end end
end
end end
\ No newline at end of file
...@@ -19,7 +19,7 @@ function s.initial_effect(c) ...@@ -19,7 +19,7 @@ function s.initial_effect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_TO_GRAVE) e2:SetCode(EVENT_TO_GRAVE)
e2:SetCountLimit(1,id+100) e2:SetCountLimit(1,id)
e2:SetCondition(s.thcon) e2:SetCondition(s.thcon)
e2:SetTarget(s.thtg) e2:SetTarget(s.thtg)
e2:SetOperation(s.thop) e2:SetOperation(s.thop)
...@@ -27,7 +27,8 @@ function s.initial_effect(c) ...@@ -27,7 +27,8 @@ function s.initial_effect(c)
end end
function s.spcost(e,tp,eg,ep,ev,re,r,rp,chk) function s.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not c:IsPublic() end if chk==0 then return c:IsLocation(LOCATION_HAND) end
Duel.SendtoGrave(c,REASON_COST)
end end
function s.spfilter(c,e,tp) function s.spfilter(c,e,tp)
return c:IsLevelBelow(2) and c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsLevelBelow(2) and c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
......
...@@ -11,7 +11,7 @@ function s.initial_effect(c) ...@@ -11,7 +11,7 @@ function s.initial_effect(c)
--to hand --to hand
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,0)) e2:SetDescription(aux.Stringid(id,0))
e2:SetCategory(CATEGORY_DESTROY) e2:SetCategory(CATEGORY_TODECK)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
...@@ -24,18 +24,18 @@ function s.splimit(e,se,sp,st) ...@@ -24,18 +24,18 @@ function s.splimit(e,se,sp,st)
return se:IsActiveType(TYPE_MONSTER) and se:GetHandler():IsRace(RACE_FAIRY) return se:IsActiveType(TYPE_MONSTER) and se:GetHandler():IsRace(RACE_FAIRY)
end end
function s.thfilter(c) function s.thfilter(c)
return c:IsRace(RACE_FAIRY) and c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsAbleToHand() return c:IsRace(RACE_FAIRY) and c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsAbleToDeck()
end end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_GRAVE,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,0,0,LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,0,0,LOCATION_GRAVE+LOCATION_REMOVED)
end end
function s.thop(e,tp,eg,ep,ev,re,r,rp) function s.thop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g=Duel.GetMatchingGroup(s.thfilter,tp,LOCATION_GRAVE,0,nil,tp) local g=Duel.GetMatchingGroup(s.thfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,nil,tp)
if #g==0 then return end if #g==0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
Duel.SendtoHand(g:Select(tp,1,2,nil),nil,REASON_EFFECT) Duel.SendtoDeck(g:Select(tp,1,2,nil),nil,2,REASON_EFFECT)
local tg=Duel.GetOperatedGroup() local tg=Duel.GetOperatedGroup()
if #tg>0 and c:IsLocation(LOCATION_MZONE) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then if #tg>0 and c:IsLocation(LOCATION_MZONE) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
local lv=tg:Select(tp,1,2,nil):GetSum(Card.GetLevel) local lv=tg:Select(tp,1,2,nil):GetSum(Card.GetLevel)
......
...@@ -45,25 +45,36 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp) ...@@ -45,25 +45,36 @@ function s.effop(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterFlagEffect(re:GetHandler():GetControler(),id,RESET_PHASE+PHASE_END,0,1) Duel.RegisterFlagEffect(re:GetHandler():GetControler(),id,RESET_PHASE+PHASE_END,0,1)
end end
function s.filter(c) function s.filter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) and (c:IsLevel(2) and c:IsAttack(300,500) or c:IsType(TYPE_RITUAL) and c:IsType(TYPE_MONSTER)) and c:IsAbleToHand() return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) and (c:IsLevel(2) and c:IsAttack(300) or c:IsType(TYPE_RITUAL) and c:IsType(TYPE_MONSTER)) and c:IsAbleToHand()
end end
function s.activate(e,tp,eg,ep,ev,re,r,rp) function s.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(s.filter,tp,LOCATION_DECK,0,nil) local g=Duel.GetMatchingGroup(s.filter,tp,LOCATION_DECK,0,nil)
if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(id,0)) then if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(id,0)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local ct=1 local ct=1
if Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0 --if Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0
and Duel.GetFieldGroupCount(tp,0,LOCATION_MZONE)>0 then ct=2 end --and Duel.GetFieldGroupCount(tp,0,LOCATION_MZONE)>0 then ct=2 end
local sg=g:Select(tp,1,ct,nil) local sg=g:Select(tp,1,ct,nil)
Duel.SendtoHand(sg,nil,REASON_EFFECT) Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sg) Duel.ConfirmCards(1-tp,sg)
end end
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e2:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e2:SetTargetRange(1,0)
e2:SetTarget(s.splimit)
e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
function s.splimit(e,c)
return not (c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY))
end end
function s.atkfilter(c) function s.atkfilter(c)
return c:IsFaceupEx() and c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) return c:IsFaceupEx() and c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY)
end end
function s.val(e,c) function s.val(e,c)
return Duel.GetMatchingGroupCount(s.atkfilter,c:GetControler(),LOCATION_MZONE+LOCATION_GRAVE,0,nil)*300 return Duel.GetMatchingGroupCount(s.atkfilter,c:GetControler(),LOCATION_MZONE+LOCATION_GRAVE,0,nil)*200
end end
function s.thfilter(c) function s.thfilter(c)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) and c:IsAbleToHand() return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_FAIRY) and c:IsAbleToHand()
......
...@@ -9,9 +9,9 @@ function cm.initial_effect(c) ...@@ -9,9 +9,9 @@ function cm.initial_effect(c)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE) e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetRange(LOCATION_EXTRA) e1:SetRange(LOCATION_EXTRA)
if max==nil then max=c:GetLink() end if max==nil then max=c:GetLink() end
e1:SetCondition(cm.LinkCondition(function(c) return c:IsFaceup() and c:IsSetCard(0x10db) and not c:IsCode(11634031) end,1,1,nil)) e1:SetCondition(cm.LinkCondition(function(c) return c:IsFaceup() and c:IsSetCard(0x10db) and not c:IsCode(11634031) end,2,2,nil))
e1:SetTarget(cm.LinkTarget(function(c) return c:IsFaceup() and c:IsSetCard(0x10db) and not c:IsCode(11634031) end,1,1,nil)) e1:SetTarget(cm.LinkTarget(function(c) return c:IsFaceup() and c:IsSetCard(0x10db) and not c:IsCode(11634031) end,2,2,nil))
e1:SetOperation(cm.LinkOperation(function(c) return c:IsFaceup() and c:IsSetCard(0x10db) and not c:IsCode(11634031) end,1,1,nil)) e1:SetOperation(cm.LinkOperation(function(c) return c:IsFaceup() and c:IsSetCard(0x10db) and not c:IsCode(11634031) end,2,2,nil))
e1:SetValue(SUMMON_TYPE_LINK) e1:SetValue(SUMMON_TYPE_LINK)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--extra material --extra material
......
local s,id,o=GetID()
function s.initial_effect(c)
local e_sp=Effect.CreateEffect(c)
e_sp:SetDescription(aux.Stringid(id,0))
e_sp:SetCategory(CATEGORY_SPECIAL_SUMMON)
e_sp:SetType(EFFECT_TYPE_IGNITION)
e_sp:SetRange(LOCATION_GRAVE)
e_sp:SetCountLimit(1,id)
e_sp:SetCondition(s.spcon)
e_sp:SetCost(s.spcost)
e_sp:SetTarget(s.sptg)
e_sp:SetOperation(s.spop)
c:RegisterEffect(e_sp)
Duel.AddCustomActivityCounter(id,ACTIVITY_SPSUMMON,s.counterfilter)
if not s.global_check then
s.global_check=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD)
ge1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_IGNORE_RANGE)
ge1:SetCode(EFFECT_MATERIAL_CHECK)
ge1:SetValue(s.valcheck)
Duel.RegisterEffect(ge1,0)
end
end
function s.valcheck(e,c)
local g=c:GetMaterial()
if g:IsExists(Card.IsLinkCode,1,nil,c:GetCode()) then
c:RegisterFlagEffect(id,RESET_EVENT+0x4fe0000,0,1)
end
end
function s.counterfilter(c)
return c:IsAttribute(ATTRIBUTE_FIRE)
end
function s.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsEnvironment(1295111)
end
function s.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetCustomActivityCount(id,tp,ACTIVITY_SPSUMMON)==0 end
local e_lmt=Effect.CreateEffect(e:GetHandler())
e_lmt:SetType(EFFECT_TYPE_FIELD)
e_lmt:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_OATH)
e_lmt:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e_lmt:SetTarget(s.splimit)
e_lmt:SetTargetRange(1,0)
e_lmt:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e_lmt,tp)
end
function s.splimit(e,c,sump,sumtype,sumpos,targetp,se)
return not c:IsAttribute(ATTRIBUTE_FIRE)
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function s.lfilter(c)
return c:IsFaceup() and c:IsSetCard(0x119) and c:IsSummonType(SUMMON_TYPE_LINK) and c:GetFlagEffect(id)~=0
end
function s.filter(c,e,tp)
return c:IsRace(RACE_CYBERSE) and c:IsAttribute(ATTRIBUTE_FIRE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 and Duel.IsExistingMatchingCard(s.lfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(aux.NecroValleyFilter(s.filter),tp,LOCATION_HAND+LOCATION_GRAVE,0,1,nil,e,tp) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.filter),tp,LOCATION_HAND+LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP_DEFENSE)
end
end
local s,id,o=GetID()
function s.initial_effect(c)
c:EnableReviveLimit()
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkAttribute,ATTRIBUTE_FIRE),2)
local e_sp=Effect.CreateEffect(c)
e_sp:SetDescription(aux.Stringid(id,0))
e_sp:SetCategory(CATEGORY_SPECIAL_SUMMON)
e_sp:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e_sp:SetCode(EVENT_SPSUMMON_SUCCESS)
e_sp:SetProperty(EFFECT_FLAG_DELAY)
e_sp:SetCountLimit(1,id)
e_sp:SetCondition(s.condition)
e_sp:SetTarget(s.target)
e_sp:SetOperation(s.operation)
c:RegisterEffect(e_sp)
local e_mtchk=Effect.CreateEffect(c)
e_mtchk:SetType(EFFECT_TYPE_SINGLE)
e_mtchk:SetCode(EFFECT_MATERIAL_CHECK)
e_mtchk:SetValue(s.valcheck)
e_mtchk:SetLabelObject(e_sp)
c:RegisterEffect(e_mtchk)
local e_atk=Effect.CreateEffect(c)
e_atk:SetDescription(aux.Stringid(id,2))
e_atk:SetCategory(CATEGORY_RELEASE)
e_atk:SetType(EFFECT_TYPE_IGNITION)
e_atk:SetRange(LOCATION_MZONE)
e_atk:SetCountLimit(1,id+o)
e_atk:SetTarget(s.rltg)
e_atk:SetOperation(s.rlop)
c:RegisterEffect(e_atk)
end
function s.valcheck(e,c)
local g=c:GetMaterial()
if g:IsExists(Card.IsLinkCode,1,nil,id) then
e:GetLabelObject():SetLabel(1)
else
e:GetLabelObject():SetLabel(0)
end
end
function s.condition(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end
function s.filter(c,e,tp,zone)
return c:IsRace(RACE_CYBERSE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP,tp,zone)
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
local zone=e:GetHandler():GetLinkedZone(tp)
return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_HAND,0,1,nil,e,tp,zone)
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
end
function s.spfilter(c,e,tp)
return c:IsRace(RACE_CYBERSE) and c:IsAttribute(ATTRIBUTE_FIRE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.operation(e,tp,eg,ep,ev,re,r,rp)
local zone=e:GetHandler():GetLinkedZone(tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE,tp,LOCATION_REASON_TOFIELD,zone)
if ft<=0 then return end
if Duel.IsPlayerAffectedByEffect(tp,59822133) then ft=1 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,s.filter,tp,LOCATION_HAND,0,1,ft,nil,e,tp,zone)
if g:GetCount()>0 and Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP,zone)~=0 and e:GetHandler():IsRelateToEffect(e) and e:GetLabel()==1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(aux.NecroValleyFilter(s.spfilter),tp,LOCATION_GRAVE,0,1,nil,e,tp) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.spfilter),tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)
end
end
function s.rlf(c,tp,lg)
return c:IsReleasableByEffect() and lg:IsContains(c) and Duel.IsExistingMatchingCard(Card.IsReleasableByEffect,tp,0,LOCATION_MZONE,1,c)
end
function s.rltg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingMatchingCard(s.rlf,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil,tp,e:GetHandler():GetLinkedGroup()) end
Duel.SetOperationInfo(0,CATEGORY_RELEASE,Group.__add(e:GetHandler():GetLinkedGroup():Filter(Card.IsReleasableByEffect,nil),Duel.GetMatchingGroup(Card.IsReleasableByEffect,tp,0,LOCATION_MZONE,1,nil)),2,0,0)
end
function s.rlop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g1=Duel.SelectMatchingCard(tp,s.rlf,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,tp,c:GetLinkedGroup())
if #g1==0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g2=Duel.SelectMatchingCard(tp,Card.IsReleasableByEffect,tp,0,LOCATION_MZONE,1,1,g1)
g1:Merge(g2)
Duel.HintSelection(g1)
local atk=g1:GetSum(Card.GetAttack)
if Duel.Release(g1,REASON_EFFECT)==0 then return end
local atk=Duel.GetOperatedGroup():GetSum(Card.GetPreviousAttackOnField)
if c:IsFaceup() and c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(atk)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
end
local s,id,o=GetID()
function s.initial_effect(c)
c:EnableReviveLimit()
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkAttribute,ATTRIBUTE_FIRE),3)
local e_name=Effect.CreateEffect(c)
e_name:SetDescription(aux.Stringid(id,0))
e_name:SetCategory(CATEGORY_SPECIAL_SUMMON)
e_name:SetType(EFFECT_TYPE_IGNITION)
e_name:SetRange(LOCATION_MZONE)
e_name:SetCountLimit(1,id)
e_name:SetCost(s.cost)
e_name:SetOperation(s.operation)
c:RegisterEffect(e_name)
local e_reg=Effect.CreateEffect(c)
e_reg:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e_reg:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e_reg:SetCode(EVENT_SPSUMMON_SUCCESS)
e_reg:SetCondition(s.matcon)
e_reg:SetOperation(s.matop)
c:RegisterEffect(e_reg)
local e_mtchk=Effect.CreateEffect(c)
e_mtchk:SetType(EFFECT_TYPE_SINGLE)
e_mtchk:SetCode(EFFECT_MATERIAL_CHECK)
e_mtchk:SetValue(s.valcheck)
e_mtchk:SetLabelObject(e_reg)
c:RegisterEffect(e_mtchk)
local e_cgatt=Effect.CreateEffect(c)
e_cgatt:SetType(EFFECT_TYPE_FIELD)
e_cgatt:SetCode(EFFECT_CHANGE_ATTRIBUTE)
e_cgatt:SetRange(LOCATION_MZONE)
e_cgatt:SetTargetRange(0,LOCATION_MZONE)
e_cgatt:SetValue(ATTRIBUTE_FIRE)
e_cgatt:SetCondition(function(e)return e:GetHandler():GetFlagEffect(id)>0 end)
c:RegisterEffect(e_cgatt)
local e_exmat_1=Effect.CreateEffect(c)
e_exmat_1:SetDescription(aux.Stringid(id,5))
e_exmat_1:SetType(EFFECT_TYPE_FIELD)
e_exmat_1:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e_exmat_1:SetCode(EFFECT_SPSUMMON_PROC)
e_exmat_1:SetRange(LOCATION_EXTRA)
e_exmat_1:SetLabelObject(c)
e_exmat_1:SetCondition(s.linkcon)
e_exmat_1:SetOperation(s.linkop)
e_exmat_1:SetValue(SUMMON_TYPE_LINK)
local e_exmat_2=Effect.CreateEffect(c)
e_exmat_2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_GRANT)
e_exmat_2:SetRange(LOCATION_MZONE)
e_exmat_2:SetTargetRange(LOCATION_EXTRA,0)
e_exmat_2:SetTarget(s.mattg)
e_exmat_2:SetLabelObject(e_exmat_1)
c:RegisterEffect(e_exmat_2)
end
function s.cfilter1(c)
return c:IsSetCard(0x119) and not c:IsPublic()
end
function s.cfilter2(c)
return c:IsSetCard(0x119) and c:IsType(TYPE_FUSION+TYPE_SYNCHRO+TYPE_XYZ+TYPE_LINK) and c:IsAbleToExtraAsCost()
end
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local b1=Duel.IsExistingMatchingCard(s.cfilter1,tp,LOCATION_EXTRA,0,1,nil)
local b2=Duel.IsExistingMatchingCard(s.cfilter2,tp,LOCATION_GRAVE,0,1,nil)
if chk==0 then return b1 or b2 end
local op=aux.SelectFromOptions(tp,{b1,aux.Stringid(id,1)},{b2,aux.Stringid(id,2)})
if op==1 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local g=Duel.SelectMatchingCard(tp,s.cfilter1,tp,LOCATION_EXTRA,0,1,1,nil)
e:SetLabel(g:GetFirst():GetCode())
Duel.ConfirmCards(1-tp,g)
elseif op==2 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local g=Duel.SelectMatchingCard(tp,s.cfilter2,tp,LOCATION_GRAVE,0,1,1,nil)
e:SetLabel(g:GetFirst():GetCode())
Duel.ConfirmCards(1-tp,g)
Duel.SendtoDeck(g,nil,SEQ_DECKSHUFFLE,REASON_COST)
end
end
function s.filter1(c,e)
return c:IsFaceup() and c:IsCanBeFusionMaterial() and not c:IsImmuneToEffect(e)
end
function s.spf(c,mg,e,tp,m,f,chkf)
return c:IsSetCard(0x119) and (c:IsSynchroSummonable(nil,mg) or c:IsXyzSummonable(mg) or c:IsLinkSummonable(mg) or (c:IsType(TYPE_FUSION) and (not f or f(c)) and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_FUSION,tp,false,false) and c:CheckFusionMaterial(m,nil,chkf)))
end
function s.operation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local code=e:GetLabel()
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(id,3))
local cc=Duel.SelectMatchingCard(tp,function(c,code)return c:IsFaceup() and not c:IsCode(code)end,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil):GetFirst()
if not cc or cc:IsImmuneToEffect(e) then return end
Duel.HintSelection(Group.FromCards(cc))
local change_code=Effect.CreateEffect(c)
change_code:SetType(EFFECT_TYPE_SINGLE)
change_code:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
change_code:SetReset(RESET_EVENT+RESETS_STANDARD)
change_code:SetCode(EFFECT_CHANGE_CODE)
change_code:SetValue(code)
cc:RegisterEffect(change_code)
if c:GetFlagEffect(id)==0 then return end
local mg1=Duel.GetFusionMaterial(tp):Filter(aux.NOT(Card.IsImmuneToEffect),nil,e)
local mg2=Duel.GetMatchingGroup(s.filter1,tp,0,LOCATION_MZONE,nil,e)
mg1:Merge(mg2)
local lg=c:GetLinkedGroup():Filter(function(c,e,tp)return c:IsControler(tp) or not c:IsImmuneToEffect(e)end,nil,e,tp)
mg1=Group.__band(mg1,lg)
local sg1=Duel.GetMatchingGroup(s.spf,tp,LOCATION_EXTRA,0,nil,lg,e,tp,mg1,nil,chkf)
local mg3=nil
local sg2=nil
local ce=Duel.GetChainMaterial(tp)
if ce~=nil then
local fgroup=ce:GetTarget()
mg3=fgroup(ce,e,tp)
local mf=ce:GetValue()
sg1=Duel.GetMatchingGroup(s.spf,tp,LOCATION_EXTRA,0,nil,lg,e,tp,mg3,mf,chkf)
end
if (sg1:GetCount()>0 or (sg2~=nil and sg2:GetCount()>0)) and Duel.SelectYesNo(tp,aux.Stringid(id,4)) then
Duel.BreakEffect()
local sg=sg1:Clone()
if sg2 then sg:Merge(sg2) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local tc=sg:Select(tp,1,1,nil):GetFirst()
if tc:IsType(TYPE_FUSION) then
if sg1:IsContains(tc) and (sg2==nil or not sg2:IsContains(tc) or not Duel.SelectYesNo(tp,ce:GetDescription())) then
local mat1=Duel.SelectFusionMaterial(tp,tc,mg1,nil,chkf)
tc:SetMaterial(mat1)
Duel.SendtoGrave(mat1,REASON_EFFECT+REASON_MATERIAL+REASON_FUSION)
Duel.BreakEffect()
Duel.SpecialSummon(tc,SUMMON_TYPE_FUSION,tp,tp,false,false,POS_FACEUP)
else
local mat2=Duel.SelectFusionMaterial(tp,tc,mg3,nil,chkf)
local fop=ce:GetOperation()
fop(ce,e,tp,tc,mat2)
end
tc:CompleteProcedure()
elseif tc:IsType(TYPE_SYNCHRO) then
Duel.SynchroSummon(tp,tc,nil,lg)
elseif tc:IsType(TYPE_XYZ) then
Duel.XyzSummon(tp,tc,lg)
elseif tc:IsType(TYPE_LINK) then
Duel.LinkSummon(tp,tc,lg)
end
end
end
function s.matcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK) and e:GetLabel()==1
end
function s.matop(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(id,RESET_EVENT+RESETS_STANDARD,0,1)
end
function s.valcheck(e,c)
local g=c:GetMaterial()
if g:IsExists(Card.IsLinkCode,1,nil,id) then
e:GetLabelObject():SetLabel(1)
else
e:GetLabelObject():SetLabel(0)
end
end
function s.lmfilter(c,lc,tp,og,lmat,lg)
if c:IsControler(1-tp) and not lg:IsContains(c) then return false end
return c:IsFaceup() and c:IsCanBeLinkMaterial(lc) and c:IsLinkCode(lc:GetCode()) and Duel.GetLocationCountFromEx(tp,tp,c,lc)>0 and aux.MustMaterialCheck(c,tp,EFFECT_MUST_BE_LMATERIAL) and (not og or og:IsContains(c)) and (not lmat or lmat==c)
end
function s.linkcon(e,c,og,lmat,min,max)
if c==nil then return true end
local tp=c:GetControler()
return Duel.IsExistingMatchingCard(s.lmfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil,c,tp,og,lmat,e:GetLabelObject():GetLinkedGroup())
end
function s.linkop(e,tp,eg,ep,ev,re,r,rp,c,og,lmat,min,max)
local mg=Duel.SelectMatchingCard(tp,s.lmfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,c,tp,og,lmat,e:GetLabelObject():GetLinkedGroup())
c:SetMaterial(mg)
Duel.SendtoGrave(mg,REASON_MATERIAL+REASON_LINK)
end
function s.mattg(e,c)
return c:IsSetCard(0x119) and c:IsType(TYPE_LINK)
end
local s,id,o=GetID()
function s.initial_effect(c)
local e_ac_1=Effect.CreateEffect(c)
e_ac_1:SetCategory(CATEGORY_RELEASE+CATEGORY_DRAW)
e_ac_1:SetType(EFFECT_TYPE_ACTIVATE)
e_ac_1:SetCode(EVENT_SUMMON_SUCCESS)
e_ac_1:SetProperty(EFFECT_FLAG_DELAY)
e_ac_1:SetCountLimit(1,id)
e_ac_1:SetCondition(s.con)
e_ac_1:SetTarget(s.target)
e_ac_1:SetOperation(s.activate)
c:RegisterEffect(e_ac_1)
local e_ac_2=e_ac_1:Clone()
e_ac_2:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e_ac_2)
local e_th=Effect.CreateEffect(c)
e_th:SetDescription(aux.Stringid(id,0))
e_th:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e_th:SetType(EFFECT_TYPE_QUICK_O)
e_th:SetRange(LOCATION_GRAVE)
e_th:SetCode(EVENT_FREE_CHAIN)
e_th:SetCountLimit(1,id)
e_th:SetCost(aux.bfgcost)
e_th:SetTarget(s.thtg)
e_th:SetOperation(s.thop)
c:RegisterEffect(e_th)
if not s.global_check then
s.global_check=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD)
ge1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_IGNORE_RANGE)
ge1:SetCode(EFFECT_MATERIAL_CHECK)
ge1:SetValue(s.valcheck)
Duel.RegisterEffect(ge1,0)
end
end
function s.valcheck(e,c)
local g=c:GetMaterial()
if g:IsExists(Card.IsLinkCode,1,nil,c:GetCode()) then
c:RegisterFlagEffect(id,RESET_EVENT+0x4fe0000,0,1)
end
end
function s.cfilter(c)
return c:IsSetCard(0x119) and c:IsSummonLocation(LOCATION_EXTRA) and c:IsFaceup()
end
function s.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_MZONE,0,1,nil)
end
function s.filter(c,tp)
return c:IsLocation(LOCATION_MZONE) and c:IsSummonPlayer(1-tp) and c:IsReleasableByEffect()
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return eg:IsExists(s.filter,1,nil,tp) end
local g=eg:Filter(s.filter,nil,tp)
Duel.SetTargetCard(g)
Duel.SetOperationInfo(0,CATEGORY_RELEASE,g,g:GetCount(),0,0)
end
function s.sf(c,seq,p)
local cp=c:GetControler()
return (cp==p and aux.MZoneSequence(c:GetSequence())==seq) or (cp~=p and aux.MZoneSequence(c:GetSequence())==4-seq)
end
function s.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetTargetsRelateToChain():Filter(Card.IsLocation,nil,LOCATION_MZONE)
if g:GetCount()==0 or Duel.Release(g,REASON_EFFECT)==0 then return end
local og=Duel.GetOperatedGroup()
local cg=Group.CreateGroup()
for tc in aux.Next(og) do
local seq,p=aux.MZoneSequence(tc:GetPreviousSequence()),tc:GetPreviousControler()
local tseq=seq
if p~=tp then tseq=4-seq end
if e:GetHandler():GetSequence()==tseq or Duel.IsExistingMatchingCard(function(c,seq)return c:GetFlagEffect(id)>0 and aux.MZoneSequence(c:GetSequence())==seq end,tp,LOCATION_MZONE,0,1,nil,tseq) then cg:Merge(Duel.GetMatchingGroup(s.sf,tp,LOCATION_MZONE,LOCATION_MZONE,nil,seq,p)) end
end
local ct=math.floor(cg:GetSum(Card.GetAttack)/1000)
if ct>0 then Duel.Draw(tp,ct,REASON_EFFECT) end
end
function s.thfilter(c)
return c:IsSetCard(0x119) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand()
end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,e:GetHandler()) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK+LOCATION_GRAVE)
end
function s.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.thfilter),tp,LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
end
end
local s,id,o=GetID()
function s.initial_effect(c)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_SEARCH+CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,id)
e1:SetCost(s.spcost)
e1:SetTarget(s.sptg)
e1:SetOperation(s.spop)
c:RegisterEffect(e1)
if not s.global_check then
s.global_check=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD)
ge1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_IGNORE_RANGE)
ge1:SetCode(EFFECT_MATERIAL_CHECK)
ge1:SetValue(s.valcheck)
Duel.RegisterEffect(ge1,0)
end
end
function s.valcheck(e,c)
local g=c:GetMaterial()
if g:IsExists(Card.IsLinkCode,1,nil,c:GetCode()) then
c:RegisterFlagEffect(id,RESET_EVENT+0x4fe0000,0,1)
end
end
function s.cfilter(c,tp)
return c:IsFaceup() and c:IsSetCard(0x119) and c:IsType(TYPE_LINK) and c:IsAbleToGraveAsCost() and Duel.GetMZoneCount(tp,c)>0
end
function s.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_MZONE,0,1,nil,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local tc=Duel.SelectMatchingCard(tp,s.cfilter,tp,LOCATION_MZONE,0,1,1,nil,tp):GetFirst()
e:SetLabel(tc:GetLink(),0)
if tc:GetFlagEffect(id)>0 then e:SetLabel(tc:GetLink(),1) end
Duel.SendtoGrave(tc,REASON_COST)
end
function s.thfilter(c)
return c:IsCode(44095762) and c:IsAbleToHand()
end
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK+LOCATION_GRAVE)
end
function s.filter(c,e,tp)
return c:IsCode(80794697) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) or Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)==0 then return end
local g=Duel.GetMatchingGroup(aux.NecroValleyFilter(s.thfilter),tp,LOCATION_DECK+LOCATION_GRAVE,0,nil)
if #g==0 then return end
local ct,lab=e:GetLabel()
ct=math.max(ct,#g)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:Select(tp,ct,ct,nil)
Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
if lab==1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(aux.NecroValleyFilter(s.filter),tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil,e,tp) and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(s.filter),tp,LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil,e,tp)
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
...@@ -17,6 +17,7 @@ function s.initial_effect(c) ...@@ -17,6 +17,7 @@ function s.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
e2:SetCondition(s.handcondition)
c:RegisterEffect(e2) c:RegisterEffect(e2)
---- ----
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
...@@ -27,13 +28,19 @@ function s.initial_effect(c) ...@@ -27,13 +28,19 @@ function s.initial_effect(c)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET) e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
e3:SetRange(LOCATION_GRAVE) e3:SetRange(LOCATION_GRAVE)
e3:SetHintTiming(0,TIMINGS_CHECK_MONSTER) e3:SetHintTiming(0,TIMINGS_CHECK_MONSTER)
e3:SetCountLimit(1,25800605)
e3:SetCountLimit(1,id+1) e3:SetCountLimit(1,id+1)
e3:SetCost(aux.bfgcost) e3:SetCost(aux.bfgcost)
e3:SetCondition(s.handcondition)
e3:SetTarget(c25800604.target2) e3:SetTarget(c25800604.target2)
e3:SetOperation(c25800604.operation2) e3:SetOperation(c25800604.operation2)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
-----
function s.handcondition(e,tp,eg,ep,ev,re,r,rp)
local tp=e:GetHandler():GetControler()
return Duel.GetTurnPlayer()==tp
end
-----
function s.cfilter(c) function s.cfilter(c)
return c:IsType(TYPE_TRAP) and c:IsDiscardable() return c:IsType(TYPE_TRAP) and c:IsDiscardable()
end end
...@@ -65,22 +72,14 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -65,22 +72,14 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
end end
end end
----- -----
function s.filter(c)
return c:IsType(TYPE_XYZ) and c:IsReleasableByEffect()
end
function c25800604.target2(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c25800604.target2(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(1-tp) and chkc:IsOnField() and aux.NegateAnyFilter(chkc) end if chkc then return chkc:IsControler(1-tp) and chkc:IsOnField() and aux.NegateAnyFilter(chkc) end
if chk==0 then return Duel.CheckReleaseGroupEx(tp,s.filter,1,nil) and Duel.IsExistingTarget(aux.NegateAnyFilter,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(aux.NegateAnyFilter,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISABLE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISABLE)
local g=Duel.SelectTarget(tp,aux.NegateAnyFilter,tp,0,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectTarget(tp,aux.NegateAnyFilter,tp,0,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DISABLE,g,1,0,0)
end end
function c25800604.operation2(e,tp,eg,ep,ev,re,r,rp) function c25800604.operation2(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectReleaseGroupEx(tp,s.filter,1,1,nil)
if g:GetCount()>0 then
Duel.HintSelection(g)
if Duel.Release(g,REASON_EFFECT)~=0 then
local c=e:GetHandler() local c=e:GetHandler()
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsFaceup() and tc:IsRelateToEffect(e) and tc:IsCanBeDisabledByEffect(e,false) then if tc:IsFaceup() and tc:IsRelateToEffect(e) and tc:IsCanBeDisabledByEffect(e,false) then
...@@ -107,6 +106,4 @@ function c25800604.operation2(e,tp,eg,ep,ev,re,r,rp) ...@@ -107,6 +106,4 @@ function c25800604.operation2(e,tp,eg,ep,ev,re,r,rp)
tc:RegisterEffect(e3) tc:RegisterEffect(e3)
end end
end end
end
end
end end
\ No newline at end of file
...@@ -17,6 +17,7 @@ function s.initial_effect(c) ...@@ -17,6 +17,7 @@ function s.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
e2:SetCondition(s.handcondition)
c:RegisterEffect(e2) c:RegisterEffect(e2)
-- --
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
...@@ -25,14 +26,22 @@ function s.initial_effect(c) ...@@ -25,14 +26,22 @@ function s.initial_effect(c)
e3:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE) e3:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e3:SetCode(EVENT_FREE_CHAIN) e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_GRAVE) e3:SetRange(LOCATION_GRAVE)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
e3:SetCountLimit(1,id+1) e3:SetCountLimit(1,id+1)
e3:SetCost(aux.bfgcost) e3:SetCost(aux.bfgcost)
e3:SetTarget(s.target2) e3:SetCondition(s.handcondition)
e3:SetOperation(s.activate2) e3:SetTarget(s.destg)
e3:SetOperation(s.desop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
-----
function s.handcondition(e,tp,eg,ep,ev,re,r,rp)
local tp=e:GetHandler():GetControler()
return Duel.GetTurnPlayer()==tp
end
-----
function s.cfilter(c) function s.cfilter(c)
return c:IsType(TYPE_TRAP) and c:IsDiscardable() return c:GetType()==TYPE_TRAP and c:IsDiscardable()
end end
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk) function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return (not e:GetHandler():IsLocation(LOCATION_HAND) or Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_HAND,0,1,e:GetHandler())) end if chk==0 then return (not e:GetHandler():IsLocation(LOCATION_HAND) or Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_HAND,0,1,e:GetHandler())) end
...@@ -62,34 +71,17 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -62,34 +71,17 @@ function s.activate(e,tp,eg,ep,ev,re,r,rp)
end end
end end
----- -----
function s.filter(c) function s.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
return c:IsType(TYPE_NORMAL) and c:IsType(TYPE_MONSTER) and c:IsFaceup() if chkc then return chkc:IsOnField() end
end if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
function s.target2(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingMatchingCard(s.filter,tp,LOCATION_ONFIELD,0,1,c) end
local g1=Duel.GetMatchingGroup(s.filter,tp,LOCATION_ONFIELD,0,c)
local g2=Duel.GetMatchingGroup(nil,tp,0,LOCATION_ONFIELD,nil)
local ct1=g1:GetCount()
local ct2=g2:GetCount()
g1:Merge(g2)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g1,ct1+((ct1>ct2) and ct2 or ct1),0,0)
end
function s.activate2(e,tp,eg,ep,ev,re,r,rp)
local g1=Duel.GetMatchingGroup(s.filter,tp,LOCATION_ONFIELD,0,aux.ExceptThisCard(e))
local ct1=Duel.Destroy(g1,REASON_EFFECT)
if ct1==0 then return end
local g2=Duel.GetMatchingGroup(nil,tp,0,LOCATION_ONFIELD,nil)
local ct2=g2:GetCount()
if ct2==0 then return end
Duel.BreakEffect()
if ct2<=ct1 then
Duel.Destroy(g2,REASON_EFFECT)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g3=g2:Select(tp,ct1,ct1,nil) local g=Duel.SelectTarget(tp,aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,nil)
Duel.HintSelection(g3) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
Duel.Destroy(g3,REASON_EFFECT) end
function s.desop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
local tg=g:Filter(Card.IsRelateToEffect,nil,e)
if tg:GetCount()>0 then
Duel.Destroy(tg,REASON_EFFECT)
end end
end end
\ No newline at end of file
...@@ -17,6 +17,7 @@ function s.initial_effect(c) ...@@ -17,6 +17,7 @@ function s.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
e2:SetCondition(s.handcondition)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--set --set
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
...@@ -24,15 +25,22 @@ function s.initial_effect(c) ...@@ -24,15 +25,22 @@ function s.initial_effect(c)
e3:SetType(EFFECT_TYPE_QUICK_O) e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_FREE_CHAIN) e3:SetCode(EVENT_FREE_CHAIN)
e3:SetRange(LOCATION_GRAVE) e3:SetRange(LOCATION_GRAVE)
e3:SetCountLimit(1,id+1) e3:SetCountLimit(1,id)
e3:SetHintTiming(0,TIMING_END_PHASE) e3:SetHintTiming(0,TIMING_END_PHASE)
e3:SetCost(aux.bfgcost) e3:SetCost(aux.bfgcost)
e3:SetCondition(s.handcondition)
e3:SetTarget(s.settg) e3:SetTarget(s.settg)
e3:SetOperation(s.setop) e3:SetOperation(s.setop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
-----
function s.handcondition(e,tp,eg,ep,ev,re,r,rp)
local tp=e:GetHandler():GetControler()
return Duel.GetTurnPlayer()==tp
end
-----
function s.cfilter(c) function s.cfilter(c)
return c:IsType(TYPE_TRAP) and c:IsDiscardable() return c:GetType()==TYPE_TRAP and c:IsDiscardable()
end end
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk) function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return (not e:GetHandler():IsLocation(LOCATION_HAND) or Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_HAND,0,1,e:GetHandler())) end if chk==0 then return (not e:GetHandler():IsLocation(LOCATION_HAND) or Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_HAND,0,1,e:GetHandler())) end
......
...@@ -17,6 +17,7 @@ function s.initial_effect(c) ...@@ -17,6 +17,7 @@ function s.initial_effect(c)
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE) e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_TRAP_ACT_IN_HAND) e2:SetCode(EFFECT_TRAP_ACT_IN_HAND)
e2:SetCondition(s.handcondition)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--set --set
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
...@@ -27,12 +28,19 @@ function s.initial_effect(c) ...@@ -27,12 +28,19 @@ function s.initial_effect(c)
e3:SetCountLimit(1,id) e3:SetCountLimit(1,id)
e3:SetHintTiming(0,TIMING_END_PHASE) e3:SetHintTiming(0,TIMING_END_PHASE)
e3:SetCost(aux.bfgcost) e3:SetCost(aux.bfgcost)
e3:SetCondition(s.handcondition)
e3:SetTarget(s.settg) e3:SetTarget(s.settg)
e3:SetOperation(s.setop) e3:SetOperation(s.setop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
-----
function s.handcondition(e,tp,eg,ep,ev,re,r,rp)
local tp=e:GetHandler():GetControler()
return Duel.GetTurnPlayer()==tp
end
-----
function s.cfilter(c) function s.cfilter(c)
return c:IsType(TYPE_TRAP) and c:IsDiscardable() return c:GetType()==TYPE_TRAP and c:IsDiscardable()
end end
function s.cost(e,tp,eg,ep,ev,re,r,rp,chk) function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return (not e:GetHandler():IsLocation(LOCATION_HAND) or Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_HAND,0,1,e:GetHandler())) end if chk==0 then return (not e:GetHandler():IsLocation(LOCATION_HAND) or Duel.IsExistingMatchingCard(s.cfilter,tp,LOCATION_HAND,0,1,e:GetHandler())) end
......
--Speed Recalibrate
function c31034009.initial_effect(c)
aux.AddCodeList(c, 31034011)
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetTarget(c31034009.target)
e1:SetOperation(c31034009.operation)
c:RegisterEffect(e1)
end
function c31034009.addfilter(c)
return (c:IsCode(31034011) or c:IsCode(31034015) or c:IsCode(31034017)) and c:IsAbleToHand()
end
function c31034009.syfilter(c)
return c:IsFaceup() and c:IsType(TYPE_SYNCHRO) and c:IsAbleToExtra()
end
function c31034009.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c31034009.syfilter(chkc) end
if chk == 0 then return Duel.IsExistingTarget(c31034009.syfilter, tp, LOCATION_MZONE, 0, 1, nil, tp) and
Duel.IsExistingMatchingCard(c31034009.addfilter, tp, LOCATION_DECK, 0, 1, nil) end
Duel.Hint(HINT_SELECTMSG, tp, HINTMSG_TODECK)
local g=Duel.SelectTarget(tp,c31034009.syfilter, tp, LOCATION_MZONE, 0, 1, 1, nil)
Duel.SetOperationInfo(0, CATEGORY_TOEXTRA, g, 1, 0, 0)
Duel.SetOperationInfo(0, CATEGORY_TOHAND, nil, 1, tp, LOCATION_DECK)
end
function c31034009.operation(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.SendtoDeck(tc,nil,SEQ_DECKSHUFFLE,REASON_EFFECT) ~= 0 and tc:IsLocation(LOCATION_EXTRA) then
Duel.Hint(HINT_SELECTMSG, tp, HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp, c31034009.addfilter, tp, LOCATION_DECK, 0, 1, 1, nil)
if g:GetCount() > 0 then
Duel.SendtoHand(g, nil, REASON_EFFECT)
Duel.ConfirmCards(1-tp, g)
if tc:IsAttribute(ATTRIBUTE_WIND) then
Duel.Draw(tp, 1, REASON_EFFECT)
end
end
end
end
\ No newline at end of file
...@@ -9,7 +9,7 @@ function c31034013.initial_effect(c) ...@@ -9,7 +9,7 @@ function c31034013.initial_effect(c)
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE) e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e1:SetValue(c31034013.batfilter) e1:SetValue(c31034013.batfilter)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--cannot be target --cannot be target + cannot activate
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE) e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
...@@ -55,4 +55,18 @@ function c31034013.tgop(e,tp,eg,ep,ev,re,r,rp) ...@@ -55,4 +55,18 @@ function c31034013.tgop(e,tp,eg,ep,ev,re,r,rp)
e1:SetValue(c31034013.tgfilter) e1:SetValue(c31034013.tgfilter)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
e2:SetRange(LOCATION_MZONE)
e2:SetTargetRange(0,1)
e2:SetValue(1)
e2:SetCondition(c31034013.actcon)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e2)
end
function c31034013.actcon(e)
return Duel.GetAttacker() == e:GetHandler()
end end
\ No newline at end of file
...@@ -4,7 +4,7 @@ function c31034015.initial_effect(c) ...@@ -4,7 +4,7 @@ function c31034015.initial_effect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1, 31034015+EFFECT_COUNT_CODE_OATH) e1:SetCountLimit(1,31034015+EFFECT_COUNT_CODE_OATH)
e1:SetCondition(c31034015.condition) e1:SetCondition(c31034015.condition)
e1:SetCost(c31034015.cost) e1:SetCost(c31034015.cost)
e1:SetTarget(c31034015.target) e1:SetTarget(c31034015.target)
...@@ -58,10 +58,9 @@ function c31034015.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -58,10 +58,9 @@ function c31034015.target(e,tp,eg,ep,ev,re,r,rp,chk)
and Duel.IsExistingMatchingCard(c31034015.spfilter2, tp, LOCATION_DECK, 0, 1, nil, e, tp) and Duel.IsExistingMatchingCard(c31034015.spfilter2, tp, LOCATION_DECK, 0, 1, nil, e, tp)
end end
Duel.SetOperationInfo(0, CATEGORY_SPECIAL_SUMMON, nil, 3, tp, LOCATION_DECK+LOCATION_EXTRA) Duel.SetOperationInfo(0, CATEGORY_SPECIAL_SUMMON, nil, 3, tp, LOCATION_DECK+LOCATION_EXTRA)
end if e:IsHasType(EFFECT_TYPE_ACTIVATE) and Duel.GetTurnPlayer() == tp then
Duel.SetChainLimit(aux.FALSE)
function c31034015.splimit(e,c,tp,sumtp,sumpos) end
return not c:IsAttribute(ATTRIBUTE_WIND)
end end
function c31034015.activate(e,tp,eg,ep,ev,re,r,rp) function c31034015.activate(e,tp,eg,ep,ev,re,r,rp)
...@@ -85,12 +84,4 @@ function c31034015.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -85,12 +84,4 @@ function c31034015.activate(e,tp,eg,ep,ev,re,r,rp)
local pg=sg:Select(tp, 1, 1, nil) local pg=sg:Select(tp, 1, 1, nil)
Duel.SynchroSummon(tp, pg:GetFirst(), nil, sg1) Duel.SynchroSummon(tp, pg:GetFirst(), nil, sg1)
end end
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e1:SetTargetRange(1, 0)
e1:SetTarget(c31034015.splimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1, tp)
end end
\ No newline at end of file
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
local m=40010334 local m=40010334
local cm=_G["c"..m] local cm=_G["c"..m]
cm.named_with_DragWizard=1 cm.named_with_DragWizard=1
function cm.Crimsonmoon(c) function cm.DragWizard(c)
local m=_G["c"..c:GetCode()] local m=_G["c"..c:GetCode()]
return m and m.named_with_DragWizard return m and m.named_with_DragWizard
end end
...@@ -10,10 +10,11 @@ function cm.initial_effect(c) ...@@ -10,10 +10,11 @@ function cm.initial_effect(c)
--Effect 1 --Effect 1
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_TOGRAVE+CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_REMOVE+CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,m) e1:SetCountLimit(1,m)
e1:SetTarget(cm.destg) e1:SetTarget(cm.destg)
e1:SetOperation(cm.desop) e1:SetOperation(cm.desop)
...@@ -44,7 +45,7 @@ end ...@@ -44,7 +45,7 @@ end
--Effect 1 --Effect 1
function cm.desfilter(c,tp) function cm.desfilter(c,tp)
return Duel.GetMZoneCount(tp,c)>0 return Duel.GetMZoneCount(tp,c)>0
and c:IsFaceup() and cm.Crimsonmoon(c) and c:IsAbleToGrave() and c:IsFaceup() and cm.DragWizard(c) and c:IsAbleToRemove()
end end
function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(tp) and cm.desfilter(chkc,tp) end if chkc then return chkc:IsOnField() and chkc:IsControler(tp) and cm.desfilter(chkc,tp) end
...@@ -52,7 +53,7 @@ function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -52,7 +53,7 @@ function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
and Duel.IsExistingTarget(cm.desfilter,tp,LOCATION_MZONE,0,1,nil,tp) end and Duel.IsExistingTarget(cm.desfilter,tp,LOCATION_MZONE,0,1,nil,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectTarget(tp,cm.desfilter,tp,LOCATION_MZONE,0,1,1,nil,tp) local g=Duel.SelectTarget(tp,cm.desfilter,tp,LOCATION_MZONE,0,1,1,nil,tp)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end end
function cm.desop(e,tp,eg,ep,ev,re,r,rp) function cm.desop(e,tp,eg,ep,ev,re,r,rp)
...@@ -60,7 +61,7 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -60,7 +61,7 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and c:IsRelateToEffect(e) then if tc:IsRelateToEffect(e) and c:IsRelateToEffect(e) then
if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then
Duel.SendtoGrave(tc,REASON_EFFECT) Duel.Remove(tc,POS_FACEUP,REASON_EFFECT)
end end
end end
end end
...@@ -72,7 +73,7 @@ function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -72,7 +73,7 @@ function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function cm.spfilter2(c,e,tp) function cm.spfilter2(c,e,tp)
return c:IsType(TYPE_MONSTER) return c:IsType(TYPE_MONSTER)
and c:IsFaceup() and cm.Crimsonmoon(c) and c:IsFaceup() and cm.DragWizard(c)
and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -23,12 +23,19 @@ function cm.initial_effect(c) ...@@ -23,12 +23,19 @@ function cm.initial_effect(c)
e2:SetRange(LOCATION_MZONE+LOCATION_HAND) e2:SetRange(LOCATION_MZONE+LOCATION_HAND)
e2:SetCountLimit(1,m) e2:SetCountLimit(1,m)
e2:SetCost(cm.cost) e2:SetCost(cm.cost)
e2:SetCondition(cm.spcon)
e2:SetTarget(cm.thtg) e2:SetTarget(cm.thtg)
e2:SetOperation(cm.thop) e2:SetOperation(cm.thop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
--Effect 1 --Effect 1
--Effect 2 --Effect 2
function cm.confilter(c)
return c:IsType(TYPE_MONSTER) and c:IsFaceup() and cm.DragWizard(c)
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.confilter,tp,LOCATION_MZONE,0,3,nil)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsReleasable() end if chk==0 then return e:GetHandler():IsReleasable() end
Duel.Release(e:GetHandler(),REASON_COST) Duel.Release(e:GetHandler(),REASON_COST)
......
...@@ -11,10 +11,11 @@ function cm.initial_effect(c) ...@@ -11,10 +11,11 @@ function cm.initial_effect(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,m) e1:SetCountLimit(1,m)
e1:SetCost(cm.spcost) e1:SetCondition(cm.drcon)
e1:SetTarget(cm.sptg) e1:SetTarget(cm.sptg)
e1:SetOperation(cm.spop) e1:SetOperation(cm.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
...@@ -26,39 +27,75 @@ function cm.initial_effect(c) ...@@ -26,39 +27,75 @@ function cm.initial_effect(c)
e11:SetRange(LOCATION_DECK+LOCATION_GRAVE) e11:SetRange(LOCATION_DECK+LOCATION_GRAVE)
e11:SetValue(1) e11:SetValue(1)
c:RegisterEffect(e11) c:RegisterEffect(e11)
--Effect 3
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1)) e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_DECKDES) e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetCountLimit(1,m+1)
e2:SetCondition(cm.retcon) e2:SetCondition(cm.retcon)
e2:SetTarget(cm.rettg) e2:SetTarget(cm.thtg)
e2:SetOperation(cm.retop) e2:SetOperation(cm.thop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
--Effect 1 --Effect 1
function cm.cfilter(c) function cm.drcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_ONFIELD,0)==0
end
function cm.pfilter(c)
return bit.band(c:GetType(),TYPE_RITUAL+TYPE_MONSTER)==TYPE_RITUAL+TYPE_MONSTER and not c:IsPublic() return bit.band(c:GetType(),TYPE_RITUAL+TYPE_MONSTER)==TYPE_RITUAL+TYPE_MONSTER and not c:IsPublic()
end end
function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sp1filter(c,e,tp)
if chk==0 then return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_HAND,0,1,nil) end return cm.DragWizard(c) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingMatchingCard(cm.sp1filter,tp,LOCATION_HAND,0,1,nil,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and not c:IsPublic()
and Duel.IsExistingMatchingCard(cm.pfilter,tp,LOCATION_HAND,0,1,c) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local g=Duel.SelectMatchingCard(tp,cm.cfilter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,cm.pfilter,tp,LOCATION_HAND,0,1,1,c)
local tc=g:GetFirst()
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_PUBLIC)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_CHAIN_SOLVED)
e2:SetRange(LOCATION_HAND)
e2:SetOperation(cm.clearop)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
e2:SetLabel(Duel.GetCurrentChain())
e2:SetLabelObject(e1)
c:RegisterEffect(e2)
Duel.ShuffleHand(tp) Duel.ShuffleHand(tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.clearop(e,tp,eg,ep,ev,re,r,rp)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if ev~=e:GetLabel() then return end
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) end e:GetLabelObject():Reset()
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0) e:Reset()
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
if not c:IsRelateToEffect(e) then return end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP_DEFENSE) local g=Duel.SelectMatchingCard(tp,cm.sp1filter,tp,LOCATION_HAND,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end end
--Effect 2 --Effect 2
--Effect 3 --Effect 3
function cm.retcon(e,tp,eg,ep,ev,re,r,rp) function cm.retcon(e,tp,eg,ep,ev,re,r,rp)
...@@ -67,23 +104,24 @@ function cm.retcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -67,23 +104,24 @@ function cm.retcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
return not rc:IsCode(m) return not rc:IsCode(m)
end end
function cm.spfilter(c,e,tp) function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
return c:IsLevel(1) and c:IsRace(RACE_SPELLCASTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function cm.rettg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>4 end if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>4 end
end end
function cm.retop(e,tp,eg,ep,ev,re,r,rp) function cm.thfilter(c)
return cm.DragWizard(c) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand()
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)<=4 then return end if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)<=4 then return end
Duel.ConfirmDecktop(tp,5) Duel.ConfirmDecktop(tp,5)
local g=Duel.GetDecktopGroup(tp,5) local g=Duel.GetDecktopGroup(tp,5)
local ct=g:GetCount() local ct=g:GetCount()
if ct>0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and g:FilterCount(cm.spfilter,nil,e,tp)>0 if ct>0 and g:FilterCount(cm.thfilter,nil)>0 and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
Duel.DisableShuffleCheck() Duel.DisableShuffleCheck()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:FilterSelect(tp,cm.spfilter,1,1,nil,e,tp) local sg=g:FilterSelect(tp,cm.thfilter,1,1,nil)
Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP) Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sg)
Duel.ShuffleHand(tp)
ct=g:GetCount()-sg:GetCount() ct=g:GetCount()-sg:GetCount()
end end
if ct>0 then if ct>0 then
...@@ -94,4 +132,3 @@ function cm.retop(e,tp,eg,ep,ev,re,r,rp) ...@@ -94,4 +132,3 @@ function cm.retop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
end end
...@@ -12,9 +12,11 @@ function cm.initial_effect(c) ...@@ -12,9 +12,11 @@ function cm.initial_effect(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,m) e1:SetCountLimit(1,m)
e1:SetCondition(cm.drcon)
e1:SetTarget(cm.sptg) e1:SetTarget(cm.sptg)
e1:SetOperation(cm.spop) e1:SetOperation(cm.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
...@@ -33,24 +35,30 @@ function cm.initial_effect(c) ...@@ -33,24 +35,30 @@ function cm.initial_effect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetCountLimit(1,m+1)
e2:SetCondition(cm.retcon) e2:SetCondition(cm.retcon)
e2:SetTarget(cm.thtg) e2:SetTarget(cm.thtg)
e2:SetOperation(cm.thop) e2:SetOperation(cm.thop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
--Effect 1 --Effect 1
function cm.spfilter(c,e,tp) function cm.drcon(e,tp,eg,ep,ev,re,r,rp)
return c:IsRace(RACE_SPELLCASTER) and not c:IsPublic() and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) return Duel.GetFieldGroupCount(tp,LOCATION_ONFIELD,0)==0
end
function cm.pfilter(c)
return c:IsRace(RACE_SPELLCASTER) and not c:IsPublic()
end
function cm.sp1filter(c,e,tp)
return cm.DragWizard(c) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return not Duel.IsPlayerAffectedByEffect(tp,59822133) if chk==0 then return Duel.IsExistingMatchingCard(cm.sp1filter,tp,LOCATION_HAND,0,1,nil,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
and not c:IsPublic() and not c:IsPublic()
and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_HAND,0,1,c,e,tp) end and Duel.IsExistingMatchingCard(cm.pfilter,tp,LOCATION_HAND,0,1,c) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local g=Duel.SelectMatchingCard(tp,cm.spfilter,tp,LOCATION_HAND,0,1,1,c,e,tp) local g=Duel.SelectMatchingCard(tp,cm.pfilter,tp,LOCATION_HAND,0,1,1,c)
local tc=g:GetFirst() local tc=g:GetFirst()
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -67,13 +75,8 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -67,13 +75,8 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
e2:SetLabel(Duel.GetCurrentChain()) e2:SetLabel(Duel.GetCurrentChain())
e2:SetLabelObject(e1) e2:SetLabelObject(e1)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=e1:Clone() Duel.ShuffleHand(tp)
tc:RegisterEffect(e3) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
local e4=e2:Clone()
e4:SetLabelObject(e3)
tc:RegisterEffect(e4)
Duel.SetTargetCard(g)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,tp,LOCATION_HAND)
end end
function cm.clearop(e,tp,eg,ep,ev,re,r,rp) function cm.clearop(e,tp,eg,ep,ev,re,r,rp)
if ev~=e:GetLabel() then return end if ev~=e:GetLabel() then return end
...@@ -81,16 +84,31 @@ function cm.clearop(e,tp,eg,ep,ev,re,r,rp) ...@@ -81,16 +84,31 @@ function cm.clearop(e,tp,eg,ep,ev,re,r,rp)
e:Reset() e:Reset()
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
local tc=Duel.GetFirstTarget() Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
if not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 local g=Duel.SelectMatchingCard(tp,cm.sp1filter,tp,LOCATION_HAND,0,1,1,nil,e,tp)
and c:IsRelateToEffect(e) and tc:IsRelateToEffect(e) if g:GetCount()>0 then
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and tc:IsCanBeSpecialSummoned(e,0,tp,false,false) then Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
Duel.SpecialSummonStep(c,0,tp,tp,false,false,POS_FACEUP_DEFENSE)
Duel.SpecialSummonStep(tc,0,tp,tp,false,false,POS_FACEUP_DEFENSE)
Duel.SpecialSummonComplete()
end end
end end
--Effect 2 --Effect 2
--Effect 3 --Effect 3
function cm.retcon(e,tp,eg,ep,ev,re,r,rp) function cm.retcon(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -11,10 +11,11 @@ function cm.initial_effect(c) ...@@ -11,10 +11,11 @@ function cm.initial_effect(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,m) e1:SetCountLimit(1,m)
e1:SetCost(cm.spcost) e1:SetCondition(cm.drcon)
e1:SetTarget(cm.sptg) e1:SetTarget(cm.sptg)
e1:SetOperation(cm.spop) e1:SetOperation(cm.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
...@@ -26,39 +27,76 @@ function cm.initial_effect(c) ...@@ -26,39 +27,76 @@ function cm.initial_effect(c)
e11:SetRange(LOCATION_DECK+LOCATION_GRAVE) e11:SetRange(LOCATION_DECK+LOCATION_GRAVE)
e11:SetValue(1) e11:SetValue(1)
c:RegisterEffect(e11) c:RegisterEffect(e11)
--Effect 3
--Effect 3 --Effect 3
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1)) e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH) e2:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_DECKDES)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
e2:SetCode(EVENT_SPSUMMON_SUCCESS) e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetCountLimit(1,m+1)
e2:SetCondition(cm.retcon) e2:SetCondition(cm.retcon)
e2:SetTarget(cm.thtg) e2:SetTarget(cm.rettg)
e2:SetOperation(cm.thop) e2:SetOperation(cm.retop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
--Effect 1 --Effect 1
function cm.cfilter(c) function cm.drcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_ONFIELD,0)==0
end
function cm.pfilter(c)
return bit.band(c:GetType(),TYPE_RITUAL+TYPE_SPELL)==TYPE_RITUAL+TYPE_SPELL and not c:IsPublic() return bit.band(c:GetType(),TYPE_RITUAL+TYPE_SPELL)==TYPE_RITUAL+TYPE_SPELL and not c:IsPublic()
end end
function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sp1filter(c,e,tp)
if chk==0 then return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_HAND,0,1,nil) end return cm.DragWizard(c) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingMatchingCard(cm.sp1filter,tp,LOCATION_HAND,0,1,nil,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and not c:IsPublic()
and Duel.IsExistingMatchingCard(cm.pfilter,tp,LOCATION_HAND,0,1,c) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_CONFIRM)
local g=Duel.SelectMatchingCard(tp,cm.cfilter,tp,LOCATION_HAND,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,cm.pfilter,tp,LOCATION_HAND,0,1,1,c)
local tc=g:GetFirst()
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_PUBLIC)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_CHAIN_SOLVED)
e2:SetRange(LOCATION_HAND)
e2:SetOperation(cm.clearop)
e2:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_CHAIN)
e2:SetLabel(Duel.GetCurrentChain())
e2:SetLabelObject(e1)
c:RegisterEffect(e2)
Duel.ShuffleHand(tp) Duel.ShuffleHand(tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.clearop(e,tp,eg,ep,ev,re,r,rp)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if ev~=e:GetLabel() then return end
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) end e:GetLabelObject():Reset()
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0) e:Reset()
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
if not c:IsRelateToEffect(e) then return end Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP_DEFENSE) local g=Duel.SelectMatchingCard(tp,cm.sp1filter,tp,LOCATION_HAND,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end end
--Effect 2 --Effect 2
--Effect 3 --Effect 3
function cm.retcon(e,tp,eg,ep,ev,re,r,rp) function cm.retcon(e,tp,eg,ep,ev,re,r,rp)
...@@ -67,24 +105,23 @@ function cm.retcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -67,24 +105,23 @@ function cm.retcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
return not rc:IsCode(m) return not rc:IsCode(m)
end end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.spfilter(c,e,tp)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>4 end return c:IsLevel(1) and c:IsRace(RACE_SPELLCASTER) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.thfilter(c) function cm.rettg(e,tp,eg,ep,ev,re,r,rp,chk)
return cm.DragWizard(c) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand() if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)>4 end
end end
function cm.thop(e,tp,eg,ep,ev,re,r,rp) function cm.retop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)<=4 then return end if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)<=4 then return end
Duel.ConfirmDecktop(tp,5) Duel.ConfirmDecktop(tp,5)
local g=Duel.GetDecktopGroup(tp,5) local g=Duel.GetDecktopGroup(tp,5)
local ct=g:GetCount() local ct=g:GetCount()
if ct>0 and g:FilterCount(cm.thfilter,nil)>0 and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then if ct>0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and g:FilterCount(cm.spfilter,nil,e,tp)>0
and Duel.SelectYesNo(tp,aux.Stringid(m,2)) then
Duel.DisableShuffleCheck() Duel.DisableShuffleCheck()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=g:FilterSelect(tp,cm.thfilter,1,1,nil) local sg=g:FilterSelect(tp,cm.spfilter,1,1,nil,e,tp)
Duel.SendtoHand(sg,nil,REASON_EFFECT) Duel.SpecialSummon(sg,0,tp,tp,false,false,POS_FACEUP)
Duel.ConfirmCards(1-tp,sg)
Duel.ShuffleHand(tp)
ct=g:GetCount()-sg:GetCount() ct=g:GetCount()-sg:GetCount()
end end
if ct>0 then if ct>0 then
...@@ -95,3 +132,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -95,3 +132,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
end end
...@@ -7,7 +7,7 @@ function cm.DragWizard(c) ...@@ -7,7 +7,7 @@ function cm.DragWizard(c)
return m and m.named_with_DragWizard return m and m.named_with_DragWizard
end end
function cm.initial_effect(c) function cm.initial_effect(c)
aux.AddRitualProcGreaterCode(c,40010332)
--Effect 1 --Effect 1
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOGRAVE) e1:SetCategory(CATEGORY_SPECIAL_SUMMON+CATEGORY_TOGRAVE)
...@@ -17,18 +17,7 @@ function cm.initial_effect(c) ...@@ -17,18 +17,7 @@ function cm.initial_effect(c)
e1:SetTarget(cm.rtg) e1:SetTarget(cm.rtg)
e1:SetOperation(cm.rtop) e1:SetOperation(cm.rtop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Effect 2
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_GRAVE_SPSUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,m+1)
e2:SetCondition(cm.condition)
e2:SetCost(cm.cost)
e2:SetTarget(cm.tg)
e2:SetOperation(cm.op)
c:RegisterEffect(e2)
end end
--Effect 1 --Effect 1
function cm.filter(c) function cm.filter(c)
...@@ -101,72 +90,7 @@ function cm.rtop(e,tp,eg,ep,ev,re,r,rp) ...@@ -101,72 +90,7 @@ function cm.rtop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
end end
--Effect 2
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0
end
function cm.atkfilter(c)
return (c:IsRace(RACE_SPELLCASTER) or (cm.DragWizard(c) and c:IsType(TYPE_MONSTER)))
and c:IsDiscardable()
end
function cm.spfilter(c,e,tp)
return c:GetType()&0x81==0x81
and c:IsCode(40010332)
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_RITUAL,tp,true,false)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.atkfilter,tp,LOCATION_HAND,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD)
local g=Duel.SelectMatchingCard(tp,cm.atkfilter,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoGrave(g,REASON_COST+REASON_DISCARD)
end
function cm.tg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToHand() end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,e:GetHandler(),1,0,0)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
Duel.SendtoHand(c,nil,REASON_EFFECT)
if c:IsLocation(LOCATION_HAND)
and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.spfilter),tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil,e,tp)
local tc=g:GetFirst()
if tc then
tc:SetMaterial(nil)
if Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,true,false,POS_FACEUP)>0 then
tc:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD,0,1)
tc:CompleteProcedure()
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_PHASE+PHASE_END)
e2:SetCountLimit(1)
e2:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e2:SetLabelObject(tc)
e2:SetCondition(cm.descon)
e2:SetOperation(cm.desop)
Duel.RegisterEffect(e2,tp)
end
end
end
end
end
function cm.descon(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
if tc:GetFlagEffect(m)~=0 then
return true
else
e:Reset()
return false
end
end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
if tc:IsAbleToRemove() then Duel.Remove(tc,POS_FACEUP,REASON_EFFECT) end
end
--Effect 3 --Effect 3
--Effect 4 --Effect 4
--Effect 5 --Effect 5
--黑炎缠龙 欧格玛
local m=40010416
local cm=_G["c"..m]
cm.named_with_DragWizard=1
function cm.DragWizard(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_DragWizard
end
function cm.initial_effect(c)
c:EnableReviveLimit()
aux.AddXyzProcedure(c,nil,3,2,nil,nil,99)
--atklimit
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CHANGE_LEVEL)
e1:SetRange(LOCATION_MZONE)
e1:SetTargetRange(LOCATION_GRAVE,0)
e1:SetTarget(aux.TargetBoolFunction(Card.IsLevelAbove,2))
e1:SetCondition(cm.dscon)
e1:SetValue(1)
c:RegisterEffect(e1)
--search
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,0))
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH+CATEGORY_TOGRAVE+CATEGORY_DECKDES)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,m)
e2:SetCost(cm.cost)
e2:SetTarget(cm.target)
e2:SetOperation(cm.operation)
c:RegisterEffect(e2)
end
function cm.dscon(e)
return e:GetHandler():GetOverlayCount()~=0
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,2,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,2,2,REASON_COST)
end
function cm.filter(c)
return cm.DragWizard(c) and c:IsType(TYPE_TRAP+TYPE_SPELL) and (c:IsAbleToHand() or c:IsAbleToGrave())
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK)
end
function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_OPERATECARD)
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()<=0 then return end
local tc=g:GetFirst()
if tc:IsAbleToHand() and (not tc:IsAbleToGrave() or Duel.SelectOption(tp,1190,1191)==0) then
Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tc)
else
Duel.SendtoGrave(tc,REASON_EFFECT)
end
end
\ No newline at end of file
...@@ -6,7 +6,7 @@ function cm.initial_effect(c) ...@@ -6,7 +6,7 @@ function cm.initial_effect(c)
--to hand --to hand
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH+CATEGORY_TOGRAVE) e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY) e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SUMMON_SUCCESS) e1:SetCode(EVENT_SUMMON_SUCCESS)
...@@ -32,22 +32,18 @@ function cm.initial_effect(c) ...@@ -32,22 +32,18 @@ function cm.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function cm.cfilter(c) function cm.cfilter(c)
return (aux.IsCodeListed(c,40010499) and c:IsType(TYPE_SPELL+TYPE_TRAP)) and (c:IsAbleToHand() or c:IsAbleToGrave()) return (c:IsType(TYPE_SPELL+TYPE_TRAP) and aux.IsCodeListed(c,40010499)) and c:IsAbleToHand()
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function cm.operation(e,tp,eg,ep,ev,re,r,rp) function cm.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_OPERATECARD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,cm.cfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,cm.cfilter,tp,LOCATION_DECK,0,1,1,nil)
if g:GetCount()>0 then if g:GetCount()>0 then
local tc=g:GetFirst() Duel.SendtoHand(g,nil,REASON_EFFECT)
if tc and tc:IsAbleToHand() and (not tc:IsAbleToGrave() or Duel.SelectOption(tp,1190,1191)==0) then Duel.ConfirmCards(1-tp,g)
Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tc)
else
Duel.SendtoGrave(tc,REASON_EFFECT)
end
end end
end end
function cm.ctfilter(c,tp) function cm.ctfilter(c,tp)
......
--等待觉醒之龙
local m=40011380
local cm=_G["c"..m]
cm.named_with_DragWizard=1
function cm.DragWizard(c)
local m=_G["c"..c:GetCode()]
return m and m.named_with_DragWizard
end
function cm.initial_effect(c)
aux.AddRitualProcGreaterCode(c,40010332)
--Activate
local e1=aux.AddRitualProcGreater2(c,cm.filter,LOCATION_HAND+LOCATION_GRAVE,nil,nil,true)
--Effect 2
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(m,1))
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_GRAVE_SPSUMMON)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,m)
e2:SetCondition(cm.condition)
e2:SetCost(cm.cost)
e2:SetTarget(cm.tg)
e2:SetOperation(cm.op)
c:RegisterEffect(e2)
end
function cm.filter(c,e,tp,chk)
return cm.DragWizard(c)
end
--Effect 2
function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0
end
function cm.atkfilter(c)
return (c:IsRace(RACE_SPELLCASTER) or (cm.DragWizard(c) and c:IsType(TYPE_MONSTER)))
and c:IsDiscardable()
end
function cm.spfilter(c,e,tp)
return c:GetType()&0x81==0x81
and c:IsCode(40010332)
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_RITUAL,tp,true,false)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.atkfilter,tp,LOCATION_HAND,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD)
local g=Duel.SelectMatchingCard(tp,cm.atkfilter,tp,LOCATION_HAND,0,1,1,nil)
Duel.SendtoGrave(g,REASON_COST+REASON_DISCARD)
end
function cm.tg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToHand() end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,e:GetHandler(),1,0,0)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) then
Duel.SendtoHand(c,nil,REASON_EFFECT)
if c:IsLocation(LOCATION_HAND)
and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE,0,1,nil,e,tp)
and Duel.SelectYesNo(tp,aux.Stringid(m,1)) then
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.spfilter),tp,LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil,e,tp)
local tc=g:GetFirst()
if tc then
tc:SetMaterial(nil)
if Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,true,false,POS_FACEUP)>0 then
tc:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD,0,1)
tc:CompleteProcedure()
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_PHASE+PHASE_END)
e2:SetCountLimit(1)
e2:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e2:SetLabelObject(tc)
e2:SetCondition(cm.descon)
e2:SetOperation(cm.desop)
Duel.RegisterEffect(e2,tp)
end
end
end
end
end
function cm.descon(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
if tc:GetFlagEffect(m)~=0 then
return true
else
e:Reset()
return false
end
end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
if tc:IsAbleToRemove() then Duel.Remove(tc,POS_FACEUP,REASON_EFFECT) end
end
\ No newline at end of file
--Hello World!
--This is a library of mtc's cards.
--You can add QQ1252425371 to feedback bugs.
--The following functions are available.
--MTC.LHini(c,tp)
--MTC.LHnum(tp)
--MTC.LHSpS(c,num)
--MTC.filterEffectSetCode(c,tablename)
--MTC.CheckEffectSetCode(tablename,ccode,excode,...)
--MTC.GetGroupEffectSetcode(tp,tablename,fil,loc1,loc2,ex,...)
--MTC.ApplyEffectSetCode(e,tp,c,tablename,...)
--MTC.ActivateEffect(e,tp,oe)
--MTC.CycleApplyOp(g,op,...)
--You can view detailed usages below or in mtc's card.
--A few annotations in Chinese are noted below.
--Welcome to use mtc's library.
MTC=MTC or {}
MTC.loaded_metatable_list={}
-------------------------------------------------------------------------------------------------------------------------------------
--系列「传说天」相关函数
--「传说天」次数检定初始化函数
function MTC.LHini(c,tp)
if not LHini==true then
LHini=true
--spsm
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e1:SetCondition(MTC.LHcon1)
e1:SetOperation(MTC.LHop1)
Duel.RegisterEffect(e1,tp)
--spsm
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e1:SetCondition(MTC.LHcon1)
e1:SetOperation(MTC.LHop1)
Duel.RegisterEffect(e1,tp)
end
end
function MTC.LHfil1(c,tp)
return c:IsSummonPlayer(tp) and c:IsSetCard(0x630)
end
function MTC.LHcon1(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(MTC.LHfil1,1,nil,tp)
end
function MTC.LHop1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local tc=eg:GetFirst()
while tc do
if tc:IsSetCard(0x630) then
Duel.RegisterFlagEffect(tc:GetSummonPlayer(),60010002,RESET_PHASE+PHASE_END,0,1)
Duel.RaiseEvent(c,EVENT_CUSTOM+60010002,nil,0,tc:GetSummonPlayer(),tc:GetSummonPlayer(),0)
end
tc=eg:GetNext()
end
end
--这个回合,自己把「传说天」怪兽召唤·特殊召唤的次数每有3次,返回值+1
function MTC.LHnum(tp)
local num=Duel.GetFlagEffect(tp,60010002)
local ti=0
while num>=3 do
num=num-3
ti=ti+1
end
return ti
end
-------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------------------
--系列「传说天」怪兽通用特招效果
--这张卡可以丢弃num张手卡从手卡特招
function MTC.LHSpS(c,num)
--special summon
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_SPSUMMON_PROC)
e1:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e1:SetRange(LOCATION_HAND)
e1:SetLabel(num)
e1:SetCondition(MTC.LHcon2)
e1:SetOperation(MTC.LHop2)
c:RegisterEffect(e1)
end
function MTC.LHcon2(e,tp,eg,ep,ev,re,r,rp)
if c==nil then return true end
local tp=c:GetControler()
local num=e:GetLabel()
return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_HAND,0,num,c)
end
function MTC.LHop2(e,tp,eg,ep,ev,re,r,rp)
local num=e:GetLabel()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD)
local g=Duel.SelectMatchingCard(tp,aux.TRUE,tp,LOCATION_HAND,0,num,num,c)
Duel.SendtoGrave(g,REASON_COST+REASON_DISCARD)
end
-------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------------------
--塔隆·血魔类效果初始化
--MTC.CheckEffectSetCode(所使用的表名称,所使用的识别名,不予记录的code,...) ...中记录所需记录效果的event
function MTC.CheckEffectSetCode(tablename,ccode,excode,...)
local tablename=_G[tablename]
local ccode=_G[ccode]
if not ccode then
ccode=true
tablename={}
local events={...}
local MTCcode=Effect.SetCode --为函数Effect.SetCode增加一段适用前的记录
Effect.SetCode=function(ue,code,...)
local tf=false
for i=1,#events do --是否包含...中的某个event
if code==events[i] then
tf=true
end
end
if tf==true and ue:GetOwner():GetCode()~=excode then --符合条件则记录
local uid=ue:GetOwner():GetCode()
tablename[uid]={}
local tf2=false
local u=1
while tf2==false do --使用循环记录寻找一个未记录的位置记录该效果
if not tablename[uid][u] then
tablename[uid][u]=ue
tf2=true
end
u=u+1
end
end
MTCcode(ue,code,...)
end
for tc in aux.Next(Duel.GetMatchingGroup(nil,tp,0x1ff,0x1ff,nil)) do --重载
local ini=MTC.initial_effect
MTC.initial_effect=function() end
tc:ReplaceEffect(m,0)
MTC.initial_effect=ini
if tc.initial_effect then tc.initial_effect(tc) end
end
end
end
function MTC.filterEffectSetCode(c,tablename)
local tablename=_G[tablename]
return tablename[c:GetCode()][1]~=nil
end
--获取区域内有某个event的组(必须先使用MTC.CheckEffectSetCode进行记录)
--MTC.GetGroupEffectSetcode(tp,所使用的表名称,fil,loc1,loc2,除了xxx之外,...)
function MTC.GetGroupEffectSetcode(tp,tablename,fil,loc1,loc2,ex,...) --获取符合条件的卡
local tablename=_G[tablename]
local g=Duel.GetMatchingGroup(fil,tp,loc1,loc2,ex,...)
local ac=g:GetFirst()
for i=1,#g do
if tablename[ac:GetCode()][1]==nil then
g:RemoveCard(ac)
end
ac=g:GetNext()
end
return g
end
--适用某张卡的某个event的效果
--MTC.ApplyEffectSetCode(调用该函数的e,调用该函数的tp,需要适用的c,所使用的表名称,...)
function MTC.ApplyEffectSetCode(e,tp,c,tablename,...)
local tablename=_G[tablename]
local tf=false
local i=1
while tf==false do --利用循环把每一项适用
if tablename[c:GetCode()][i] then
MTC.ActivateEffect(tablename[c:GetCode()][i],tp,e)
end
if not tablename[c:GetCode()][i+1] then
tf=true
end
i=i+1
end
end
--MTC.ActivateEffect(需要适用的e,调用该函数的tp,调用该函数的e)
--Thanks to lanpa
function MTC.ActivateEffect(e,tp,oe)
local c=e:GetHandler()
local cos,tg,op=e:GetCost(),e:GetTarget(),e:GetOperation()
if e and (not cos or cos(e,tp,eg,ep,ev,re,r,rp,0)) and (not tg or tg(e,tp,eg,ep,ev,re,r,rp,0)) then
oe:SetProperty(e:GetProperty())
local code=c:GetOriginalCode()
Duel.Hint(HINT_CARD,tp,code)
e:UseCountLimit(tp,1,true)
c:CreateEffectRelation(e)
if cos then cos(e,p,eg,ep,ev,re,r,rp,1) end
if tg then tg(e,tp,eg,ep,ev,re,r,rp,1) end
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
if g and #g~=0 then
local tg=g:GetFirst()
while tg do
tg:CreateEffectRelation(e)
tg=g:GetNext()
end
end
if op then op(e,tp,eg,ep,ev,re,r,rp) end
c:ReleaseEffectRelation(e)
if g then
tg=g:GetFirst()
while tg do
tg:ReleaseEffectRelation(e)
tg=g:GetNext()
end
end
end
end
-------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------------------
--对于某个g里的每张卡片依次适用操作op
function MTC.CycleApplyOp(g,op,...)
local ac=g:GetFirst()
for i=1,#g do
local c=ac
if op then op(...) end
ac=g:GetNext()
end
end
\ No newline at end of file
--基督代理魔人
local cm,m,o=GetID()
function cm.initial_effect(c)
--cannot special summon
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)
--to hand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_DRAW)
e1:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetOperation(cm.thop)
c:RegisterEffect(e1)
end
cm.toss_dice=true
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
for i=1,5 do
local d1=0
local d2=0
while d1==d2 do
d1,d2=Duel.TossDice(tp,1,1)
end
if d1<d2 then
Duel.Draw(1-tp,1,REASON_EFFECT)
else
Duel.Draw(tp,1,REASON_EFFECT)
end
end
end
\ No newline at end of file
--奥特兰赛 传说之天
Duel.LoadScript("c60010000.lua")
local cm,m,o=GetID()
function cm.initial_effect(c)
MTC.LHini(c,tp)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetOperation(cm.activate)
c:RegisterEffect(e1)
--to hand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_CUSTOM+60010002)
e1:SetRange(LOCATION_FZONE)
e1:SetOperation(cm.thop)
c:RegisterEffect(e1)
end
function cm.filter(c)
return c:IsSetCard(0x630) and c:IsAbleToHand() and not c:IsCode(m)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_DECK+LOCATION_GRAVE,0,nil)
if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(m,0)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local sg=g:Select(tp,1,1,nil)
Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,sg)
end
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetFlagEffect(tp,60010002)==3 then
Duel.Damage(1-tp,1000,REASON_EFFECT)
Duel.Recover(tp,1000,REASON_EFFECT)
elseif Duel.GetFlagEffect(tp,60010002)==5 then
local ht=Duel.GetFieldGroupCount(p,LOCATION_HAND,0)
if ht<5 then
Duel.Draw(tp,5-ht,REASON_EFFECT)
end
elseif Duel.GetFlagEffect(tp,60010002)==7 and Duel.IsExistingMatchingCard(cm.filter2,tp,LOCATION_DECK,0,1,nil) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,cm.filter2,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
end
function cm.filter2(c)
return c:IsCode(60010003) and c:IsAbleToHand()
end
\ No newline at end of file
--统领传说之天
Duel.LoadScript("c60010000.lua")
local cm,m,o=GetID()
function cm.initial_effect(c)
MTC.LHini(c,tp)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetTarget(cm.target)
e1:SetOperation(cm.activate)
c:RegisterEffect(e1)
end
function cm.filter(c,e,tp)
return c:IsSetCard(0x630) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_HAND,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_HAND,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
local ti=MTC.LHnum(tp)
if ti~=0 and Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil,e,tp) then
local ti=math.min(ti,Duel.GetLocationCount(tp,LOCATION_MZONE))
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_DECK+LOCATION_GRAVE,0,0,ti,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
end
end
\ No newline at end of file
--传说天之光临
Duel.LoadScript("c60010000.lua")
local cm,m,o=GetID()
function cm.initial_effect(c)
MTC.LHini(c,tp)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetTarget(cm.target)
e1:SetOperation(cm.activate)
c:RegisterEffect(e1)
end
function cm.filter(c,e,tp)
return c:IsSetCard(0x630) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_HAND,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_HAND,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
local ti=MTC.LHnum(tp)
if ti~=0 and Duel.IsExistingMatchingCard(aux.TRUE,tp,0,LOCATION_DECK,1,nil) then
local ti=math.min(ti,Duel.GetFieldGroupCount(tp,0,LOCATION_DECK))
local g=Duel.GetDecktopGroup(1-tp,ti)
if g:GetCount()>0 then
Duel.SendtoHand(g,tp,REASON_EFFECT)
end
end
end
end
\ No newline at end of file
--格玛瑞 传说天之双华
Duel.LoadScript("c60010000.lua")
local cm,m,o=GetID()
function cm.initial_effect(c)
MTC.LHSpS(c,2)
--search
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,0))
e3:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1)
e3:SetTarget(cm.thtg)
e3:SetOperation(cm.thop)
c:RegisterEffect(e3)
end
function cm.thfil(c)
return not c:IsCode(m) and c:IsAbleToHand()
end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingMatchingCard(cm.thfil,tp,LOCATION_ONFIELD,0,1,c) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_ONFIELD)
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,cm.thfil,tp,LOCATION_ONFIELD,0,1,1,c)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
local ti=MTC.LHnum(tp)*200
Duel.Damage(1-tp,ti,REASON_EFFECT)
end
end
\ No newline at end of file
--欧米特莉 传说天之回翼
Duel.LoadScript("c60010000.lua")
local cm,m,o=GetID()
function cm.initial_effect(c)
MTC.LHSpS(c,2)
--search
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,0))
e3:SetCategory(CATEGORY_TOHAND)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1)
e3:SetTarget(cm.thtg)
e3:SetOperation(cm.thop)
c:RegisterEffect(e3)
end
function cm.thfil(c)
return c:IsAbleToHand()
end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_ONFIELD)
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.GetMatchingGroup(aux.TRUE,tp,LOCATION_ONFIELD,0,nil):RandomSelect(tp,1)
if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g)
local ti=MTC.LHnum(tp)*300
Duel.Recover(tp,ti,REASON_EFFECT)
end
end
\ No newline at end of file
--简丝 传说天之剑岚
Duel.LoadScript("c60010000.lua")
local cm,m,o=GetID()
function cm.initial_effect(c)
MTC.LHSpS(c,2)
--search
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,0))
e3:SetCategory(CATEGORY_REMOVE)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1)
e3:SetTarget(cm.thtg)
e3:SetOperation(cm.thop)
c:RegisterEffect(e3)
end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.IsExistingMatchingCard(aux.TRUE,tp,0,LOCATION_ONFIELD,1,c) end
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,tp,LOCATION_ONFIELD)
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,cm.thfil,tp,0,LOCATION_ONFIELD,1,1,c)
if g:GetCount()>0 then
Duel.Remove(g,POS_FACEUP,REASON_EFFECT)
local ti=math.min(MTC.LHnum(tp),Duel.GetFieldGroupCount(tp,0,LOCATION_DECK))
local rg=Duel.GetDecktopGroup(1-tp,ti)
Duel.Remove(rg,POS_FACEDOWN,REASON_EFFECT)
end
end
\ No newline at end of file
--塔斯汀娜 传说天之长岁
Duel.LoadScript("c60010000.lua")
local cm,m,o=GetID()
function cm.initial_effect(c)
MTC.LHSpS(c,3)
--to hand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetTarget(cm.thtg)
e1:SetOperation(cm.thop)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e2)
end
function cm.tdfilter(c)
return c:IsSetCard(0x630) and c:IsAbleToHand()
end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then
local num=Duel.GetFlagEffect(tp,60010002)
if Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)<num then return false end
local g=Duel.GetDecktopGroup(tp,num)
local result=g:FilterCount(Card.IsAbleToHand,nil)>0
return result
end
Duel.SetTargetPlayer(tp)
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER)
local num=Duel.GetFlagEffect(p,60010002)
Duel.ConfirmDecktop(p,num)
local g=Duel.GetDecktopGroup(p,num)
if not g or #g<num then return end
g=g:Filter(cm.tdfilter,nil)
local ct=num
if #g>0 and Duel.SelectYesNo(p,aux.Stringid(m,2)) then
Duel.Hint(HINT_SELECTMSG,p,HINTMSG_ATOHAND)
local sg=g:Select(p,1,1,nil)
Duel.DisableShuffleCheck()
Duel.SendtoHand(sg,nil,REASON_EFFECT)
Duel.ConfirmCards(1-p,sg)
Duel.ShuffleHand(p)
ct=ct-1
end
Duel.SortDecktop(p,p,ct)
for i=1,ct do
local mg=Duel.GetDecktopGroup(p,1)
Duel.MoveSequence(mg:GetFirst(),SEQ_DECKBOTTOM)
end
end
\ No newline at end of file
--尤娜 传说天之镜月
Duel.LoadScript("c60010000.lua")
local cm,m,o=GetID()
function cm.initial_effect(c)
MTC.LHSpS(c,3)
--to hand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_TRIGGER_O+EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SUMMON_SUCCESS)
--e1:SetTarget(cm.thtg)
e1:SetOperation(cm.thop)
c:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
c:RegisterEffect(e2)
end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_GRAVE,0)~=0 and Duel.IsPlayerCanDraw(tp) end
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local num=math.min(Duel.GetFieldGroupCount(tp,LOCATION_DECK,0)*5,Duel.GetFlagEffect(tp,60010002))
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local bg=Duel.SelectMatchingCard(tp,aux.TRUE,tp,LOCATION_GRAVE,0,0,num,nil)
if Duel.SendtoDeck(bg,nil,2,REASON_EFFECT) then
local tb=Duel.GetOperatedGroup():Filter(Card.IsLocation,nil,LOCATION_DECK)
local ti=0
while tb>=5 do
tb=tb-5
ti=ti+1
end
if ti~=0 then
Duel.Draw(tp,ti,REASON_EFFECT)
end
end
end
\ No newline at end of file
--伊莎贝尔 传说天之转界
Duel.LoadScript("c60010000.lua")
local cm,m,o=GetID()
function cm.initial_effect(c)
MTC.LHSpS(c,3)
--battle 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:GetCondition(cm.con)
e1:SetValue(1)
c:RegisterEffect(e1)
--immune
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_IMMUNE_EFFECT)
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e3:SetRange(LOCATION_MZONE)
e3:GetCondition(cm.con)
e3:SetValue(cm.efilter)
c:RegisterEffect(e3)
end
function cm.efilter(e,re)
return e:GetHandlerPlayer()~=re:GetOwnerPlayer() and re:IsActivated()
end
function cm.con(e,tp,eg,ep,ev,re,r,rp,tc)
return Duel.IsExistingMatchingCard(Card.IsCode,tp,LOCATION_FZONE,0,1,nil,60010002)
end
\ No newline at end of file
--恒久暗月永恒之人 藏匿心之恶兆烛影
local cm,m,o=GetID()
function cm.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkAttribute,ATTRIBUTE_WATER+ATTRIBUTE_LIGHT),3)
c:EnableReviveLimit()
--battle
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_AVOID_BATTLE_DAMAGE)
e1:SetValue(1)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e2:SetValue(1)
c:RegisterEffect(e2)
--search
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(m,0))
e3:SetCategory(CATEGORY_TOHAND)
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1)
e3:SetTarget(cm.thtg)
e3:SetOperation(cm.thop)
c:RegisterEffect(e3)
end
function cm.filter(c,e,tp)
return c:IsSetCard(0x630) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
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 Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE)
end
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,cm.filter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
if g:GetCount()>0 then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
\ No newline at end of file
--血煞天枢绝光之枪 镇守天海万古魔识
local cm,m,o=GetID()
function cm.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkAttribute,ATTRIBUTE_WATER+ATTRIBUTE_LIGHT),3,99)
c:EnableReviveLimit()
--battle
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_AVOID_BATTLE_DAMAGE)
e1:SetValue(1)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
e2:SetValue(1)
c:RegisterEffect(e2)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
e2:SetRange(LOCATION_MZONE)
e2:SetTargetRange(1,1)
e2:SetValue(cm.aclimit)
c:RegisterEffect(e2)
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0))
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_LEAVE_FIELD)
e1:SetRange(LOCATION_MZONE)
e1:SetOperation(cm.thop)
c:RegisterEffect(e1)
end
function cm.aclimit(e,re,tp)
local rc=re:GetHandler()
return rc:IsLocation(LOCATION_HAND) and re:IsActiveType(TYPE_MONSTER)
end
function cm.aclimit2(e,re,tp)
local loc=re:GetActivateLocation()
return (loc==LOCATION_GRAVE or loc==LOCATION_REMOVED) and re:IsActiveType(TYPE_MONSTER)
end
function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
e2:SetTargetRange(1,1)
e2:SetReset(RESET_PHASE+PHASE_END)
e2:SetValue(cm.aclimit)
Duel.RegisterEffect(e2,tp)
end
\ No newline at end of file
--拟态武装 片光零羽
function c67200660.initial_effect(c)
--xyz summon
aux.AddXyzProcedureLevelFree(c,c67200660.mfilter,c67200660.xyzcheck,2,2)
c:EnableReviveLimit()
--atkup
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(67200660,0))
e1:SetCategory(CATEGORY_ATKCHANGE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCondition(c67200660.atkcon1)
e1:SetTarget(c67200660.atktg1)
e1:SetOperation(c67200660.atkop1)
c:RegisterEffect(e1)
--damage
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(67200660,1))
e1:SetCategory(CATEGORY_DAMAGE+CATEGORY_HANDES+CATEGORY_TOGRAVE)
e1:SetRange(LOCATION_MZONE)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetCountLimit(1,67200660)
e1:SetCost(c67200660.damcost)
e1:SetTarget(c67200660.damtg)
e1:SetOperation(c67200660.damop)
c:RegisterEffect(e1)
end
--
function c67200660.mfilter(c,xyzc)
return c:IsXyzType(TYPE_MONSTER) and c:IsSetCard(0x667b)
end
function c67200660.xyzcheck(g)
return g:GetClassCount(c67200660.getlvrklk)==1
end
function c67200660.getlvrklk(c)
if c:IsLevelAbove(0) then return c:GetLevel() end
if c:IsLinkAbove(0) then return c:GetLink() end
--return c:GetLink()
end
function c67200660.atkcon1(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_XYZ)
end
function c67200660.atkval(e,c)
local g=e:GetHandler():GetMaterial()
local ag=Group.Filter(g,Card.IsType,nil,TYPE_MONSTER)
local x=0
local y=0
local tc=ag:GetFirst()
while tc do
y=tc:GetLink()
x=x+y
tc=ag:GetNext()
end
return x*500
end
function c67200660.atktg1(e,tp,eg,ep,ev,re,r,rp,chk)
local mg=e:GetHandler():GetMaterial()
if mg:GetCount()<1 then return false end
if chk==0 then return mg:IsExists(Card.IsType,1,nil,TYPE_LINK) end
end
function c67200660.atkop1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFacedown() or not c:IsRelateToEffect(e) then return end
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(c67200660.atkval)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
--
function c67200660.damcost(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 c67200660.damtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
Duel.SetTargetPlayer(1-tp)
Duel.SetTargetParam(600)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,600)
end
function c67200660.sgfilter(c)
return c:IsSetCard(0x667b) and c:IsLevel(3)
end
function c67200660.damop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
if Duel.Damage(p,d,REASON_EFFECT)~=0 and Duel.IsExistingMatchingCard(c67200660.sgfilter,tp,LOCATION_SZONE,0,2,nil) and Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0 and Duel.SelectYesNo(tp,aux.Stringid(67200660,2)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local sg=Duel.SelectMatchingCard(tp,c67200660.sgfilter,tp,LOCATION_SZONE,0,2,2,nil)
if Duel.SendtoGrave(sg,REASON_EFFECT)~=0 then
local gg=Duel.GetFieldGroup(tp,0,LOCATION_HAND)
local sgg=gg:RandomSelect(tp,1)
Duel.SendtoGrave(sgg,REASON_EFFECT)
end
end
end
\ No newline at end of file
--拟态武装 不灭之翼
function c67200661.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x667b),2,2,c67200661.lcheck)
c:EnableReviveLimit()
--atkup
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(67200661,0))
e1:SetCategory(CATEGORY_ATKCHANGE)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCondition(c67200661.atkcon1)
e1:SetTarget(c67200661.atktg1)
e1:SetOperation(c67200661.atkop1)
c:RegisterEffect(e1)
--Gains Effect
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_BE_MATERIAL)
e2:SetProperty(EFFECT_FLAG_EVENT_PLAYER)
e2:SetCountLimit(1,67200661)
e2:SetCondition(c67200661.efcon)
e2:SetOperation(c67200661.efop)
c:RegisterEffect(e2)
end
function c67200661.lcheck(g,lc)
return g:IsExists(Card.IsLinkAttribute,1,nil,ATTRIBUTE_WATER)
end
--
function c67200661.atkcon1(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end
function c67200661.atkval(e,c)
local g=e:GetHandler():GetMaterial()
local ag=Group.Filter(g,Card.IsLevelAbove,nil,1)
local x=0
local y=0
local tc=ag:GetFirst()
while tc do
y=tc:GetLevel()
x=x+y
tc=ag:GetNext()
end
return x*500
end
function c67200661.atktg1(e,tp,eg,ep,ev,re,r,rp,chk)
local mg=e:GetHandler():GetMaterial()
if mg:GetCount()<1 then return false end
if chk==0 then return mg:IsExists(Card.IsLevelAbove,1,nil,1) end
end
function c67200661.atkop1(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsFacedown() or not c:IsRelateToEffect(e) then return end
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(c67200661.atkval)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
c:RegisterEffect(e1)
end
--
function c67200661.efcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
return r==REASON_XYZ and c:IsPreviousLocation(LOCATION_ONFIELD) and c:GetReasonCard():IsSetCard(0x667b)
end
function c67200661.efop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local rc=c:GetReasonCard()
local e1=Effect.CreateEffect(rc)
e1:SetDescription(aux.Stringid(67200661,1))
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(c:GetBaseAttack())
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1)
end
--拟态武装 紫竹
function c67200662.initial_effect(c)
--link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x667b),2)
c:EnableReviveLimit()
--extra link
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_FIELD)
e0:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e0:SetRange(LOCATION_EXTRA)
e0:SetTarget(c67200662.mattg)
e0:SetCode(EFFECT_EXTRA_LINK_MATERIAL)
e0:SetTargetRange(LOCATION_SZONE,0)
e0:SetValue(c67200662.matval)
c:RegisterEffect(e0)
--tohand
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(67200662,0))
e1:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_SPECIAL_SUMMON+CATEGORY_TOKEN)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetCondition(c67200662.spcon)
e1:SetTarget(c67200662.sptg)
e1:SetOperation(c67200662.spop)
c:RegisterEffect(e1)
end
---
function c67200662.matval(e,lc,mg,c,tp)
if e:GetHandler()~=lc then return false,nil end
return true,true
end
function c67200662.mattg(e,c)
return c:IsFaceup() and c:IsLinkType(TYPE_MONSTER) and c:IsLevel(3)
end
--
function c67200662.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end
function c67200662.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsPlayerCanSpecialSummonMonster(tp,67200663,0,TYPES_TOKEN_MONSTER+TYPE_TUNER,0,0,4,RACE_PSYCHO,ATTRIBUTE_DARK)
and not Duel.IsExistingMatchingCard(Card.IsType,tp,LOCATION_MZONE,0,1,nil,TYPE_TOKEN) end
Duel.SetOperationInfo(0,CATEGORY_TOKEN,nil,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,0,0)
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
end
function c67200662.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
if not Duel.IsPlayerCanSpecialSummonMonster(tp,67200663,0,TYPES_TOKEN_MONSTER+TYPE_TUNER,0,0,4,RACE_PSYCHO,ATTRIBUTE_DARK) then return end
local token=Duel.CreateToken(tp,67200663)
if Duel.SpecialSummon(token,0,tp,tp,false,false,POS_FACEUP)~=0 and Duel.SelectYesNo(tp,aux.Stringid(67200662,2)) then
if Duel.Destroy(e:GetHandler(),REASON_EFFECT)~=0 then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetTarget(aux.TargetBoolFunction(Card.IsCode,67200663))
e1:SetValue(c67200662.val)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
end
end
function c67200662.val(e,c)
local ag=Duel.GetMatchingGroup(c67200662.atkfilter,c:GetControler(),LOCATION_GRAVE+LOCATION_MZONE,0,nil)
local x=0
local y=0
local tc=ag:GetFirst()
while tc do
y=tc:GetLink()
x=x+y
tc=ag:GetNext()
end
return x*500
end
function c67200662.atkfilter(c)
return c:IsSetCard(0x667b) and c:IsType(TYPE_LINK)
end
--拟态武装 契约徽章玫茨
function c67200664.initial_effect(c)
--pendulum summon
aux.EnablePendulumAttribute(c)
--spsummon
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(67200644,1))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetRange(LOCATION_PZONE)
e1:SetCountLimit(1)
e1:SetTarget(c67200644.seqtg)
e1:SetOperation(c67200644.seqop)
c:RegisterEffect(e1)
--extra material
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_EXTRA_LINK_MATERIAL)
e2:SetRange(LOCATION_SZONE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e2:SetCountLimit(2,67200644)
e2:SetValue(c67200644.matval)
c:RegisterEffect(e2)
--Attribute Water
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e3:SetCode(EFFECT_ADD_ATTRIBUTE)
e3:SetRange(LOCATION_MZONE)
e3:SetValue(ATTRIBUTE_WATER)
c:RegisterEffect(e3)
end
--
function c67200644.filter(c,e,tp)
return c:IsSetCard(0x667b) and c:IsLevel(3) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP)
end
function c67200644.seqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_SZONE) and chkc:IsControler(tp) and c67200644.filter(chkc,e,tp) end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingTarget(c67200644.filter,tp,LOCATION_SZONE,0,1,e:GetHandler(),e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectTarget(tp,c67200644.filter,tp,LOCATION_SZONE,0,1,1,e:GetHandler(),e,tp)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,0,0)
end
function c67200644.seqop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
end
---
function c67200644.exmfilter(c)
return c:IsLocation(LOCATION_SZONE) and c:IsCode(67200644)
end
function c67200644.matval(e,lc,mg,c,tp)
if not (lc:IsSetCard(0x667b) and (lc:IsAttribute(ATTRIBUTE_LIGHT) or lc:IsAttribute(ATTRIBUTE_WATER))) then return false,nil end
return true,not mg or not mg:IsExists(c67200644.exmfilter,1,nil)
end
--废铁咒术师
local s,id,o=GetID()
function s.initial_effect(c)
--LinkSummon
aux.AddLinkProcedure(c,s.lkfilter1,2,99,s.lkfilter2)
c:EnableReviveLimit()
--set
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_MZONE)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetCountLimit(1,id)
e1:SetTarget(s.tftg)
e1:SetOperation(s.tfop)
c:RegisterEffect(e1)
--special summon
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetRange(LOCATION_MZONE)
e2:SetCode(EVENT_TO_GRAVE)
e2:SetCountLimit(1,id+1)
e2:SetCondition(s.condition)
e2:SetTarget(s.target)
e2:SetOperation(s.operation)
c:RegisterEffect(e2)
end
function s.lkfilter1(c)
return c:IsSetCard(0x24) and c:IsType(TYPE_MONSTER)
end
function s.lkfilter2(g,lc)
return g:IsExists(Card.IsLinkRace,1,nil,TYPE_SYNCHRO+TYPE_LINK)
end
function s.setfilter(c)
return c:IsSetCard(0x24) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsSSetable()
or c:IsCode(48497555) or c:IsCode(50947142) or c:IsCode(85520170) or c:IsCode(98427577)
end
function s.tftg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local b=Duel.IsExistingMatchingCard(s.setfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil)
if chk==0 then return b end
local g=Duel.SelectTarget(tp,nil,tp,LOCATION_ONFIELD,0,1,1,nil,e,0,tp,false,false,POS_FACEUP,tp)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,1,tp,LOCATION_ONFIELD)
end
function s.tfop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetFirstTarget()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
Duel.Destroy(g,REASON_EFFECT)
if g then
local c=e:GetHandler()
local b=Duel.IsExistingMatchingCard(s.setfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil)
if not b then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
local g=Duel.SelectMatchingCard(tp,s.setfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,1,nil)
local tc=g:GetFirst()
if tc and Duel.SSet(tp,tc)~=0 then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_QP_ACT_IN_SET_TURN)
tc:RegisterEffect(e2)
end
end
end
function s.cfilter(c)
return c:IsReason(REASON_EFFECT) and c:IsPreviousLocation(LOCATION_MZONE) and c:IsPreviousSetCard(0x24) and c:IsPreviousPosition(POS_FACEUP)
end
function s.condition(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(s.cfilter,1,nil)
end
function s.spfilter(c,e,tp)
return c:IsSetCard(0x24) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE)
end
function s.operation(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
if g then
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
end
end
\ No newline at end of file
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
function c88800012.initial_effect(c) function c88800012.initial_effect(c)
--activate --activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY) e1:SetCategory(CATEGORY_NEGATE+CATEGORY_RELEASE)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_CHAINING) e1:SetCode(EVENT_CHAINING)
e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
...@@ -11,6 +11,9 @@ function c88800012.initial_effect(c) ...@@ -11,6 +11,9 @@ function c88800012.initial_effect(c)
e1:SetTarget(c88800012.distg) e1:SetTarget(c88800012.distg)
e1:SetOperation(c88800012.disop) e1:SetOperation(c88800012.disop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e3=e1:Clone()
e3:SetCode(c88800012.condition1)
c:RegisterEffect(e3)
--spsummon1 --spsummon1
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_QUICK_O) e2:SetType(EFFECT_TYPE_QUICK_O)
...@@ -24,13 +27,20 @@ function c88800012.initial_effect(c) ...@@ -24,13 +27,20 @@ function c88800012.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function c88800012.filter(c) function c88800012.filter(c)
return c:IsFaceup() and c:IsSetCard(0xc01) and c:IsType(TYPE_MONSTER) and c:IsType(TYPE_FUSION) return c:IsFaceup() and c:IsSetCard(0xc01) and c:IsType(TYPE_MONSTER)
end end
function c88800012.condition(e,tp,eg,ep,ev,re,r,rp) function c88800012.condition(e,tp,eg,ep,ev,re,r,rp)
if not Duel.IsExistingMatchingCard(c88800012.filter,tp,LOCATION_MZONE,0,1,nil) then return false end if not Duel.IsExistingMatchingCard(c88800012.filter,tp,LOCATION_MZONE,0,1,nil) then return false end
if not Duel.IsChainNegatable(ev) then return false end if not Duel.IsChainNegatable(ev) then return false end
return re:IsActiveType(TYPE_MONSTER+TYPE_SPELL+TYPE_TRAP) return re:IsActiveType(TYPE_MONSTER+TYPE_SPELL+TYPE_TRAP)
end end
function c88800012.pcfilter(c)
return c:IsFacedown() or not c:IsSetCard(0xc01)
end
function c88800012.condition1(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetFieldGroup(tp,LOCATION_MZONE,0)
return g:GetCount()>0 and not g:IsExists(s.pcfilter,1,nil)
end
function c88800012.distg(e,tp,eg,ep,ev,re,r,rp,chk) function c88800012.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_DISABLE,eg,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DISABLE,eg,1,0,0)
...@@ -44,25 +54,19 @@ function c88800012.disop(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -44,25 +54,19 @@ function c88800012.disop(e,tp,eg,ep,ev,re,r,rp,chk)
end end
end end
function c88800012.cfilter(c) function c88800012.cfilter(c)
return c:IsSetCard(0xc01) and c:IsType(TYPE_TRAP) and c:IsDiscardable() return c:IsSetCard(0xc01) and c:IsDiscardable()
end end
function c88800012.spcost1(e,tp,eg,ep,ev,re,r,rp,chk) function c88800012.spcost1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c88800012.cfilter,tp,LOCATION_HAND,0,1,e:GetHandler()) end if chk==0 then return Duel.IsExistingMatchingCard(c88800012.cfilter,tp,LOCATION_HAND,0,1,e:GetHandler()) end
Duel.DiscardHand(tp,c88800012.cfilter,1,1,REASON_COST+REASON_DISCARD,e:GetHandler()) Duel.DiscardHand(tp,c88800012.cfilter,1,1,REASON_COST+REASON_DISCARD,e:GetHandler())
end end
function c88800012.sfilter(c)
return c:IsSetCard(0xc01) and c:IsType(TYPE_TRAP+TYPE_SPELL) and c:IsSSetable()
end
function c88800012.settg(e,tp,eg,ep,ev,re,r,rp,chk) function c88800012.settg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_SZONE)>0 if chk==0 then return true end
and Duel.IsExistingMatchingCard(c88800012.sfilter,tp,LOCATION_HAND,0,1,nil) end Duel.SetTargetPlayer(1-tp)
Duel.SetTargetParam(1200)
Duel.SetOperationInfo(0,CATEGORY_DAMAGE,nil,0,1-tp,1200)
end end
function c88800012.setop(e,tp,eg,ep,ev,re,r,rp) function c88800012.setop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET) Duel.Damage(p,d,REASON_EFFECT)
local g=Duel.SelectMatchingCard(tp,c88800012.sfilter,tp,LOCATION_HAND,0,1,1,nil)
local tc=g:GetFirst()
if tc then
Duel.SSet(tp,tc)
end
end end
\ No newline at end of file
...@@ -46,12 +46,14 @@ end ...@@ -46,12 +46,14 @@ end
function c88800020.ffilter(c) function c88800020.ffilter(c)
return c:IsSetCard(0xc01) and c:IsType(TYPE_MONSTER) return c:IsSetCard(0xc01) and c:IsType(TYPE_MONSTER)
end end
function c88800020.cfilter1(c,tp) function c88800020.costfilter(c,tp)
return c:IsSetCard(0xc01) and Duel.IsExistingTarget(Card.IsReleasableByEffect,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,c) return (c:IsControler(tp) or c:IsFaceup())
and ((c:IsSetCard(0xc01) and c:IsType(TYPE_MONSTER)) or c:IsHasEffect(88800021,tp) and c:IsControler(1-tp))
end end
function c88800020.discost(e,tp,eg,ep,ev,re,r,rp,chk) function c88800020.discost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckReleaseGroup(REASON_COST,tp,c88800020.cfilter1,1,nil,tp) end if chk==0 then return Duel.CheckReleaseGroup(tp,c88800020.costfilter,1,nil,tp) end
local g=Duel.SelectReleaseGroup(REASON_COST,tp,c88800020.cfilter1,1,1,nil,tp) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g=Duel.SelectReleaseGroup(tp,c88800020.costfilter,1,1,nil,tp)
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
function c88800020.rltg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c88800020.rltg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
...@@ -35,12 +35,25 @@ function cm.initial_effect(c) ...@@ -35,12 +35,25 @@ function cm.initial_effect(c)
e4:SetTargetRange(0,1) e4:SetTargetRange(0,1)
e4:SetCondition(cm.costcon) e4:SetCondition(cm.costcon)
c:RegisterEffect(e4) c:RegisterEffect(e4)
--release replace
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_FIELD)
e5:SetCode(EFFECT_EXTRA_RELEASE_NONSUM)
e5:SetRange(LOCATION_MZONE)
e5:SetTargetRange(0,LOCATION_MZONE)
e5:SetTarget(aux.TRUE)
e5:SetCountLimit(1)
e5:SetValue(cm.relval)
c:RegisterEffect(e5)
local e6=e5:Clone()
e6:SetCode(m)
c:RegisterEffect(e6)
end end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0xc01) and c:IsType(TYPE_MONSTER) return c:IsFaceup() and c:IsSetCard(0xc01)
end end
function cm.spcon1(e,tp,eg,ep,ev,re,r,rp) function cm.spcon1(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_ONFIELD,0,1,nil)
end end
function cm.sptg1(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sptg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
...@@ -66,3 +79,6 @@ end ...@@ -66,3 +79,6 @@ end
function cm.costop(e,tp,eg,ep,ev,re,r,rp) function cm.costop(e,tp,eg,ep,ev,re,r,rp)
Duel.PayLPCost(tp,360) Duel.PayLPCost(tp,360)
end end
function cm.relval(e,re,r,rp)
return re:IsActivated() and re:GetHandler():IsSetCard(0xc01) and bit.band(r,REASON_COST)~=0
end
\ No newline at end of file
...@@ -39,7 +39,7 @@ function c9910186.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -39,7 +39,7 @@ function c9910186.target(e,tp,eg,ep,ev,re,r,rp,chk)
local tep=nil local tep=nil
if Duel.GetCurrentChain()>1 then tep=Duel.GetChainInfo(Duel.GetCurrentChain()-1,CHAININFO_TRIGGERING_PLAYER) end if Duel.GetCurrentChain()>1 then tep=Duel.GetChainInfo(Duel.GetCurrentChain()-1,CHAININFO_TRIGGERING_PLAYER) end
if e:IsHasType(EFFECT_TYPE_ACTIVATE) and tep and tep==1-tp then if e:IsHasType(EFFECT_TYPE_ACTIVATE) and tep and tep==1-tp then
e:SetCategory(CATEGORY_DESTROY+CATEGORY_REMOVE) e:SetCategory(CATEGORY_HANDES+CATEGORY_TOHAND+CATEGORY_SEARCH+CATEGORY_DESTROY+CATEGORY_REMOVE)
e:SetLabel(1) e:SetLabel(1)
end end
end end
......
...@@ -14,7 +14,7 @@ function c9910202.initial_effect(c) ...@@ -14,7 +14,7 @@ function c9910202.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--negate --negate
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_NEGATE+CATEGORY_SPECIAL_SUMMON) e2:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY)
e2:SetType(EFFECT_TYPE_QUICK_O) e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_CHAINING) e2:SetCode(EVENT_CHAINING)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
...@@ -62,8 +62,16 @@ end ...@@ -62,8 +62,16 @@ end
function c9910202.retop(e,tp,eg,ep,ev,re,r,rp) function c9910202.retop(e,tp,eg,ep,ev,re,r,rp)
Duel.ReturnToField(e:GetLabelObject()) Duel.ReturnToField(e:GetLabelObject())
end end
function c9910202.locfilter(c)
return
end
function c9910202.distg(e,tp,eg,ep,ev,re,r,rp,chk) function c9910202.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
local tg=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS)
if re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) and tg and #tg>0 then
e:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY+CATEGORY_SPECIAL_SUMMON)
e:SetLabel(1)
end
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0) Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,0,tp,LOCATION_REMOVED) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,0,tp,LOCATION_REMOVED)
if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then
...@@ -71,18 +79,11 @@ function c9910202.distg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -71,18 +79,11 @@ function c9910202.distg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
end end
function c9910202.spfilter(c,e,tp) function c9910202.spfilter(c,e,tp)
return c:IsType(TYPE_LINK) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsFaceup() and c:IsType(TYPE_LINK) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
function c9910202.locfilter(c)
return c:IsLocation(LOCATION_ONFIELD+LOCATION_GRAVE)
or c:IsPreviousLocation(LOCATION_ONFIELD+LOCATION_GRAVE)
end end
function c9910202.disop(e,tp,eg,ep,ev,re,r,rp) function c9910202.disop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetChainInfo(ev,CHAININFO_TARGET_CARDS) if Duel.NegateActivation(ev) and re:GetHandler():IsRelateToEffect(re) and Duel.Destroy(eg,REASON_EFFECT)>0
if Duel.NegateActivation(ev) and re:GetHandler():IsRelateToEffect(re) then and e:GetLabel()==1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
Duel.Destroy(eg,REASON_EFFECT)
end
if tg and tg:IsExists(c9910202.locfilter,1,nil) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c9910202.spfilter,tp,LOCATION_REMOVED,0,1,nil,e,tp) and Duel.IsExistingMatchingCard(c9910202.spfilter,tp,LOCATION_REMOVED,0,1,nil,e,tp)
and Duel.SelectYesNo(tp,aux.Stringid(9910202,0)) then and Duel.SelectYesNo(tp,aux.Stringid(9910202,0)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -3,6 +3,7 @@ function c9910501.initial_effect(c) ...@@ -3,6 +3,7 @@ function c9910501.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--destroy --destroy
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(9910501,0))
e1:SetCategory(CATEGORY_DESTROY) e1:SetCategory(CATEGORY_DESTROY)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
...@@ -10,28 +11,26 @@ function c9910501.initial_effect(c) ...@@ -10,28 +11,26 @@ function c9910501.initial_effect(c)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1,9910501) e1:SetCountLimit(1,9910501)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e1:SetCondition(c9910501.descon)
e1:SetTarget(c9910501.destg) e1:SetTarget(c9910501.destg)
e1:SetOperation(c9910501.desop) e1:SetOperation(c9910501.desop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--tohand --release
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_TOHAND)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_RELEASE) e2:SetCode(EVENT_RELEASE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e2:SetCountLimit(1,9910502) e2:SetCountLimit(1,9910502)
e2:SetTarget(c9910501.thtg) e2:SetTarget(c9910501.rltg)
e2:SetOperation(c9910501.thop) e2:SetOperation(c9910501.rlop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end c9910501.tsukisome_release_effect=e2
function c9910501.descon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetAttack()>e:GetHandler():GetBaseAttack()
end end
function c9910501.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c9910501.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local c=e:GetHandler() local c=e:GetHandler()
if chkc then return chkc:IsOnField() end if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) end
if chk==0 then return Duel.IsExistingTarget(nil,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then return c:IsLocation(LOCATION_MZONE) and c:IsFaceup() and c:GetAttack()>c:GetBaseAttack()
and Duel.IsExistingTarget(nil,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_ONFIELD,1,1,nil) local g=Duel.SelectTarget(tp,nil,tp,0,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
...@@ -41,7 +40,7 @@ function c9910501.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -41,7 +40,7 @@ function c9910501.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local label=e:GetLabel() local label=e:GetLabel()
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)~=0 and label>0 then if tc:IsRelateToEffect(e) and Duel.Destroy(tc,REASON_EFFECT)~=0 and label>0 and c:IsRelateToEffect(e) and c:IsFaceup() then
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
...@@ -50,19 +49,16 @@ function c9910501.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -50,19 +49,16 @@ function c9910501.desop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
end end
function c9910501.thfilter(c) function c9910501.rlfilter(c)
return c:IsSetCard(0xa950) and c:IsAbleToHand() return c:IsType(TYPE_MONSTER) and c:IsSetCard(0xa950) and c:IsReleasableByEffect()
end end
function c9910501.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c9910501.rltg(e,tp,eg,ep,ev,re,r,rp,chk)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and c9910501.thfilter(chkc) end if chk==0 then return Duel.IsExistingMatchingCard(c9910501.rlfilter,tp,LOCATION_DECK,0,1,nil) end
if chk==0 then return Duel.IsExistingTarget(c9910501.thfilter,tp,LOCATION_GRAVE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectTarget(tp,c9910501.thfilter,tp,LOCATION_GRAVE,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
end end
function c9910501.thop(e,tp,eg,ep,ev,re,r,rp) function c9910501.rlop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
if tc:IsRelateToEffect(e) then local g=Duel.SelectMatchingCard(tp,c9910501.rlfilter,tp,LOCATION_DECK,0,1,1,nil)
Duel.SendtoHand(tc,nil,REASON_EFFECT) if g:GetCount()>0 then
Duel.SendtoGrave(g,REASON_RELEASE+REASON_EFFECT)
end end
end end
...@@ -3,11 +3,13 @@ function c9910503.initial_effect(c) ...@@ -3,11 +3,13 @@ function c9910503.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--atk up --atk up
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_ATKCHANGE) e1:SetDescription(aux.Stringid(9910503,0))
e1:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_DRAW)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e1:SetProperty(EFFECT_FLAG_DELAY) e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,9910503)
e1:SetCondition(c9910503.atkcon) e1:SetCondition(c9910503.atkcon)
e1:SetTarget(c9910503.atktg) e1:SetTarget(c9910503.atktg)
e1:SetOperation(c9910503.atkop) e1:SetOperation(c9910503.atkop)
...@@ -18,40 +20,51 @@ function c9910503.initial_effect(c) ...@@ -18,40 +20,51 @@ function c9910503.initial_effect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_RELEASE) e2:SetCode(EVENT_RELEASE)
e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e2:SetCountLimit(1,9910503) e2:SetCountLimit(1,9910513)
e2:SetTarget(c9910503.thtg) e2:SetTarget(c9910503.thtg)
e2:SetOperation(c9910503.thop) e2:SetOperation(c9910503.thop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
c9910503.tsukisome_release_effect=e2
end end
function c9910503.cfilter(c,tp) function c9910503.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0xa950) and c:IsControler(tp) return c:IsFaceup() and c:IsSetCard(0xa950)
end end
function c9910503.atkcon(e,tp,eg,ep,ev,re,r,rp) function c9910503.atkcon(e,tp,eg,ep,ev,re,r,rp)
return not eg:IsContains(e:GetHandler()) and eg:IsExists(c9910503.cfilter,1,nil,tp) return not eg:IsContains(e:GetHandler()) and eg:IsExists(c9910503.cfilter,1,nil)
end end
function c9910503.atkfilter(c) function c9910503.atkfilter(c)
return c:IsFaceup() and not c:IsAttack(c:GetBaseAttack())
end
function c9910503.atkfilter2(c)
return c:IsFaceup() and c:IsType(TYPE_RITUAL) return c:IsFaceup() and c:IsType(TYPE_RITUAL)
end end
function c9910503.atktg(e,tp,eg,ep,ev,re,r,rp,chk) function c9910503.atktg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c9910503.atkfilter,tp,LOCATION_MZONE,0,1,nil) end local atkg=Duel.GetMatchingGroup(c9910503.atkfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
local num=math.floor(#atkg/3)
if chk==0 then return Duel.IsExistingMatchingCard(c9910503.atkfilter2,tp,LOCATION_MZONE,0,1,nil)
and (num<1 or Duel.IsPlayerCanDraw(tp,num)) end
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
end end
function c9910503.atkop(e,tp,eg,ep,ev,re,r,rp) function c9910503.atkop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.GetMatchingGroup(c9910503.atkfilter,tp,LOCATION_MZONE,0,nil) local g=Duel.GetMatchingGroup(c9910503.atkfilter2,tp,LOCATION_MZONE,0,nil)
if tg:GetCount()>0 then tc=g:GetFirst()
local sc=tg:GetFirst() if not tc then return end
while sc do while tc do
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(400) e1:SetValue(400)
sc:RegisterEffect(e1) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
sc=tg:GetNext() tc:RegisterEffect(e1)
end tc=g:GetNext()
end end
local atkg=Duel.GetMatchingGroup(c9910503.atkfilter,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
local num=math.floor(#atkg/3)
if num<1 then return end
Duel.Draw(tp,num,REASON_EFFECT)
end end
function c9910503.thfilter(c) function c9910503.thfilter(c)
return c:IsSetCard(0xa950) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() and not c:IsCode(9910503) return c:IsSetCard(0xa950) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end end
function c9910503.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c9910503.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c9910503.thfilter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c9910503.thfilter,tp,LOCATION_DECK,0,1,nil) end
......
--桃绯傀儡 鸨田奏海
function c9910505.initial_effect(c)
c:EnableReviveLimit()
--ritual summon
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_RELEASE+CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,9910505)
e1:SetTarget(c9910505.rstg)
e1:SetOperation(c9910505.rsop)
c:RegisterEffect(e1)
--draw
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_HANDES+CATEGORY_DRAW)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_RELEASE)
e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e2:SetCountLimit(1,9910506)
e2:SetTarget(c9910505.drtg)
e2:SetOperation(c9910505.drop)
c:RegisterEffect(e2)
end
function c9910505.rcheck(gc)
return function(tp,g,c)
return g:IsContains(gc)
end
end
function c9910505.filter(c)
return c:IsSetCard(0xa950)
end
function c9910505.rstg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then
local mg=Duel.GetRitualMaterial(tp)
aux.RCheckAdditional=c9910505.rcheck(c)
local res=mg:IsContains(c) and Duel.IsExistingMatchingCard(aux.RitualUltimateFilter,tp,LOCATION_HAND,0,1,nil,c9910505.filter,e,tp,mg,nil,Card.GetLevel,"Greater")
aux.RCheckAdditional=nil
return res
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND)
end
function c9910505.rsop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local mg=Duel.GetRitualMaterial(tp)
if c:GetControler()~=tp or not c:IsRelateToEffect(e) or not mg:IsContains(c) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
aux.RCheckAdditional=c9910505.rcheck(c)
local tg=Duel.SelectMatchingCard(tp,aux.RitualUltimateFilter,tp,LOCATION_HAND,0,1,1,nil,c9910505.filter,e,tp,mg,nil,Card.GetLevel,"Greater")
local tc=tg:GetFirst()
if tc then
mg=mg:Filter(Card.IsCanBeRitualMaterial,tc,tc)
if tc.mat_filter then
mg=mg:Filter(tc.mat_filter,tc,tp)
else
mg:RemoveCard(tc)
end
if not mg:IsContains(c) then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
Duel.SetSelectedCard(c)
aux.GCheckAdditional=aux.RitualCheckAdditional(tc,tc:GetLevel(),"Greater")
local mat=mg:SelectSubGroup(tp,aux.RitualCheck,false,1,tc:GetLevel(),tp,tc,tc:GetLevel(),"Greater")
aux.GCheckAdditional=nil
if not mat or mat:GetCount()==0 then
aux.RCheckAdditional=nil
return
end
tc:SetMaterial(mat)
Duel.ReleaseRitualMaterial(mat)
Duel.BreakEffect()
if Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,false,true,POS_FACEUP)~=0 then
tc:CompleteProcedure()
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(800)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e1,true)
end
end
aux.RCheckAdditional=nil
end
function c9910505.drtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
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)
Duel.SetOperationInfo(0,CATEGORY_HANDES,nil,0,tp,1)
end
function c9910505.drop(e,tp,eg,ep,ev,re,r,rp,chk)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
if Duel.Draw(p,d,REASON_EFFECT)~=0 then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD)
local g=Duel.SelectMatchingCard(tp,aux.TRUE,tp,LOCATION_HAND,0,1,1,nil)
if g:GetCount()>0 then
Duel.SendtoGrave(g,REASON_EFFECT+REASON_DISCARD)
end
end
end
--桃绯武士 生浒 --桃绯武士 生浒
function c9910507.initial_effect(c) function c9910507.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--search --equip
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND) e1:SetDescription(aux.Stringid(9910507,0))
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetCategory(CATEGORY_EQUIP)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetProperty(EFFECT_FLAG_DELAY) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCondition(c9910507.srcon) e1:SetRange(LOCATION_MZONE)
e1:SetTarget(c9910507.srtg) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetOperation(c9910507.srop) e1:SetCountLimit(1,9910507)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e1:SetTarget(c9910507.eqtg)
e1:SetOperation(c9910507.eqop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--ritual summon --atkup
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_SPECIAL_SUMMON) e2:SetCategory(CATEGORY_ATKCHANGE)
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetRange(LOCATION_MZONE) e2:SetCode(EVENT_RELEASE)
e2:SetCountLimit(1,9910507) e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e2:SetCondition(c9910507.spcon) e2:SetCountLimit(1,9910508)
e2:SetTarget(c9910507.sptg) e2:SetOperation(c9910507.regop)
e2:SetOperation(c9910507.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--atkup c9910507.tsukisome_release_effect=e2
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_ATKCHANGE)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_RELEASE)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e3:SetCountLimit(1,9910508)
e3:SetTarget(c9910507.atktg)
e3:SetOperation(c9910507.atkop)
c:RegisterEffect(e3)
end
function c9910507.srfilter(c)
return c:IsSetCard(0xa950) and c:IsType(TYPE_EQUIP) and c:IsAbleToHand()
end
function c9910507.srcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_RITUAL)
end end
function c9910507.srtg(e,tp,eg,ep,ev,re,r,rp,chk) function c9910507.tgfilter(c,tp)
if chk==0 then return Duel.IsExistingMatchingCard(c9910507.srfilter,tp,LOCATION_DECK,0,1,nil) end return c:IsFaceup() and c:IsSetCard(0xa950) and Duel.IsExistingMatchingCard(c9910507.eqfilter,tp,LOCATION_DECK,0,1,nil,c,tp)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end end
function c9910507.srop(e,tp,eg,ep,ev,re,r,rp) function c9910507.eqfilter(c,tc,tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) return c:IsType(TYPE_EQUIP) and c:CheckEquipTarget(tc) and c:CheckUniqueOnField(tp) and not c:IsForbidden()
local g=Duel.SelectMatchingCard(tp,c9910507.srfilter,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 c9910507.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetAttack()>e:GetHandler():GetBaseAttack()
end end
function c9910507.spfilter(c,e,tp) function c9910507.eqtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
return c:GetType()&0x81==0x81 and c:IsSetCard(0xa950) and c:IsLevelBelow(4)
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_RITUAL,tp,true,false)
end
function c9910507.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chkc then return chkc:IsLocation(LOCATION_MZONE) and c9910507.tgfilter(chkc,tp) end
and Duel.IsExistingMatchingCard(c9910507.spfilter,tp,LOCATION_HAND,0,1,nil,e,tp) end if chk==0 then return c:IsLocation(LOCATION_MZONE) and c:IsFaceup() and c:GetAttack()>c:GetBaseAttack()
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_HAND) and Duel.IsExistingTarget(c9910507.tgfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil,tp) end
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,c9910507.tgfilter,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil,tp)
e:SetLabel(c:GetAttack()-c:GetBaseAttack()) e:SetLabel(c:GetAttack()-c:GetBaseAttack())
end end
function c9910507.spop(e,tp,eg,ep,ev,re,r,rp) function c9910507.eqop(e,tp,eg,ep,ev,re,r,rp)
if Duel.GetLocationCount(tp,LOCATION_SZONE)<=0 then return end
local c=e:GetHandler() local c=e:GetHandler()
local label=e:GetLabel() local label=e:GetLabel()
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end local tc=Duel.GetFirstTarget()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) if tc:IsRelateToEffect(e) and tc:IsFaceup() then
local g=Duel.SelectMatchingCard(tp,c9910507.spfilter,tp,LOCATION_HAND,0,1,1,nil,e,tp) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_EQUIP)
local tc=g:GetFirst() local g=Duel.SelectMatchingCard(tp,c9910507.eqfilter,tp,LOCATION_DECK,0,1,1,nil,tc,tp)
if g:GetCount()>0 and Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,true,false,POS_FACEUP)~=0 then if #g>0 and Duel.Equip(tp,g:GetFirst(),tc) and label>0 and c:IsRelateToEffect(e) and c:IsFaceup() then
tc:CompleteProcedure()
if label>0 then
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
...@@ -83,23 +59,35 @@ function c9910507.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -83,23 +59,35 @@ function c9910507.spop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
end end
function c9910507.atkfilter(c) function c9910507.regop(e,tp,eg,ep,ev,re,r,rp)
return c:IsFaceup() and c:IsType(TYPE_RITUAL) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_PHASE+PHASE_STANDBY)
e1:SetCountLimit(1)
if Duel.GetCurrentPhase()==PHASE_STANDBY then
e1:SetLabel(Duel.GetTurnCount())
e1:SetReset(RESET_PHASE+PHASE_STANDBY,2)
else
e1:SetLabel(0)
e1:SetReset(RESET_PHASE+PHASE_STANDBY)
end
e1:SetCondition(c9910507.atkcon)
e1:SetOperation(c9910507.atkop)
Duel.RegisterEffect(e1,tp)
end end
function c9910507.atktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c9910507.atkcon(e,tp,eg,ep,ev,re,r,rp)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c9910507.atkfilter(chkc) end return Duel.GetTurnCount()~=e:GetLabel() and Duel.IsExistingMatchingCard(Card.IsFaceup,tp,LOCATION_MZONE,0,1,nil)
if chk==0 then return Duel.IsExistingTarget(c9910507.atkfilter,tp,LOCATION_MZONE,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,c9910507.atkfilter,tp,LOCATION_MZONE,0,1,1,nil)
end end
function c9910507.atkop(e,tp,eg,ep,ev,re,r,rp) function c9910507.atkop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() Duel.Hint(HINT_CARD,0,9910507)
if tc:IsFaceup() and tc:IsRelateToEffect(e) then local c=e:GetHandler()
local e1=Effect.CreateEffect(e:GetHandler()) local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,LOCATION_MZONE,0,nil)
for tc in aux.Next(g) do
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetValue(1000) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetValue(750)
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
end end
end end
...@@ -2,83 +2,62 @@ ...@@ -2,83 +2,62 @@
function c9910512.initial_effect(c) function c9910512.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_ATKCHANGE)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,9910512+EFFECT_COUNT_CODE_OATH)
e1:SetHintTiming(TIMING_DAMAGE_STEP,TIMINGS_CHECK_MONSTER+TIMING_DAMAGE_STEP)
e1:SetCondition(aux.dscon)
e1:SetTarget(c9910512.target)
e1:SetOperation(c9910512.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--atk
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_ATKCHANGE)
e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_SZONE)
e2:SetCountLimit(1,9910512)
e2:SetTarget(c9910512.atktg)
e2:SetOperation(c9910512.atkop)
c:RegisterEffect(e2)
--destroy
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_DESTROY)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
e3:SetRange(LOCATION_SZONE)
e3:SetCountLimit(1,9910513)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e3:SetCondition(c9910512.descon)
e3:SetTarget(c9910512.destg)
e3:SetOperation(c9910512.desop)
c:RegisterEffect(e3)
end end
function c9910512.atkfilter(c) function c9910512.spfilter(c,e,tp)
return c:IsFaceup() and c:IsSetCard(0xa950) return c:IsSetCard(0xa950) and c:IsLevel(4) and c:GetType()&0x81==0x81 and c:IsCanBeSpecialSummoned(e,0,tp,true,false)
end end
function c9910512.atktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c9910512.filter(c,e,tp)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and aux.nzatk(chkc) end local b1=c:GetAttack()<c:GetBaseAttack() and Duel.IsExistingMatchingCard(Card.IsCanTurnSet,tp,0,LOCATION_MZONE,1,nil)
if chk==0 then return Duel.IsExistingTarget(aux.nzatk,tp,0,LOCATION_MZONE,1,nil) local b2=c:GetAttack()>c:GetBaseAttack() and Duel.IsExistingMatchingCard(c9910512.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp)
and Duel.IsExistingMatchingCard(c9910512.atkfilter,tp,LOCATION_MZONE,0,1,nil) end return c:IsFaceup() and (b1 or b2)
end
function c9910512.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and c9910512.filter(chkc,e,tp) end
if chk==0 then return Duel.IsExistingTarget(c9910512.filter,tp,LOCATION_MZONE,0,1,nil,e,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,aux.nzatk,tp,0,LOCATION_MZONE,1,1,nil) Duel.SelectTarget(tp,c9910512.filter,tp,LOCATION_MZONE,0,1,1,nil,e,tp)
end end
function c9910512.atkop(e,tp,eg,ep,ev,re,r,rp) function c9910512.activate(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
local g=Duel.GetMatchingGroup(c9910512.atkfilter,tp,LOCATION_MZONE,0,nil) if tc:IsRelateToEffect(e) and tc:IsFaceup() then
if g:GetCount()==0 or tc:IsFacedown() or not tc:IsRelateToEffect(e) then return end
local atk=tc:GetAttack() local atk=tc:GetAttack()
local sc=g:GetFirst() local batk=tc:GetBaseAttack()
while sc do if atk<batk then
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END) e1:SetValue(1000)
e1:SetValue(math.ceil(atk/2)) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
sc:RegisterEffect(e1)
sc=g:GetNext()
end
if tc:IsFaceup() and tc:IsRelateToEffect(e) and not tc:IsImmuneToEffect(e) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_SET_ATTACK_FINAL)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
e1:SetValue(math.ceil(atk/2))
tc:RegisterEffect(e1) tc:RegisterEffect(e1)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_POSCHANGE)
local g=Duel.SelectMatchingCard(tp,Card.IsCanTurnSet,tp,0,LOCATION_MZONE,1,2,nil)
if g:GetCount()>0 then
Duel.HintSelection(g)
Duel.ChangePosition(g,POS_FACEDOWN_DEFENSE)
end
elseif atk>batk then
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetCode(EFFECT_UPDATE_ATTACK)
e2:SetValue(-1000)
e2:SetReset(RESET_EVENT+RESETS_STANDARD)
tc:RegisterEffect(e2)
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sc=Duel.SelectMatchingCard(tp,c9910512.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp):GetFirst()
if sc then
Duel.SpecialSummon(sc,SUMMON_VALUE_NOUVELLEZ,tp,tp,true,false,POS_FACEUP)
end
end end
end
function c9910512.cfilter(c,tp)
return c:IsFaceup() and c:IsSetCard(0xa950) and c:IsControler(tp)
end
function c9910512.descon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c9910512.cfilter,1,nil,tp)
end
function c9910512.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() and chkc:IsControler(1-tp) and chkc:IsFacedown() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,Card.IsFacedown,tp,0,LOCATION_ONFIELD,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
end
function c9910512.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.Destroy(tc,REASON_EFFECT)
end end
end end
--桃绯武士 数马 --桃绯武士 数马
function c9910515.initial_effect(c) function c9910515.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--ritual summon --ritual summon
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_ATKCHANGE+CATEGORY_SPECIAL_SUMMON) e1:SetDescription(aux.Stringid(9910515,0))
e1:SetCategory(CATEGORY_ATKCHANGE)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,9910515) e1:SetCountLimit(1,9910515)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e1:SetCondition(c9910515.spcon) e1:SetTarget(c9910515.atktg)
e1:SetTarget(c9910515.sptg) e1:SetOperation(c9910515.atkop)
e1:SetOperation(c9910515.spop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--atkup --set card
local e3=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_ATKCHANGE) e2:SetCategory(CATEGORY_GRAVE_SPSUMMON)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetCode(EVENT_RELEASE) e2:SetCode(EVENT_RELEASE)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP) e2:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e3:SetCountLimit(1,9910516) e2:SetCountLimit(1,9910516)
e3:SetTarget(c9910515.atktg) e2:SetOperation(c9910515.regop)
e3:SetOperation(c9910515.atkop) c:RegisterEffect(e2)
c:RegisterEffect(e3) c9910515.tsukisome_release_effect=e2
end end
function c9910515.spcon(e,tp,eg,ep,ev,re,r,rp) function c9910515.atktg(e,tp,eg,ep,ev,re,r,rp,chk)
return e:GetHandler():GetAttack()>e:GetHandler():GetBaseAttack()
end
function c9910515.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,0,LOCATION_MZONE,nil) local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,0,LOCATION_MZONE,nil)
if c:IsFaceup() then g:AddCard(c) end if chk==0 then return c:IsLocation(LOCATION_MZONE) and c:IsFaceup() and c:GetAttack()>c:GetBaseAttack() and #g>0 end
if chk==0 then return g:GetCount()>0 end Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
e:SetLabel(c:GetAttack()-c:GetBaseAttack()) e:SetLabel(c:GetAttack()-c:GetBaseAttack())
end end
function c9910515.spfilter(c,e,tp,sum) function c9910515.atkop(e,tp,eg,ep,ev,re,r,rp)
return c:GetType()&0x81==0x81 and c:IsSetCard(0xa950) and c:IsAttackBelow(sum)
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_RITUAL,tp,true,false)
end
function c9910515.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local label=e:GetLabel() local label=e:GetLabel()
if label<=0 then return end if label<=0 then return end
local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,0,LOCATION_MZONE,nil) local g=Duel.GetMatchingGroup(Card.IsFaceup,tp,0,LOCATION_MZONE,nil)
if c:IsFaceup() and c:IsRelateToEffect(e) then g:AddCard(c) end if c:IsFaceup() and c:IsRelateToEffect(e) then g:AddCard(c) end
local sum=0 if #g>0 then
if g:GetCount()>0 then for tc in aux.Next(g) do
local sc=g:GetFirst()
while sc do
local preatk=sc:GetAttack()
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(-label) e1:SetValue(-label)
sc:RegisterEffect(e1) tc:RegisterEffect(e1)
if sc:GetAttack()<preatk then sum=sum+preatk-sc:GetAttack() end
sc=g:GetNext()
end
end end
if sum~=0 and Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c9910515.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp,sum)
and Duel.SelectYesNo(tp,aux.Stringid(9910515,0)) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c9910515.spfilter,tp,LOCATION_DECK,0,1,1,nil,e,tp,sum)
local tc=g:GetFirst()
if tc then
Duel.SpecialSummon(tc,SUMMON_TYPE_RITUAL,tp,tp,true,false,POS_FACEUP)
tc:CompleteProcedure()
end end
end
function c9910515.regop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_PHASE+PHASE_END)
e1:SetCountLimit(1)
if Duel.GetCurrentPhase()==PHASE_END then
e1:SetLabel(Duel.GetTurnCount())
e1:SetReset(RESET_PHASE+PHASE_END,2)
else
e1:SetLabel(0)
e1:SetReset(RESET_PHASE+PHASE_END)
end end
e1:SetCondition(c9910515.setcon)
e1:SetOperation(c9910515.setop)
Duel.RegisterEffect(e1,tp)
end end
function c9910515.atktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c9910515.setfilter(c,e,tp)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and chkc:IsFaceup() end if not c:IsSetCard(0xa950) or not c:IsFaceupEx() then return false end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,0,LOCATION_MZONE,1,nil) end if c:IsType(TYPE_MONSTER) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP) return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
Duel.SelectTarget(tp,Card.IsFaceup,tp,0,LOCATION_MZONE,1,1,nil) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEDOWN_DEFENSE)
else return c:IsSSetable() end
end end
function c9910515.atkop(e,tp,eg,ep,ev,re,r,rp) function c9910515.setcon(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget() return Duel.GetTurnCount()~=e:GetLabel()
if tc:IsFaceup() and tc:IsRelateToEffect(e) then and Duel.IsExistingMatchingCard(aux.NecroValleyFilter(c9910515.setfilter),tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,nil,e,tp)
local e1=Effect.CreateEffect(e:GetHandler()) end
e1:SetType(EFFECT_TYPE_SINGLE) function c9910515.setop(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EFFECT_UPDATE_ATTACK) Duel.Hint(HINT_CARD,0,9910515)
e1:SetValue(-500) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
e1:SetReset(RESET_EVENT+RESETS_STANDARD) local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(c9910515.setfilter),tp,LOCATION_GRAVE+LOCATION_REMOVED,0,1,1,nil,e,tp)
tc:RegisterEffect(e1) local tc=g:GetFirst()
if tc then
if tc:IsType(TYPE_MONSTER) then
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEDOWN_DEFENSE)
Duel.ConfirmCards(1-tp,tc)
else
Duel.SSet(tp,tc)
end
end end
end end
...@@ -10,6 +10,7 @@ function c9910521.initial_effect(c) ...@@ -10,6 +10,7 @@ function c9910521.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--to hand --to hand
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(9910521,2))
e2:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND) e2:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
...@@ -38,6 +39,7 @@ function c9910521.thcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -38,6 +39,7 @@ function c9910521.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c9910521.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c9910521.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0 end if chk==0 then return Duel.GetFieldGroupCount(tp,0,LOCATION_HAND)>0 end
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
end end
function c9910521.thfilter(c,cardtype) function c9910521.thfilter(c,cardtype)
return c:IsSetCard(0xa950) and c:IsType(cardtype) and c:IsAbleToHand() return c:IsSetCard(0xa950) and c:IsType(cardtype) and c:IsAbleToHand()
......
--桃绯武士 更科睦美 --桃绯武士 更科睦美
function c9910527.initial_effect(c) function c9910527.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
--negate --tohand
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetDescription(aux.Stringid(9910527,0))
e1:SetRange(LOCATION_HAND) e1:SetCategory(CATEGORY_TOHAND)
e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCountLimit(1,9910527) e1:SetCountLimit(1,9910527)
e1:SetCost(c9910527.cost) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE)
e1:SetOperation(c9910527.operation) e1:SetTarget(c9910527.thtg)
e1:SetOperation(c9910527.thop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--tohand --negate
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_TOHAND) e2:SetCategory(CATEGORY_DISABLE)
e2:SetType(EFFECT_TYPE_QUICK_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_FREE_CHAIN) e2:SetCode(EVENT_RELEASE)
e2:SetRange(LOCATION_MZONE) e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetCountLimit(1,9910528) e2:SetCountLimit(1,9910528)
e2:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_END_PHASE) e2:SetTarget(c9910527.distg)
e2:SetCondition(c9910527.thcon) e2:SetOperation(c9910527.disop)
e2:SetTarget(c9910527.thtg)
e2:SetOperation(c9910527.thop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end c9910527.tsukisome_release_effect=e2
function c9910527.cfilter(c)
return c:IsType(TYPE_RITUAL) and c:IsType(TYPE_MONSTER) and c:IsReleasable()
end
function c9910527.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsReleasable()
and Duel.IsExistingMatchingCard(c9910527.cfilter,tp,LOCATION_HAND,0,1,e:GetHandler()) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g=Duel.SelectMatchingCard(tp,c9910527.cfilter,tp,LOCATION_HAND,0,1,1,e:GetHandler())
g:AddCard(e:GetHandler())
Duel.Release(g,REASON_COST)
end
function c9910527.operation(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetCode(EFFECT_CANNOT_SUMMON)
e1:SetTargetRange(1,0)
e1:SetTarget(c9910527.splimit)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=Effect.CreateEffect(e:GetHandler())
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EVENT_CHAIN_SOLVING)
e2:SetCondition(c9910527.negcon)
e2:SetOperation(c9910527.negop)
e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
function c9910527.splimit(e,c)
return not c:IsSetCard(0xa950)
end
function c9910527.negcon(e,tp,eg,ep,ev,re,r,rp)
return rp==1-tp and Duel.IsChainDisablable(ev) and Duel.GetFlagEffect(tp,9910527)<1
end
function c9910527.negop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.SelectYesNo(tp,aux.Stringid(9910527,0)) then return end
Duel.Hint(HINT_CARD,0,9910527)
Duel.RegisterFlagEffect(tp,9910527,RESET_PHASE+PHASE_END,0,1)
Duel.NegateEffect(ev)
end
function c9910527.thcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetAttack()>e:GetHandler():GetBaseAttack()
end end
function c9910527.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c9910527.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local c=e:GetHandler() local c=e:GetHandler()
if chkc then return chkc:IsOnField() and chkc~=c and c:IsAbleToHand() end if chkc then return chkc:IsOnField() and chkc~=c and c:IsAbleToHand() end
if chk==0 then return Duel.IsExistingTarget(Card.IsAbleToHand,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,c) end if chk==0 then return c:IsLocation(LOCATION_MZONE) and c:IsFaceup() and c:GetAttack()>c:GetBaseAttack()
and Duel.IsExistingTarget(Card.IsAbleToHand,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,c) end
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g=Duel.SelectTarget(tp,Card.IsAbleToHand,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,c) local g=Duel.SelectTarget(tp,Card.IsAbleToHand,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,1,c)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0) Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
...@@ -79,7 +41,8 @@ function c9910527.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -79,7 +41,8 @@ function c9910527.thop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local label=e:GetLabel() local label=e:GetLabel()
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) and Duel.SendtoHand(tc,nil,REASON_EFFECT)~=0 and label>0 then if tc:IsRelateToEffect(e) and Duel.SendtoHand(tc,nil,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_HAND)
and label>0 and c:IsRelateToEffect(e) and c:IsFaceup() then
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK) e1:SetCode(EFFECT_UPDATE_ATTACK)
...@@ -88,3 +51,55 @@ function c9910527.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -88,3 +51,55 @@ function c9910527.thop(e,tp,eg,ep,ev,re,r,rp)
c:RegisterEffect(e1) c:RegisterEffect(e1)
end end
end end
function c9910527.disfilter(c,e)
return c:IsFaceupEx() and c:IsType(TYPE_EFFECT) and (c:IsCanBeDisabledByEffect(e) or c:IsLocation(LOCATION_GRAVE))
end
function c9910527.distg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c9910527.disfilter,tp,0,LOCATION_MZONE+LOCATION_GRAVE,1,nil,e) end
end
function c9910527.disop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISABLE)
local g=Duel.SelectMatchingCard(tp,c9910527.disfilter,tp,0,LOCATION_MZONE+LOCATION_GRAVE,1,1,nil,e)
local tc=g:GetFirst()
if tc then
Duel.HintSelection(g)
if tc:IsLocation(LOCATION_MZONE) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
tc:RegisterEffect(e1)
local e2=e1:Clone()
e2:SetCode(EFFECT_DISABLE_EFFECT)
tc:RegisterEffect(e2)
end
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_DISABLE)
e3:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e3:SetTarget(c9910527.distg2)
e3:SetLabelObject(tc)
e3:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e3,tp)
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e4:SetCode(EVENT_CHAIN_SOLVING)
e4:SetCondition(c9910527.discon2)
e4:SetOperation(c9910527.disop2)
e4:SetLabelObject(tc)
e4:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e4,tp)
end
end
function c9910527.distg2(e,c)
local tc=e:GetLabelObject()
return c:IsOriginalCodeRule(tc:GetOriginalCodeRule())
end
function c9910527.discon2(e,tp,eg,ep,ev,re,r,rp)
local tc=e:GetLabelObject()
return re:IsActiveType(TYPE_MONSTER) and re:GetHandler():IsOriginalCodeRule(tc:GetOriginalCodeRule())
end
function c9910527.disop2(e,tp,eg,ep,ev,re,r,rp)
Duel.NegateEffect(ev)
end
...@@ -27,13 +27,13 @@ function c9910723.filter(c,lv,e,tp) ...@@ -27,13 +27,13 @@ function c9910723.filter(c,lv,e,tp)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,true,false) and Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,true,false)
end end
function c9910723.target(e,tp,eg,ep,ev,re,r,rp,chk) function c9910723.target(e,tp,eg,ep,ev,re,r,rp,chk)
local lv=Duel.GetFieldGroupCount(1-tp,LOCATION_MZONE,0) local lv=Duel.GetFieldGroupCount(1-tp,LOCATION_MZONE,0)+1
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c9910723.filter,tp,LOCATION_DECK,0,1,nil,lv,e,tp) end and Duel.IsExistingMatchingCard(c9910723.filter,tp,LOCATION_DECK,0,1,nil,lv,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end end
function c9910723.activate(e,tp,eg,ep,ev,re,r,rp) function c9910723.activate(e,tp,eg,ep,ev,re,r,rp)
local lv=Duel.GetFieldGroupCount(1-tp,LOCATION_MZONE,0) local lv=Duel.GetFieldGroupCount(1-tp,LOCATION_MZONE,0)+1
if Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then if Duel.GetLocationCount(tp,LOCATION_MZONE)>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c9910723.filter,tp,LOCATION_DECK,0,1,1,nil,lv,e,tp) local g=Duel.SelectMatchingCard(tp,c9910723.filter,tp,LOCATION_DECK,0,1,1,nil,lv,e,tp)
...@@ -52,8 +52,7 @@ function c9910723.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -52,8 +52,7 @@ function c9910723.cost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
function c9910723.target2(e,tp,eg,ep,ev,re,r,rp,chk) function c9910723.target2(e,tp,eg,ep,ev,re,r,rp,chk)
local lv=Duel.GetFieldGroupCount(1-tp,LOCATION_MZONE,0) local lv=Duel.GetFieldGroupCount(1-tp,LOCATION_MZONE,0)+1
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then lv=lv+1 end
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(c9910723.filter,tp,LOCATION_DECK,0,1,nil,lv,e,tp) end and Duel.IsExistingMatchingCard(c9910723.filter,tp,LOCATION_DECK,0,1,nil,lv,e,tp) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
...@@ -65,12 +64,11 @@ function c9910723.chlimit(e,ep,tp) ...@@ -65,12 +64,11 @@ function c9910723.chlimit(e,ep,tp)
return tp==ep return tp==ep
end end
function c9910723.activate2(e,tp,eg,ep,ev,re,r,rp) function c9910723.activate2(e,tp,eg,ep,ev,re,r,rp)
local lv=Duel.GetFieldGroupCount(1-tp,LOCATION_MZONE,0) local lv=Duel.GetFieldGroupCount(1-tp,LOCATION_MZONE,0)+1
if e:IsHasType(EFFECT_TYPE_ACTIVATE) then lv=lv+1 end
local ct=1 local ct=1
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
if ft<=0 then return end if ft<=0 then return end
if ft>1 and e:IsHasType(EFFECT_TYPE_ACTIVATE) then ct=2 end if e:IsHasType(EFFECT_TYPE_ACTIVATE) and ft>1 and not Duel.IsPlayerAffectedByEffect(tp,59822133) then ct=2 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local g=Duel.SelectMatchingCard(tp,c9910723.filter,tp,LOCATION_DECK,0,1,ct,nil,lv,e,tp) local g=Duel.SelectMatchingCard(tp,c9910723.filter,tp,LOCATION_DECK,0,1,ct,nil,lv,e,tp)
if g:GetCount()>0 then if g:GetCount()>0 then
......
...@@ -27,7 +27,7 @@ function c9911324.initial_effect(c) ...@@ -27,7 +27,7 @@ function c9911324.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
--destroy --destroy
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetCategory(CATEGORY_TOHAND) e4:SetCategory(CATEGORY_DESTROY)
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_TO_GRAVE) e4:SetCode(EVENT_TO_GRAVE)
e4:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY) e4:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
......
--苍穹之兽王骑士
function c9911401.initial_effect(c)
c:EnableReviveLimit()
--xyz summon
aux.AddXyzProcedureLevelFree(c,c9911401.mfilter,aux.TRUE,2,2)
--search
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,9911401)
e1:SetCost(c9911401.thcost)
e1:SetTarget(c9911401.thtg)
e1:SetOperation(c9911401.thop)
c:RegisterEffect(e1)
--special summon
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1,9911402)
e2:SetHintTiming(0,TIMING_MAIN_END)
e2:SetCondition(c9911401.spcon)
e2:SetCost(c9911401.spcost)
e2:SetTarget(c9911401.sptg)
e2:SetOperation(c9911401.spop)
c:RegisterEffect(e2)
end
function c9911401.mfilter(c,xyzc)
return c:IsXyzLevel(xyzc,4) or c:IsXyzLevel(xyzc,8)
end
function c9911401.thcost(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 c9911401.thfilter(c)
return c:IsLevelAbove(5) and c:IsRace(RACE_BEASTWARRIOR) and c:IsAbleToHand()
end
function c9911401.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c9911401.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
function c9911401.thop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectMatchingCard(tp,c9911401.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 c9911401.spcon(e,tp,eg,ep,ev,re,r,rp)
local ph=Duel.GetCurrentPhase()
return ph==PHASE_MAIN1 or ph==PHASE_MAIN2
end
function c9911401.gcheck1(g,tp)
return g:IsExists(c9911401.typfilter,1,nil,tp)
end
function c9911401.typfilter(c,tp)
local type1=c:GetType()&0x7
return Duel.IsExistingMatchingCard(c9911401.xmfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil,type1)
end
function c9911401.xmfilter(c,type1)
return c:IsType(type1) and c:IsFaceup() and c:IsCanOverlay()
end
function c9911401.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(Card.IsDiscardable,tp,LOCATION_HAND,0,nil)
if chk==0 then return g:CheckSubGroup(c9911401.gcheck1,2,2,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DISCARD)
local sg=g:SelectSubGroup(tp,c9911401.gcheck1,false,2,2,tp)
Duel.SendtoGrave(sg,REASON_DISCARD+REASON_COST)
local type1=sg:GetFirst():GetType()&0x7
type1=sg:GetNext():GetType()&0x7|type1
e:SetLabel(type1)
end
function c9911401.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsType(TYPE_XYZ)
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
end
function c9911401.gcheck2(g,type1,type2)
return #g==1 or aux.gfcheck(g,Card.IsType,type1,type2)
end
function c9911401.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local type1=e:GetLabel()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 and type1>0 then
local g=Duel.GetMatchingGroup(c9911401.xmfilter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,c,type1)
if #g==0 then return end
local type2=0
if type1&0x1~=0 then
type2=type1-0x1
type1=0x1
elseif type1&0x2~=0 then
type2=type1-0x2
type1=0x2
end
local sg=Group.CreateGroup()
if type2==0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
sg=g:Select(tp,1,1,nil)
else
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
sg=g:SelectSubGroup(tp,c9911401.gcheck2,false,1,2,type1,type2)
end
if #sg==0 then return end
Duel.HintSelection(sg)
local og=Group.CreateGroup()
for tc in aux.Next(sg) do
og:Merge(tc:GetOverlayGroup())
tc:CancelToGrave()
end
if #og>0 then Duel.SendtoGrave(og,REASON_RULE) end
Duel.Overlay(c,sg)
end
end
--浮光之圣泉 桑茨普茵
function c9911403.initial_effect(c)
--spsummon
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_HAND)
e1:SetCountLimit(1,9911403)
e1:SetCost(c9911403.spcost)
e1:SetTarget(c9911403.sptg)
e1:SetOperation(c9911403.spop)
c:RegisterEffect(e1)
--atk
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_ATKCHANGE)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetOperation(c9911403.atkop)
c:RegisterEffect(e2)
if c9911403.counter==nil then
c9911403.counter=true
c9911403[0]=0
c9911403[1]=0
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e2:SetCode(EVENT_PHASE_START+PHASE_DRAW)
e2:SetOperation(c9911403.resetcount)
Duel.RegisterEffect(e2,0)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
e3:SetCode(EVENT_RELEASE)
e3:SetOperation(c9911403.addcount)
Duel.RegisterEffect(e3,0)
end
end
function c9911403.resetcount(e,tp,eg,ep,ev,re,r,rp)
c9911403[0]=0
c9911403[1]=0
end
function c9911403.cfilter(c,tp)
return c:GetFlagEffectLabel(9911404) and c:GetFlagEffectLabel(9911404)>0 and c:GetSummonPlayer()==tp
end
function c9911403.addcount(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:GetFirst()
while tc do
if tc:IsPreviousLocation(LOCATION_MZONE) or (tc:IsPreviousLocation(LOCATION_HAND) and tc:IsType(TYPE_MONSTER)) then
local p=tc:GetPreviousControler()
local sc=Duel.GetMatchingGroup(c9911403.cfilter,0,LOCATION_MZONE,LOCATION_MZONE,nil,p):GetFirst()
if sc then
local flag=sc:GetFlagEffectLabel(9911404)
if c9911403[p]<flag then c9911403[p]=c9911403[p]+1 end
sc:SetFlagEffectLabel(9911404,flag+1)
end
end
tc=eg:GetNext()
end
end
function c9911403.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetDecktopGroup(tp,3)
if chk==0 then return g:FilterCount(Card.IsAbleToRemoveAsCost,nil,POS_FACEDOWN)==3 end
Duel.DisableShuffleCheck()
Duel.Remove(g,POS_FACEDOWN,REASON_COST)
local fid=e:GetHandler():GetFieldID()
for tc in aux.Next(g) do
tc:RegisterFlagEffect(9911403,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1,fid)
end
g:KeepAlive()
e:SetLabel(fid)
e:SetLabelObject(g)
end
function c9911403.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,0,0)
end
function c9911403.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)>0 then
local g=e:GetLabelObject()
if #g>0 then
c:RegisterFlagEffect(9911404,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1,1)
g:KeepAlive()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_PHASE+PHASE_END)
e1:SetCountLimit(1)
e1:SetLabel(e:GetLabel())
e1:SetLabelObject(g)
e1:SetCondition(c9911403.thcon)
e1:SetOperation(c9911403.thop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
end
end
function c9911403.thfilter(c,fid)
return c:GetFlagEffectLabel(9911403)==fid and c:IsAbleToHand()
end
function c9911403.thcon(e,tp,eg,ep,ev,re,r,rp)
local g=e:GetLabelObject()
if not g:IsExists(c9911403.thfilter,1,nil,e:GetLabel()) then
g:DeleteGroup()
e:Reset()
return false
else return true end
end
function c9911403.thop(e,tp,eg,ep,ev,re,r,rp)
local g=e:GetLabelObject()
local sg=g:Filter(c9911403.thfilter,nil,e:GetLabel())
g:DeleteGroup()
if #sg>0 and c9911403[tp]>=3 then
Duel.Hint(HINT_CARD,0,9911403)
Duel.SendtoHand(sg,nil,REASON_EFFECT)
end
end
function c9911403.atkop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetValue(c9911403.value1)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetTargetRange(0,LOCATION_MZONE)
e2:SetValue(c9911403.value2)
Duel.RegisterEffect(e2,tp)
end
function c9911403.value1(e,c)
return Duel.GetMatchingGroupCount(Card.IsFacedown,0,LOCATION_REMOVED,LOCATION_REMOVED,nil)*200
end
function c9911403.value2(e,c)
return Duel.GetMatchingGroupCount(Card.IsFacedown,0,LOCATION_REMOVED,LOCATION_REMOVED,nil)*(-200)
end
...@@ -1122,6 +1122,9 @@ ...@@ -1122,6 +1122,9 @@
#锦依卫66ccff 745 #锦依卫66ccff 745
!setname 0x745 人偶 !setname 0x745 人偶
#???
!setname 0x630 传说天
#TYGOC Submissions #TYGOC Submissions
#Desruc_6872 987 #Desruc_6872 987
!counter 0x57b Scarlet Counter !counter 0x57b Scarlet Counter
......
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