Commit 8f10ccd3 authored by POLYMER's avatar POLYMER

fix

parent 68c60cbc
...@@ -31,32 +31,14 @@ function s.initial_effect(c) ...@@ -31,32 +31,14 @@ function s.initial_effect(c)
e2:SetTarget(s.athtg) e2:SetTarget(s.athtg)
e2:SetOperation(s.athop) e2:SetOperation(s.athop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
-- 添加全局效果:连锁结束时检查卡组表侧卡 e3:SetType(EFFECT_TYPE_FIELD)
if not ConfirmCheck then e3:SetCode(EFFECT_SPSUMMON_PROC_G)
ConfirmCheck=true e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
local ge1=Effect.CreateEffect(c) e3:SetRange(LOCATION_DECK)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetCondition(s.athcon)
ge1:SetCode(EVENT_CHAIN_END) c:RegisterEffect(e3)
ge1:SetOperation(s.regcon)
ge1:SetOperation(s.regop)
Duel.RegisterEffect(ge1,0)
end
end end
-- 连锁结束时检查是否有表侧卡的条件
function s.regcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroupCount(Card.IsPosition,p,LOCATION_DECK,LOCATION_DECK,nil,POS_FACEUP_DEFENSE)>0
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
c:ReverseInDeck() c:ReverseInDeck()
c:RegisterFlagEffect(id+1000,RESET_EVENT+RESETS_STANDARD,0,1) c:RegisterFlagEffect(id+1000,RESET_EVENT+RESETS_STANDARD,0,1)
......
...@@ -26,26 +26,13 @@ function s.initial_effect(c) ...@@ -26,26 +26,13 @@ function s.initial_effect(c)
e2:SetTarget(s.sptg2) e2:SetTarget(s.sptg2)
e2:SetOperation(s.spop2) e2:SetOperation(s.spop2)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
-- 保留全局效果 e3:SetType(EFFECT_TYPE_FIELD)
if not s.global_check then e3:SetCode(EFFECT_SPSUMMON_PROC_G)
s.global_check=true e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
local ge1=Effect.CreateEffect(c) e3:SetRange(LOCATION_DECK)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetCondition(s.spcon)
ge1:SetCode(EVENT_CHAIN_END) c:RegisterEffect(e3)
ge1:SetOperation(s.regop)
Duel.RegisterEffect(ge1,0)
end
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
......
...@@ -26,28 +26,14 @@ function s.initial_effect(c) ...@@ -26,28 +26,14 @@ function s.initial_effect(c)
e2:SetTarget(s.sptg) e2:SetTarget(s.sptg)
e2:SetOperation(s.spop) e2:SetOperation(s.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
-- 保留全局效果 e3:SetType(EFFECT_TYPE_FIELD)
if not s.global_check then e3:SetCode(EFFECT_SPSUMMON_PROC_G)
s.global_check=true e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
local ge1=Effect.CreateEffect(c) e3:SetRange(LOCATION_DECK)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetCondition(s.spcon)
ge1:SetCode(EVENT_CHAIN_END) c:RegisterEffect(e3)
ge1:SetOperation(s.regop)
Duel.RegisterEffect(ge1,0)
end
end end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
if c:GetLocation()==LOCATION_DECK then if c:GetLocation()==LOCATION_DECK then
c:ReverseInDeck() c:ReverseInDeck()
......
...@@ -26,26 +26,13 @@ function s.initial_effect(c) ...@@ -26,26 +26,13 @@ function s.initial_effect(c)
e2:SetTarget(s.sptg) e2:SetTarget(s.sptg)
e2:SetOperation(s.spop) e2:SetOperation(s.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
-- 保留全局效果 e3:SetType(EFFECT_TYPE_FIELD)
if not s.global_check then e3:SetCode(EFFECT_SPSUMMON_PROC_G)
s.global_check=true e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
local ge1=Effect.CreateEffect(c) e3:SetRange(LOCATION_DECK)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetCondition(s.spcon)
ge1:SetCode(EVENT_CHAIN_END) c:RegisterEffect(e3)
ge1:SetOperation(s.regop)
Duel.RegisterEffect(ge1,0)
end
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
......
...@@ -26,16 +26,13 @@ function s.initial_effect(c) ...@@ -26,16 +26,13 @@ function s.initial_effect(c)
e2:SetTarget(s.sptg) e2:SetTarget(s.sptg)
e2:SetOperation(s.spop) e2:SetOperation(s.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
-- 保留全局效果 e3:SetType(EFFECT_TYPE_FIELD)
if not s.global_check then e3:SetCode(EFFECT_SPSUMMON_PROC_G)
s.global_check=true e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
local ge1=Effect.CreateEffect(c) e3:SetRange(LOCATION_DECK)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetCondition(s.spcon)
ge1:SetCode(EVENT_CHAIN_END) c:RegisterEffect(e3)
ge1:SetOperation(s.regop)
Duel.RegisterEffect(ge1,0)
end
end end
function s.regop(e,tp,eg,ep,ev,re,r,rp) function s.regop(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -27,28 +27,13 @@ function s.initial_effect(c) ...@@ -27,28 +27,13 @@ function s.initial_effect(c)
e2:SetTarget(s.sptg) e2:SetTarget(s.sptg)
e2:SetOperation(s.spop) e2:SetOperation(s.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
if not ConfirmCheck then local e3=Effect.CreateEffect(c)
ConfirmCheck=true e3:SetType(EFFECT_TYPE_FIELD)
local ge1=Effect.CreateEffect(c) e3:SetCode(EFFECT_SPSUMMON_PROC_G)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
ge1:SetCode(EVENT_CHAIN_END) e3:SetRange(LOCATION_DECK)
ge1:SetOperation(s.regcon) e3:SetCondition(s.spcon)
ge1:SetOperation(s.regop) c:RegisterEffect(e3)
Duel.RegisterEffect(ge1,0)
end
end
-- 连锁结束时检查是否有表侧卡的条件
function s.regcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroupCount(Card.IsPosition,p,LOCATION_DECK,LOCATION_DECK,nil,POS_FACEUP_DEFENSE)>0
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
......
...@@ -5,7 +5,7 @@ function s.initial_effect(c) ...@@ -5,7 +5,7 @@ function s.initial_effect(c)
--xyz summon --xyz summon
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddXyzProcedure(c,nil,7,2,nil,nil,99) aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsRace,RACE_WINDBEAST),7,2)
--material effect --material effect
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -47,28 +47,7 @@ function s.initial_effect(c) ...@@ -47,28 +47,7 @@ function s.initial_effect(c)
e3:SetTarget(s.rttg) e3:SetTarget(s.rttg)
e3:SetOperation(s.rtop) e3:SetOperation(s.rtop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
-- 保留全局效果
if not s.global_check then
s.global_check=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_CHAIN_END)
ge1:SetOperation(s.regop)
Duel.RegisterEffect(ge1,0)
end
end end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
if c:GetLocation()==LOCATION_DECK then if c:GetLocation()==LOCATION_DECK then
c:ReverseInDeck() c:ReverseInDeck()
......
...@@ -3,8 +3,7 @@ local s,id,o=GetID() ...@@ -3,8 +3,7 @@ local s,id,o=GetID()
function s.initial_effect(c) function s.initial_effect(c)
Duel.EnableGlobalFlag(GLOBALFLAG_DECK_REVERSE_CHECK) Duel.EnableGlobalFlag(GLOBALFLAG_DECK_REVERSE_CHECK)
--xyz summon --xyz summon
c:EnableReviveLimit() aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsRace,RACE_WINDBEAST),7,2,nil,nil,99)
aux.AddXyzProcedure(c,nil,7,2,nil,nil,99)
--search --search
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -38,30 +37,7 @@ function s.initial_effect(c) ...@@ -38,30 +37,7 @@ function s.initial_effect(c)
e3:SetTarget(s.attg) e3:SetTarget(s.attg)
e3:SetOperation(s.atop) e3:SetOperation(s.atop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
if not ConfirmCheck then
ConfirmCheck=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_CHAIN_END)
ge1:SetOperation(s.regcon)
ge1:SetOperation(s.regop)
Duel.RegisterEffect(ge1,0)
end
end
-- 连锁结束时检查是否有表侧卡的条件
function s.regcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroupCount(Card.IsPosition,p,LOCATION_DECK,LOCATION_DECK,nil,POS_FACEUP_DEFENSE)>0
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
c:ReverseInDeck() c:ReverseInDeck()
c:RegisterFlagEffect(id+1000,RESET_EVENT+RESETS_STANDARD,0,1) c:RegisterFlagEffect(id+1000,RESET_EVENT+RESETS_STANDARD,0,1)
......
...@@ -4,7 +4,7 @@ function s.initial_effect(c) ...@@ -4,7 +4,7 @@ function s.initial_effect(c)
Duel.EnableGlobalFlag(GLOBALFLAG_DECK_REVERSE_CHECK) Duel.EnableGlobalFlag(GLOBALFLAG_DECK_REVERSE_CHECK)
--xyz summon --xyz summon
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddXyzProcedure(c,nil,7,3,nil,nil,99) aux.AddXyzProcedure(c,aux.FilterBoolFunction(Card.IsSetCard,0x9225),7,3,nil,nil,99)
--return 1 card to deck --return 1 card to deck
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
...@@ -39,28 +39,7 @@ function s.initial_effect(c) ...@@ -39,28 +39,7 @@ function s.initial_effect(c)
e3:SetTarget(s.chtg) e3:SetTarget(s.chtg)
e3:SetOperation(s.chop) e3:SetOperation(s.chop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
-- 添加全局效果处理表侧卡
if not s.global_check then
s.global_check=true
local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_CHAIN_END)
ge1:SetOperation(s.regop)
Duel.RegisterEffect(ge1,0)
end
end end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end
function s.rtcost1(e,tp,eg,ep,ev,re,r,rp,chk) function s.rtcost1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end if chk==0 then return e:GetHandler():CheckRemoveOverlayCard(tp,1,REASON_COST) end
e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST) e:GetHandler():RemoveOverlayCard(tp,1,1,REASON_COST)
......
...@@ -24,28 +24,13 @@ function s.initial_effect(c) ...@@ -24,28 +24,13 @@ function s.initial_effect(c)
e2:SetTarget(s.athtg) e2:SetTarget(s.athtg)
e2:SetOperation(s.athop) e2:SetOperation(s.athop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
if not ConfirmCheck then local e3=Effect.CreateEffect(c)
ConfirmCheck=true e3:SetType(EFFECT_TYPE_FIELD)
local ge1=Effect.CreateEffect(c) e3:SetCode(EFFECT_SPSUMMON_PROC_G)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
ge1:SetCode(EVENT_CHAIN_END) e3:SetRange(LOCATION_DECK)
ge1:SetOperation(s.regcon) e3:SetCondition(s.athcon)
ge1:SetOperation(s.regop) c:RegisterEffect(e3)
Duel.RegisterEffect(ge1,0)
end
end
-- 连锁结束时检查是否有表侧卡的条件
function s.regcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroupCount(Card.IsPosition,p,LOCATION_DECK,LOCATION_DECK,nil,POS_FACEUP_DEFENSE)>0
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
......
...@@ -26,30 +26,14 @@ function s.initial_effect(c) ...@@ -26,30 +26,14 @@ function s.initial_effect(c)
e2:SetTarget(s.athtg) e2:SetTarget(s.athtg)
e2:SetOperation(s.athop) e2:SetOperation(s.athop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
if not ConfirmCheck then local e3=Effect.CreateEffect(c)
ConfirmCheck=true e3:SetType(EFFECT_TYPE_FIELD)
local ge1=Effect.CreateEffect(c) e3:SetCode(EFFECT_SPSUMMON_PROC_G)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
ge1:SetCode(EVENT_CHAIN_END) e3:SetRange(LOCATION_DECK)
ge1:SetOperation(s.regcon) e3:SetCondition(s.athcon)
ge1:SetOperation(s.regop) c:RegisterEffect(e3)
Duel.RegisterEffect(ge1,0)
end
end
-- 连锁结束时检查是否有表侧卡的条件
function s.regcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroupCount(Card.IsPosition,p,LOCATION_DECK,LOCATION_DECK,nil,POS_FACEUP_DEFENSE)>0
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
c:ReverseInDeck() c:ReverseInDeck()
c:RegisterFlagEffect(id+1000,RESET_EVENT+RESETS_STANDARD,0,1) c:RegisterFlagEffect(id+1000,RESET_EVENT+RESETS_STANDARD,0,1)
......
...@@ -26,28 +26,14 @@ function s.initial_effect(c) ...@@ -26,28 +26,14 @@ function s.initial_effect(c)
e2:SetTarget(s.athtg) e2:SetTarget(s.athtg)
e2:SetOperation(s.athop) e2:SetOperation(s.athop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=Effect.CreateEffect(c)
-- 保留全局效果 e3:SetType(EFFECT_TYPE_FIELD)
if not s.global_check then e3:SetCode(EFFECT_SPSUMMON_PROC_G)
s.global_check=true e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
local ge1=Effect.CreateEffect(c) e3:SetRange(LOCATION_DECK)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetCondition(s.athcon)
ge1:SetCode(EVENT_CHAIN_END) c:RegisterEffect(e3)
ge1:SetOperation(s.regop)
Duel.RegisterEffect(ge1,0)
end
end end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
if c:GetLocation()==LOCATION_DECK then if c:GetLocation()==LOCATION_DECK then
c:ReverseInDeck() c:ReverseInDeck()
......
...@@ -41,30 +41,14 @@ function s.initial_effect(c) ...@@ -41,30 +41,14 @@ function s.initial_effect(c)
e3:SetTarget(s.athtg) e3:SetTarget(s.athtg)
e3:SetOperation(s.athop) e3:SetOperation(s.athop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
if not ConfirmCheck then local e3=Effect.CreateEffect(c)
ConfirmCheck=true e3:SetType(EFFECT_TYPE_FIELD)
local ge1=Effect.CreateEffect(c) e3:SetCode(EFFECT_SPSUMMON_PROC_G)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
ge1:SetCode(EVENT_CHAIN_END) e3:SetRange(LOCATION_DECK)
ge1:SetOperation(s.regcon) e3:SetCondition(s.athcon)
ge1:SetOperation(s.regop) c:RegisterEffect(e3)
Duel.RegisterEffect(ge1,0)
end
end
-- 连锁结束时检查是否有表侧卡的条件
function s.regcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroupCount(Card.IsPosition,p,LOCATION_DECK,LOCATION_DECK,nil,POS_FACEUP_DEFENSE)>0
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
c:ReverseInDeck() c:ReverseInDeck()
c:RegisterFlagEffect(id+1000,RESET_EVENT+RESETS_STANDARD,0,1) c:RegisterFlagEffect(id+1000,RESET_EVENT+RESETS_STANDARD,0,1)
......
...@@ -33,28 +33,13 @@ function s.initial_effect(c) ...@@ -33,28 +33,13 @@ function s.initial_effect(c)
e2:SetTarget(s.athtg) e2:SetTarget(s.athtg)
e2:SetOperation(s.athop) e2:SetOperation(s.athop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
if not ConfirmCheck then local e3=Effect.CreateEffect(c)
ConfirmCheck=true e3:SetType(EFFECT_TYPE_FIELD)
local ge1=Effect.CreateEffect(c) e3:SetCode(EFFECT_SPSUMMON_PROC_G)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
ge1:SetCode(EVENT_CHAIN_END) e3:SetRange(LOCATION_DECK)
ge1:SetOperation(s.regcon) e3:SetCondition(s.athcon)
ge1:SetOperation(s.regop) c:RegisterEffect(e3)
Duel.RegisterEffect(ge1,0)
end
end
-- 连锁结束时检查是否有表侧卡的条件
function s.regcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroupCount(Card.IsPosition,p,LOCATION_DECK,LOCATION_DECK,nil,POS_FACEUP_DEFENSE)>0
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
......
...@@ -45,28 +45,13 @@ function s.initial_effect(c) ...@@ -45,28 +45,13 @@ function s.initial_effect(c)
e3:SetTarget(s.athtg) e3:SetTarget(s.athtg)
e3:SetOperation(s.athop) e3:SetOperation(s.athop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
if not ConfirmCheck then local e3=Effect.CreateEffect(c)
ConfirmCheck=true e3:SetType(EFFECT_TYPE_FIELD)
local ge1=Effect.CreateEffect(c) e3:SetCode(EFFECT_SPSUMMON_PROC_G)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
ge1:SetCode(EVENT_CHAIN_END) e3:SetRange(LOCATION_DECK)
ge1:SetOperation(s.regcon) e3:SetCondition(s.athcon)
ge1:SetOperation(s.regop) c:RegisterEffect(e3)
Duel.RegisterEffect(ge1,0)
end
end
-- 连锁结束时检查是否有表侧卡的条件
function s.regcon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetMatchingGroupCount(Card.IsPosition,p,LOCATION_DECK,LOCATION_DECK,nil,POS_FACEUP_DEFENSE)>0
end
function s.regop(e,tp,eg,ep,ev,re,r,rp)
for p=0,1 do
local g=Duel.GetMatchingGroup(Card.IsPosition,p,LOCATION_DECK,0,nil,POS_FACEUP_DEFENSE)
local g2=Duel.GetFieldGroup(p,LOCATION_EXTRA,0)
if #g2>0 then
Duel.ConfirmCards(p,g+g2,true)
end
end
end end
function s.mark_as_faceup(c) function s.mark_as_faceup(c)
c:ReverseInDeck() c:ReverseInDeck()
......
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