Commit 4d1e4ce4 authored by Tachibana's avatar Tachibana

得得得得得

parent cb6be3d8
...@@ -15,7 +15,7 @@ function c17030680.initial_effect(c) ...@@ -15,7 +15,7 @@ function c17030680.initial_effect(c)
--destroy --destroy
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_DESTROY+CATEGORY_DAMAGE) e2:SetCategory(CATEGORY_DESTROY+CATEGORY_DAMAGE)
e2:SetDescription(aux.Stringid(86532744,0)) e2:SetDescription(aux.Stringid(17030680,0))
e2:SetType(EFFECT_TYPE_IGNITION) e2:SetType(EFFECT_TYPE_IGNITION)
e2:SetProperty(EFFECT_FLAG_CARD_TARGET) e2:SetProperty(EFFECT_FLAG_CARD_TARGET)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
......
...@@ -52,7 +52,7 @@ function c17030690.ntcon(e,c,minc) ...@@ -52,7 +52,7 @@ function c17030690.ntcon(e,c,minc)
return minc==0 and (b2==0 or (b1>0 and b3 and b4)) return minc==0 and (b2==0 or (b1>0 and b3 and b4))
end end
function c17030690.nttg(e,c) function c17030690.nttg(e,c)
return c:IsLevelAbove(5) and c:IsSetCard(0x7f6) return c:IsLevelAbove(5) and c:IsSetCard(0x37f6,0x57f6)
end end
function c17030690.discon(e,tp,eg,ep,ev,re,r,rp) function c17030690.discon(e,tp,eg,ep,ev,re,r,rp)
return rp==1-tp and not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev) and re:IsActiveType(TYPE_MONSTER) return rp==1-tp and not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev) and re:IsActiveType(TYPE_MONSTER)
......
...@@ -11,7 +11,7 @@ function c17030800.initial_effect(c) ...@@ -11,7 +11,7 @@ function c17030800.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--set --set
local e8=Effect.CreateEffect(c) local e8=Effect.CreateEffect(c)
e8:SetDescription(aux.Stringid(44133040,1)) e8:SetDescription(aux.Stringid(17030800,1))
e8:SetType(EFFECT_TYPE_IGNITION) e8:SetType(EFFECT_TYPE_IGNITION)
e8:SetRange(LOCATION_GRAVE) e8:SetRange(LOCATION_GRAVE)
e8:SetTarget(c17030800.settg) e8:SetTarget(c17030800.settg)
......
...@@ -9,7 +9,7 @@ function c17030810.initial_effect(c) ...@@ -9,7 +9,7 @@ function c17030810.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--extra summon --extra summon
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(24382602,0)) e2:SetDescription(aux.Stringid(17030810,0))
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_EXTRA_PENDULUM_SUMMON) e2:SetCode(EFFECT_EXTRA_PENDULUM_SUMMON)
e2:SetRange(LOCATION_SZONE) e2:SetRange(LOCATION_SZONE)
...@@ -27,7 +27,7 @@ function c17030810.initial_effect(c) ...@@ -27,7 +27,7 @@ function c17030810.initial_effect(c)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function c17030810.thfilter(c) function c17030810.thfilter(c)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand() return c:IsSetCard(0x37f6) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand()
end end
function c17030810.activate(e,tp,eg,ep,ev,re,r,rp) function c17030810.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.SetLP(tp,math.ceil(Duel.GetLP(tp)/2)) Duel.SetLP(tp,math.ceil(Duel.GetLP(tp)/2))
...@@ -54,7 +54,7 @@ function c17030810.thop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -54,7 +54,7 @@ function c17030810.thop2(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c17030810.pendvalue(e,c) function c17030810.pendvalue(e,c)
return c:IsSetCard(0x7f6) return c:IsSetCard(0x37f6)
end end
function c17030810.spcost(e,tp,eg,ep,ev,re,r,rp,chk) function c17030810.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end if chk==0 then return e:GetHandler():IsAbleToGraveAsCost() end
...@@ -63,7 +63,7 @@ function c17030810.spcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -63,7 +63,7 @@ function c17030810.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoGrave(e:GetHandler(),REASON_COST) Duel.SendtoGrave(e:GetHandler(),REASON_COST)
end end
function c17030810.spfilter(c,e,tp) function c17030810.spfilter(c,e,tp)
return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x7f6) return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x37f6)
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0
end end
function c17030810.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c17030810.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -65,7 +65,7 @@ function c17030920.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -65,7 +65,7 @@ function c17030920.cost(e,tp,eg,ep,ev,re,r,rp,chk)
e:GetHandler():RemoveCounter(tp,0x1,ct,REASON_COST) e:GetHandler():RemoveCounter(tp,0x1,ct,REASON_COST)
end end
function c17030920.rpfilter(c,e,tp) function c17030920.rpfilter(c,e,tp)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_PENDULUM) and (not c:IsForbidden() return (c:IsSetCard(0x37f6) or c:IsRace(RACE_SPELLCASTER))and c:IsType(TYPE_PENDULUM) and (not c:IsForbidden()
or (Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false))) or (Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false)))
end end
function c17030920.rptg(e,tp,eg,ep,ev,re,r,rp,chk) function c17030920.rptg(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -40,10 +40,10 @@ function c17030990.initial_effect(c) ...@@ -40,10 +40,10 @@ function c17030990.initial_effect(c)
e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e4:SetCode(EVENT_PHASE+PHASE_END) e4:SetCode(EVENT_PHASE+PHASE_END)
e4:SetRange(LOCATION_REMOVED) e4:SetRange(LOCATION_REMOVED)
e4:SetCountLimit(1,44440059) e4:SetCountLimit(1,17030990)
e4:SetCondition(c17030990.thcon) e4:SetCondition(c17030990.thcon2)
e4:SetTarget(c17030990.thtg) e4:SetTarget(c17030990.thtg2)
e4:SetOperation(c17030990.thop) e4:SetOperation(c17030990.thop2)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function c17030990.filter(c) function c17030990.filter(c)
...@@ -128,14 +128,14 @@ function c17030990.regop(e,tp,eg,ep,ev,re,r,rp) ...@@ -128,14 +128,14 @@ function c17030990.regop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
c:RegisterFlagEffect(17030990,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1) c:RegisterFlagEffect(17030990,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
end end
function c17030990.thcon(e,tp,eg,ep,ev,re,r,rp) function c17030990.thcon2(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(17030990)>0 return e:GetHandler():GetFlagEffect(17030990)>0
end end
function c17030990.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c17030990.thtg2(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToHand() end if chk==0 then return e:GetHandler():IsAbleToHand() end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,e:GetHandler(),1,0,0) Duel.SetOperationInfo(0,CATEGORY_TOHAND,e:GetHandler(),1,0,0)
end end
function c17030990.thop(e,tp,eg,ep,ev,re,r,rp) function c17030990.thop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SetLP(tp,Duel.GetLP(tp)-2000)~=0 then if c:IsRelateToEffect(e) and Duel.SetLP(tp,Duel.GetLP(tp)-2000)~=0 then
Duel.SendtoHand(c,nil,REASON_EFFECT) Duel.SendtoHand(c,nil,REASON_EFFECT)
......
...@@ -5,7 +5,7 @@ function c17032520.initial_effect(c) ...@@ -5,7 +5,7 @@ function c17032520.initial_effect(c)
aux.EnablePendulumAttribute(c) aux.EnablePendulumAttribute(c)
--Add Counter --Add Counter
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(17030610,0)) e1:SetDescription(aux.Stringid(17032520,0))
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_PZONE) e1:SetRange(LOCATION_PZONE)
e1:SetCountLimit(1) e1:SetCountLimit(1)
...@@ -25,7 +25,7 @@ function c17032520.initial_effect(c) ...@@ -25,7 +25,7 @@ function c17032520.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--atk --atk
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(1621413,0)) e3:SetDescription(aux.Stringid(17032520,0))
e3:SetCategory(CATEGORY_ATKCHANGE) e3:SetCategory(CATEGORY_ATKCHANGE)
e3:SetType(EFFECT_TYPE_IGNITION) e3:SetType(EFFECT_TYPE_IGNITION)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
......
...@@ -41,11 +41,11 @@ function c17032530.cfilter(c,mc,e,tp) ...@@ -41,11 +41,11 @@ function c17032530.cfilter(c,mc,e,tp)
local lsc=c:GetLeftScale() local lsc=c:GetLeftScale()
local rsc=mc:GetRightScale() local rsc=mc:GetRightScale()
if lsc>rsc then lsc,rsc=rsc,lsc end if lsc>rsc then lsc,rsc=rsc,lsc end
return c:IsSetCard(0x17f6) and Duel.IsExistingMatchingCard(c17032530.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp,lsc,rsc) return c:IsSetCard(0x57f6) and Duel.IsExistingMatchingCard(c17032530.spfilter,tp,LOCATION_DECK,0,1,nil,e,tp,lsc,rsc)
end end
function c17032530.spfilter(c,e,tp,lsc,rsc) function c17032530.spfilter(c,e,tp,lsc,rsc)
local lv=c:GetLevel() local lv=c:GetLevel()
return c:IsSetCard(0x17f6) and lv>lsc and lv<rsc and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP) return c:IsSetCard(0x57f6) and lv>lsc and lv<rsc and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP)
end end
function c17032530.spcon(e,tp,eg,ep,ev,re,r,rp) function c17032530.spcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
...@@ -72,7 +72,7 @@ function c17032530.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -72,7 +72,7 @@ function c17032530.spop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function c17032530.cfilter(c) function c17032530.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x17f6) return c:IsFaceup() and c:IsSetCard(0x57f6)
end end
function c17032530.hspcon(e,tp,eg,ep,ev,re,r,rp) function c17032530.hspcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(c17032530.cfilter,tp,LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(c17032530.cfilter,tp,LOCATION_MZONE,0,1,nil)
......
...@@ -542,15 +542,10 @@ function Chikichikibanban.FakeDarkSynchroMaterialFilter2(c,sc,e,tp,op) ...@@ -542,15 +542,10 @@ function Chikichikibanban.FakeDarkSynchroMaterialFilter2(c,sc,e,tp,op)
return (not op or op(e,tp,0,c)) return (not op or op(e,tp,0,c))
end end
function Chikichikibanban.FakeDarkSynchroCondition(f,gf,minc,maxc,op,self_location,opponent_location) function Chikichikibanban.FakeDarkSynchroCondition(f,gf,minc,maxc,op,self_location,opponent_location)
return function(e,c,og,min,max) return function(e,c,og)
if c==nil then return true end if c==nil then return true end
if og and not min then return true end
local minc=minc local minc=minc
local maxc=maxc local maxc=maxc
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
end
local tp=c:GetControler() local tp=c:GetControler()
local mg=Duel.GetFieldGroup(tp,self_location,opponent_location) local mg=Duel.GetFieldGroup(tp,self_location,opponent_location)
local sg=mg:Filter(Chikichikibanban.FakeDarkSynchroMaterialFilter,nil,c,f) local sg=mg:Filter(Chikichikibanban.FakeDarkSynchroMaterialFilter,nil,c,f)
...@@ -559,16 +554,9 @@ function Chikichikibanban.FakeDarkSynchroCondition(f,gf,minc,maxc,op,self_locati ...@@ -559,16 +554,9 @@ function Chikichikibanban.FakeDarkSynchroCondition(f,gf,minc,maxc,op,self_locati
end end
end end
function Chikichikibanban.FakeDarkSynchroTarget(f,gf,minc,maxc,op,self_location,opponent_location) function Chikichikibanban.FakeDarkSynchroTarget(f,gf,minc,maxc,op,self_location,opponent_location)
return function(e,tp,eg,ep,ev,re,r,rp,chk,c,og,lmat,min,max) return function(e,tp,eg,ep,ev,re,r,rp,chk,c,og,lmat)
if og and not min then
return true
end
local minc=minc local minc=minc
local maxc=maxc local maxc=maxc
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
end
local tp=c:GetControler() local tp=c:GetControler()
local mg=Duel.GetFieldGroup(tp,self_location,opponent_location) local mg=Duel.GetFieldGroup(tp,self_location,opponent_location)
local sg=mg:Filter(Chikichikibanban.FakeDarkSynchroMaterialFilter,nil,c,f) local sg=mg:Filter(Chikichikibanban.FakeDarkSynchroMaterialFilter,nil,c,f)
......
...@@ -63,10 +63,10 @@ function cm.initial_effect(c) ...@@ -63,10 +63,10 @@ function cm.initial_effect(c)
c:RegisterEffect(e6) c:RegisterEffect(e6)
end end
function cm.psplimit(e,c,tp,sumtp,sumpos) function cm.psplimit(e,c,tp,sumtp,sumpos)
return not c:IsSetCard(0x7f6) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM return not c:IsSetCard(0x37f6) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM
end end
function cm.sprfilter(c) function cm.sprfilter(c)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_PENDULUM) and c:IsReleasable() return c:IsSetCard(0x37f6) and c:IsType(TYPE_PENDULUM) and c:IsReleasable()
end end
function cm.sprcon(e,c) function cm.sprcon(e,c)
if c==nil then return true end if c==nil then return true end
...@@ -105,7 +105,6 @@ function cm.disop(e,tp,eg,ep,ev,re,r,rp) ...@@ -105,7 +105,6 @@ function cm.disop(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end if not e:GetHandler():IsRelateToEffect(e) then return end
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if Duel.Destroy(e:GetHandler(),REASON_EFFECT)~=0 and tc:IsFaceup() and tc:IsRelateToEffect(e) then if Duel.Destroy(e:GetHandler(),REASON_EFFECT)~=0 and tc:IsFaceup() and tc:IsRelateToEffect(e) then
Duel.GetControl(tc,tp)
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_DISABLE) e1:SetCode(EFFECT_DISABLE)
......
...@@ -113,7 +113,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -113,7 +113,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Remove(mg,POS_FACEUP,REASON_COST) Duel.Remove(mg,POS_FACEUP,REASON_COST)
end end
function cm.splimit(e,c,tp,sumtp,sumpos) function cm.splimit(e,c,tp,sumtp,sumpos)
return not c:IsSetCard(0x7f6) return not c:IsSetCard(0x37f6)
end end
function cm.tefilter(c) function cm.tefilter(c)
return c:IsType(TYPE_PENDULUM) return c:IsType(TYPE_PENDULUM)
...@@ -131,7 +131,7 @@ function cm.teop(e,tp,eg,ep,ev,re,r,rp) ...@@ -131,7 +131,7 @@ function cm.teop(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.effcon(e,tp,eg,ep,ev,re,r,rp) function cm.effcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(r,REASON_FUSION+REASON_SYNCHRO+REASON_XYZ+REASON_LINK)~=0 and e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD) return bit.band(r,REASON_FUSION+REASON_SYNCHRO+REASON_XYZ+REASON_LINK)~=0 and e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD)
and e:GetHandler():GetReasonCard():IsSetCard(0x7f6) and e:GetHandler():GetReasonCard():IsSetCard(0x37f6)
end end
function cm.effop(e,tp,eg,ep,ev,re,r,rp) function cm.effop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
......
...@@ -5,7 +5,7 @@ function cm.initial_effect(c) ...@@ -5,7 +5,7 @@ function cm.initial_effect(c)
aux.EnablePendulumAttribute(c) aux.EnablePendulumAttribute(c)
--spsummon(p) --spsummon(p)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(m,0)) e1:SetDescription(aux.Stringid(17060840,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON) e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_PZONE) e1:SetRange(LOCATION_PZONE)
...@@ -31,7 +31,7 @@ function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -31,7 +31,7 @@ function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD) Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD)
end end
function cm.spfilter(c,e,tp) function cm.spfilter(c,e,tp)
return c:IsSetCard(0x17f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x57f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.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
...@@ -70,7 +70,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -70,7 +70,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x7f6) return c:IsFaceup() and c:IsSetCard(0x37f6)
end end
function cm.hspcon(e,tp,eg,ep,ev,re,r,rp) function cm.hspcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,2,nil) return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,2,nil)
......
...@@ -45,7 +45,7 @@ function cm.initial_effect(c) ...@@ -45,7 +45,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e5) c:RegisterEffect(e5)
end end
function cm.filter(c,tp) function cm.filter(c,tp)
return c:IsFaceup() and c:IsType(TYPE_MONSTER) and c:IsLocation(LOCATION_ONFIELD) and c:IsSetCard(0x7f6) return c:IsFaceup() and c:IsType(TYPE_MONSTER) and c:IsLocation(LOCATION_ONFIELD) and c:IsSetCard(0x37f6)
and c:IsControler(tp) and c:IsReason(REASON_EFFECT+REASON_BATTLE) and not c:IsReason(REASON_REPLACE) and c:IsControler(tp) and c:IsReason(REASON_EFFECT+REASON_BATTLE) and not c:IsReason(REASON_REPLACE)
end end
function cm.reptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.reptg(e,tp,eg,ep,ev,re,r,rp,chk)
...@@ -62,7 +62,7 @@ function cm.repop(e,tp,eg,ep,ev,re,r,rp) ...@@ -62,7 +62,7 @@ function cm.repop(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
local tc=eg:GetFirst() local tc=eg:GetFirst()
return tc:IsControler(tp) and tc:IsFaceup() and tc:IsSetCard(0x7f6) return tc:IsControler(tp) and tc:IsFaceup() and tc:IsSetCard(0x37f6)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler() local c=e:GetHandler()
...@@ -78,7 +78,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -78,7 +78,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.tfilter(c,tp) function cm.tfilter(c,tp)
return c:IsFaceup() and c:IsSetCard(0x7f6) and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE) return c:IsFaceup() and c:IsSetCard(0x37f6) and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE)
end end
function cm.spcon1(e,tp,eg,ep,ev,re,r,rp) function cm.spcon1(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return false end if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return false end
......
...@@ -64,7 +64,7 @@ end ...@@ -64,7 +64,7 @@ end
function cm.atkop(e,tp,eg,ep,ev,re,r,rp) function cm.atkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end if not c:IsRelateToEffect(e) then return end
local g=Duel.GetMatchingGroup(Card.IsSetCard,tp,LOCATION_MZONE,0,nil,0x7f6) local g=Duel.GetMatchingGroup(Card.IsSetCard,tp,LOCATION_MZONE,0,nil,0x37f6)
local tc=g:GetFirst() local tc=g:GetFirst()
while tc do while tc do
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
......
...@@ -37,7 +37,7 @@ function cm.initial_effect(c) ...@@ -37,7 +37,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.cfilter(c,tp) function cm.cfilter(c,tp)
return c:IsFaceup() and c:GetSummonPlayer()==tp and c:IsSetCard(0x7f6) return c:IsFaceup() and c:GetSummonPlayer()==tp and c:IsSetCard(0x37f6)
end end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.cfilter,1,nil,tp) return eg:IsExists(cm.cfilter,1,nil,tp)
...@@ -53,7 +53,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -53,7 +53,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end end
function cm.drcon(e,tp,eg,ep,ev,re,r,rp) function cm.drcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(Card.IsSetCard,tp,LOCATION_PZONE,0,1,e:GetHandler(),0x7f6) return Duel.IsExistingMatchingCard(Card.IsSetCard,tp,LOCATION_PZONE,0,1,e:GetHandler(),0x37f6)
end end
function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil) end
......
...@@ -26,7 +26,7 @@ function cm.initial_effect(c) ...@@ -26,7 +26,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.thfilter(c) function cm.thfilter(c)
return c:IsFaceup() and c:IsSetCard(0x7f6) and c:IsType(TYPE_PENDULUM) and c:IsAbleToHand() return c:IsFaceup() and c:IsSetCard(0x37f6) and c:IsType(TYPE_PENDULUM) and c:IsAbleToHand()
end end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_EXTRA,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_EXTRA,0,1,nil) end
......
...@@ -53,7 +53,7 @@ function cm.tgop(e,tp,eg,ep,ev,re,r,rp) ...@@ -53,7 +53,7 @@ function cm.tgop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.cfilter(c,tp) function cm.cfilter(c,tp)
return c:IsFaceup() and c:GetSummonPlayer()==tp and c:IsSetCard(0x7f6) return c:IsFaceup() and c:GetSummonPlayer()==tp and c:IsSetCard(0x37f6)
end end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.cfilter,1,nil,tp) return eg:IsExists(cm.cfilter,1,nil,tp)
...@@ -66,7 +66,7 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -66,7 +66,7 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if c:IsRelateToEffect(e) and Duel.SendtoHand(eg:Filter(Card.IsSetCard,nil,0x7f6),nil,REASON_EFFECT)~=0 then if c:IsRelateToEffect(e) and Duel.SendtoHand(eg:Filter(Card.IsSetCard,nil,0x37f6),nil,REASON_EFFECT)~=0 then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end end
end end
\ No newline at end of file
...@@ -36,7 +36,7 @@ function cm.initial_effect(c) ...@@ -36,7 +36,7 @@ function cm.initial_effect(c)
end end
cm.pendulum_level=10 cm.pendulum_level=10
function cm.mfilter(c,xyzc) function cm.mfilter(c,xyzc)
return c:IsXyzType(TYPE_PENDULUM) and c:IsSetCard(0x7f6) return c:IsXyzType(TYPE_PENDULUM) and c:IsSetCard(0x37f6)
end end
function cm.xyzcheck(g) function cm.xyzcheck(g)
return g:GetClassCount(Card.GetCurrentScale)==1 return g:GetClassCount(Card.GetCurrentScale)==1
......
...@@ -5,7 +5,7 @@ function cm.initial_effect(c) ...@@ -5,7 +5,7 @@ function cm.initial_effect(c)
aux.EnablePendulumAttribute(c,false) aux.EnablePendulumAttribute(c,false)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcFun2(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0x7f6),aux.FilterBoolFunction(Card.IsFusionAttribute,ATTRIBUTE_EARTH),true) aux.AddFusionProcFun2(c,aux.FilterBoolFunction(Card.IsFusionSetCard,0x37f6),aux.FilterBoolFunction(Card.IsFusionAttribute,ATTRIBUTE_EARTH),true)
--indes --indes
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
...@@ -62,7 +62,7 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp) ...@@ -62,7 +62,7 @@ function cm.condition(e,tp,eg,ep,ev,re,r,rp)
and (re:IsActiveType(TYPE_MONSTER) or re:IsHasType(EFFECT_TYPE_ACTIVATE)) and (re:IsActiveType(TYPE_MONSTER) or re:IsHasType(EFFECT_TYPE_ACTIVATE))
end end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x7f6) return c:IsFaceup() and c:IsSetCard(0x37f6)
end end
function cm.operation(e,tp,eg,ep,ev,re,r,rp) function cm.operation(e,tp,eg,ep,ev,re,r,rp)
if Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.SelectEffectYesNo(tp,e:GetHandler()) then if Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil) and Duel.SelectEffectYesNo(tp,e:GetHandler()) then
...@@ -72,7 +72,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -72,7 +72,7 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_IMMUNE_EFFECT) e1:SetCode(EFFECT_IMMUNE_EFFECT)
e1:SetTargetRange(LOCATION_MZONE,0) e1:SetTargetRange(LOCATION_MZONE,0)
e1:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x7f6)) e1:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x37f6))
e1:SetValue(cm.efilter) e1:SetValue(cm.efilter)
e1:SetLabelObject(re) e1:SetLabelObject(re)
e1:SetReset(RESET_EVENT+RESET_CHAIN) e1:SetReset(RESET_EVENT+RESET_CHAIN)
......
...@@ -67,7 +67,7 @@ function c17061030.spcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -67,7 +67,7 @@ function c17061030.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetLP(1-tp)<=Duel.GetLP(tp)-5000 return Duel.GetLP(1-tp)<=Duel.GetLP(tp)-5000
end end
function c17061030.spfilter(c,e,tp) function c17061030.spfilter(c,e,tp)
return c:IsSetCard(0x7f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x37f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function c17061030.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function c17061030.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
......
...@@ -4,7 +4,7 @@ local cm=_G["c"..m] ...@@ -4,7 +4,7 @@ local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
aux.EnablePendulumAttribute(c,false) aux.EnablePendulumAttribute(c,false)
--synchro summon --synchro summon
aux.AddSynchroProcedure(c,nil,aux.NonTuner(Card.IsSetCard,0x7f6),1) aux.AddSynchroProcedure(c,nil,aux.NonTuner(Card.IsSetCard,0x37f6),1)
c:EnableReviveLimit() c:EnableReviveLimit()
--disable spsummon --disable spsummon
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -54,27 +54,39 @@ function cm.dspcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -54,27 +54,39 @@ function cm.dspcon(e,tp,eg,ep,ev,re,r,rp)
return tp~=ep and Duel.GetCurrentChain()==0 return tp~=ep and Duel.GetCurrentChain()==0
end end
function cm.dsptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.dsptg(e,tp,eg,ep,ev,re,r,rp,chk)
local mg=Group.CreateGroup()
mg:Merge(eg)
mg:AddCard(e:GetHandler())
if chk==0 then return true end if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_DISABLE_SUMMON,eg,eg:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_DISABLE_SUMMON,eg,eg:GetCount(),0,0)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,Group.FromCards(eg,e:GetHandler()),eg:GetCount()+1,0,0) Duel.SetOperationInfo(0,CATEGORY_REMOVE,mg,eg:GetCount()+1,0,0)
end end
function cm.dspop(e,tp,eg,ep,ev,re,r,rp) function cm.dspop(e,tp,eg,ep,ev,re,r,rp)
local mg=Group.CreateGroup()
mg:Merge(eg)
mg:AddCard(e:GetHandler())
Duel.NegateSummon(eg) Duel.NegateSummon(eg)
Duel.Remove(Group.FromCards(eg,e:GetHandler()),POS_FACEUP,REASON_EFFECT) Duel.Remove(mg,POS_FACEUP,REASON_EFFECT)
end end
function cm.negcon(e,tp,eg,ep,ev,re,r,rp) function cm.negcon(e,tp,eg,ep,ev,re,r,rp)
return rp==1-tp and re:IsActiveType(TYPE_MONSTER) and not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev) return rp==1-tp and re:IsActiveType(TYPE_MONSTER) and not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev)
end end
function cm.negtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.negtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return true end if chk==0 then return true end
local mg=Group.CreateGroup()
Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0) Duel.SetOperationInfo(0,CATEGORY_NEGATE,eg,1,0,0)
if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then if re:GetHandler():IsDestructable() and re:GetHandler():IsRelateToEffect(re) then
Duel.SetOperationInfo(0,CATEGORY_REMOVE,Group.FromCards(eg,e:GetHandler()),1,0,0) mg:Merge(eg)
mg:AddCard(e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_REMOVE,mg,1,0,0)
end end
end end
function cm.negop(e,tp,eg,ep,ev,re,r,rp) function cm.negop(e,tp,eg,ep,ev,re,r,rp)
local mg=Group.CreateGroup()
if Duel.NegateActivation(ev) then if Duel.NegateActivation(ev) then
Duel.Remove(Group.FromCards(eg,e:GetHandler()),POS_FACEUP,REASON_EFFECT) mg:Merge(eg)
mg:AddCard(e:GetHandler())
Duel.Remove(mg,POS_FACEUP,REASON_EFFECT)
end end
end end
function cm.regop(e,tp,eg,ep,ev,re,r,rp) function cm.regop(e,tp,eg,ep,ev,re,r,rp)
...@@ -112,7 +124,7 @@ function cm.sumop(e,tp,eg,ep,ev,re,r,rp) ...@@ -112,7 +124,7 @@ function cm.sumop(e,tp,eg,ep,ev,re,r,rp)
if c:IsRelateToEffect(e) then if c:IsRelateToEffect(e) then
local op=Duel.SelectOption(tp,table.unpack(ops)) local op=Duel.SelectOption(tp,table.unpack(ops))
local sel=opval[op] local sel=opval[op]
if op==0 then if sel==1 then
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
else else
Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true) Duel.MoveToField(c,tp,tp,LOCATION_PZONE,POS_FACEUP,true)
......
--苍空的迷途者·阿凡达 --苍空的迷途者·阿凡达
local m=17061060 local m=17061060
local cm=_G["c"..m] local cm=_G["c"..m]
xpcall(function() require("expansions/script/c17035101") end,function() require("script/c17035101") end)
function cm.initial_effect(c) function cm.initial_effect(c)
c:EnableReviveLimit()
aux.EnablePendulumAttribute(c,false) aux.EnablePendulumAttribute(c,false)
--xyz summon chiki.AddXyzProcedure(c,cm.xyzfilter,8,2,LOCATION_PZONE,nil)
local e0=Effect.CreateEffect(c)
e0:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e0:SetType(EFFECT_TYPE_FIELD)
e0:SetCode(EFFECT_SPSUMMON_PROC)
e0:SetRange(LOCATION_EXTRA)
e0:SetCondition(function(e,c,og,min,max)
if c==nil then return true end
if c:IsType(TYPE_PENDULUM) and c:IsFaceup() then return false end
local tp=c:GetControler()
local zone=Duel.GetFieldGroup(tp,LOCATION_MZONE+LOCATION_PZONE,0)
local minc=2
local maxc=114
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
if minc>maxc then return false end
end
return Duel.CheckXyzMaterial(c,cm.xyzfilter,8,minc,maxc,zone)
end)
e0:SetTarget(function(e,tp,eg,ep,ev,re,r,rp,chk,c,og,min,max)
if og and not min then
return true
end
local zone=Duel.GetFieldGroup(tp,LOCATION_MZONE+LOCATION_PZONE,0)
local minc=2
local maxc=114
if min then
if min>minc then minc=min end
if max<maxc then maxc=max end
end
local g=Duel.SelectXyzMaterial(tp,c,cm.xyzfilter,8,minc,maxc,zone)
if g then
g:KeepAlive()
e:SetLabelObject(g)
return true
else return false end
end)
e0:SetOperation(function(e,tp,eg,ep,ev,re,r,rp,c,og,min,max)
if og and not min then
local sg=Group.CreateGroup()
local tc=og:GetFirst()
while tc do
local sg1=tc:GetOverlayGroup()
sg:Merge(sg1)
tc=og:GetNext()
end
Duel.SendtoGrave(sg,REASON_RULE)
c:SetMaterial(og)
Duel.Overlay(c,og)
else
local mg=e:GetLabelObject()
local sg=Group.CreateGroup()
local tc=mg:GetFirst()
while tc do
local sg1=tc:GetOverlayGroup()
sg:Merge(sg1)
tc=mg:GetNext()
end
Duel.SendtoGrave(sg,REASON_RULE)
c:SetMaterial(mg)
Duel.Overlay(c,mg)
mg:DeleteGroup()
end
end)
e0:SetValue(SUMMON_TYPE_XYZ)
c:RegisterEffect(e0)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_XYZ_LEVEL) e1:SetCode(EFFECT_XYZ_LEVEL)
...@@ -122,7 +58,7 @@ end ...@@ -122,7 +58,7 @@ end
cm.pendulum_level=8 cm.pendulum_level=8
function cm.xyzfilter(c) function cm.xyzfilter(c)
return c:IsType(TYPE_PENDULUM) and (c:IsFaceup() or not c:IsLocation(LOCATION_MZONE)) return c:IsType(TYPE_PENDULUM) and (c:IsFaceup() or not c:IsLocation(LOCATION_MZONE))
and (c:IsSetCard(0x7f6) or not c:IsLocation(LOCATION_PZONE)) and (c:IsSetCard(0x37f6) or not c:IsLocation(LOCATION_PZONE))
end end
function cm.xyzlv(e,c,rc) function cm.xyzlv(e,c,rc)
local lv=c:GetLevel() local lv=c:GetLevel()
......
...@@ -4,7 +4,7 @@ local cm=_G["c"..m] ...@@ -4,7 +4,7 @@ local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
--link summon --link summon
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkType,TYPE_PENDULUM),2,2) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkType,TYPE_PENDULUM),2,2,cm.lcheck)
--to extra --to extra
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(17061070,0)) e1:SetDescription(aux.Stringid(17061070,0))
...@@ -26,13 +26,16 @@ function cm.initial_effect(c) ...@@ -26,13 +26,16 @@ function cm.initial_effect(c)
e2:SetValue(cm.atkval) e2:SetValue(cm.atkval)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.lcheck(g)
return g:GetClassCount(Card.GetLinkAttribute)==g:GetCount()
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp) function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK) return e:GetHandler():IsSummonType(SUMMON_TYPE_LINK)
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return c:IsSetCard(0x17f6) and c:IsType(TYPE_PENDULUM) and (c:IsLocation(LOCATION_HAND+LOCATION_GRAVE) or c:IsFaceup()) return c:IsSetCard(0x57f6) and c:IsType(TYPE_PENDULUM) and (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup())
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
and (c:IsLocation(LOCATION_HAND+LOCATION_GRAVE) and Duel.GetMZoneCount(tp)>0 and (c:IsLocation(LOCATION_GRAVE) and Duel.GetMZoneCount(tp)>0
or c:IsLocation(LOCATION_EXTRA) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0) or c:IsLocation(LOCATION_EXTRA) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -39,16 +39,16 @@ function cm.initial_effect(c) ...@@ -39,16 +39,16 @@ function cm.initial_effect(c)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.psplimit(e,c,tp,sumtp,sumpos) function cm.psplimit(e,c,tp,sumtp,sumpos)
return not c:IsSetCard(0x7f6) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM return not c:IsSetCard(0x37f6) and bit.band(sumtp,SUMMON_TYPE_PENDULUM)==SUMMON_TYPE_PENDULUM
end end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsSetCard(0x7f6) return c:IsSetCard(0x37f6)
end end
function cm.pencon(e,tp,eg,ep,ev,re,r,rp) function cm.pencon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_PZONE,0,1,e:GetHandler()) return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_PZONE,0,1,e:GetHandler())
end end
function cm.penfilter(c) function cm.penfilter(c)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden() return c:IsSetCard(0x37f6) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden()
end end
function cm.pentg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.pentg(e,tp,eg,ep,ev,re,r,rp,chk)
local sc=Duel.GetFirstMatchingCard(nil,tp,LOCATION_PZONE,0,e:GetHandler()) local sc=Duel.GetFirstMatchingCard(nil,tp,LOCATION_PZONE,0,e:GetHandler())
......
...@@ -65,7 +65,7 @@ function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -65,7 +65,7 @@ function cm.destg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_DECK)
end end
function cm.spfilter(c,e,tp,att) function cm.spfilter(c,e,tp,att)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_PENDULUM) and bit.band(att,c:GetOriginalAttribute())~=0 return c:IsSetCard(0x37f6) and c:IsType(TYPE_PENDULUM) and bit.band(att,c:GetOriginalAttribute())~=0
and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE) and c:IsCanBeSpecialSummoned(e,0,tp,false,false,POS_FACEUP_DEFENSE)
end end
function cm.desop(e,tp,eg,ep,ev,re,r,rp) function cm.desop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -23,7 +23,7 @@ function cm.initial_effect(c) ...@@ -23,7 +23,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.thfilter(c) function cm.thfilter(c)
return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x7f6) and c:IsAbleToHand() return c:IsType(TYPE_MONSTER) and c:IsSetCard(0x37f6) and c:IsAbleToHand()
end end
function cm.activate(e,tp,eg,ep,ev,re,r,rp) function cm.activate(e,tp,eg,ep,ev,re,r,rp)
if not e:GetHandler():IsRelateToEffect(e) then return end if not e:GetHandler():IsRelateToEffect(e) then return end
...@@ -39,7 +39,7 @@ function cm.spcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -39,7 +39,7 @@ function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldCard(tp,LOCATION_PZONE,0) and Duel.GetFieldCard(tp,LOCATION_PZONE,1) return Duel.GetFieldCard(tp,LOCATION_PZONE,0) and Duel.GetFieldCard(tp,LOCATION_PZONE,1)
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_PENDULUM) and (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup()) return c:IsSetCard(0x37f6) and c:IsType(TYPE_PENDULUM) and (c:IsLocation(LOCATION_GRAVE) or c:IsFaceup())
and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
and (c:IsLocation(LOCATION_GRAVE) and Duel.GetMZoneCount(tp)>0 and (c:IsLocation(LOCATION_GRAVE) and Duel.GetMZoneCount(tp)>0
or c:IsLocation(LOCATION_EXTRA) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0) or c:IsLocation(LOCATION_EXTRA) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0)
......
...@@ -94,7 +94,7 @@ function cm.pccon(e,tp,eg,ep,ev,re,r,rp) ...@@ -94,7 +94,7 @@ function cm.pccon(e,tp,eg,ep,ev,re,r,rp)
return not Duel.GetFieldCard(tp,LOCATION_PZONE,0) and not Duel.GetFieldCard(tp,LOCATION_PZONE,1) return not Duel.GetFieldCard(tp,LOCATION_PZONE,0) and not Duel.GetFieldCard(tp,LOCATION_PZONE,1)
end end
function cm.psfilter(c) function cm.psfilter(c)
return c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x7f6) and not c:IsForbidden() return c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x37f6) and not c:IsForbidden()
end end
function cm.pctg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.pctg(e,tp,eg,ep,ev,re,r,rp,chk)
local seq=e:GetHandler():GetSequence() local seq=e:GetHandler():GetSequence()
......
...@@ -138,7 +138,7 @@ function cm.tdop(e,tp,eg,ep,ev,re,r,rp) ...@@ -138,7 +138,7 @@ function cm.tdop(e,tp,eg,ep,ev,re,r,rp)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_EXTRA_PENDULUM_SUMMON) e2:SetCode(EFFECT_EXTRA_PENDULUM_SUMMON)
e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e2:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e2:SetCountLimit(1,29432356) e2:SetCountLimit(1,17061260)
e2:SetTargetRange(1,0) e2:SetTargetRange(1,0)
e2:SetValue(cm.pendvalue) e2:SetValue(cm.pendvalue)
e2:SetReset(RESET_PHASE+PHASE_END) e2:SetReset(RESET_PHASE+PHASE_END)
......
...@@ -23,7 +23,7 @@ function cm.rpcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -23,7 +23,7 @@ function cm.rpcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0 return Duel.GetFieldGroupCount(tp,LOCATION_MZONE,0)==0
end end
function cm.rpfilter(c,e,tp) function cm.rpfilter(c,e,tp)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_PENDULUM) and (not c:IsForbidden() return c:IsSetCard(0x37f6) and c:IsType(TYPE_PENDULUM) and (not c:IsForbidden()
or (Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false))) or (Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and c:IsCanBeSpecialSummoned(e,0,tp,false,false)))
end end
function cm.rptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.rptg(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -70,7 +70,7 @@ end ...@@ -70,7 +70,7 @@ end
function cm.desop(e,tp,eg,ep,ev,re,r,rp) function cm.desop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local tc=Duel.GetFirstTarget() local tc=Duel.GetFirstTarget()
if tc:IsAbleToHand() and tc:IsSetCard(0x7f6) and if tc:IsAbleToHand() and tc:IsSetCard(0x37f6) and
Duel.SelectOption(tp,aux.Stringid(17061320,4),1190)==1 then Duel.SelectOption(tp,aux.Stringid(17061320,4),1190)==1 then
Duel.SendtoHand(tc,nil,REASON_EFFECT) Duel.SendtoHand(tc,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,tc) Duel.ConfirmCards(1-tp,tc)
......
...@@ -49,7 +49,7 @@ function cm.initial_effect(c) ...@@ -49,7 +49,7 @@ function cm.initial_effect(c)
e3:SetCode(EVENT_SUMMON_SUCCESS) e3:SetCode(EVENT_SUMMON_SUCCESS)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY)
e3:SetRange(LOCATION_MZONE) e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1) e3:SetCountLimit(1,EFFECT_COUNT_CODE_SINGLE)
e3:SetCondition(cm.spcon) e3:SetCondition(cm.spcon)
e3:SetTarget(cm.destg) e3:SetTarget(cm.destg)
e3:SetOperation(cm.desop) e3:SetOperation(cm.desop)
...@@ -89,7 +89,7 @@ function cm.CheckGroup(g,f,cg,min,max,...) ...@@ -89,7 +89,7 @@ function cm.CheckGroup(g,f,cg,min,max,...)
end end
function cm.val(c,syncard) function cm.val(c,syncard)
local slv=c:GetSynchroLevel(syncard) local slv=c:GetSynchroLevel(syncard)
if c:IsSynchroType(TYPE_PENDULUM) and c:IsLocation(LOCATION_PZONE) and c:IsSetCard(0x7f6) then if c:IsSynchroType(TYPE_PENDULUM) and c:IsLocation(LOCATION_PZONE) and c:IsSetCard(0x37f6) then
slv=c:GetLeftScale()*65536+slv slv=c:GetLeftScale()*65536+slv
end end
return slv return slv
...@@ -112,14 +112,14 @@ function cm.SelectGroup(tp,desc,g,f,cg,min,max,...) ...@@ -112,14 +112,14 @@ function cm.SelectGroup(tp,desc,g,f,cg,min,max,...)
end end
function cm.matfilter1(c,syncard,tp) function cm.matfilter1(c,syncard,tp)
if c:IsFacedown() then return false end if c:IsFacedown() then return false end
if c:IsSetCard(0x7f6) and c:IsSynchroType(TYPE_PENDULUM) and c:IsControler(tp) and c:IsLocation(LOCATION_PZONE) and c:IsType(TYPE_TUNER) then return true end if c:IsSetCard(0x37f6) and c:IsSynchroType(TYPE_PENDULUM) and c:IsControler(tp) and c:IsLocation(LOCATION_PZONE) and c:IsType(TYPE_TUNER) then return true end
return c:IsSynchroType(TYPE_TUNER) and c:IsCanBeSynchroMaterial(syncard) and (c:IsFaceup() or not c:IsLocation(LOCATION_MZONE)) return c:IsSynchroType(TYPE_TUNER) and c:IsCanBeSynchroMaterial(syncard) and (c:IsFaceup() or not c:IsLocation(LOCATION_MZONE))
and (c:IsSetCard(0x7f6) or not c:IsLocation(LOCATION_PZONE)) and (c:IsSetCard(0x37f6) or not c:IsLocation(LOCATION_PZONE))
end end
function cm.matfilter2(c,syncard) function cm.matfilter2(c,syncard)
if c:IsSetCard(0x7f6) and c:IsSynchroType(TYPE_PENDULUM) and c:IsControler(tp) and c:IsLocation(LOCATION_PZONE) and not c:IsType(TYPE_TUNER) then return true end if c:IsSetCard(0x37f6) and c:IsSynchroType(TYPE_PENDULUM) and c:IsControler(tp) and c:IsLocation(LOCATION_PZONE) and not c:IsType(TYPE_TUNER) then return true end
return c:IsSynchroType(TYPE_PENDULUM) and (c:IsLocation(LOCATION_HAND) or c:IsFaceup()) and c:IsNotTuner(syncard) and c:IsCanBeSynchroMaterial(syncard) return c:IsSynchroType(TYPE_PENDULUM) and (c:IsLocation(LOCATION_HAND) or c:IsFaceup()) and c:IsNotTuner(syncard) and c:IsCanBeSynchroMaterial(syncard)
and (c:IsFaceup() or not c:IsLocation(LOCATION_MZONE)) and (c:IsSetCard(0x7f6) or not c:IsLocation(LOCATION_PZONE)) and (c:IsFaceup() or not c:IsLocation(LOCATION_MZONE)) and (c:IsSetCard(0x37f6) or not c:IsLocation(LOCATION_PZONE))
end end
function cm.synfilter(c,syncard,lv,g2,g3,minc,maxc,tp) function cm.synfilter(c,syncard,lv,g2,g3,minc,maxc,tp)
local tsg=c:IsHasEffect(EFFECT_HAND_SYNCHRO) and g3 or g2 local tsg=c:IsHasEffect(EFFECT_HAND_SYNCHRO) and g3 or g2
...@@ -237,7 +237,7 @@ function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -237,7 +237,7 @@ function cm.drtg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1) Duel.SetOperationInfo(0,CATEGORY_DRAW,nil,0,tp,1)
end end
function cm.spfilter(c,e,tp) function cm.spfilter(c,e,tp)
return c:IsSetCard(0x7f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x37f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.drop(e,tp,eg,ep,ev,re,r,rp) function cm.drop(e,tp,eg,ep,ev,re,r,rp)
local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM) local p,d=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER,CHAININFO_TARGET_PARAM)
......
...@@ -44,7 +44,7 @@ function cm.initial_effect(c) ...@@ -44,7 +44,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.thfilter(c) function cm.thfilter(c)
return c:IsSetCard(0x7f6) and c:IsAbleToHand() return c:IsSetCard(0x37f6) and c:IsAbleToHand()
end end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and cm.thfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_GRAVE) and chkc:IsControler(tp) and cm.thfilter(chkc) end
...@@ -60,7 +60,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp) ...@@ -60,7 +60,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.thfilter1(c) function cm.thfilter1(c)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand() return c:IsSetCard(0x37f6) and c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToHand()
end end
function cm.thtg1(e,tp,eg,ep,ev,re,r,rp,chk) function cm.thtg1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter1,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.thfilter1,tp,LOCATION_DECK,0,1,nil) end
......
--苍空的罗宾汉·古兰 --苍空的策士·该隐
local m=17061350 local m=17061350
local cm=_G["c"..m] local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
...@@ -28,7 +28,7 @@ function cm.initial_effect(c) ...@@ -28,7 +28,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.filter(c) function cm.filter(c)
return c:IsSetCard(0x7f6) and c:IsAbleToGrave() return c:IsSetCard(0x37f6) and c:IsAbleToGrave()
end end
function cm.tgtg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.tgtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDestructable() if chk==0 then return e:GetHandler():IsDestructable()
...@@ -50,7 +50,7 @@ function cm.spcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -50,7 +50,7 @@ function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return not e:GetHandler():IsReason(REASON_DRAW) return not e:GetHandler():IsReason(REASON_DRAW)
end end
function cm.pcfilter(c) function cm.pcfilter(c)
return c:IsType(TYPE_PENDULUM) and (c:IsSetCard(0x7f6) or aux.IsCodeListed(c,47500000)) return c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x37f6)
and (c:IsFaceup() or not c:IsLocation(LOCATION_EXTRA)) and not c:IsForbidden() and (c:IsFaceup() or not c:IsLocation(LOCATION_EXTRA)) and not c:IsForbidden()
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -59,7 +59,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -59,7 +59,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end end
function cm.tgfilter(c) function cm.tgfilter(c)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_SPELL+TYPE_TRAP)and c:IsAbleToGraveAsCost() return c:IsSetCard(0x37f6) and c:IsType(TYPE_SPELL+TYPE_TRAP)and c:IsAbleToGraveAsCost()
end end
function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.tgfilter,tp,LOCATION_DECK,0,1,nil) end if chk==0 then return Duel.IsExistingMatchingCard(cm.tgfilter,tp,LOCATION_DECK,0,1,nil) end
...@@ -68,7 +68,7 @@ function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -68,7 +68,7 @@ function cm.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SendtoGrave(g,REASON_COST) Duel.SendtoGrave(g,REASON_COST)
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return c:IsSetCard(0x7f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x37f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.sptg1(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.sptg1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
......
...@@ -28,7 +28,7 @@ function cm.initial_effect(c) ...@@ -28,7 +28,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.atkfilter(c) function cm.atkfilter(c)
return c:IsFaceup() and c:IsSetCard(0x7f6) return c:IsFaceup() and c:IsSetCard(0x37f6)
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.atkfilter(chkc) end if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and cm.atkfilter(chkc) end
...@@ -48,7 +48,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -48,7 +48,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.negfilter(c,tp) function cm.negfilter(c,tp)
return c:IsFaceup() and c:IsSetCard(0x7f6) and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE) return c:IsFaceup() and c:IsSetCard(0x37f6) and c:IsControler(tp) and c:IsLocation(LOCATION_MZONE)
end end
function cm.negcon(e,tp,eg,ep,ev,re,r,rp) function cm.negcon(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return false end if not re:IsHasProperty(EFFECT_FLAG_CARD_TARGET) then return false end
......
...@@ -24,7 +24,7 @@ function cm.initial_effect(c) ...@@ -24,7 +24,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
end end
function cm.filter(c,e,tp) function cm.filter(c,e,tp)
return c:IsSetCard(0x7f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x37f6) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(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
...@@ -40,7 +40,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -40,7 +40,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.filter2(c) function cm.filter2(c)
return c:IsSetCard(0x7f6) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() return c:IsSetCard(0x37f6) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
end end
function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_PZONE) and chkc:IsControler(tp) end if chkc then return chkc:IsLocation(LOCATION_PZONE) and chkc:IsControler(tp) end
......
...@@ -41,7 +41,7 @@ function cm.initial_effect(c) ...@@ -41,7 +41,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e4) c:RegisterEffect(e4)
end end
function cm.cfilter(c,tp) function cm.cfilter(c,tp)
return c:IsFaceup() and c:IsSetCard(0x17f6) and c:IsControler(tp) return c:IsFaceup() and c:IsSetCard(0x57f6) and c:IsControler(tp)
end end
function cm.sccon(e,tp,eg,ep,ev,re,r,rp) function cm.sccon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.cfilter,1,nil,tp) return eg:IsExists(cm.cfilter,1,nil,tp)
...@@ -95,7 +95,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -95,7 +95,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
end end
function cm.pcfilter(c) function cm.pcfilter(c)
return c:IsSetCard(0x17f6) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden() return c:IsSetCard(0x57f6) and c:IsType(TYPE_PENDULUM) and not c:IsForbidden()
end end
function cm.pctg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.pctg(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)) if chk==0 then return (Duel.CheckLocation(tp,LOCATION_PZONE,0) or Duel.CheckLocation(tp,LOCATION_PZONE,1))
......
...@@ -81,7 +81,7 @@ function cm.val(e,re,dam,r,rp,rc) ...@@ -81,7 +81,7 @@ function cm.val(e,re,dam,r,rp,rc)
else return dam end else return dam end
end end
function cm.penfilter(c) function cm.penfilter(c)
return c:IsSetCard(0x7f6) or c:IsSetCard(0x7f5) return c:IsSetCard(0x37f6) or c:IsSetCard(0x7f5)
end end
function cm.pencon(e,tp,eg,ep,ev,re,r,rp) function cm.pencon(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cm.penfilter,tp,LOCATION_PZONE,0,1,nil) return Duel.IsExistingMatchingCard(cm.penfilter,tp,LOCATION_PZONE,0,1,nil)
......
...@@ -3,7 +3,7 @@ local m=17061640 ...@@ -3,7 +3,7 @@ local m=17061640
local cm=_G["c"..m] local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
--link summon --link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x7f6),3) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x37f6),3)
c:EnableReviveLimit() c:EnableReviveLimit()
--extra material --extra material
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
......
...@@ -3,7 +3,7 @@ local m=17061670 ...@@ -3,7 +3,7 @@ local m=17061670
local cm=_G["c"..m] local cm=_G["c"..m]
function cm.initial_effect(c) function cm.initial_effect(c)
--link summon --link summon
aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x7f5),2) aux.AddLinkProcedure(c,aux.FilterBoolFunction(Card.IsLinkSetCard,0x37f6),2)
c:EnableReviveLimit() c:EnableReviveLimit()
--change damage --change damage
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
...@@ -13,7 +13,7 @@ function cm.initial_effect(c) ...@@ -13,7 +13,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--negate --negate
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetDescription(aux.Stringid(4280258,0)) e3:SetDescription(aux.Stringid(17061670,0))
e3:SetCategory(CATEGORY_NEGATE) e3:SetCategory(CATEGORY_NEGATE)
e3:SetType(EFFECT_TYPE_QUICK_O) e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_CHAINING) e3:SetCode(EVENT_CHAINING)
......
...@@ -91,7 +91,7 @@ function cm.spcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -91,7 +91,7 @@ function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
return bit.band(r,REASON_EFFECT+REASON_BATTLE)~=0 and e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD) return bit.band(r,REASON_EFFECT+REASON_BATTLE)~=0 and e:GetHandler():IsPreviousLocation(LOCATION_ONFIELD)
end end
function cm.spfilter(c,e,tp) function cm.spfilter(c,e,tp)
return c:IsSetCard(0x7f6) and not c:IsCode(17061800) and c:IsCanBeSpecialSummoned(e,0,tp,false,false) return c:IsSetCard(0x37f6) and not c:IsCode(17061800) and c:IsCanBeSpecialSummoned(e,0,tp,false,false)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.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
......
...@@ -48,7 +48,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -48,7 +48,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.cfilter(c,tp) function cm.cfilter(c,tp)
return c:IsSetCard(0x7f6) and c:IsPreviousLocation(LOCATION_PZONE) and c:GetPreviousControler()==tp return c:IsSetCard(0x37f6) and c:IsPreviousLocation(LOCATION_PZONE) and c:GetPreviousControler()==tp
end end
function cm.setcon(e,tp,eg,ep,ev,re,r,rp) function cm.setcon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.cfilter,1,nil,tp) return eg:IsExists(cm.cfilter,1,nil,tp)
...@@ -70,5 +70,5 @@ function cm.setop(e,tp,eg,ep,ev,re,r,rp) ...@@ -70,5 +70,5 @@ function cm.setop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.handcon(e) function cm.handcon(e)
return Duel.IsExistingMatchingCard(Card.IsSetCard,e:GetHandlerPlayer(),LOCATION_PZONE,0,2,nil,0x7f6) return Duel.IsExistingMatchingCard(Card.IsSetCard,e:GetHandlerPlayer(),LOCATION_PZONE,0,2,nil,0x37f6)
end end
\ No newline at end of file
...@@ -15,7 +15,7 @@ function cm.initial_effect(c) ...@@ -15,7 +15,7 @@ function cm.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--tohand --tohand
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(16178681,1)) e2:SetDescription(aux.Stringid(17061820,1))
e2:SetCategory(CATEGORY_REMOVE+CATEGORY_TOHAND+CATEGORY_SEARCH) e2:SetCategory(CATEGORY_REMOVE+CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_PHASE+PHASE_END) e2:SetCode(EVENT_PHASE+PHASE_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