Commit 46de1ff2 authored by POLYMER's avatar POLYMER

fix

parent d87a85eb
...@@ -5,7 +5,19 @@ function cm.initial_effect(c) ...@@ -5,7 +5,19 @@ function cm.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true) aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true)
aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c)):SetCountLimit(1,11451631+EFFECT_COUNT_CODE_OATH) local e10=aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c))
local con=e10:GetCondition()
local op=e10:GetOperation()
e10:SetCondition(function(e,...)
local tp=e:GetHandlerPlayer()
return Duel.GetFlagEffect(tp,11451631)==0 and con(e,...)
end)
e10:SetOperation(function(e,tp,...)
local ph=Duel.GetCurrentPhase()
if ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then ph=PHASE_BATTLE end
Duel.RegisterFlagEffect(tp,11451631,RESET_PHASE+ph,0,1)
op(e,tp,...)
end)
--spsummon condition --spsummon condition
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
......
...@@ -5,7 +5,19 @@ function cm.initial_effect(c) ...@@ -5,7 +5,19 @@ function cm.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true) aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true)
aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c)):SetCountLimit(1,11451631+EFFECT_COUNT_CODE_OATH) local e10=aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c))
local con=e10:GetCondition()
local op=e10:GetOperation()
e10:SetCondition(function(e,...)
local tp=e:GetHandlerPlayer()
return Duel.GetFlagEffect(tp,11451631)==0 and con(e,...)
end)
e10:SetOperation(function(e,tp,...)
local ph=Duel.GetCurrentPhase()
if ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then ph=PHASE_BATTLE end
Duel.RegisterFlagEffect(tp,11451631,RESET_PHASE+ph,0,1)
op(e,tp,...)
end)
--spsummon condition --spsummon condition
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
......
...@@ -5,7 +5,19 @@ function cm.initial_effect(c) ...@@ -5,7 +5,19 @@ function cm.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true) aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true)
aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c)):SetCountLimit(1,11451631+EFFECT_COUNT_CODE_OATH) local e10=aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c))
local con=e10:GetCondition()
local op=e10:GetOperation()
e10:SetCondition(function(e,...)
local tp=e:GetHandlerPlayer()
return Duel.GetFlagEffect(tp,11451631)==0 and con(e,...)
end)
e10:SetOperation(function(e,tp,...)
local ph=Duel.GetCurrentPhase()
if ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then ph=PHASE_BATTLE end
Duel.RegisterFlagEffect(tp,11451631,RESET_PHASE+ph,0,1)
op(e,tp,...)
end)
--spsummon condition --spsummon condition
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
......
...@@ -5,7 +5,19 @@ function cm.initial_effect(c) ...@@ -5,7 +5,19 @@ function cm.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true) aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true)
aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c)):SetCountLimit(1,11451631+EFFECT_COUNT_CODE_OATH) local e10=aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c))
local con=e10:GetCondition()
local op=e10:GetOperation()
e10:SetCondition(function(e,...)
local tp=e:GetHandlerPlayer()
return Duel.GetFlagEffect(tp,11451631)==0 and con(e,...)
end)
e10:SetOperation(function(e,tp,...)
local ph=Duel.GetCurrentPhase()
if ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then ph=PHASE_BATTLE end
Duel.RegisterFlagEffect(tp,11451631,RESET_PHASE+ph,0,1)
op(e,tp,...)
end)
--spsummon condition --spsummon condition
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
......
...@@ -5,7 +5,19 @@ function cm.initial_effect(c) ...@@ -5,7 +5,19 @@ function cm.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true) aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true)
aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c)):SetCountLimit(1,11451631+EFFECT_COUNT_CODE_OATH) local e10=aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c))
local con=e10:GetCondition()
local op=e10:GetOperation()
e10:SetCondition(function(e,...)
local tp=e:GetHandlerPlayer()
return Duel.GetFlagEffect(tp,11451631)==0 and con(e,...)
end)
e10:SetOperation(function(e,tp,...)
local ph=Duel.GetCurrentPhase()
if ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then ph=PHASE_BATTLE end
Duel.RegisterFlagEffect(tp,11451631,RESET_PHASE+ph,0,1)
op(e,tp,...)
end)
--spsummon condition --spsummon condition
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
......
...@@ -6,7 +6,19 @@ function cm.initial_effect(c) ...@@ -6,7 +6,19 @@ function cm.initial_effect(c)
--fusion material --fusion material
c:EnableReviveLimit() c:EnableReviveLimit()
aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true) aux.AddFusionProcCodeFun(c,m-40,aux.FilterBoolFunction(Card.IsType,TYPE_SPELL+TYPE_TRAP),1,true,true)
aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c)):SetCountLimit(1,11451631+EFFECT_COUNT_CODE_OATH) local e10=aux.AddContactFusionProcedure(c,cm.cfilter,LOCATION_REMOVED,0,cm.tdcfop(c))
local con=e10:GetCondition()
local op=e10:GetOperation()
e10:SetCondition(function(e,...)
local tp=e:GetHandlerPlayer()
return Duel.GetFlagEffect(tp,11451631)==0 and con(e,...)
end)
e10:SetOperation(function(e,tp,...)
local ph=Duel.GetCurrentPhase()
if ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then ph=PHASE_BATTLE end
Duel.RegisterFlagEffect(tp,11451631,RESET_PHASE+ph,0,1)
op(e,tp,...)
end)
--spsummon condition --spsummon condition
local e0=Effect.CreateEffect(c) local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE) e0:SetType(EFFECT_TYPE_SINGLE)
......
...@@ -160,10 +160,13 @@ function cm.chkval(e,te) ...@@ -160,10 +160,13 @@ function cm.chkval(e,te)
--Duel.Readjust() --Duel.Readjust()
e:SetValue(aux.FALSE) e:SetValue(aux.FALSE)
e:SetProperty(EFFECT_FLAG_SET_AVAILABLE) e:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
if SetCardData then if Duel.GetFlagEffect(tp,0xffff+m)==0 then
Duel.Hint(24,0,aux.Stringid(m,15)) Duel.RegisterFlagEffect(tp,0xffff+m,RESET_CHAIN,0,1)
else if SetCardData then
Debug.Message("「接引」任务进度更新!") Duel.Hint(24,0,aux.Stringid(m,15))
else
Debug.Message("「接引」任务进度更新!")
end
end end
return true return true
end end
......
...@@ -270,10 +270,13 @@ function cm.chkval(e,te) ...@@ -270,10 +270,13 @@ function cm.chkval(e,te)
if e:GetHandler():GetFlagEffect(m-10)>0 and te and te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) and (te:GetCode()<0x10000 or te:IsHasType(EFFECT_TYPE_ACTIONS)) then if e:GetHandler():GetFlagEffect(m-10)>0 and te and te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) and (te:GetCode()<0x10000 or te:IsHasType(EFFECT_TYPE_ACTIONS)) then
local g=e:GetLabelObject() local g=e:GetLabelObject()
g:ForEach(Card.ResetFlagEffect,m-10) g:ForEach(Card.ResetFlagEffect,m-10)
if SetCardData then if Duel.GetFlagEffect(tp,0xffff+m)==0 then
Duel.Hint(24,0,aux.Stringid(m,2)) Duel.RegisterFlagEffect(tp,0xffff+m,RESET_CHAIN,0,1)
else if SetCardData then
Debug.Message("「强击」任务进度更新!") Duel.Hint(24,0,aux.Stringid(m,2))
else
Debug.Message("「强击」任务进度更新!")
end
end end
local tc=te:GetHandler() local tc=te:GetHandler()
local e3=Effect.CreateEffect(tc) local e3=Effect.CreateEffect(tc)
......
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