Skip to content

Commit 34f26a6

Browse files
authored
Update "Spectral Ice Floe"
- Effect seems to be worded like an ignition, not quick effect. - Effect should persist as long as the card is face-up on the field - Protection was missing exclusion for itself as mentioned on proxy
1 parent 29cad77 commit 34f26a6

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

unofficial/c511000809.lua

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
--幽鬼の氷塊
12
--Spectral Ice Floe
23
local s,id=GetID()
34
function s.initial_effect(c)
@@ -6,33 +7,34 @@ function s.initial_effect(c)
67
e1:SetType(EFFECT_TYPE_ACTIVATE)
78
e1:SetCode(EVENT_FREE_CHAIN)
89
c:RegisterEffect(e1)
9-
--unaffected
10+
--Cards you control, except this one, are unaffected by other card effects
1011
local e2=Effect.CreateEffect(c)
1112
e2:SetDescription(aux.Stringid(id,0))
12-
e2:SetType(EFFECT_TYPE_QUICK_O)
13+
e2:SetType(EFFECT_TYPE_IGNITION)
1314
e2:SetCode(EVENT_FREE_CHAIN)
1415
e2:SetRange(LOCATION_SZONE)
15-
e2:SetCost(s.uncost)
16-
e2:SetOperation(s.unop)
16+
e2:SetCost(s.protectcost)
17+
e2:SetOperation(s.protectop)
1718
c:RegisterEffect(e2)
1819
end
1920
function s.costfilter(c)
2021
return c:IsAttribute(ATTRIBUTE_DARK) and c:IsAbleToRemoveAsCost() and aux.SpElimFilter(c,true)
2122
end
22-
function s.uncost(e,tp,eg,ep,ev,re,r,rp,chk)
23+
function s.protectcost(e,tp,eg,ep,ev,re,r,rp,chk)
2324
if chk==0 then return Duel.IsExistingMatchingCard(s.costfilter,tp,LOCATION_MZONE|LOCATION_GRAVE,0,1,nil) end
2425
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
2526
local g=Duel.SelectMatchingCard(tp,s.costfilter,tp,LOCATION_MZONE|LOCATION_GRAVE,0,1,1,nil)
2627
Duel.Remove(g,POS_FACEUP,REASON_COST)
2728
end
28-
function s.unop(e,tp,eg,ep,ev,re,r,rp)
29+
function s.protectop(e,tp,eg,ep,ev,re,r,rp)
2930
if not e:GetHandler():IsRelateToEffect(e) then return end
3031
local e1=Effect.CreateEffect(e:GetHandler())
3132
e1:SetType(EFFECT_TYPE_FIELD)
3233
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE+EFFECT_FLAG_SET_AVAILABLE)
3334
e1:SetCode(EFFECT_IMMUNE_EFFECT)
35+
e1:SetCondition(function(e) return e:GetHandler():IsFaceup() and e:GetHandler():IsOnField() end)
3436
e1:SetTargetRange(LOCATION_ONFIELD,0)
35-
e1:SetReset(RESET_PHASE+PHASE_END)
37+
e1:SetTarget(function(e,c) return c~=e:GetHandler() end)
3638
e1:SetValue(1)
3739
Duel.RegisterEffect(e1,tp)
38-
end
40+
end

0 commit comments

Comments
 (0)