Skip to content

Commit 80be855

Browse files
authored
Update c300309010.lua
Prevent script crash
1 parent 06050c3 commit 80be855

File tree

1 file changed

+5
-10
lines changed

1 file changed

+5
-10
lines changed

skill/c300309010.lua

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ function s.flipop(e,tp,eg,ep,ev,re,r,rp)
2424
e1:SetType(EFFECT_TYPE_FIELD)
2525
e1:SetCode(EFFECT_SUMMON_PROC)
2626
e1:SetRange(0x5f)
27+
e1:SetCountLimit(1)
2728
e1:SetTargetRange(LOCATION_HAND,0)
2829
e1:SetCondition(s.otcon)
2930
e1:SetTarget(aux.FieldSummonProcTg(s.ottg,s.sumtg))
3031
e1:SetOperation(s.otop)
31-
e1:SetCountLimit(1)
3232
e1:SetValue(SUMMON_TYPE_TRIBUTE)
3333
Duel.RegisterEffect(e1,tp)
3434
local e2=e1:Clone()
@@ -39,7 +39,7 @@ function s.flipop(e,tp,eg,ep,ev,re,r,rp)
3939
e3:SetTargetRange(LOCATION_HAND|LOCATION_MZONE,0)
4040
e3:SetCode(EFFECT_EXTRA_SUMMON_COUNT)
4141
e3:SetRange(0x5f)
42-
e3:SetCondition(s.extrasumcon)
42+
e3:SetCondition(function(e) return Duel.IsExistingMatchingCard(aux.AND(Card.IsTributeSummoned,Card.IsReleasable),e:GetHandlerPlayer(),LOCATION_MZONE,0,1,nil) end)
4343
e3:SetTarget(aux.TargetBoolFunction(Card.IsCode,CARD_BLUEEYES_W_DRAGON))
4444
e3:SetValue(0x1)
4545
Duel.RegisterEffect(e3,tp)
@@ -53,24 +53,18 @@ function s.flipop(e,tp,eg,ep,ev,re,r,rp)
5353
e4:SetOperation(s.effop)
5454
Duel.RegisterEffect(e4,tp)
5555
end
56-
function s.relrepfilter(c)
57-
return c:IsTributeSummoned() and c:IsReleasable()
58-
end
59-
function s.extrasumcon(e)
60-
return Duel.IsExistingMatchingCard(s.relrepfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,nil)
61-
end
6256
function s.otcon(e,c,minc)
6357
if c==nil then return true end
6458
local tp=c:GetControler()
65-
return minc<=2 and Duel.IsExistingMatchingCard(s.relrepfilter,tp,LOCATION_MZONE,0,1,nil)
59+
return minc<=2 and Duel.IsExistingMatchingCard(aux.AND(Card.IsTributeSummoned,Card.IsReleasable),tp,LOCATION_MZONE,0,1,nil)
6660
end
6761
function s.ottg(e,c)
6862
local mi,ma=c:GetTributeRequirement()
6963
return mi<=2 and ma>=2 and c:IsCode(CARD_BLUEEYES_W_DRAGON)
7064
end
7165
function s.sumtg(e,tp,eg,ep,ev,re,r,rp,c)
7266
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
73-
local g=Duel.SelectMatchingCard(tp,s.relrepfilter,tp,LOCATION_MZONE,0,1,1,true,nil)
67+
local g=Duel.SelectMatchingCard(tp,aux.AND(Card.IsTributeSummoned,Card.IsReleasable),tp,LOCATION_MZONE,0,1,1,true,nil)
7468
if g then
7569
g:KeepAlive()
7670
e:SetLabelObject(g)
@@ -81,6 +75,7 @@ end
8175
function s.otop(e,tp,eg,ep,ev,re,r,rp,c)
8276
local sg=e:GetLabelObject()
8377
if not sg then return end
78+
c:SetMaterial(sg)
8479
Duel.Release(sg,REASON_SUMMON|REASON_MATERIAL,tp)
8580
sg:DeleteGroup()
8681
end

0 commit comments

Comments
 (0)