Skip to content

Commit 5588d7b

Browse files
authored
Added new card scripts
1 parent e0f14c5 commit 5588d7b

File tree

8 files changed

+675
-0
lines changed

8 files changed

+675
-0
lines changed

pre-release/c101304101.lua

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
--ダークネス・リゾネーター
2+
--Darkness Resonator
3+
--Scripted by Eerie Code
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--Special Summon this card from your hand
7+
local e1=Effect.CreateEffect(c)
8+
e1:SetDescription(aux.Stringid(id,0))
9+
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
10+
e1:SetType(EFFECT_TYPE_IGNITION)
11+
e1:SetRange(LOCATION_HAND)
12+
e1:SetCountLimit(1,{id,0})
13+
e1:SetCost(Cost.Reveal(function(c) return c:IsCode(CARD_RED_DRAGON_ARCHFIEND) end,nil,1,1,nil,LOCATION_EXTRA))
14+
e1:SetTarget(s.sptg)
15+
e1:SetOperation(s.spop)
16+
c:RegisterEffect(e1)
17+
--Apply a "during your Main Phase this turn, you can Normal Summon 1 "Resonator" monster in addition to your Normal Summon/Set (you can only gain this effect once per turn)" effect
18+
local e2=Effect.CreateEffect(c)
19+
e2:SetDescription(aux.Stringid(id,1))
20+
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
21+
e2:SetProperty(EFFECT_FLAG_DELAY)
22+
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
23+
e2:SetCountLimit(1,{id,1})
24+
e2:SetCondition(function(e,tp) return Duel.IsPlayerCanAdditionalSummon(tp) end)
25+
e2:SetTarget(function(e,tp,eg,ep,ev,re,r,rp,chk) if chk==0 then return Duel.IsPlayerCanSummon(tp) end end)
26+
e2:SetOperation(s.extransop)
27+
c:RegisterEffect(e2)
28+
--Change the Levels of any number of Tuners you control to 1
29+
local e3=Effect.CreateEffect(c)
30+
e3:SetDescription(aux.Stringid(id,2))
31+
e3:SetCategory(CATEGORY_LVCHANGE)
32+
e3:SetType(EFFECT_TYPE_IGNITION)
33+
e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
34+
e3:SetRange(LOCATION_MZONE)
35+
e3:SetCountLimit(1,{id,2})
36+
e3:SetTarget(s.lvtg)
37+
e3:SetOperation(s.lvop)
38+
c:RegisterEffect(e3)
39+
end
40+
s.listed_names={CARD_RED_DRAGON_ARCHFIEND}
41+
s.listed_series={SET_RESONATOR}
42+
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
43+
local c=e:GetHandler()
44+
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
45+
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
46+
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,tp,0)
47+
end
48+
function s.spop(e,tp,eg,ep,ev,re,r,rp)
49+
local c=e:GetHandler()
50+
if c:IsRelateToEffect(e) then
51+
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
52+
end
53+
--You cannot Special Summon from the Extra Deck for the rest of this turn, except Synchro Monsters
54+
local e1=Effect.CreateEffect(c)
55+
e1:SetDescription(aux.Stringid(id,3))
56+
e1:SetType(EFFECT_TYPE_FIELD)
57+
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
58+
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
59+
e1:SetTargetRange(1,0)
60+
e1:SetTarget(function(e,c) return c:IsLocation(LOCATION_EXTRA) and not c:IsSynchroMonster() end)
61+
e1:SetReset(RESET_PHASE|PHASE_END)
62+
Duel.RegisterEffect(e1,tp)
63+
--"Clock Lizard" check
64+
aux.addTempLizardCheck(c,tp,function(e,c) return not c:IsOriginalType(TYPE_SYNCHRO) end)
65+
end
66+
function s.extransop(e,tp,eg,ep,ev,re,r,rp)
67+
local c=e:GetHandler()
68+
aux.RegisterClientHint(c,nil,tp,1,0,aux.Stringid(id,4))
69+
--During your Main Phase this turn, you can Normal Summon 1 "Resonator" monster in addition to your Normal Summon/Set (you can only gain this effect once per turn)
70+
local e1=Effect.CreateEffect(c)
71+
e1:SetDescription(aux.Stringid(id,5))
72+
e1:SetType(EFFECT_TYPE_FIELD)
73+
e1:SetCode(EFFECT_EXTRA_SUMMON_COUNT)
74+
e1:SetTargetRange(LOCATION_HAND|LOCATION_MZONE,0)
75+
e1:SetTarget(function(e,c) return c:IsSetCard(SET_RESONATOR) end)
76+
e1:SetReset(RESET_PHASE|PHASE_END)
77+
Duel.RegisterEffect(e1,tp)
78+
end
79+
function s.lvfilter(c)
80+
return c:IsType(TYPE_TUNER) and not c:IsLevel(1) and c:IsFaceup()
81+
end
82+
function s.lvtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
83+
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_MZONE) and s.lvfilter(chkc) end
84+
if chk==0 then return Duel.IsExistingTarget(s.lvfilter,tp,LOCATION_MZONE,0,1,nil) end
85+
local max_ct=Duel.GetTargetCount(s.lvfilter,tp,LOCATION_MZONE,0,nil)
86+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
87+
local g=Duel.SelectTarget(tp,s.lvfilter,tp,LOCATION_MZONE,0,1,max_ct,nil)
88+
Duel.SetOperationInfo(0,CATEGORY_LVCHANGE,g,#g,tp,1)
89+
end
90+
function s.lvop(e,tp,eg,ep,ev,re,r,rp)
91+
local c=e:GetHandler()
92+
local tg=Duel.GetTargetCards(e)
93+
for tc in tg:Iter() do
94+
--Their Levels become 1
95+
local e1=Effect.CreateEffect(c)
96+
e1:SetType(EFFECT_TYPE_SINGLE)
97+
e1:SetCategory(EFFECT_FLAG_CANNOT_DISABLE)
98+
e1:SetCode(EFFECT_CHANGE_LEVEL)
99+
e1:SetValue(1)
100+
e1:SetReset(RESET_EVENT|RESETS_STANDARD)
101+
tc:RegisterEffect(e1)
102+
end
103+
end

pre-release/c101304102.lua

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
--パワー・バイス・ドラゴン
2+
--Power Vice Dragon
3+
--Scripted by Eerie Code
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--A "Red Dragon Archfiend" that was Synchro Summoned using this card as material cannot be destroyed by battle
7+
local e1=Effect.CreateEffect(c)
8+
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
9+
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
10+
e1:SetCode(EVENT_BE_MATERIAL)
11+
e1:SetCondition(function(e,tp,eg,ep,ev,re,r,rp) return r==REASON_SYNCHRO and e:GetHandler():GetReasonCard():IsCode(CARD_RED_DRAGON_ARCHFIEND) end)
12+
e1:SetOperation(s.effop)
13+
c:RegisterEffect(e1)
14+
--Special Summon this card from your hand
15+
local e2=Effect.CreateEffect(c)
16+
e2:SetDescription(aux.Stringid(id,0))
17+
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
18+
e2:SetType(EFFECT_TYPE_IGNITION)
19+
e2:SetRange(LOCATION_HAND)
20+
e2:SetCountLimit(1,{id,0})
21+
e2:SetCondition(s.spcon)
22+
e2:SetTarget(s.sptg)
23+
e2:SetOperation(s.spop)
24+
c:RegisterEffect(e2)
25+
--Add 1 "Resonator" monster from your Deck to your hand
26+
local e3=Effect.CreateEffect(c)
27+
e3:SetDescription(aux.Stringid(id,1))
28+
e3:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
29+
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
30+
e3:SetProperty(EFFECT_FLAG_DELAY)
31+
e3:SetCode(EVENT_SPSUMMON_SUCCESS)
32+
e3:SetCountLimit(1,{id,1})
33+
e3:SetTarget(s.thtg)
34+
e3:SetOperation(s.thop)
35+
c:RegisterEffect(e3)
36+
end
37+
s.listed_names={CARD_RED_DRAGON_ARCHFIEND}
38+
s.listed_series={SET_RESONATOR}
39+
function s.effop(e,tp,eg,ep,ev,re,r,rp)
40+
local c=e:GetHandler()
41+
local rc=c:GetReasonCard()
42+
--Cannot be destroyed by battle
43+
local e1=Effect.CreateEffect(c)
44+
e1:SetDescription(3000)
45+
e1:SetType(EFFECT_TYPE_SINGLE)
46+
e1:SetProperty(EFFECT_FLAG_CLIENT_HINT)
47+
e1:SetCode(EFFECT_INDESTRUCTABLE_BATTLE)
48+
e1:SetValue(1)
49+
e1:SetReset(RESET_EVENT|RESETS_STANDARD)
50+
rc:RegisterEffect(e1)
51+
end
52+
function s.spconfilter(c)
53+
return not (c:IsAttribute(ATTRIBUTE_DARK) and c:IsSynchroMonster() and c:IsFaceup())
54+
end
55+
function s.spcon(e,tp,eg,ep,ev,re,r,rp)
56+
return not Duel.IsExistingMatchingCard(s.spconfilter,tp,LOCATION_MZONE,0,1,nil)
57+
end
58+
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
59+
local c=e:GetHandler()
60+
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
61+
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
62+
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,tp,0)
63+
end
64+
function s.spop(e,tp,eg,ep,ev,re,r,rp)
65+
local c=e:GetHandler()
66+
if c:IsRelateToEffect(e) then
67+
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
68+
end
69+
end
70+
function s.thfilter(c)
71+
return c:IsSetCard(SET_RESONATOR) and c:IsMonster() and c:IsAbleToHand()
72+
end
73+
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
74+
if chk==0 then return Duel.IsExistingMatchingCard(s.thfilter,tp,LOCATION_DECK,0,1,nil) end
75+
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
76+
end
77+
function s.thop(e,tp,eg,ep,ev,re,r,rp)
78+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
79+
local g=Duel.SelectMatchingCard(tp,s.thfilter,tp,LOCATION_DECK,0,1,1,nil)
80+
if #g>0 then
81+
Duel.SendtoHand(g,nil,REASON_EFFECT)
82+
Duel.ConfirmCards(1-tp,g)
83+
end
84+
local c=e:GetHandler()
85+
--You cannot Special Summon from the Extra Deck for the rest of this turn, except DARK Synchro monsters
86+
local e1=Effect.CreateEffect(c)
87+
e1:SetDescription(aux.Stringid(id,2))
88+
e1:SetType(EFFECT_TYPE_FIELD)
89+
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
90+
e1:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
91+
e1:SetTargetRange(1,0)
92+
e1:SetTarget(function(e,c) return c:IsLocation(LOCATION_EXTRA) and not (c:IsAttribute(ATTRIBUTE_DARK) and c:IsSynchroMonster()) end)
93+
e1:SetReset(RESET_PHASE|PHASE_END)
94+
Duel.RegisterEffect(e1,tp)
95+
--"Clock Lizard" check
96+
aux.addTempLizardCheck(c,tp,function(e,c) return not (c:IsOriginalAttribute(ATTRIBUTE_DARK) and c:IsOriginalType(TYPE_SYNCHRO)) end)
97+
end

pre-release/c101304103.lua

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
--デモン・ピース・ゴーレム
2+
--Fiend Piece Golem
3+
--Scripted by The Razgriz
4+
local s,id=GetID()
5+
function s.initial_effect(c)
6+
--Special Summon this card from your hand
7+
local e1=Effect.CreateEffect(c)
8+
e1:SetDescription(aux.Stringid(id,0))
9+
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
10+
e1:SetType(EFFECT_TYPE_IGNITION)
11+
e1:SetRange(LOCATION_HAND)
12+
e1:SetCountLimit(1,{id,0})
13+
e1:SetCondition(s.selfspcon)
14+
e1:SetTarget(s.selfsptg)
15+
e1:SetOperation(s.selfspop)
16+
c:RegisterEffect(e1)
17+
--Decrease this card's Level by up to 2
18+
local e2=Effect.CreateEffect(c)
19+
e2:SetDescription(aux.Stringid(id,1))
20+
e2:SetCategory(CATEGORY_LVCHANGE)
21+
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
22+
e2:SetProperty(EFFECT_FLAG_DELAY)
23+
e2:SetCode(EVENT_SPSUMMON_SUCCESS)
24+
e2:SetCountLimit(1,{id,1})
25+
e2:SetOperation(s.lvchangeop)
26+
c:RegisterEffect(e2)
27+
--Special Summon 1 Level 4 or lower Fiend monster from your GY
28+
local e3=Effect.CreateEffect(c)
29+
e3:SetDescription(aux.Stringid(id,2))
30+
e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
31+
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
32+
e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
33+
e3:SetCode(EVENT_BE_MATERIAL)
34+
e3:SetCountLimit(1,{id,2})
35+
e3:SetCondition(s.gyspcon)
36+
e3:SetTarget(s.gysptg)
37+
e3:SetOperation(s.gyspop)
38+
c:RegisterEffect(e3)
39+
end
40+
s.listed_names={CARD_RED_DRAGON_ARCHFIEND}
41+
function s.selfspconfilter(c)
42+
return c:IsRace(RACE_FIEND) and c:IsType(TYPE_TUNER) and c:IsFaceup()
43+
end
44+
function s.selfspcon(e,tp,eg,ep,ev,re,r,rp)
45+
return Duel.IsExistingMatchingCard(s.selfspconfilter,tp,LOCATION_MZONE,0,1,nil)
46+
end
47+
function s.selfsptg(e,tp,eg,ep,ev,re,r,rp,chk)
48+
local c=e:GetHandler()
49+
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
50+
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) end
51+
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,c,1,tp,0)
52+
end
53+
function s.selfspop(e,tp,eg,ep,ev,re,r,rp)
54+
local c=e:GetHandler()
55+
if c:IsRelateToEffect(e) then
56+
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
57+
end
58+
end
59+
function s.lvchangeop(e,tp,eg,ep,ev,re,r,rp)
60+
local c=e:GetHandler()
61+
if c:IsRelateToEffect(e) and c:IsFaceup() and c:HasLevel() then
62+
local b1=c:IsLevelAbove(2)
63+
local b2=c:IsLevelAbove(3)
64+
local lv=Duel.SelectEffect(tp,
65+
{b1,aux.Stringid(id,3)},
66+
{b2,aux.Stringid(id,4)})
67+
--Decrease its Level by up to 2
68+
c:UpdateLevel(-lv,RESET_EVENT|RESETS_STANDARD_DISABLE)
69+
end
70+
end
71+
function s.gyspcon(e,tp,eg,ep,ev,re,r,rp)
72+
local c=e:GetHandler()
73+
local sync=c:GetReasonCard()
74+
return c:IsLocation(LOCATION_GRAVE) and r==REASON_SYNCHRO and (sync:IsCode(CARD_RED_DRAGON_ARCHFIEND) or sync:ListsCode(CARD_RED_DRAGON_ARCHFIEND))
75+
end
76+
function s.gyspfilter(c,e,tp)
77+
return c:IsLevelBelow(4) and c:IsRace(RACE_FIEND) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
78+
end
79+
function s.gysptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
80+
if chkc then return chkc:IsControler(tp) and chkc:IsLocation(LOCATION_GRAVE) and s.gyspfilter(chkc,e,tp) end
81+
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
82+
and Duel.IsExistingTarget(s.gyspfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
83+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
84+
local g=Duel.SelectTarget(tp,s.gyspfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
85+
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,g,1,tp,0)
86+
end
87+
function s.gyspop(e,tp,eg,ep,ev,re,r,rp)
88+
local tc=Duel.GetFirstTarget()
89+
if tc:IsRelateToEffect(e) then
90+
Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP_DEFENSE)
91+
end
92+
end

pre-release/c101304104.lua

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
--スカーレッド・ノヴァ・ドラゴン/バスター
2+
--Red Nova Dragon/Assault Mode
3+
--Scripted by The Razgriz
4+
local s,id=GetID()
5+
local CARD_RED_NOVA_DRAGON=97489701
6+
function s.initial_effect(c)
7+
c:EnableReviveLimit()
8+
c:AddMustBeSpecialSummoned()
9+
--Banish cards your opponent controls, up to the number of Tuners in your GY
10+
local e1=Effect.CreateEffect(c)
11+
e1:SetDescription(aux.Stringid(id,0))
12+
e1:SetCategory(CATEGORY_REMOVE)
13+
e1:SetType(EFFECT_TYPE_QUICK_O)
14+
e1:SetCode(EVENT_CHAINING)
15+
e1:SetRange(LOCATION_MZONE)
16+
e1:SetCondition(function(e,tp,eg,ep,ev,re,r,rp) return rp==1-tp end)
17+
e1:SetCost(s.tempbanishcost)
18+
e1:SetTarget(s.rmtg)
19+
e1:SetOperation(s.rmop)
20+
c:RegisterEffect(e1)
21+
--Negate the attack and end Battle Phase
22+
local e2=Effect.CreateEffect(c)
23+
e2:SetDescription(aux.Stringid(id,1))
24+
e2:SetType(EFFECT_TYPE_QUICK_O)
25+
e2:SetCode(EVENT_ATTACK_ANNOUNCE)
26+
e2:SetRange(LOCATION_MZONE)
27+
e2:SetCondition(function(e,tp) return Duel.GetAttacker():IsControler(1-tp) end)
28+
e2:SetCost(s.tempbanishcost)
29+
e2:SetOperation(s.negbpop)
30+
c:RegisterEffect(e2)
31+
--Special Summon 1 "Red Nova Dragon" from your GY
32+
local e3=Effect.CreateEffect(c)
33+
e3:SetDescription(aux.Stringid(id,1))
34+
e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
35+
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
36+
e3:SetProperty(EFFECT_FLAG_DELAY)
37+
e3:SetCode(EVENT_DESTROYED)
38+
e3:SetTarget(s.sptg)
39+
e3:SetOperation(s.spop)
40+
c:RegisterEffect(e3)
41+
end
42+
s.listed_names={CARD_ASSAULT_MODE,CARD_RED_NOVA_DRAGON}
43+
s.assault_mode=CARD_RED_NOVA_DRAGON
44+
function s.tempbanishcost(e,tp,eg,ep,ev,re,r,rp,chk)
45+
local c=e:GetHandler()
46+
if chk==0 then return c:IsAbleToRemoveAsCost() end
47+
--Banish this card until the End Phase
48+
aux.RemoveUntil(c,nil,REASON_COST,PHASE_END,id,e,tp,aux.DefaultFieldReturnOp)
49+
end
50+
function s.rmtg(e,tp,eg,ep,ev,re,r,rp,chk)
51+
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsType,tp,LOCATION_GRAVE,0,1,nil,TYPE_TUNER)
52+
and Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,nil) end
53+
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,1-tp,LOCATION_ONFIELD)
54+
end
55+
function s.rmop(e,tp,eg,ep,ev,re,r,rp,chk)
56+
local max_ct=Duel.GetMatchingGroupCount(Card.IsType,tp,LOCATION_GRAVE,0,nil,TYPE_TUNER)
57+
if max_ct==0 then return end
58+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
59+
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,max_ct,nil)
60+
if #g>0 then
61+
Duel.HintSelection(g)
62+
Duel.Remove(g,POS_FACEUP,REASON_EFFECT)
63+
end
64+
end
65+
function s.negbpop(e,tp,eg,ep,ev,re,r,rp)
66+
if Duel.NegateAttack() then
67+
Duel.BreakEffect()
68+
Duel.SkipPhase(1-tp,PHASE_BATTLE,RESET_PHASE|PHASE_BATTLE_STEP,1)
69+
end
70+
end
71+
function s.spfilter(c,e,tp)
72+
return c:IsCode(CARD_RED_NOVA_DRAGON) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
73+
end
74+
function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
75+
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
76+
and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
77+
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_GRAVE)
78+
end
79+
function s.spop(e,tp,eg,ep,ev,re,r,rp)
80+
if Duel.GetLocationCount(tp,LOCATION_MZONE)<=0 then return end
81+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
82+
local g=Duel.SelectMatchingCard(tp,s.spfilter,tp,LOCATION_GRAVE,0,1,1,nil,e,tp)
83+
if #g>0 then
84+
Duel.SpecialSummon(g,0,tp,tp,false,false,POS_FACEUP)
85+
end
86+
end

0 commit comments

Comments
 (0)