Commit 191b1c30 authored by POLYMER's avatar POLYMER

fix

parent 1f573218
...@@ -108,9 +108,12 @@ end ...@@ -108,9 +108,12 @@ end
function s.thfilter(c) function s.thfilter(c)
return c:IsSetCard(0x6c73) and c:IsAbleToHand() and c:IsFaceupEx() return c:IsSetCard(0x6c73) and c:IsAbleToHand() and c:IsFaceupEx()
end end
function s.efilter(c)
return (c:IsFaceup() or c:GetEquipTarget()) and c:IsType(TYPE_EQUIP)
end
function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local c=e:GetHandler() local c=e:GetHandler()
local ct=c:GetEquipGroup():GetCount() local ct=Duel.GetMatchingGroupCount(a.efilter,p,LOCATION_ONFIELD,0,nil)
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and chkc:IsControler(tp) and s.thfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and chkc:IsControler(tp) and s.thfilter(chkc) end
if chk==0 then return ct>0 and Duel.IsExistingTarget(s.thfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,ct,nil) end if chk==0 then return ct>0 and Duel.IsExistingTarget(s.thfilter,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,ct,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
......
...@@ -37,7 +37,7 @@ function c29002020.initial_effect(c) ...@@ -37,7 +37,7 @@ function c29002020.initial_effect(c)
e3:SetType(EFFECT_TYPE_FIELD) e3:SetType(EFFECT_TYPE_FIELD)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCode(EFFECT_IMMUNE_EFFECT) e3:SetCode(EFFECT_IMMUNE_EFFECT)
e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE) --e3:SetProperty(EFFECT_FLAG_SINGLE_RANGE)
e3:SetTargetRange(LOCATION_MZONE,0) e3:SetTargetRange(LOCATION_MZONE,0)
e3:SetValue(c29002020.efilter) e3:SetValue(c29002020.efilter)
c:RegisterEffect(e3) c:RegisterEffect(e3)
...@@ -104,36 +104,15 @@ function c29002020.sprop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -104,36 +104,15 @@ function c29002020.sprop(e,tp,eg,ep,ev,re,r,rp,c)
e1:SetReset(RESET_PHASE+PHASE_END) e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
end end
function c29002020.itarget(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return true end
end
function c29002020.ioperation(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_IMMUNE_EFFECT)
e2:SetValue(c29002020.efilter)
e2:SetTargetRange(LOCATION_MZONE,0)
e2:SetReset(RESET_PHASE+PHASE_END)
e2:SetOwnerPlayer(tp)
Duel.RegisterEffect(e2,tp)
local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(29002020,2))
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(29002020)
e3:SetRange(LOCATION_MZONE)
e3:SetProperty(EFFECT_FLAG_CLIENT_HINT)
e3:SetTargetRange(1,0)
Duel.RegisterEffect(e3,tp)
end
--function c29002020.efilter(e,te) --function c29002020.efilter(e,te)
--if te:GetOwnerPlayer()==e:GetHandlerPlayer() then return false end --if te:GetOwnerPlayer()==e:GetHandlerPlayer() then return false end
--if not te:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return true end --if not te:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return true end
--local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) --local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
--return not g or not g:IsContains(e:GetHandler()) --return not g or not g:IsContains(e:GetHandler())
--end --end
function c29002020.efilter(e,re,rp,c) function c29002020.efilter(e,te)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return true end if te:GetOwnerPlayer()==e:GetHandlerPlayer() then return false end
if not te:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return true end
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
return e:GetOwnerPlayer()~=re:GetOwnerPlayer() and not g or not g:IsContains(c) return not g or not g:IsContains(e:GetHandler())
end end
\ No newline at end of file
...@@ -24,6 +24,15 @@ function s.initial_effect(c) ...@@ -24,6 +24,15 @@ function s.initial_effect(c)
e1:SetOperation(s.actop) e1:SetOperation(s.actop)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e2 = Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id, 1))
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_TRAP_ACT_IN_SET_TURN)
e2:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e2:SetRange(LOCATION_PZONE)
e2:SetTargetRange(LOCATION_SZONE, 0)
e2:SetTarget(s.acttarget)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(id,1)) e3:SetDescription(aux.Stringid(id,1))
...@@ -35,6 +44,11 @@ function s.initial_effect(c) ...@@ -35,6 +44,11 @@ function s.initial_effect(c)
e3:SetOperation(s.pzop) e3:SetOperation(s.pzop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function s.acttarget(e, c)
return c:IsType(TYPE_TRAP) and c:IsType(TYPE_CONTINUOUS)
and s.HighEvo(c)
end
function s.filter(c) function s.filter(c)
return c:IsFacedown() and s.HighEvo(c) and c:IsType(TYPE_TRAP) and c:IsType(TYPE_CONTINUOUS) return c:IsFacedown() and s.HighEvo(c) and c:IsType(TYPE_TRAP) and c:IsType(TYPE_CONTINUOUS)
end end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment