Skip to content

Commit 357672e

Browse files
committed
"Knightmare Gryphon" update
Fixed a bug in which it would be unable to prevent the activation of effects from monsters that were in face-down position even when they were Special Summoned
1 parent 5ac81c2 commit 357672e

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

official/c65330383.lua

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,22 @@
33
--Script by nekrozar
44
local s,id=GetID()
55
function s.initial_effect(c)
6-
--link summon
7-
Link.AddProcedure(c,nil,2,99,s.lcheck)
86
c:EnableReviveLimit()
9-
--Set
7+
--Link Summon procedure: 2+ monsters with different names
8+
Link.AddProcedure(c,nil,2,99,s.lcheck)
9+
--Set 1 Spell/Trap from your GY
1010
local e1=Effect.CreateEffect(c)
1111
e1:SetDescription(aux.Stringid(id,0))
1212
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
1313
e1:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
1414
e1:SetCode(EVENT_SPSUMMON_SUCCESS)
1515
e1:SetCountLimit(1,id)
16-
e1:SetCondition(s.setcon)
16+
e1:SetCondition(function(e) return e:GetHandler():IsLinkSummoned() end)
1717
e1:SetCost(s.setcost)
1818
e1:SetTarget(s.settg)
1919
e1:SetOperation(s.setop)
2020
c:RegisterEffect(e1)
21-
--Cannot activate
21+
--Special Summoned monsters on the field cannot activate their effects, unless they are linked
2222
local e2=Effect.CreateEffect(c)
2323
e2:SetType(EFFECT_TYPE_FIELD)
2424
e2:SetCode(EFFECT_CANNOT_ACTIVATE)
@@ -31,9 +31,6 @@ end
3131
function s.lcheck(g,lc,sumtype,tp)
3232
return g:CheckDifferentProperty(Card.GetCode,lc,sumtype,tp)
3333
end
34-
function s.setcon(e,tp,eg,ep,ev,re,r,rp)
35-
return e:GetHandler():IsLinkSummoned()
36-
end
3734
function s.setcost(e,tp,eg,ep,ev,re,r,rp,chk)
3835
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil) end
3936
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST|REASON_DISCARD)
@@ -47,7 +44,6 @@ function s.settg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
4744
and Duel.IsExistingTarget(s.setfilter,tp,LOCATION_GRAVE,0,1,nil) end
4845
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
4946
local g=Duel.SelectTarget(tp,s.setfilter,tp,LOCATION_GRAVE,0,1,1,nil)
50-
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,g,1,0,0)
5147
if e:GetHandler():GetMutualLinkedGroupCount()>0 then
5248
e:SetLabel(1)
5349
else
@@ -56,11 +52,13 @@ function s.settg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
5652
local cat=CATEGORY_SET
5753
if e:GetLabel()==1 then cat=cat+CATEGORY_DRAW end
5854
e:SetCategory(cat)
55+
Duel.SetOperationInfo(0,CATEGORY_LEAVE_GRAVE,g,1,tp,0)
56+
Duel.SetOperationInfo(0,CATEGORY_SET,g,1,tp,0)
5957
end
6058
function s.setop(e,tp,eg,ep,ev,re,r,rp)
6159
local tc=Duel.GetFirstTarget()
6260
if tc and tc:IsRelateToEffect(e) and tc:IsSSetable() and Duel.SSet(tp,tc)>0 then
63-
--Cannot be activated this turn
61+
--It cannot be activated this turn
6462
local e1=Effect.CreateEffect(e:GetHandler())
6563
e1:SetType(EFFECT_TYPE_SINGLE)
6664
e1:SetCode(EFFECT_CANNOT_TRIGGER)
@@ -75,6 +73,5 @@ function s.setop(e,tp,eg,ep,ev,re,r,rp)
7573
end
7674
function s.aclimit(e,re,tp)
7775
local tc=re:GetHandler()
78-
return tc:IsLocation(LOCATION_MZONE) and tc:IsFaceup() and tc:IsSpecialSummoned()
79-
and not tc:IsLinked() and re:IsMonsterEffect()
76+
return tc:IsLocation(LOCATION_MZONE) and tc:IsSpecialSummoned() and not tc:IsLinked() and re:IsMonsterEffect()
8077
end

0 commit comments

Comments
 (0)