Commit 602ca09c authored by POLYMER's avatar POLYMER

fix

parent 39b3cd46
...@@ -244,7 +244,7 @@ function cm.initial_effect(c) ...@@ -244,7 +244,7 @@ function cm.initial_effect(c)
local e5=e4:Clone() local e5=e4:Clone()
e5:SetCode(EVENT_PHASE+PHASE_BATTLE_START) e5:SetCode(EVENT_PHASE+PHASE_BATTLE_START)
e5:SetCountLimit(1) e5:SetCountLimit(1)
e5:SetCondition(function(e,tp) local c=e:GetHandler() return c:IsFaceup() and Duel.GetDecktopGroup(tp,1):IsContains(c) and (not cm[c] or cm[c]~=Duel.GetCurrentPhase()) end) e5:SetCondition(function(e,tp) local c=e:GetHandler() return c:IsFaceup() and Duel.GetDecktopGroup(tp,1):IsContains(c) and not (cm[c] and cm[c]==Duel.GetCurrentPhase() and c:GetTurnID()==Duel.GetTurnCount()) end)
e5:SetOperation(cm.spop) e5:SetOperation(cm.spop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
local e6=e5:Clone() local e6=e5:Clone()
...@@ -446,7 +446,6 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp) ...@@ -446,7 +446,6 @@ function cm.operation(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if cm[c]==Duel.GetCurrentPhase() then return end
if c:GetTurnID()~=Duel.GetTurnCount() or Duel.SelectYesNo(tp,aux.Stringid(11451851,2)) then if c:GetTurnID()~=Duel.GetTurnCount() or Duel.SelectYesNo(tp,aux.Stringid(11451851,2)) then
Duel.DisableShuffleCheck() Duel.DisableShuffleCheck()
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
......
...@@ -55,7 +55,7 @@ function cm.initial_effect(c) ...@@ -55,7 +55,7 @@ function cm.initial_effect(c)
local e5=e4:Clone() local e5=e4:Clone()
e5:SetCode(EVENT_PHASE+PHASE_BATTLE_START) e5:SetCode(EVENT_PHASE+PHASE_BATTLE_START)
e5:SetCountLimit(1) e5:SetCountLimit(1)
e5:SetCondition(function(e,tp) local c=e:GetHandler() return c:IsFaceup() and Duel.GetDecktopGroup(tp,1):IsContains(c) and (not cm[c] or cm[c]~=Duel.GetCurrentPhase()) end) e5:SetCondition(function(e,tp) local c=e:GetHandler() return c:IsFaceup() and Duel.GetDecktopGroup(tp,1):IsContains(c) and not (cm[c] and cm[c]==Duel.GetCurrentPhase() and c:GetTurnID()==Duel.GetTurnCount()) end)
e5:SetOperation(cm.spop) e5:SetOperation(cm.spop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
local e6=e5:Clone() local e6=e5:Clone()
...@@ -256,7 +256,6 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -256,7 +256,6 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if cm[c]==Duel.GetCurrentPhase() then return end
if c:GetTurnID()~=Duel.GetTurnCount() or Duel.SelectYesNo(tp,aux.Stringid(11451851,2)) then if c:GetTurnID()~=Duel.GetTurnCount() or Duel.SelectYesNo(tp,aux.Stringid(11451851,2)) then
Duel.DisableShuffleCheck() Duel.DisableShuffleCheck()
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
......
...@@ -53,7 +53,7 @@ function cm.initial_effect(c) ...@@ -53,7 +53,7 @@ function cm.initial_effect(c)
local e5=e4:Clone() local e5=e4:Clone()
e5:SetCode(EVENT_PHASE+PHASE_BATTLE_START) e5:SetCode(EVENT_PHASE+PHASE_BATTLE_START)
e5:SetCountLimit(1) e5:SetCountLimit(1)
e5:SetCondition(function(e,tp) local c=e:GetHandler() return c:IsFaceup() and Duel.GetDecktopGroup(tp,1):IsContains(c) and (not cm[c] or cm[c]~=Duel.GetCurrentPhase()) end) e5:SetCondition(function(e,tp) local c=e:GetHandler() return c:IsFaceup() and Duel.GetDecktopGroup(tp,1):IsContains(c) and not (cm[c] and cm[c]==Duel.GetCurrentPhase() and c:GetTurnID()==Duel.GetTurnCount()) end)
e5:SetOperation(cm.spop) e5:SetOperation(cm.spop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
local e6=e5:Clone() local e6=e5:Clone()
...@@ -235,7 +235,6 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp) ...@@ -235,7 +235,6 @@ function cm.desop(e,tp,eg,ep,ev,re,r,rp)
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if cm[c]==Duel.GetCurrentPhase() then return end
if c:GetTurnID()~=Duel.GetTurnCount() or Duel.SelectYesNo(tp,aux.Stringid(11451851,2)) then if c:GetTurnID()~=Duel.GetTurnCount() or Duel.SelectYesNo(tp,aux.Stringid(11451851,2)) then
Duel.DisableShuffleCheck() Duel.DisableShuffleCheck()
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
......
...@@ -54,7 +54,7 @@ function cm.initial_effect(c) ...@@ -54,7 +54,7 @@ function cm.initial_effect(c)
local e5=e4:Clone() local e5=e4:Clone()
e5:SetCode(EVENT_PHASE+PHASE_BATTLE_START) e5:SetCode(EVENT_PHASE+PHASE_BATTLE_START)
e5:SetCountLimit(1) e5:SetCountLimit(1)
e5:SetCondition(function(e,tp) local c=e:GetHandler() return c:IsFaceup() and Duel.GetDecktopGroup(tp,1):IsContains(c) and (not cm[c] or cm[c]~=Duel.GetCurrentPhase()) end) e5:SetCondition(function(e,tp) local c=e:GetHandler() return c:IsFaceup() and Duel.GetDecktopGroup(tp,1):IsContains(c) and not (cm[c] and cm[c]==Duel.GetCurrentPhase() and c:GetTurnID()==Duel.GetTurnCount()) end)
e5:SetOperation(cm.spop) e5:SetOperation(cm.spop)
c:RegisterEffect(e5) c:RegisterEffect(e5)
local e6=e5:Clone() local e6=e5:Clone()
...@@ -244,7 +244,6 @@ function cm.aclimit(e,re,tp) ...@@ -244,7 +244,6 @@ function cm.aclimit(e,re,tp)
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if cm[c]==Duel.GetCurrentPhase() then return end
if c:GetTurnID()~=Duel.GetTurnCount() or Duel.SelectYesNo(tp,aux.Stringid(11451851,2)) then if c:GetTurnID()~=Duel.GetTurnCount() or Duel.SelectYesNo(tp,aux.Stringid(11451851,2)) then
Duel.DisableShuffleCheck() Duel.DisableShuffleCheck()
Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)
......
...@@ -110,7 +110,7 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp) ...@@ -110,7 +110,7 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
local tc=te:GetHandler() local tc=te:GetHandler()
local prop1,prop2=te:GetProperty() local prop1,prop2=te:GetProperty()
local eset={Duel.IsPlayerAffectedByEffect(tp,m)} local eset={Duel.IsPlayerAffectedByEffect(tp,m)}
if te:IsHasType(EFFECT_TYPE_ACTIVATE) and ((tc:GetFlagEffect(m)>0 and prop2 and prop2&EFFECT_FLAG2_COF>0) or (tc:IsLocation(LOCATION_SZONE) and tc:IsType(TYPE_QUICKPLAY) and ((#eset>0 and tc:IsStatus(STATUS_SET_TURN) and tc:GetEffectCount(EFFECT_QP_ACT_IN_SET_TURN)<=#eset) or (Duel.GetFieldGroupCount(tp,LOCATION_HAND,0)>0 and Duel.SelectYesNo(tp,aux.Stringid(m,3)))))) then if te:IsHasType(EFFECT_TYPE_ACTIVATE) and ((tc:GetFlagEffect(m)>0 and prop2 and prop2&EFFECT_FLAG2_COF>0) or (tc:IsLocation(LOCATION_SZONE) and tc:IsType(TYPE_QUICKPLAY) and ((#eset>0 and tc:IsStatus(STATUS_SET_TURN) and tc:GetEffectCount(EFFECT_QP_ACT_IN_SET_TURN)<=#eset) or (Duel.GetFieldGroupCount(tp,LOCATION_HAND,0)>0 and tc:IsFacedown() and Duel.SelectYesNo(tp,aux.Stringid(m,3)))))) then
local ph=Duel.GetCurrentPhase() local ph=Duel.GetCurrentPhase()
if ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then ph=PHASE_BATTLE end if ph>PHASE_MAIN1 and ph<PHASE_MAIN2 then ph=PHASE_BATTLE end
e:GetHandler():RegisterFlagEffect(m+1,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+ph,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(m,15)) e:GetHandler():RegisterFlagEffect(m+1,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+ph,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(m,15))
......
...@@ -99,20 +99,20 @@ function c22348362.ceop(e,tp,eg,ep,ev,re,r,rp) ...@@ -99,20 +99,20 @@ function c22348362.ceop(e,tp,eg,ep,ev,re,r,rp)
end end
function c22348362.sumlimit(e,c) function c22348362.sumlimit(e,c)
if not c then return false end if not c then return false end
return c:GetFlagEffectLabel(22349362) return c:GetFlagEffectLabel(22349362)~=0
end end
function c22348362.fuslimit(e,c,sumtype) function c22348362.fuslimit(e,c,sumtype)
if not c then return false end if not c then return false end
return c:GetFlagEffectLabel(22349362) and sumtype==SUMMON_TYPE_FUSION return c:GetFlagEffectLabel(22349362)~=0 and sumtype==SUMMON_TYPE_FUSION
end end
function c22348362.ctcon(e) function c22348362.ctcon(e)
local c=e:GetHandler() local c=e:GetHandler()
return c:GetFlagEffectLabel(22349362) return c:GetFlagEffectLabel(22349362)~=0
end end
function c22348362.cttg(e,c) function c22348362.cttg(e,c)
return c:GetFlagEffectLabel(22349362) and c:IsFaceup() return c:GetFlagEffectLabel(22349362)~=0 and c:IsFaceup()
end end
function c22348362.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c22348362.tg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) end if chkc then return chkc:IsLocation(LOCATION_MZONE) end
...@@ -139,12 +139,12 @@ function c22348362.ctgop(e,tp,eg,ep,ev,re,r,rp) ...@@ -139,12 +139,12 @@ function c22348362.ctgop(e,tp,eg,ep,ev,re,r,rp)
end end
function c22348362.checkop(e,tp,eg,ep,ev,re,r,rp) function c22348362.checkop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if not c:IsDisabled() and c:GetFlagEffectLabel(22349362) then if not c:IsDisabled() and c:GetFlagEffectLabel(22349362)~=0 then
e:SetLabel(1) e:SetLabel(1)
else e:SetLabel(0) end else e:SetLabel(0) end
end end
function c22348362.cfilter(c) function c22348362.cfilter(c)
return c:IsLocation(LOCATION_MZONE) and c:GetFlagEffectLabel(22349362) return c:IsLocation(LOCATION_MZONE) and c:GetFlagEffectLabel(22349362)~=0
end end
function c22348362.desop(e,tp,eg,ep,ev,re,r,rp) function c22348362.desop(e,tp,eg,ep,ev,re,r,rp)
local g=e:GetHandler():GetCardTarget() local g=e:GetHandler():GetCardTarget()
...@@ -157,7 +157,7 @@ function c22348362.regop(e,tp,eg,ep,ev,re,r,rp) ...@@ -157,7 +157,7 @@ function c22348362.regop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local g=c:GetCardTarget() local g=c:GetCardTarget()
local cg=Group.__band(g,eg) local cg=Group.__band(g,eg)
if cg:IsExists(c22348362.cfilter,1,nil) and c:GetFlagEffectLabel(22349362) then if cg:IsExists(c22348362.cfilter,1,nil) and c:GetFlagEffectLabel(22349362)~=0 then
e:SetLabel(1) e:SetLabel(1)
else e:SetLabel(0) end else e:SetLabel(0) end
end end
......
...@@ -16,6 +16,7 @@ function s.initial_effect(c) ...@@ -16,6 +16,7 @@ function s.initial_effect(c)
e1:SetDescription(aux.Stringid(id,6)) e1:SetDescription(aux.Stringid(id,6))
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O) e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_SPSUMMON_SUCCESS) e1:SetCode(EVENT_SPSUMMON_SUCCESS)
e1:SetProperty(EFFECT_FLAG_DELAY)
e1:SetCondition(s.condition) e1:SetCondition(s.condition)
e1:SetTarget(s.target) e1:SetTarget(s.target)
e1:SetOperation(s.operation) e1:SetOperation(s.operation)
......
...@@ -31,7 +31,7 @@ function Auxiliary.PreloadUds() ...@@ -31,7 +31,7 @@ function Auxiliary.PreloadUds()
return temp_f(...) return temp_f(...)
end end
end end
for i,fname in pairs(release_set) do for i,fname in pairs(release_set2) do
local temp_f=Duel[fname] local temp_f=Duel[fname]
Duel[fname]=function(...) Duel[fname]=function(...)
local params={...} local params={...}
......
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