Commit e02613c6 authored by DailyShana's avatar DailyShana

fix

parent 22ca9526
......@@ -5,7 +5,6 @@ function c1533292.initial_effect(c)
e1:SetDescription(aux.Stringid(1533292,0))
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_SUMMON_SUCCESS)
e1:SetTarget(c1533292.target)
e1:SetOperation(c1533292.operation)
......
......@@ -2,22 +2,24 @@
function c34294855.initial_effect(c)
--reborn preparation
local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(34294855,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EVENT_BATTLE_DESTROYED)
e1:SetCondition(c34294855.spcon)
e1:SetCost(c34294855.spcost)
e1:SetOperation(c34294855.spop)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCondition(c34294855.regcon)
e1:SetOperation(c34294855.regop)
c:RegisterEffect(e1)
--reborn
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetDescription(aux.Stringid(34294855,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_PHASE+PHASE_STANDBY)
e2:SetRange(LOCATION_GRAVE)
e2:SetCountLimit(1)
e2:SetCondition(c34294855.spcon2)
e2:SetOperation(c34294855.spop2)
e2:SetCondition(c34294855.spcon)
e2:SetCost(c34294855.spcost)
e2:SetTarget(c34294855.sptg)
e2:SetOperation(c34294855.spop)
c:RegisterEffect(e2)
--atk up
local e3=Effect.CreateEffect(c)
......@@ -30,23 +32,28 @@ function c34294855.initial_effect(c)
e3:SetOperation(c34294855.upop)
c:RegisterEffect(e3)
end
function c34294855.regcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE)
end
function c34294855.regop(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(34294855,RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_STANDBY,0,1)
end
function c34294855.spcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():IsLocation(LOCATION_GRAVE) and e:GetHandler():IsReason(REASON_BATTLE)
return e:GetHandler():GetFlagEffect(34294855)>0
end
function c34294855.spcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckLPCost(tp,500) end
Duel.PayLPCost(tp,500)
end
function c34294855.spop(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(34294855,RESET_EVENT+0x1fe0000,0,0)
end
function c34294855.spcon2(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(34294855)>0
function c34294855.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false) end
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
end
function c34294855.spop2(e,tp,eg,ep,ev,re,r,rp)
function c34294855.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
c:ResetFlagEffect(34294855)
Duel.SpecialSummon(c,1,tp,tp,false,false,POS_FACEUP)
if c:IsRelateToEffect(e) then
Duel.SpecialSummon(c,1,tp,tp,false,false,POS_FACEUP)
end
end
function c34294855.upcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetSummonType()==SUMMON_TYPE_SPECIAL+1
......
......@@ -3,21 +3,15 @@ function c85216896.initial_effect(c)
c:EnableReviveLimit()
aux.AddLinkProcedure(c,c85216896.matfilter,2)
--to hand
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetRange(LOCATION_MZONE)
e1:SetCode(EVENT_LEAVE_FIELD_P)
e1:SetOperation(c85216896.regop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetDescription(aux.Stringid(85216896,0))
e2:SetCategory(CATEGORY_SPECIAL_SUMMON)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e2:SetCode(EVENT_CUSTOM+85216896)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_O)
e2:SetProperty(EFFECT_FLAG_DELAY+EFFECT_FLAG_DAMAGE_STEP)
e2:SetCode(EVENT_DESTROYED)
e2:SetCountLimit(1,85216896)
e2:SetRange(LOCATION_MZONE)
e2:SetCondition(c85216896.thcon)
e2:SetTarget(c85216896.thtg)
e2:SetOperation(c85216896.thop)
c:RegisterEffect(e2)
......@@ -36,14 +30,13 @@ end
function c85216896.matfilter(c)
return c:GetSummonLocation()==LOCATION_EXTRA
end
function c85216896.thcfilter(c,tp,lg)
return c:GetPreviousControler()==tp and lg:IsContains(c) and c:GetSummonLocation()==LOCATION_EXTRA and c:IsReason(REASON_BATTLE+REASON_EFFECT)
function c85216896.cfilter(c,tp,zone)
local seq=c:GetPreviousSequence()
return c:GetPreviousControler()==tp and bit.extract(zone,seq)~=0 and c:GetSummonLocation()==LOCATION_EXTRA and c:IsReason(REASON_BATTLE+REASON_EFFECT)
end
function c85216896.regop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if eg and eg:IsExists(c85216896.thcfilter,1,nil,tp,c:GetLinkedGroup()) and rp~=tp then
Duel.RaiseSingleEvent(c,EVENT_CUSTOM+85216896,e,0,tp,0,0)
end
function c85216896.thcon(e,tp,eg,ep,ev,re,r,rp)
local zone=e:GetHandler():GetLinkedZone()
return eg:IsExists(c85216896.cfilter,1,nil,tp,zone)
end
function c85216896.thfilter(c)
return (c:IsLocation(LOCATION_GRAVE) or (c:IsFaceup() and c:IsType(TYPE_PENDULUM)))
......
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