Commit 4efd33e5 authored by POLYMER's avatar POLYMER

fix

parent 4c4d1f6b
...@@ -36,10 +36,11 @@ function cm.initial_effect(c) ...@@ -36,10 +36,11 @@ function cm.initial_effect(c)
local e6=Effect.CreateEffect(c) local e6=Effect.CreateEffect(c)
e6:SetType(EFFECT_TYPE_FIELD) e6:SetType(EFFECT_TYPE_FIELD)
e6:SetCode(EFFECT_QP_ACT_IN_SET_TURN) e6:SetCode(EFFECT_QP_ACT_IN_SET_TURN)
e6:SetProperty(EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_IGNORE_IMMUNE) e6:SetProperty(EFFECT_FLAG_SET_AVAILABLE) --+EFFECT_FLAG_IGNORE_IMMUNE)
e6:SetRange(LOCATION_FZONE) e6:SetRange(LOCATION_FZONE)
e6:SetTargetRange(LOCATION_SZONE,0) e6:SetTargetRange(LOCATION_SZONE,0)
e6:SetDescription(aux.Stringid(m,0)) e6:SetDescription(aux.Stringid(m,0))
e6:SetCondition(cm.con)
e6:SetCost(cm.costt) e6:SetCost(cm.costt)
c:RegisterEffect(e6) c:RegisterEffect(e6)
local e7=e6:Clone() local e7=e6:Clone()
......
...@@ -122,7 +122,7 @@ function cm.checkop(e,tp,eg,ep,ev,re,r,rp) ...@@ -122,7 +122,7 @@ function cm.checkop(e,tp,eg,ep,ev,re,r,rp)
if not re:IsHasCategory(CATEGORY_COIN) then return end if not re:IsHasCategory(CATEGORY_COIN) then return end
local se=Effect.CreateEffect(e:GetHandler()) local se=Effect.CreateEffect(e:GetHandler())
se:SetType(EFFECT_TYPE_SINGLE) se:SetType(EFFECT_TYPE_SINGLE)
se:SetCode(0x20000000+m) se:SetCode(EFFECT_FLAG_EFFECT+m)
se:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_IMMUNE+EFFECT_FLAG_SET_AVAILABLE) se:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_IMMUNE+EFFECT_FLAG_SET_AVAILABLE)
se:SetReset(RESET_PHASE+PHASE_END,2) se:SetReset(RESET_PHASE+PHASE_END,2)
rc:RegisterEffect(se,true) rc:RegisterEffect(se,true)
...@@ -307,7 +307,7 @@ function cm.shfilter(c) ...@@ -307,7 +307,7 @@ function cm.shfilter(c)
return c:GetFlagEffect(m)>0 return c:GetFlagEffect(m)>0
end end
function cm.chkval(e,te) 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:IsHasType(EFFECT_TYPE_ACTIONS) then
local tp=e:GetOwnerPlayer() local tp=e:GetOwnerPlayer()
local g=e:GetLabelObject() local g=e:GetLabelObject()
g:ForEach(Card.ResetFlagEffect,m-10) g:ForEach(Card.ResetFlagEffect,m-10)
...@@ -334,7 +334,7 @@ function cm.tdop(e,tp,eg,ep,ev,re,r,rp) ...@@ -334,7 +334,7 @@ function cm.tdop(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(m,5)) Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(m,5))
local tc=sg:Select(tp,1,1,nil):GetFirst() local tc=sg:Select(tp,1,1,nil):GetFirst()
Duel.Hint(HINT_CARD,0,tc:GetOriginalCode()) Duel.Hint(HINT_CARD,0,tc:GetOriginalCode())
local eset={tc:IsHasEffect(0x20000000+m)} local eset={tc:IsHasEffect(EFFECT_FLAG_EFFECT+m)}
local te=eset[1]:GetLabelObject() local te=eset[1]:GetLabelObject()
if #eset>1 then if #eset>1 then
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(m,6)) Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(m,6))
......
...@@ -196,7 +196,7 @@ function cm.shfilter(c) ...@@ -196,7 +196,7 @@ function cm.shfilter(c)
return c:GetFlagEffect(m)>0 return c:GetFlagEffect(m)>0
end end
function cm.chkval(e,te) function cm.chkval(e,te)
if te and te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) and (te:GetCode()<0x10000 or te:IsHasType(EFFECT_TYPE_ACTIONS)) then if te and te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) and te:IsHasType(EFFECT_TYPE_ACTIONS) then
local tp=te:GetOwnerPlayer() local tp=te:GetOwnerPlayer()
local e3=Effect.CreateEffect(e:GetOwner()) local e3=Effect.CreateEffect(e:GetOwner())
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
...@@ -206,6 +206,7 @@ function cm.chkval(e,te) ...@@ -206,6 +206,7 @@ function cm.chkval(e,te)
Duel.RegisterEffect(e3,tp) Duel.RegisterEffect(e3,tp)
e:SetValue(aux.FALSE) e:SetValue(aux.FALSE)
e:SetProperty(EFFECT_FLAG_SET_AVAILABLE) e:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
e:SetDescription(0)
if tp==e:GetOwnerPlayer() then if tp==e:GetOwnerPlayer() then
if SetCardData then if SetCardData then
Duel.Hint(24,0,aux.Stringid(m,3)) Duel.Hint(24,0,aux.Stringid(m,3))
......
...@@ -257,7 +257,7 @@ function cm.thop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -257,7 +257,7 @@ function cm.thop2(e,tp,eg,ep,ev,re,r,rp)
g=g:Filter(Card.IsRelateToEffect,nil,e) g=g:Filter(Card.IsRelateToEffect,nil,e)
if #g==0 then return end if #g==0 then return end
g:KeepAlive() g:KeepAlive()
g:ForEach(Card.RegisterFlagEffect,m-10,RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET,EFFECT_FLAG_CLIENT_HINT,1,aux.Stringid(m,10)) g:ForEach(Card.RegisterFlagEffect,m-10,RESET_EVENT+RESETS_STANDARD-RESET_TURN_SET,EFFECT_FLAG_CLIENT_HINT,1,0,aux.Stringid(m,10))
for tc in aux.Next(g) do for tc in aux.Next(g) do
local ge2=Effect.CreateEffect(c) local ge2=Effect.CreateEffect(c)
ge2:SetType(EFFECT_TYPE_SINGLE) ge2:SetType(EFFECT_TYPE_SINGLE)
...@@ -271,7 +271,7 @@ function cm.thop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -271,7 +271,7 @@ function cm.thop2(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.chkval(e,te) 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: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 Duel.GetFlagEffect(tp,0xffff+m)==0 then if Duel.GetFlagEffect(tp,0xffff+m)==0 then
......
...@@ -120,7 +120,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -120,7 +120,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
de:SetDescription(aux.Stringid(11451961+#eset,6)) de:SetDescription(aux.Stringid(11451961+#eset,6))
de:SetLabel(eid) de:SetLabel(eid)
de:SetType(EFFECT_TYPE_FIELD) de:SetType(EFFECT_TYPE_FIELD)
de:SetCode(0x20000000+11451961) de:SetCode(EFFECT_FLAG_EFFECT+11451961)
de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT) de:SetProperty(EFFECT_FLAG_PLAYER_TARGET+EFFECT_FLAG_CLIENT_HINT)
de:SetTargetRange(1,0) de:SetTargetRange(1,0)
Duel.RegisterEffect(de,tp) Duel.RegisterEffect(de,tp)
...@@ -157,7 +157,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp) ...@@ -157,7 +157,7 @@ function cm.reop(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.efilter(e,te) function cm.efilter(e,te)
if e:GetHandler():GetFlagEffect(m+0xffffff)>0 and te and te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) and (te:GetCode()<0x10000 or te:IsHasType(EFFECT_TYPE_ACTIONS)) and te:GetCode()~=16 and te:GetCode()~=359 then if e:GetHandler():GetFlagEffect(m+0xffffff)>0 and te and te:GetHandler() and not te:IsHasProperty(EFFECT_FLAG_UNCOPYABLE) and te:IsHasType(EFFECT_TYPE_ACTIONS) then
if KOISHI_CHECK then if KOISHI_CHECK then
Duel.DisableActionCheck(true) Duel.DisableActionCheck(true)
pcall(Duel.HintSelection,Group.FromCards(e:GetHandler())) pcall(Duel.HintSelection,Group.FromCards(e:GetHandler()))
......
This diff is collapsed.
...@@ -331,7 +331,7 @@ function c91300032.discon5(e,tp,eg,ep,ev,re,r,rp) ...@@ -331,7 +331,7 @@ function c91300032.discon5(e,tp,eg,ep,ev,re,r,rp)
and Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_HAND,0,1,c) and Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_HAND,0,1,c)
end end
function c91300032.disop5(e,tp,eg,ep,ev,re,r,rp) function c91300032.disop5(e,tp,eg,ep,ev,re,r,rp)
if Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil,REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(id,0)) then if Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil,REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(91301025,0)) then
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_EFFECT+REASON_DISCARD) Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_EFFECT+REASON_DISCARD)
local p=Duel.GetChainInfo(ev,CHAININFO_TARGET_PLAYER) local p=Duel.GetChainInfo(ev,CHAININFO_TARGET_PLAYER)
Duel.ChangeTargetPlayer(ev,1-p) Duel.ChangeTargetPlayer(ev,1-p)
......
...@@ -334,7 +334,7 @@ function c91300033.discon5(e,tp,eg,ep,ev,re,r,rp) ...@@ -334,7 +334,7 @@ function c91300033.discon5(e,tp,eg,ep,ev,re,r,rp)
and Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_HAND,0,1,c) and Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_HAND,0,1,c)
end end
function c91300033.disop5(e,tp,eg,ep,ev,re,r,rp) function c91300033.disop5(e,tp,eg,ep,ev,re,r,rp)
if Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil,REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(id,0)) then if Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil,REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(91301025,0)) then
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_EFFECT+REASON_DISCARD) Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_EFFECT+REASON_DISCARD)
local p=Duel.GetChainInfo(ev,CHAININFO_TARGET_PLAYER) local p=Duel.GetChainInfo(ev,CHAININFO_TARGET_PLAYER)
Duel.ChangeTargetPlayer(ev,1-p) Duel.ChangeTargetPlayer(ev,1-p)
......
...@@ -347,7 +347,7 @@ function c91300034.discon5(e,tp,eg,ep,ev,re,r,rp) ...@@ -347,7 +347,7 @@ function c91300034.discon5(e,tp,eg,ep,ev,re,r,rp)
and Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_HAND,0,1,c) and Duel.IsExistingMatchingCard(aux.TRUE,tp,LOCATION_HAND,0,1,c)
end end
function c91300034.disop5(e,tp,eg,ep,ev,re,r,rp) function c91300034.disop5(e,tp,eg,ep,ev,re,r,rp)
if Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil,REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(id,0)) then if Duel.IsExistingMatchingCard(Card.IsDiscardable,tp,LOCATION_HAND,0,1,nil,REASON_EFFECT) and Duel.SelectYesNo(tp,aux.Stringid(91301025,0)) then
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_EFFECT+REASON_DISCARD) Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_EFFECT+REASON_DISCARD)
local p=Duel.GetChainInfo(ev,CHAININFO_TARGET_PLAYER) local p=Duel.GetChainInfo(ev,CHAININFO_TARGET_PLAYER)
Duel.ChangeTargetPlayer(ev,1-p) Duel.ChangeTargetPlayer(ev,1-p)
......
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