Skip to content

Commit a94a73b

Browse files
authored
fix "Red Hypernova Dragon"
should not ask the player if they want to Special Summon "Red Nova Dragon" if they don't have one in their Extra Deck
1 parent 452fcbf commit a94a73b

1 file changed

Lines changed: 18 additions & 20 deletions

File tree

official/c30698243.lua

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ function s.initial_effect(c)
66
c:EnableReviveLimit()
77
--Synchro Summon procedure: 4 Tuners + 1+ non-Tuner Synchro Monsters
88
Synchro.AddProcedure(c,nil,4,4,Synchro.NonTunerEx(Card.IsType,TYPE_SYNCHRO),1,99)
9-
--Multiple Tuners
9+
--Synchro Summon uses multiple Tuners
1010
local e0=Effect.CreateEffect(c)
1111
e0:SetType(EFFECT_TYPE_SINGLE)
1212
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
@@ -19,44 +19,44 @@ function s.initial_effect(c)
1919
e1:SetCode(EFFECT_SPSUMMON_CONDITION)
2020
e1:SetValue(s.splimit)
2121
c:RegisterEffect(e1)
22-
--atk up
22+
--Gains 500 ATK for each Tuner in your GY
2323
local e2=Effect.CreateEffect(c)
2424
e2:SetType(EFFECT_TYPE_SINGLE)
2525
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
2626
e2:SetCode(EFFECT_UPDATE_ATTACK)
2727
e2:SetRange(LOCATION_MZONE)
2828
e2:SetValue(s.atkval)
2929
c:RegisterEffect(e2)
30-
--cannot target
30+
--Your opponent cannot target this card with card effects
3131
local e3=Effect.CreateEffect(c)
3232
e3:SetType(EFFECT_TYPE_SINGLE)
3333
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
3434
e3:SetRange(LOCATION_MZONE)
3535
e3:SetCode(EFFECT_CANNOT_BE_EFFECT_TARGET)
3636
e3:SetValue(aux.tgoval)
3737
c:RegisterEffect(e3)
38-
--indes
38+
--Cannot be destroyed by your opponent's card effects
3939
local e4=Effect.CreateEffect(c)
4040
e4:SetType(EFFECT_TYPE_SINGLE)
4141
e4:SetCode(EFFECT_INDESTRUCTABLE_EFFECT)
4242
e4:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
4343
e4:SetRange(LOCATION_MZONE)
4444
e4:SetValue(aux.indoval)
4545
c:RegisterEffect(e4)
46-
--banish
46+
--Once per turn (Quick Effect): You can activate this effect; banish this card, also banish as many cards from your opponent's field and GY as possible, then you can Special Summon 1 "Red Nova Dragon" from your Extra Deck (this is treated as a Synchro Summon)
4747
local e5=Effect.CreateEffect(c)
4848
e5:SetDescription(aux.Stringid(id,0))
4949
e5:SetCategory(CATEGORY_REMOVE|CATEGORY_SPECIAL_SUMMON)
5050
e5:SetType(EFFECT_TYPE_QUICK_O)
5151
e5:SetCode(EVENT_FREE_CHAIN)
5252
e5:SetRange(LOCATION_MZONE)
5353
e5:SetCountLimit(1)
54+
e5:SetHintTiming(0,TIMING_STANDBY_PHASE|TIMING_MAIN_END|TIMINGS_CHECK_MONSTER_E)
5455
e5:SetTarget(s.rmtg)
5556
e5:SetOperation(s.rmop)
56-
e5:SetHintTiming(0,TIMING_STANDBY_PHASE|TIMING_MAIN_END|TIMINGS_CHECK_MONSTER_E)
5757
c:RegisterEffect(e5)
5858
end
59-
s.listed_names={97489701}
59+
s.listed_names={97489701} --"Red Nova Dragon"
6060
s.synchro_nt_required=1
6161
function s.splimit(e,se,sp,st)
6262
return not e:GetHandler():IsLocation(LOCATION_EXTRA) or ((st&SUMMON_TYPE_SYNCHRO)==SUMMON_TYPE_SYNCHRO and not se)
@@ -80,17 +80,15 @@ function s.rmop(e,tp,eg,ep,ev,re,r,rp,chk)
8080
local c=e:GetHandler()
8181
local g=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD|LOCATION_GRAVE,nil)
8282
if c:IsRelateToEffect(e) and c:IsAbleToRemove() then g:AddCard(c) end
83-
if #g>0 and Duel.Remove(g,POS_FACEUP,REASON_EFFECT)>0 then
84-
local sg=Duel.GetMatchingGroup(s.spfilter,tp,LOCATION_EXTRA,0,nil,e,tp)
85-
if #sg>=0 and Duel.SelectYesNo(tp,aux.Stringid(id,1)) then
86-
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
87-
local sc=sg:Select(tp,1,1,nil):GetFirst()
88-
if not sc then return end
89-
sc:SetMaterial(nil)
90-
Duel.BreakEffect()
91-
if Duel.SpecialSummon(sc,SUMMON_TYPE_SYNCHRO,tp,tp,false,false,POS_FACEUP)>0 then
92-
sc:CompleteProcedure()
93-
end
94-
end
83+
if #g==0 or Duel.Remove(g,POS_FACEUP,REASON_EFFECT)==0 or not g:IsExists(Card.IsLocation,1,nil,LOCATION_REMOVED) then return end
84+
local sg=Duel.GetMatchingGroup(s.spfilter,tp,LOCATION_EXTRA,0,nil,e,tp)
85+
if #sg==0 or not Duel.SelectYesNo(tp,aux.Stringid(id,1)) then return end
86+
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
87+
local sc=sg:Select(tp,1,1,nil):GetFirst()
88+
if not sc then return end
89+
sc:SetMaterial(nil)
90+
Duel.BreakEffect()
91+
if Duel.SpecialSummon(sc,SUMMON_TYPE_SYNCHRO,tp,tp,false,false,POS_FACEUP)>0 then
92+
sc:CompleteProcedure()
9593
end
96-
end
94+
end

0 commit comments

Comments
 (0)