Commit b6e8cfd8 authored by Tachibana's avatar Tachibana

1145141919810

parent ff3a9567
Pipeline #14475 passed with stages
in 33 minutes and 41 seconds
...@@ -23,7 +23,7 @@ function c33200709.initial_effect(c) ...@@ -23,7 +23,7 @@ function c33200709.initial_effect(c)
--tohand --tohand
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(33200709,1)) e2:SetDescription(aux.Stringid(33200709,1))
e2:SetCategory(CATEGORY_TOHAND) e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_REMOVE) e2:SetCode(EVENT_REMOVE)
e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY)
......
...@@ -29,9 +29,8 @@ function c33200742.initial_effect(c) ...@@ -29,9 +29,8 @@ function c33200742.initial_effect(c)
e3:SetDescription(aux.Stringid(33200742,2)) e3:SetDescription(aux.Stringid(33200742,2))
e3:SetCategory(CATEGORY_SPECIAL_SUMMON) e3:SetCategory(CATEGORY_SPECIAL_SUMMON)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e3:SetProperty(EFFECT_FLAG_DELAY) e3:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_CARD_TARGET)
e3:SetCode(EVENT_TO_GRAVE) e3:SetCode(EVENT_TO_GRAVE)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
e3:SetCountLimit(1,33200743) e3:SetCountLimit(1,33200743)
e3:SetCondition(c33200742.ccon) e3:SetCondition(c33200742.ccon)
e3:SetTarget(c33200742.ctg) e3:SetTarget(c33200742.ctg)
......
...@@ -15,15 +15,25 @@ function c67200287.initial_effect(c) ...@@ -15,15 +15,25 @@ function c67200287.initial_effect(c)
e2:SetType(EFFECT_TYPE_FIELD) e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_SPSUMMON_PROC) e2:SetCode(EFFECT_SPSUMMON_PROC)
e2:SetProperty(EFFECT_FLAG_UNCOPYABLE) e2:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e2:SetRange(LOCATION_EXTRA+LOCATION_HAND) e2:SetRange(LOCATION_HAND)
e2:SetCountLimit(1,67200287+EFFECT_COUNT_CODE_OATH) e2:SetCountLimit(1,67200287+EFFECT_COUNT_CODE_OATH)
e2:SetCondition(c67200287.spcon) e2:SetCondition(c67200287.spcon)
e2:SetOperation(c67200287.spop) e2:SetOperation(c67200287.spop)
e2:SetValue(SUMMON_VALUE_SELF) --e2:SetValue(SUMMON_VALUE_SELF)
c:RegisterEffect(e2) c:RegisterEffect(e2)
--special summon
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_FIELD)
e3:SetCode(EFFECT_SPSUMMON_PROC)
e3:SetProperty(EFFECT_FLAG_UNCOPYABLE)
e3:SetRange(LOCATION_EXTRA)
e3:SetCountLimit(1,67200287+EFFECT_COUNT_CODE_OATH)
e3:SetCondition(c67200287.spcon2)
e3:SetOperation(c67200287.spop2)
c:RegisterEffect(e3)
--Equip --Equip
local e4=Effect.CreateEffect(c) local e4=Effect.CreateEffect(c)
e4:SetDescription(aux.Stringid(67200287,2)) e4:SetDescription(aux.Stringid(67200287,5))
e4:SetCategory(CATEGORY_EQUIP) e4:SetCategory(CATEGORY_EQUIP)
e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e4:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e4:SetProperty(EFFECT_FLAG_DELAY) e4:SetProperty(EFFECT_FLAG_DELAY)
...@@ -49,38 +59,61 @@ function c67200287.repval(e,c) ...@@ -49,38 +59,61 @@ function c67200287.repval(e,c)
return c67200287.repfilter(c,e:GetHandlerPlayer()) return c67200287.repfilter(c,e:GetHandlerPlayer())
end end
-- --
function c67200287.spfilter1(c,tp) function c67200287.rfilter(c,tp)
return c:IsFaceup() and c:IsSetCard(0x674) and c:IsReleasable() --local tp=c:GetControler()
return c:IsFaceup() and c:IsSetCard(0x674) and c:IsReleasable()
end end
function c67200287.mfilter(c,tp)
--local tp=c:GetControler()
return c:GetSequence()<5 and c:IsLocation(LOCATION_MZONE)
end
function c67200287.spcon(e,c) function c67200287.spcon(e,c)
--
if c==nil then return true end if c==nil then return true end
local tp=c:GetControler() local tp=c:GetControler()
local rg=Duel.GetMatchingGroup(c67200287.rfilter,tp,LOCATION_ONFIELD,0,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1 if ft>0 then
if ct>1 then return false end return Duel.IsExistingMatchingCard(c67200287.rfilter,tp,LOCATION_ONFIELD,0,1,nil,tp)
if ct>0 and not Duel.IsExistingMatchingCard(c67200287.spfilter1,tp,LOCATION_SZONE+LOCATION_FZONE,0,ct,nil) then return false end else
return Duel.IsExistingMatchingCard(c67200287.spfilter1,tp,LOCATION_ONFIELD,0,1,nil) and ((c:IsLocation(LOCATION_HAND) and Duel.GetLocationCount(tp,LOCATION_MZONE)>-1) or (c:IsLocation(LOCATION_EXTRA) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0)) return rg:GetCount()>1 and rg:IsExists(c67200287.mfilter,1,nil,tp)
end
end end
function c67200287.spop(e,tp,eg,ep,ev,re,r,rp,c) function c67200287.spop(e,tp,eg,ep,ev,re,r,rp,c)
-- local rg=Duel.GetMatchingGroup(c67200287.rfilter,tp,LOCATION_ONFIELD,0,nil,tp)
local ft=Duel.GetLocationCount(tp,LOCATION_MZONE) local ft=Duel.GetLocationCount(tp,LOCATION_MZONE)
local ct=-ft+1 local g=nil
if ct<0 then ct=0 end if ft>0 then
local g=Group.CreateGroup()
if ct>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local sg=Duel.SelectMatchingCard(tp,c67200287.spfilter1,tp,LOCATION_MZONE,0,ct,ct,nil) g=rg:Select(tp,1,1,nil)
g:Merge(sg) else
end
if ct<1 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local sg=Duel.SelectMatchingCard(tp,c67200287.spfilter1,tp,LOCATION_ONFIELD,0,1-ct,1-ct,g:GetFirst()) g=rg:FilterSelect(tp,c67200287.mfilter,1,1,nil,tp)
g:Merge(sg) local g2=rg:Select(tp,1,1,g:GetFirst())
g:Merge(g2)
end end
Duel.Release(g,REASON_COST) Duel.Release(g,REASON_COST)
end end
-- --
function c67200287.spfilter2(c,tp,mc)
return Duel.GetLocationCountFromEx(tp,tp,Group.FromCards(c,mc))>0 and c:IsSetCard(0x674) and c:IsReleasable() and c:IsFaceup()
end
function c67200287.spcon2(e,c)
if c==nil then return true end
local tp=c:GetControler()
local g=Duel.GetMatchingGroup(c67200287.spfilter2,tp,LOCATION_ONFIELD,0,nil)
return g:IsExists(c67200287.spfilter2,1,nil,tp,g)
end
function c67200287.spop2(e,tp,eg,ep,ev,re,r,rp,c)
local g=Duel.GetMatchingGroup(c67200287.spfilter2,tp,LOCATION_ONFIELD,0,nil,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RELEASE)
local g1=g:FilterSelect(tp,c67200287.spfilter2,1,1,nil,tp,g)
Duel.Release(g1,REASON_COST)
end
--
function c67200287.tgfilter(c) function c67200287.tgfilter(c)
return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x674) return c:IsFaceup() and c:IsType(TYPE_PENDULUM) and c:IsSetCard(0x674)
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