Commit 0da738b4 authored by 聖園ミカ's avatar 聖園ミカ 🐟

byd

parent 73656441
......@@ -23,8 +23,8 @@ function c1171001.initial_effect(c)
e2:SetType(EFFECT_TYPE_QUICK_F)
e2:SetCode(EVENT_CHAINING)
e2:SetRange(LOCATION_MZONE)
e2:SetCountLimit(1,EFFECT_COUNT_CODE_CHAIN)
e2:SetCondition(c1171001.con2)
e2:SetCost(c1171001.cost2)
e2:SetTarget(c1171001.tg2)
e2:SetOperation(c1171001.op2)
c:RegisterEffect(e2)
......@@ -59,18 +59,12 @@ function c1171001.con2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
local rc=re:GetHandler()
if c:IsStatus(STATUS_BATTLE_DESTROYED) then return false end
return bit.band(rc:GetOriginalType(),TYPE_MONSTER)~=0 and rp==tp
end
--
function c1171001.cost2(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:GetFlagEffect(1171001)<1 end
c:RegisterFlagEffect(1171001,RESET_CHAIN,0,1)
return rp==tp and bit.band(rc:GetOriginalType(),TYPE_MONSTER)~=0
end
--
function c1171001.tg2(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then return c:IsAbleToHand() end
if chk==0 then return true end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,c,1,0,0)
end
--
......
......@@ -62,7 +62,7 @@ if not s.global_check then
end
function s.filter1(c,e)
return c:IsLocation(LOCATION_HAND) and not c:IsImmuneToEffect(e)
return not c:IsImmuneToEffect(e)
end
function s.filter2(c,e,tp,m,f,gc,chkf)
return c:IsType(TYPE_FUSION) and (not f or f(c))
......@@ -73,7 +73,7 @@ function s.target(e,tp,eg,ep,ev,re,r,rp,chk)
local c=e:GetHandler()
if chk==0 then
local chkf=tp
local mg1=Duel.GetFusionMaterial(tp):Filter(Card.IsLocation,nil,LOCATION_HAND)
local mg1=Duel.GetFusionMaterial(tp)
local res=Duel.IsExistingMatchingCard(s.filter2,tp,LOCATION_EXTRA,0,1,nil,e,tp,mg1,nil,c,chkf)
if not res then
local ce=Duel.GetChainMaterial(tp)
......
......@@ -66,7 +66,7 @@ function s.rmop(e,tp,eg,ep,ev,re,r,rp)
local sc=sg:GetFirst()
Duel.ConfirmCards(1-tp,sg)
Duel.Hint(HINT_CARD,0,sc:GetOriginalCode())
local tg=Duel.GetMatchingGroup(aux.AND(Card.IsAbleToDeck,Card.IsFaceupEx),tp,LOCATION_GRAVE+LOCATION_REMOVED,0,nil)
local tg=Duel.GetMatchingGroup(Card.IsAbleToDeck,tp,LOCATION_GRAVE+LOCATION_REMOVED,0,nil)
local exg=Duel.GetMatchingGroup(Card.IsAbleToRemove,tp,LOCATION_EXTRA,0,nil)
if sc:IsAttack(35) then
if #tg>0 then
......
......@@ -7,13 +7,13 @@ function cm.initial_effect(c)
e11:SetDescription(aux.Stringid(m,1))
e11:SetCategory(CATEGORY_SPECIAL_SUMMON)
e11:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e11:SetRange(LOCATION_HAND+LOCATION_GRAVE)
e11:SetCode(EVENT_SPSUMMON_SUCCESS)
e11:SetRange(LOCATION_HAND+LOCATION_GRAVE)
e11:SetProperty(EFFECT_FLAG_DELAY)
e11:SetCountLimit(1,m+10000000)
e11:SetCondition(cm.spcon)
e11:SetTarget(cm.sptg)
e11:SetOperation(cm.spop)
e11:SetCondition(cm.sscon)
e11:SetTarget(cm.sstg)
e11:SetOperation(cm.ssop)
c:RegisterEffect(e11)
--search
local e3=Effect.CreateEffect(c)
......@@ -27,18 +27,17 @@ function cm.initial_effect(c)
c:RegisterEffect(e3)
end
function cm.cfilter(c,tp)
return c:IsSummonPlayer(1-tp) and c:IsSummonLocation(LOCATION_EXTRA)
return c:IsSummonLocation(LOCATION_EXTRA) and c:IsSummonPlayer(1-tp)
end
function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
function cm.sscon(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.cfilter,1,nil,tp)
end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
function cm.sstg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function cm.spop(e,tp,eg,ep,ev,re,r,rp)
function cm.ssop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
......
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