Commit df64895b authored by POLYMER's avatar POLYMER

fix

parent 91cf4b62
...@@ -2,19 +2,19 @@ function c10111181.initial_effect(c) ...@@ -2,19 +2,19 @@ function c10111181.initial_effect(c)
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcFunFun(c,c10111181.f1filter,c10111181.f2filter,1,true) aux.AddFusionProcFunFun(c,c10111181.f1filter,c10111181.f2filter,1,true)
aux.AddContactFusionProcedure(c,c10111181.cfilter,LOCATION_MZONE+LOCATION_GRAVE,0,aux.tdcfop(c)) aux.AddContactFusionProcedure(c,c10111181.cfilter,LOCATION_MZONE+LOCATION_GRAVE,0,aux.tdcfop(c))
--negate --negate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(10111181,0)) e1:SetDescription(aux.Stringid(10111181,0))
e1:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY) e1:SetCategory(CATEGORY_NEGATE+CATEGORY_DESTROY+CATEGORY_RECOVER)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL) e1:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DAMAGE_CAL)
e1:SetCode(EVENT_CHAINING) e1:SetCode(EVENT_CHAINING)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCountLimit(1,10111181) e1:SetCountLimit(1,10111181)
e1:SetCondition(c10111181.condition) e1:SetCondition(c10111181.condition)
e1:SetTarget(c10111181.target) e1:SetTarget(c10111181.target)
e1:SetOperation(c10111181.operation) e1:SetOperation(c10111181.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--special summon --special summon
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(10111181,1)) e2:SetDescription(aux.Stringid(10111181,1))
...@@ -34,12 +34,19 @@ end ...@@ -34,12 +34,19 @@ end
function c10111181.f2filter(c) function c10111181.f2filter(c)
return c:IsSetCard(0x1185) and c:IsLevel(8) return c:IsSetCard(0x1185) and c:IsLevel(8)
end end
function c10111181.cfilter(c) -- 新增涂鸦兽字段检查函数
return c:IsType(TYPE_MONSTER) and c:IsAbleToDeckOrExtraAsCost() function c10111181.fieldfilter(c)
return c:IsSetCard(0x1185) and c:IsFaceup() and not c:IsCode(10111181)
end end
-- 修改后的发动条件
function c10111181.condition(e,tp,eg,ep,ev,re,r,rp) function c10111181.condition(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
return rp==1-tp and re:IsActiveType(TYPE_MONSTER) and not c:IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev) return rp==1-tp
and re:IsActiveType(TYPE_MONSTER)
and Duel.IsExistingMatchingCard(c10111181.fieldfilter,tp,LOCATION_MZONE,0,1,nil) -- 新增字段检查
and not c:IsStatus(STATUS_BATTLE_DESTROYED)
and Duel.IsChainNegatable(ev)
end end
function c10111181.target(e,tp,eg,ep,ev,re,r,rp,chk) function c10111181.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
......
...@@ -42,7 +42,7 @@ function c75000801.initial_effect(c) ...@@ -42,7 +42,7 @@ function c75000801.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c75000801.spfilter(c,e,tp) function c75000801.spfilter(c,e,tp)
return c:IsSetCard(0xc751) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0xca751) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c75000801.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c75000801.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
...@@ -59,7 +59,7 @@ function c75000801.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,7 +59,7 @@ function c75000801.spop(e,tp,eg,ep,ev,re,r,rp)
end end
-- --
function c75000801.filter(c) function c75000801.filter(c)
return (c:IsSetCard(0x3751) and c:IsType(TYPE_MONSTER) or c:IsSetCard(0xc751) and c:IsType(TYPE_MONSTER)) and c:IsAbleToHand() return (c:IsSetCard(0x3751) and c:IsType(TYPE_MONSTER) or c:IsSetCard(0xca751) and c:IsType(TYPE_MONSTER)) and c:IsAbleToHand()
end end
function c75000801.target(e,tp,eg,ep,ev,re,r,rp,chk) function c75000801.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c75000801.filter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c75000801.filter,tp,LOCATION_DECK,0,1,nil) end
......
...@@ -105,25 +105,24 @@ function c75075610.filter6(c,ft,tp) ...@@ -105,25 +105,24 @@ function c75075610.filter6(c,ft,tp)
return c:IsSetCard(0x5754) return c:IsSetCard(0x5754)
and (ft>0 or (c:IsControler(tp) and c:GetSequence()<5)) and (c:IsControler(tp) or c:IsFaceup()) and (ft>0 or (c:IsControler(tp) and c:GetSequence()<5)) and (c:IsControler(tp) or c:IsFaceup())
end end
function c75075610.cost6(e,tp,eg,ep,ev,re,r,rp,chk) function c75075610.filter66(c)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) return c:IsFaceup() and c:IsAbleToRemove() and not c:IsAttack(c:GetBaseAttack())
if chk==0 then return ft>-1 and Duel.CheckReleaseGroup(tp,c75075610.filter6,1,nil,ft,tp) end
local g=Duel.SelectReleaseGroup(tp,c75075610.filter6,1,1,nil,ft,tp)
Duel.Release(g,REASON_COST)
end end
function c75075610.tg6(e,tp,eg,ep,ev,re,r,rp,chk) function c75075610.tg6(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,1,nil) end if chk==0 then
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription()) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,1-tp,LOCATION_ONFIELD) return Duel.IsExistingMatchingCard(c75075610.filter66,tp,0,LOCATION_MZONE,1,nil)
end
Duel.Hint(HINT_OPSELECTED,1-tp,e:GetDescription())
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,1-tp,LOCATION_MZONE)
end end
function c75075610.op6(e,tp,eg,ep,ev,re,r,rp) function c75075610.op6(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,0,LOCATION_ONFIELD,nil) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
if g:GetCount()>0 then local g=Duel.SelectMatchingCard(tp,c75075610.filter66,tp,0,LOCATION_MZONE,1,1,nil)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) if #g>0 then
local sg=g:Select(tp,1,1,nil) Duel.HintSelection(g)
Duel.HintSelection(sg) Duel.Remove(g,POS_FACEUP,REASON_EFFECT)
Duel.Remove(sg,POS_FACEUP,REASON_EFFECT) end
end
end end
-- 4 -- 4
function c75075610.cost7(e,tp,eg,ep,ev,re,r,rp,chk) function c75075610.cost7(e,tp,eg,ep,ev,re,r,rp,chk)
......
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