Commit b104613d authored by POLYMER's avatar POLYMER

fix

parent f4b0b588
......@@ -164,7 +164,6 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return (num>=2 or (Duel.IsPlayerAffectedByEffect(tp,11451481) and num>=1)) and not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and #spg>0 and c:GetFlagEffect(m)==0 and Duel.GetFlagEffect(tp,m+0xffffff)<2+(Duel.GetFlagEffect(tp,11451926)>0 and 1 or 0) end
Duel.RegisterFlagEffect(tp,m+0xffffff,RESET_PHASE+PHASE_END,0,1)
local op=0
c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,0,1)
if Duel.IsPlayerAffectedByEffect(tp,11451481) then
if num>=2 then
local op=Duel.SelectOption(tp,aux.Stringid(11451483,2),aux.Stringid(11451483,3))
......@@ -180,6 +179,7 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
end
end
if Duel.GetFlagEffect(tp,m+0xffffff)>2 or (op==1 and Duel.GetFlagEffect(tp,11451481)>1) then
c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451926,4))
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451926)}
local g=Group.CreateGroup()
for _,te in pairs(eset) do g:AddCard(te:GetHandler()) end
......@@ -188,6 +188,8 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
g=g:Select(tp,1,1,nil)
end
Duel.RaiseSingleEvent(g:GetFirst(),EVENT_CUSTOM+11451926,e,0,tp,tp,0)
else
c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,0,1)
end
Duel.SetTargetCard(tg)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,tp,LOCATION_HAND+LOCATION_GRAVE)
......@@ -214,7 +216,6 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return (#eg>=2 or Duel.IsPlayerAffectedByEffect(tp,11451481)) and c:IsAbleToHand() and Duel.IsExistingMatchingCard(cm.thfilter,tp,LOCATION_DECK,0,1,nil) and c:GetFlagEffect(m)==0 and Duel.GetFlagEffect(tp,m+0xffffff)<2+(Duel.GetFlagEffect(tp,11451926)>0 and 1 or 0) end
Duel.RegisterFlagEffect(tp,m+0xffffff,RESET_PHASE+PHASE_END,0,1)
local op=0
c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,0,1)
if Duel.IsPlayerAffectedByEffect(tp,11451481) then
if #eg>=2 then
local op=Duel.SelectOption(tp,aux.Stringid(11451483,2),aux.Stringid(11451483,3))
......@@ -230,6 +231,7 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
end
end
if Duel.GetFlagEffect(tp,m+0xffffff)>2 or (op==1 and Duel.GetFlagEffect(tp,11451481)>1) then
c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451926,4))
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451926)}
local g=Group.CreateGroup()
for _,te in pairs(eset) do g:AddCard(te:GetHandler()) end
......@@ -238,6 +240,8 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
g=g:Select(tp,1,1,nil)
end
Duel.RaiseSingleEvent(g:GetFirst(),EVENT_CUSTOM+11451926,e,0,tp,tp,0)
else
c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,0,1)
end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,2,tp,LOCATION_ONFIELD+LOCATION_DECK)
end
......
......@@ -86,7 +86,6 @@ function cm.ngtg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsDestructable() and e:GetHandler():GetFlagEffect(m)==0 and Duel.GetFlagEffect(tp,m+0xffffff)<2+(Duel.GetFlagEffect(tp,11451926)>0 and 1 or 0) end
local op=0
Duel.RegisterFlagEffect(tp,m+0xffffff,RESET_PHASE+PHASE_END,0,1)
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,0,1)
local a,b=0,0
for i=1,ev do
local te,tgp=Duel.GetChainInfo(i,CHAININFO_TRIGGERING_EFFECT,CHAININFO_TRIGGERING_PLAYER)
......@@ -110,6 +109,7 @@ function cm.ngtg(e,tp,eg,ep,ev,re,r,rp,chk)
end
end
if Duel.GetFlagEffect(tp,m+0xffffff)>2 or (op==1 and Duel.GetFlagEffect(tp,11451482)>1) then
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451926,4))
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451926)}
local g=Group.CreateGroup()
for _,te in pairs(eset) do g:AddCard(te:GetHandler()) end
......@@ -118,6 +118,8 @@ function cm.ngtg(e,tp,eg,ep,ev,re,r,rp,chk)
g=g:Select(tp,1,1,nil)
end
Duel.RaiseSingleEvent(g:GetFirst(),EVENT_CUSTOM+11451926,e,0,tp,tp,0)
else
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,0,1)
end
if b==1 then Duel.SetOperationInfo(0,CATEGORY_DESTROY,nil,2,0,0) end
Duel.SetOperationInfo(0,CATEGORY_NEGATE,nil,1,0,0)
......@@ -153,7 +155,6 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return (num>=2 or (Duel.IsPlayerAffectedByEffect(tp,11451482) and num>=1)) and c:IsAbleToHand() and Duel.IsExistingMatchingCard(Card.IsAbleToHand,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) and c:GetFlagEffect(m)==0 and Duel.GetFlagEffect(tp,m+0xffffff)<2+(Duel.GetFlagEffect(tp,11451926)>0 and 1 or 0) end
local op=0
Duel.RegisterFlagEffect(tp,m+0xffffff,RESET_PHASE+PHASE_END,0,1) --and not Duel.IsPlayerAffectedByEffect(tp,59822133) and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and c:IsCanBeSpecialSummoned(e,0,tp,false,false) and Duel.IsExistingMatchingCard(cm.spfilter,tp,LOCATION_HAND,0,1,nil,e,tp) end
c:RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,0,1)
if Duel.IsPlayerAffectedByEffect(tp,11451482) then
if num>=2 then
op=Duel.SelectOption(tp,aux.Stringid(11451483,2),aux.Stringid(11451483,3))
......@@ -169,6 +170,7 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
end
end
if Duel.GetFlagEffect(tp,m+0xffffff)>2 or (op==1 and Duel.GetFlagEffect(tp,11451482)>1) then
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451926,4))
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451926)}
local g=Group.CreateGroup()
for _,te in pairs(eset) do g:AddCard(te:GetHandler()) end
......@@ -177,6 +179,8 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
g=g:Select(tp,1,1,nil)
end
Duel.RaiseSingleEvent(g:GetFirst(),EVENT_CUSTOM+11451926,e,0,tp,tp,0)
else
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,0,1)
end
Duel.SetOperationInfo(0,CATEGORY_TOHAND,e:GetHandler(),2,PLAYER_ALL,LOCATION_ONFIELD+c:GetLocation())
--Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,2,tp,LOCATION_HAND+LOCATION_GRAVE)
......
......@@ -50,6 +50,7 @@ function cm.settg(e,tp,eg,ep,ev,re,r,rp,chk)
end
end
if Duel.GetFlagEffect(tp,m)>2 or (op==1 and Duel.GetFlagEffect(tp,11451481)>1) then
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451926,4))
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451926)}
local g=Group.CreateGroup()
for _,te in pairs(eset) do g:AddCard(te:GetHandler()) end
......@@ -91,6 +92,7 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
end
end
if Duel.GetFlagEffect(tp,m)>2 or (op==1 and Duel.GetFlagEffect(tp,11451481)>1) then
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451926,4))
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451926)}
local g=Group.CreateGroup()
for _,te in pairs(eset) do g:AddCard(te:GetHandler()) end
......
......@@ -62,6 +62,7 @@ function cm.retg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.RegisterFlagEffect(tp,m,RESET_PHASE+PHASE_END,0,1)
local op=e:GetLabel()
if Duel.GetFlagEffect(tp,m)>2 or (op==1 and Duel.GetFlagEffect(tp,11451482)>1) then
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451926,4))
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451926)}
local g=Group.CreateGroup()
for _,te in pairs(eset) do g:AddCard(te:GetHandler()) end
......@@ -114,6 +115,7 @@ function cm.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
end
end
if Duel.GetFlagEffect(tp,m)>2 or (op==1 and Duel.GetFlagEffect(tp,11451482)>1) then
e:GetHandler():RegisterFlagEffect(m,RESET_EVENT+RESETS_STANDARD+RESET_CHAIN,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(11451926,4))
local eset={Duel.IsPlayerAffectedByEffect(tp,EFFECT_FLAG_EFFECT+11451926)}
local g=Group.CreateGroup()
for _,te in pairs(eset) do g:AddCard(te:GetHandler()) end
......
......@@ -34,7 +34,7 @@ function c11579814.initial_effect(c)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_QUICK_O)
e3:SetCode(EVENT_FREE_CHAIN)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET)
e3:SetProperty(EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DAMAGE_STEP)
e3:SetRange(LOCATION_MZONE)
e3:SetCountLimit(1)
e3:SetCost(c11579814.atkcost)
......
......@@ -1144,11 +1144,13 @@ function s.Checkmate_chtg(_tg)
e2:SetCountLimit(1)
e2:SetLabelObject(e)
e2:SetOperation(s.Checkmate_tgoff)
e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
end
end
end
function s.Checkmate_tgoff(e,tp,eg,ep,ev,re,r,rp)
if not e:GetLabelObject() then return end
local pro1,pro2=e:GetLabelObject():GetProperty()
e:GetLabelObject():SetProperty(pro1&(~EFFECT_FLAG_CARD_TARGET),pro2)
end
......
......@@ -106,7 +106,7 @@ function s.valcheck(e,c)
e2:SetCondition(s.thcon)
e2:SetOperation(s.thop)
e2:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e2,tp)
Duel.RegisterEffect(e2,0)
end
end
function s.thfilter(c)
......
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