Commit 40062d0e authored by Huangnan's avatar Huangnan

fix

parent 6396687f
No preview for this file type
expansions/pics/12400030.jpg

82.7 KB | W: | H:

expansions/pics/12400030.jpg

87.1 KB | W: | H:

expansions/pics/12400030.jpg
expansions/pics/12400030.jpg
expansions/pics/12400030.jpg
expansions/pics/12400030.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/12400103.jpg

89.6 KB | W: | H:

expansions/pics/12400103.jpg

88.3 KB | W: | H:

expansions/pics/12400103.jpg
expansions/pics/12400103.jpg
expansions/pics/12400103.jpg
expansions/pics/12400103.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/12400113.jpg

172 KB | W: | H:

expansions/pics/12400113.jpg

89.6 KB | W: | H:

expansions/pics/12400113.jpg
expansions/pics/12400113.jpg
expansions/pics/12400113.jpg
expansions/pics/12400113.jpg
  • 2-up
  • Swipe
  • Onion skin
expansions/pics/16400635.jpg

59.5 KB | W: | H:

expansions/pics/16400635.jpg

81.4 KB | W: | H:

expansions/pics/16400635.jpg
expansions/pics/16400635.jpg
expansions/pics/16400635.jpg
expansions/pics/16400635.jpg
  • 2-up
  • Swipe
  • Onion skin
......@@ -35,13 +35,14 @@ function s.initial_effect(c)
end
function s.spcon(e,c)
if c==nil then return true end
return Duel.GetFlagEffect(tp,id)>=8
local tp=e:GetHandlerPlayer()
return Duel.GetFlagEffect(tp,id)>=8 and Duel.GetLocationCount(c:GetControler(),LOCATION_MZONE)>0
end
function s.spcfilter(c,tp)
return c:IsPreviousControler(tp) and c:IsPreviousLocation(LOCATION_ONFIELD)
return c:IsPreviousControler(tp) and c:IsPreviousLocation(LOCATION_MZONE)
end
function s.checkop(e,tp,eg,ep,ev,re,r,rp)
if eg:IsExists(s.spcfilter,1,nil,0) then
if eg:IsExists(s.spcfilter,1,nil,0) then
Duel.RegisterFlagEffect(tp,id,RESET_PHASE+PHASE_END,0,1)
end
end
......
......@@ -21,10 +21,10 @@ function c15200013.initial_effect(c)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetCategory(CATEGORY_TODECK+CATEGORY_DRAW)
e3:SetDescription(aux.Stringid(15200013,2))
e3:SetDescription(aux.Stringid(15200013,1))
e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_GRAVE)
e3:SetCountLimit(1,c15200013+100)
e3:SetCountLimit(1,152000134)
e3:SetTarget(c15200013.tdtg)
e3:SetOperation(c15200013.tdop)
c:RegisterEffect(e3)
......@@ -99,10 +99,10 @@ function c15200013.activate(e,tp,eg,ep,ev,re,r,rp)
end
end
function c15200013.filter4(c)
return (c:IsLocation(LOCATION_MZONE) or c:IsFaceup()) and c:IsCanBeFusionMaterial() and c:IsAbleToDeck()
return c:IsType(TYPE_MONSTER) and (c:IsLocation(LOCATION_REMOVED) or c:IsFaceup()) and c:IsCanBeFusionMaterial() and c:IsAbleToDeck()
end
function c15200013.filter5(c,e)
return (c:IsLocation(LOCATION_MZONE) or c:IsFaceup()) and c:IsCanBeFusionMaterial() and c:IsAbleToDeck() and not c:IsImmuneToEffect(e)
return c:IsType(TYPE_MONSTER) and (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup()) and c:IsCanBeFusionMaterial() and c:IsAbleToDeck() and not c:IsImmuneToEffect(e)
end
function c15200013.filter6(c,e,tp,m,f,chkf)
if not (c:IsType(TYPE_FUSION) and c:IsSetCard(0x680)) and (not f or f(c)) and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_FUSION,tp,false,false) then return false end
......@@ -136,6 +136,7 @@ function c15200013.target1(e,tp,eg,ep,ev,re,r,rp,chk)
return res
end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,1,tp,LOCATION_GRAVE+LOCATION_REMOVED )
end
function c15200013.activate1(e,tp,eg,ep,ev,re,r,rp)
local chkf=tp
......@@ -189,4 +190,5 @@ function c15200013.tdop(e,tp,eg,ep,ev,re,r,rp)
Duel.ShuffleDeck(tp)
Duel.BreakEffect()
Duel.Draw(tp,1,REASON_EFFECT)
end
\ No newline at end of file
end
end
\ No newline at end of file
......@@ -3,7 +3,7 @@ local s,id=GetID()
function s.initial_effect(c)
-- Fusion Procedure: "Virtual Witch Phenomenon Hanafuda" + 1 "Shin-Tsubaki" monster
c:EnableReviveLimit()
aux.AddFusionProcCode2(c,15200007,aux.FilterBoolFunction(Card.IsSetCard,0x680),true)
aux.AddFusionProcCode2(c,15200007,aux.FilterBoolFunction(Card.IsFusionSetCard,0x680),true)
-- Effect ①: Negate opponent's monster effects during battle phase --disable
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_CONTINUOUS+EFFECT_TYPE_FIELD)
......@@ -30,6 +30,13 @@ function s.initial_effect(c)
e3:SetTarget(s.drtg)
e3:SetOperation(s.drop)
c:RegisterEffect(e3)
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e4:SetCode(EFFECT_SPSUMMON_CONDITION)
e4:SetValue(aux.fuslimit)
c:RegisterEffect(e4)
end
-- Effect ①: Negate opponent's monster effects during battle phase
......
......@@ -3,7 +3,7 @@ local s,id=GetID()
function s.initial_effect(c)
-- Fusion Procedure: 5 "Shin-Tsubaki" monsters
c:EnableReviveLimit()
aux.AddFusionProcFunRep(c,aux.FilterBoolFunction(Card.IsSetCard,0x680),5,true)
aux.AddFusionProcFunRep(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0x680),5,true)
-- Effect ①: Negate the activation of a card effect and remove 1 "Shin-Tsubaki" card from the GY
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0))
......@@ -28,6 +28,13 @@ function s.initial_effect(c)
e2:SetTarget(s.tgtg)
e2:SetOperation(s.tgop)
c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e3:SetCode(EFFECT_SPSUMMON_CONDITION)
e3:SetValue(aux.fuslimit)
c:RegisterEffect(e3)
--draw
end
-- Effect ①: Negate the activation of a card effect and remove 1 "Shin-Tsubaki" card from the GY
......
......@@ -106,7 +106,7 @@ function s.adjustop(e,tp,eg,ep,ev,re,r,rp)
if not tc:IsControlerCanBeChanged(true) then
sg:AddCard(tc)
else
Duel.GetControl(tc,tp)
Duel.GetControl(tc,1-p)
end
end
end
......
......@@ -89,7 +89,7 @@ function c16310065.thcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(c16310065.sfilter,1,nil,tp) and not eg:IsContains(e:GetHandler())
end
function c16310065.thfilter(c)
return c:IsSetCard(0x3dc6) and c:IsFaceupEx() and c:IsAbleToHand()
return c:IsSetCard(0x3dc6) and c:IsType(0x1) and c:IsFaceupEx() and c:IsAbleToHand()
end
function c16310065.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and chkc:IsControler(tp) and c16310065.thfilter(chkc) end
......
......@@ -79,7 +79,7 @@ function c16400645.activate(e,tp,eg,ep,ev,re,r,rp)
tc:SetMaterial(mat1)
Duel.Remove(mat1,POS_FACEUP,REASON_EFFECT+REASON_MATERIAL+REASON_FUSION)
Duel.BreakEffect()
if Duel.SpecialSummonStep(tc,SUMMON_TYPE_FUSION,tp,tp,false,false,POS_FACEUP) then
if Duel.SpecialSummon(tc,SUMMON_TYPE_FUSION,tp,tp,false,false,POS_FACEUP)>0 then
local fid=e:GetHandler():GetFieldID()
tc:RegisterFlagEffect(16400645,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1,fid)
local e1=Effect.CreateEffect(e:GetHandler())
......
......@@ -19,7 +19,7 @@ function id.initial_effect(c)
e2:SetType(EFFECT_TYPE_QUICK_O)
e2:SetCode(EVENT_FREE_CHAIN)
e2:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e2:SetCountLimit(1,id+1)
e2:SetCountLimit(1,id)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(id.con2)
e2:SetTarget(id.tg2)
......@@ -64,4 +64,4 @@ function id.op2(e,tp,eg,ep,ev,re,r,rp)
local sg=g:Select(tp,1,1,nil)
Duel.SynchroSummon(tp,sg:GetFirst(),c)
end
end
end
\ No newline at end of file
......@@ -20,7 +20,7 @@ function cm.initial_effect(c)
e3:SetCode(EVENT_DESTROYED)
e3:SetProperty(EFFECT_FLAG_DELAY)
e3:SetCountLimit(1,m+1)
e3:SetCondition(cm.dscon)
e3:SetCondition(cm.con2)
e3:SetTarget(cm.dstg)
e3:SetOperation(cm.dsop)
c:RegisterEffect(e3)
......
......@@ -96,8 +96,8 @@ function cm.rmcon(e,tp,eg,ep,ev,re,r,rp)
end
function cm.rmtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsType,tp,LOCATION_GRAVE,0,1,nil,TYPE_MONSTER) end
local g=Duel.SelectMatchingCard(tp,Card.IsType,tp,LOCATION_GRAVE,0,1,3,nil,TYPE_MONSTER)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToRemove,tp,0,LOCATION_GRAVE,1,nil) end
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToRemove,tp,0,LOCATION_GRAVE,1,3,nil)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,g,1,1-tp,LOCATION_GRAVE)
end
......
......@@ -93,6 +93,7 @@ function cm.op2(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EFFECT_TO_GRAVE_REDIRECT)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetRange(LOCATION_FZONE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetTargetRange(0,LOCATION_DECK)
e1:SetLabelObject(ttt)
e1:SetTarget(cm.rmtarget)
......@@ -102,6 +103,7 @@ function cm.op2(e,tp,eg,ep,ev,re,r,rp)
e0:SetType(EFFECT_TYPE_FIELD)
e0:SetCode(81674782)
e0:SetProperty(EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_IGNORE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e0:SetRange(LOCATION_FZONE)
e0:SetTargetRange(0,0xff)
e0:SetTarget(aux.TRUE)
......
......@@ -67,6 +67,7 @@ function cm.cost1(e,tp,eg,ep,ev,re,r,rp,chk)
return tg:CheckSubGroup(cm.check,3,3,tp) end
local sg5=tg:SelectSubGroup(tp,cm.check,false,3,3)
Duel.SendtoGrave(sg5,REASON_COST)
Duel.RaiseSingleEvent(c,EVENT_DETACH_MATERIAL,e,0,0,0,0)
sg5:KeepAlive()
e:SetLabelObject(sg5)
local tc=sg5:GetFirst()
......
......@@ -44,6 +44,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsPlayerAffectedByEffect(1-tp,EFFECT_REVERSE_DECK)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local g=Duel.GetDecktopGroup(1-tp,1)
local gc=g:GetFirst()
local gg=gc:GetOriginalType()
......@@ -51,6 +52,7 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return og:GetCount()~=0 end
local sg6=og:Select(tp,1,1,nil)
Duel.SendtoGrave(sg6,REASON_COST)
Duel.RaiseSingleEvent(c,EVENT_DETACH_MATERIAL,e,0,0,0,0)
local tc=sg6:GetFirst()
e:SetLabelObject(tc)
tc:RegisterFlagEffect(22600200,RESET_EVENT+RESETS_STANDARD,0,0)
......
......@@ -43,6 +43,7 @@ function cm.con(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsPlayerAffectedByEffect(tp,EFFECT_REVERSE_DECK)
end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
local g=Duel.GetDecktopGroup(tp,1)
local gc=g:GetFirst()
local gg=gc:GetOriginalType()
......@@ -50,6 +51,7 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return og:GetCount()~=0 end
local sg6=og:Select(tp,1,1,nil)
Duel.SendtoGrave(sg6,REASON_COST)
Duel.RaiseSingleEvent(c,EVENT_DETACH_MATERIAL,e,0,0,0,0)
local tc=sg6:GetFirst()
e:SetLabelObject(tc)
tc:RegisterFlagEffect(22600200,RESET_EVENT+RESETS_STANDARD,0,0)
......
......@@ -54,6 +54,7 @@ function s.immop(e,tp,eg,ep,ev,re,r,rp)
local rc=c:GetReasonCard()
if not rc then return end
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,1))
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_IMMUNE_EFFECT)
e1:SetValue(s.efilter)
......
......@@ -45,12 +45,12 @@ function s.cost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end
end
function s.costfilter(c,e,tp)
return c:IsFaceup() and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_EXTRA,0,1,nil,c,e,tp)
return c:IsFaceup() and c:IsSetCard(0x9527) and c:IsType(TYPE_SYNCHRO) and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_EXTRA,0,1,nil,c,e,tp)
end
function s.spfilter(c,tc,e,tp)
return c:GetOriginalCodeRule()~=tc:GetOriginalCodeRule()
and c:GetLevel()==tc:GetLevel()
and c:IsSetCard(0x3527)
and c:IsSetCard(0x9527)
and c:IsType(TYPE_SYNCHRO)
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_SYNCHRO,tp,false,false)
and Duel.GetLocationCountFromEx(tp,tp,tc,c)>0
......
......@@ -74,6 +74,7 @@ function s.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA+LOCATION_GRAVE)
end
function s.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local a=Duel.GetLocationCountFromEx(tp)>0 and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_EXTRA,0,1,nil,e,tp)
local b=Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and Duel.IsExistingMatchingCard(s.spfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp)
......
......@@ -20,7 +20,7 @@ function s.initial_effect(c)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(id,1))
e2:SetType(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_CAL)
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetCountLimit(1,id+1)
e2:SetCode(EVENT_TO_GRAVE)
......
......@@ -186,7 +186,7 @@ function cm.etg(e,c)
return c~=e:GetHandler() and c:IsType(TYPE_XYZ) and c:IsFaceup()
end
function cm.efilter(e,te)
return te:GetOwner()~=e:GetOwner()
return te:GetHandlerPlayer()~=e:GetHandlerPlayer()
end
function cm.atlimit(e,c)
return c~=e:GetHandler() and c:IsFaceup()
......
......@@ -61,7 +61,7 @@ end
function cm.tkop(e,tp,eg,ep,ev,re,r,rp)
local chkf=tp
local mg1=Duel.GetFusionMaterial(tp):Filter(cm.filter0,nil)
local mg2=Duel.GetMatchingGroup(cm.filter3,tp,LOCATION_GRAVE+LOCATION_DECK,LOCATION_GRAVE+LOCATION_DECK,nil)
local mg2=Duel.GetMatchingGroup(cm.filter3,tp,LOCATION_GRAVE+LOCATION_DECK,0,nil)
mg1:Merge(mg2)
local res=Duel.IsExistingMatchingCard(cm.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg1,nil,chkf)
if not res then
......@@ -82,10 +82,8 @@ function cm.tkop(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.SelectOption(tp,aux.Stringid(m,1),aux.Stringid(m,2))
if ct==0 then
local chkf=tp
local mg=Duel.GetFusionMaterial(1-tp):Filter(cm.filter1,nil,e)
local mg1=Duel.GetFusionMaterial(tp):Filter(cm.filter1,nil,e)
mg1:Merge(mg)
local mg2=Duel.GetMatchingGroup(cm.filter3,tp,LOCATION_GRAVE,LOCATION_GRAVE,nil)
local mg2=Duel.GetMatchingGroup(cm.filter3,tp,LOCATION_GRAVE+LOCATION_DECK,0,nil)
mg1:Merge(mg2)
local sg1=Duel.GetMatchingGroup(cm.filter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg1,nil,chkf)
local mg3=nil
......@@ -136,10 +134,8 @@ function cm.tkop(e,tp,eg,ep,ev,re,r,rp)
end
elseif a and not b then
local chkf=tp
local mg=Duel.GetFusionMaterial(1-tp):Filter(cm.filter1,nil,e)
local mg1=Duel.GetFusionMaterial(tp):Filter(cm.filter1,nil,e)
mg1:Merge(mg)
local mg2=Duel.GetMatchingGroup(cm.filter3,tp,LOCATION_GRAVE,LOCATION_GRAVE,nil)
local mg2=Duel.GetMatchingGroup(cm.filter3,tp,LOCATION_GRAVE+LOCATION_DECK,0,nil)
mg1:Merge(mg2)
local sg1=Duel.GetMatchingGroup(cm.filter2,tp,LOCATION_EXTRA,0,nil,e,tp,mg1,nil,chkf)
local mg3=nil
......
......@@ -119,7 +119,7 @@ function cm.disop(e,tp,eg,ep,ev,re,r,rp)
end
--to hand
function cm.thcfilter(c)
return c:IsFaceup() and c:IsSetCard(0x3ef1) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
return c:IsFaceup() and c:IsSetCard(0xef1) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end
function cm.thctg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE+LOCATION_REMOVED) and chkc:IsControler(tp) and cm.thcfilter(chkc) end
......
......@@ -120,16 +120,16 @@ function cm.descon(e,tp,eg,ep,ev,re,r,rp)
return not eg:IsContains(e:GetHandler()) and eg:IsExists(Card.IsControler,1,nil,1-tp)
end
function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) end
if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g=Duel.SelectTarget(tp,aux.TRUE,tp,0,LOCATION_MZONE,1,1,nil)
if chk==0 then return Duel.IsExistingMatchingCard(Card.IsAbleToHand,tp,0,LOCATION_MZONE,1,nil) end
local g=Duel.GetMatchingGroup(Card.IsAbleToHand,tp,0,LOCATION_MZONE,nil)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
end
function cm.desop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.GetFirstTarget()
if tc:IsRelateToEffect(e) then
Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
local g=Duel.SelectMatchingCard(tp,Card.IsAbleToHand,tp,0,LOCATION_MZONE,1,1,nil)
if g:GetCount()>0 then
Duel.HintSelection(g)
Duel.SendtoHand(g,nil,REASON_EFFECT)
end
end
--indes
......
......@@ -126,7 +126,7 @@ function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
end
function cm.spfilter(c,e,tp)
return c:IsType(TYPE_MONSTER) and c:IsLevelBelow(4) and c:IsSetCard(0xef1) and c:IsCanBeSpecialSummoned(e,0,tp,true,true)
return c:IsType(TYPE_MONSTER) and c:IsLevelBelow(4) and c:IsSetCard(0xef1) and c:IsCanBeSpecialSummoned(e,0,tp,true,false)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
......@@ -139,7 +139,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.SelectMatchingCard(tp,aux.NecroValleyFilter(cm.spfilter),tp,LOCATION_DECK+LOCATION_EXTRA+LOCATION_HAND+LOCATION_GRAVE+LOCATION_REMOVED,0,1,1,nil,e,tp)
local tc=g:GetFirst()
if not tc then return end
if Duel.SpecialSummonStep(tc,0,tp,tp,true,true,POS_FACEUP) then
if Duel.SpecialSummonStep(tc,0,tp,tp,true,false,POS_FACEUP) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE)
......
......@@ -137,11 +137,12 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
end
end
--pendulum set
function cm.pfilter(c,tp)
return c:IsSummonPlayer(tp) and c:IsSummonType(SUMMON_TYPE_PENDULUM)
function cm.pfilter(c,se)
return c:IsFaceup() and (se==nil or c:GetReasonEffect()~=se)
end
function cm.pencon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsFaceup() and eg:IsExists(cm.pfilter,2,nil,tp)
local se=e:GetLabelObject():GetLabelObject()
return eg:IsExists(cm.pfilter,2,nil,se)
end
function cm.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1) end
......
......@@ -43,7 +43,7 @@ function cm.filter(c)
and (c:IsType(TYPE_MONSTER) or c:IsLocation(LOCATION_PZONE))
end
function cm.thfilter(c)
return c:IsSetCard(0xef1) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
return c:IsSetCard(0x6ef1) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_MZONE+LOCATION_PZONE+LOCATION_GRAVE+LOCATION_REMOVED+LOCATION_HAND,0,3,nil) 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