Commit 6be6c8aa authored by POLYMER's avatar POLYMER

fix

parent ab564c7b
...@@ -69,10 +69,27 @@ function cm.initial_effect(c) ...@@ -69,10 +69,27 @@ function cm.initial_effect(c)
e0:SetType(EFFECT_TYPE_FIELD) e0:SetType(EFFECT_TYPE_FIELD)
e0:SetCode(EFFECT_DISABLE) e0:SetCode(EFFECT_DISABLE)
e0:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE) e0:SetTargetRange(LOCATION_MZONE,LOCATION_MZONE)
e0:SetTarget(function(e,c) return c:IsOriginalSetCard(0x5977) and c:IsType(TYPE_TRAP) and c:IsHasEffect(EFFECT_DISABLE_TRAPMONSTER) and c:IsHasEffect(EFFECT_DISABLE_TRAPMONSTER):GetHandlerPlayer()==e:GetHandlerPlayer() end) e0:SetTarget(function(e,c) return c:GetOriginalCode()==m and c:IsType(TYPE_TRAP) and c:IsHasEffect(EFFECT_DISABLE_TRAPMONSTER) and c:IsHasEffect(EFFECT_DISABLE_TRAPMONSTER):GetHandlerPlayer()==e:GetHandlerPlayer() end)
Duel.RegisterEffect(e0,0) Duel.RegisterEffect(e0,0)
local e1=e0:Clone() local e1=e0:Clone()
Duel.RegisterEffect(e1,1) Duel.RegisterEffect(e1,1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EFFECT_SEND_REPLACE)
e2:SetTarget(function(e,tp,eg,ep,ev,re,r,rp,chk)
local g=eg:Filter(function(c) return c:GetOriginalCode()==m and c:IsStatus(STATUS_ACTIVATE_DISABLED) and c:GetDestination()==LOCATION_GRAVE end,nil)
if chk==0 then return #g>0 end
for rc in aux.Next(g) do
local e1=Effect.CreateEffect(rc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TO_DECK)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1)
end
end)
e2:SetValue(aux.FALSE)
Duel.RegisterEffect(e2,0)
local _IsActiveType=Effect.IsActiveType local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType local _GetActiveType=Effect.GetActiveType
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
...@@ -124,24 +141,20 @@ function cm.initial_effect(c) ...@@ -124,24 +141,20 @@ function cm.initial_effect(c)
end end
function Duel.NegateActivation(ev) function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
--tograve rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
local e1=Effect.CreateEffect(rc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TO_DECK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1)
end end
end end
return _NegateActivation(ev) return res
end end
function Duel.ChangeChainOperation(ev,...) function Duel.ChangeChainOperation(ev,...)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then if aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:CancelToGrave(false) rc:CancelToGrave(false)
end end
end end
......
...@@ -83,6 +83,23 @@ function cm.initial_effect(c) ...@@ -83,6 +83,23 @@ function cm.initial_effect(c)
Duel.RegisterEffect(e0,0) Duel.RegisterEffect(e0,0)
local e1=e0:Clone() local e1=e0:Clone()
Duel.RegisterEffect(e1,1) Duel.RegisterEffect(e1,1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EFFECT_SEND_REPLACE)
e2:SetTarget(function(e,tp,eg,ep,ev,re,r,rp,chk)
local g=eg:Filter(function(c) return c:GetOriginalCode()==m and c:IsStatus(STATUS_ACTIVATE_DISABLED) and c:GetDestination()==LOCATION_GRAVE end,nil)
if chk==0 then return #g>0 end
for rc in aux.Next(g) do
local e1=Effect.CreateEffect(rc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TO_DECK)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1)
end
end)
e2:SetValue(aux.FALSE)
Duel.RegisterEffect(e2,0)
local _IsActiveType=Effect.IsActiveType local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType local _GetActiveType=Effect.GetActiveType
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
...@@ -134,24 +151,20 @@ function cm.initial_effect(c) ...@@ -134,24 +151,20 @@ function cm.initial_effect(c)
end end
function Duel.NegateActivation(ev) function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
--tograve rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
local e1=Effect.CreateEffect(rc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TO_DECK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1)
end end
end end
return _NegateActivation(ev) return res
end end
function Duel.ChangeChainOperation(ev,...) function Duel.ChangeChainOperation(ev,...)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then if aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:CancelToGrave(false) rc:CancelToGrave(false)
end end
end end
......
...@@ -72,6 +72,23 @@ function cm.initial_effect(c) ...@@ -72,6 +72,23 @@ function cm.initial_effect(c)
Duel.RegisterEffect(e0,0) Duel.RegisterEffect(e0,0)
local e1=e0:Clone() local e1=e0:Clone()
Duel.RegisterEffect(e1,1) Duel.RegisterEffect(e1,1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EFFECT_SEND_REPLACE)
e2:SetTarget(function(e,tp,eg,ep,ev,re,r,rp,chk)
local g=eg:Filter(function(c) return c:GetOriginalCode()==m and c:IsStatus(STATUS_ACTIVATE_DISABLED) and c:GetDestination()==LOCATION_GRAVE end,nil)
if chk==0 then return #g>0 end
for rc in aux.Next(g) do
local e1=Effect.CreateEffect(rc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TO_DECK)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1)
end
end)
e2:SetValue(aux.FALSE)
Duel.RegisterEffect(e2,0)
local _IsActiveType=Effect.IsActiveType local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType local _GetActiveType=Effect.GetActiveType
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
...@@ -123,24 +140,20 @@ function cm.initial_effect(c) ...@@ -123,24 +140,20 @@ function cm.initial_effect(c)
end end
function Duel.NegateActivation(ev) function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
--tograve rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
local e1=Effect.CreateEffect(rc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TO_DECK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1)
end end
end end
return _NegateActivation(ev) return res
end end
function Duel.ChangeChainOperation(ev,...) function Duel.ChangeChainOperation(ev,...)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then if aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:CancelToGrave(false) rc:CancelToGrave(false)
end end
end end
......
...@@ -74,6 +74,23 @@ function cm.initial_effect(c) ...@@ -74,6 +74,23 @@ function cm.initial_effect(c)
Duel.RegisterEffect(e0,0) Duel.RegisterEffect(e0,0)
local e1=e0:Clone() local e1=e0:Clone()
Duel.RegisterEffect(e1,1) Duel.RegisterEffect(e1,1)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EFFECT_SEND_REPLACE)
e2:SetTarget(function(e,tp,eg,ep,ev,re,r,rp,chk)
local g=eg:Filter(function(c) return c:GetOriginalCode()==m and c:IsStatus(STATUS_ACTIVATE_DISABLED) and c:GetDestination()==LOCATION_GRAVE end,nil)
if chk==0 then return #g>0 end
for rc in aux.Next(g) do
local e1=Effect.CreateEffect(rc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TO_DECK)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE+EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1)
end
end)
e2:SetValue(aux.FALSE)
Duel.RegisterEffect(e2,0)
local _IsActiveType=Effect.IsActiveType local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType local _GetActiveType=Effect.GetActiveType
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
...@@ -125,24 +142,20 @@ function cm.initial_effect(c) ...@@ -125,24 +142,20 @@ function cm.initial_effect(c)
end end
function Duel.NegateActivation(ev) function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
--tograve rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
local e1=Effect.CreateEffect(rc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_CANNOT_TO_DECK)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
rc:RegisterEffect(e1)
end end
end end
return _NegateActivation(ev) return res
end end
function Duel.ChangeChainOperation(ev,...) function Duel.ChangeChainOperation(ev,...)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then if aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:CancelToGrave(false) rc:CancelToGrave(false)
end end
end end
......
...@@ -81,6 +81,7 @@ function cm.initial_effect(c) ...@@ -81,6 +81,7 @@ function cm.initial_effect(c)
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _GetChainInfo=Duel.GetChainInfo local _GetChainInfo=Duel.GetChainInfo
local _NegateActivation=Duel.NegateActivation
local _ChangeChainOperation=Duel.ChangeChainOperation local _ChangeChainOperation=Duel.ChangeChainOperation
function Effect.GetActiveType(e) function Effect.GetActiveType(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
...@@ -124,11 +125,22 @@ function cm.initial_effect(c) ...@@ -124,11 +125,22 @@ function cm.initial_effect(c)
end end
return _GetChainInfo(ev,...) return _GetChainInfo(ev,...)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
function Duel.ChangeChainOperation(ev,...) function Duel.ChangeChainOperation(ev,...)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then if aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:CancelToGrave(false) rc:CancelToGrave(false)
end end
end end
......
...@@ -74,6 +74,7 @@ function cm.initial_effect(c) ...@@ -74,6 +74,7 @@ function cm.initial_effect(c)
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _GetChainInfo=Duel.GetChainInfo local _GetChainInfo=Duel.GetChainInfo
local _NegateActivation=Duel.NegateActivation
local _ChangeChainOperation=Duel.ChangeChainOperation local _ChangeChainOperation=Duel.ChangeChainOperation
function Effect.GetActiveType(e) function Effect.GetActiveType(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
...@@ -117,11 +118,22 @@ function cm.initial_effect(c) ...@@ -117,11 +118,22 @@ function cm.initial_effect(c)
end end
return _GetChainInfo(ev,...) return _GetChainInfo(ev,...)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
function Duel.ChangeChainOperation(ev,...) function Duel.ChangeChainOperation(ev,...)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then if aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:CancelToGrave(false) rc:CancelToGrave(false)
end end
end end
......
...@@ -50,6 +50,7 @@ function cm.initial_effect(c) ...@@ -50,6 +50,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -62,6 +63,17 @@ function cm.initial_effect(c) ...@@ -62,6 +63,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.valcheck(e,c) function cm.valcheck(e,c)
......
...@@ -37,6 +37,7 @@ function cm.initial_effect(c) ...@@ -37,6 +37,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -49,6 +50,17 @@ function cm.initial_effect(c) ...@@ -49,6 +50,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.actarget(e,te,tp) function cm.actarget(e,te,tp)
......
...@@ -72,6 +72,7 @@ function cm.initial_effect(c) ...@@ -72,6 +72,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -84,6 +85,17 @@ function cm.initial_effect(c) ...@@ -84,6 +85,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.filter(c,event) function cm.filter(c,event)
......
...@@ -55,6 +55,7 @@ function cm.initial_effect(c) ...@@ -55,6 +55,7 @@ function cm.initial_effect(c)
Duel.RegisterEffect(ge0,0) Duel.RegisterEffect(ge0,0)
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -67,6 +68,17 @@ function cm.initial_effect(c) ...@@ -67,6 +68,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
local KOISHI_CHECK=false local KOISHI_CHECK=false
......
...@@ -116,8 +116,9 @@ end ...@@ -116,8 +116,9 @@ end
function cm.efilter(e,te) function cm.efilter(e,te)
if not (te:IsActivated() and te:GetOwnerPlayer()==1-e:GetHandlerPlayer()) then return false end if not (te:IsActivated() and te:GetOwnerPlayer()==1-e:GetHandlerPlayer()) then return false end
local ev=Duel.GetCurrentChain() local ev=Duel.GetCurrentChain()
local sp=te:IsHasCategory(CATEGORY_NEGATE) and Duel.GetChainInfo(ev-1,CHAININFO_TRIGGERING_EFFECT):IsHasType(EFFECT_TYPE_ACTIVATE)
local ex,tg,tc=Duel.GetOperationInfo(ev,CATEGORY_DESTROY) local ex,tg,tc=Duel.GetOperationInfo(ev,CATEGORY_DESTROY)
return not (ex and (tg~=nil or tc>0)) return sp or not (ex and (tg~=nil or tc>0))
end end
function cm.thfilter(c) function cm.thfilter(c)
return c:GetAttack()>0 and (c:IsSetCard(0x10) or c:IsSetCard(0xb5)) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand() return c:GetAttack()>0 and (c:IsSetCard(0x10) or c:IsSetCard(0xb5)) and c:IsType(TYPE_MONSTER) and c:IsAbleToHand()
......
...@@ -55,6 +55,7 @@ function cm.initial_effect(c) ...@@ -55,6 +55,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -67,6 +68,17 @@ function cm.initial_effect(c) ...@@ -67,6 +68,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.handcon(e) function cm.handcon(e)
......
...@@ -55,6 +55,7 @@ function cm.initial_effect(c) ...@@ -55,6 +55,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -67,6 +68,17 @@ function cm.initial_effect(c) ...@@ -67,6 +68,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.handcon(e) function cm.handcon(e)
......
...@@ -55,6 +55,7 @@ function cm.initial_effect(c) ...@@ -55,6 +55,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -67,6 +68,17 @@ function cm.initial_effect(c) ...@@ -67,6 +68,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.handcon(e) function cm.handcon(e)
......
...@@ -55,6 +55,7 @@ function cm.initial_effect(c) ...@@ -55,6 +55,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -67,6 +68,17 @@ function cm.initial_effect(c) ...@@ -67,6 +68,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.handcon(e) function cm.handcon(e)
......
...@@ -55,6 +55,7 @@ function cm.initial_effect(c) ...@@ -55,6 +55,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -67,6 +68,17 @@ function cm.initial_effect(c) ...@@ -67,6 +68,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.handcon(e) function cm.handcon(e)
......
...@@ -55,6 +55,7 @@ function cm.initial_effect(c) ...@@ -55,6 +55,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -67,6 +68,17 @@ function cm.initial_effect(c) ...@@ -67,6 +68,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.handcon(e) function cm.handcon(e)
......
...@@ -53,6 +53,7 @@ function cm.initial_effect(c) ...@@ -53,6 +53,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -65,6 +66,17 @@ function cm.initial_effect(c) ...@@ -65,6 +66,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
local ge1=Effect.CreateEffect(c) local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD) ge1:SetType(EFFECT_TYPE_FIELD)
ge1:SetCode(EFFECT_TRAP_ACT_IN_HAND) ge1:SetCode(EFFECT_TRAP_ACT_IN_HAND)
......
...@@ -55,6 +55,7 @@ function cm.initial_effect(c) ...@@ -55,6 +55,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -67,6 +68,17 @@ function cm.initial_effect(c) ...@@ -67,6 +68,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.actarget(e,te,tp) function cm.actarget(e,te,tp)
......
...@@ -60,6 +60,7 @@ function cm.initial_effect(c) ...@@ -60,6 +60,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -72,6 +73,17 @@ function cm.initial_effect(c) ...@@ -72,6 +73,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.actarget(e,te,tp) function cm.actarget(e,te,tp)
......
...@@ -60,6 +60,7 @@ function cm.initial_effect(c) ...@@ -60,6 +60,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -72,6 +73,17 @@ function cm.initial_effect(c) ...@@ -72,6 +73,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.actarget(e,te,tp) function cm.actarget(e,te,tp)
......
...@@ -58,6 +58,7 @@ function cm.initial_effect(c) ...@@ -58,6 +58,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -70,6 +71,17 @@ function cm.initial_effect(c) ...@@ -70,6 +71,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
local ge1=Effect.CreateEffect(c) local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_CHAINING) ge1:SetCode(EVENT_CHAINING)
...@@ -149,7 +161,7 @@ function cm.clear(e,tp,eg,ep,ev,re,r,rp) ...@@ -149,7 +161,7 @@ function cm.clear(e,tp,eg,ep,ev,re,r,rp)
end end
end end
function cm.costcon(e) function cm.costcon(e)
cm[0]=false cm.costing=false
return true return true
end end
function cm.actarget2(e,te,tp) function cm.actarget2(e,te,tp)
...@@ -162,7 +174,7 @@ end ...@@ -162,7 +174,7 @@ end
function cm.costop2(e,tp,eg,ep,ev,re,r,rp) function cm.costop2(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local te=e:GetLabelObject() local te=e:GetLabelObject()
if cm[0] or CONVIATRESS_BUFF[te] then return end if cm.costing or CONVIATRESS_BUFF[te] then return end
local tg=te:GetTarget() or aux.TRUE local tg=te:GetTarget() or aux.TRUE
local tg2=function(e,tp,eg,ep,ev,re,r,rp,chk,chkc) local tg2=function(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return tg(e,tp,eg,ep,ev,re,r,rp,0,1) end if chkc then return tg(e,tp,eg,ep,ev,re,r,rp,0,1) end
...@@ -229,7 +241,7 @@ function cm.costop2(e,tp,eg,ep,ev,re,r,rp) ...@@ -229,7 +241,7 @@ function cm.costop2(e,tp,eg,ep,ev,re,r,rp)
end end
te:SetTarget(tg2) te:SetTarget(tg2)
CONVIATRESS_BUFF[te]=true CONVIATRESS_BUFF[te]=true
cm[0]=true cm.costing=true
end end
function cm.efilter(e,ct) function cm.efilter(e,ct)
return e:GetLabel()==ct return e:GetLabel()==ct
......
...@@ -34,6 +34,7 @@ function cm.initial_effect(c) ...@@ -34,6 +34,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_FZONE return LOCATION_FZONE
...@@ -46,6 +47,17 @@ function cm.initial_effect(c) ...@@ -46,6 +47,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.rdfilter(c) function cm.rdfilter(c)
......
...@@ -26,6 +26,7 @@ function cm.initial_effect(c) ...@@ -26,6 +26,7 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
if e:GetHandler():IsType(TYPE_FIELD) then return LOCATION_FZONE end if e:GetHandler():IsType(TYPE_FIELD) then return LOCATION_FZONE end
...@@ -39,6 +40,17 @@ function cm.initial_effect(c) ...@@ -39,6 +40,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.matfilter(c) function cm.matfilter(c)
......
...@@ -59,6 +59,7 @@ function cm.initial_effect(c) ...@@ -59,6 +59,7 @@ function cm.initial_effect(c)
Duel.RegisterEffect(ge0,0) Duel.RegisterEffect(ge0,0)
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -71,6 +72,17 @@ function cm.initial_effect(c) ...@@ -71,6 +72,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
local KOISHI_CHECK=false local KOISHI_CHECK=false
......
...@@ -21,6 +21,32 @@ function cm.initial_effect(c) ...@@ -21,6 +21,32 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e)
if e:GetDescription()>=aux.Stringid(m,1) and e:GetDescription()<=aux.Stringid(m,7) then
return LOCATION_SZONE
end
return _GetActivateLocation(e)
end
function Effect.GetActivateSequence(e)
if e:GetDescription()>=aux.Stringid(m,1) and e:GetDescription()<=aux.Stringid(m,7) then
return cm.activate_sequence[e]
end
return _GetActivateSequence(e)
end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and (re:GetDescription()>=aux.Stringid(m,1) and re:GetDescription()<=aux.Stringid(m,7)) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()>=aux.Stringid(m,1) and e:GetDescription()<=aux.Stringid(m,7) then if e:GetDescription()>=aux.Stringid(m,1) and e:GetDescription()<=aux.Stringid(m,7) then
return LOCATION_SZONE return LOCATION_SZONE
...@@ -68,8 +94,9 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -68,8 +94,9 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
local b1=re:IsHasCategory(CATEGORY_NEGATE) local b1=re:IsHasCategory(CATEGORY_NEGATE)
local b2=re:IsHasCategory(CATEGORY_DISABLE) local b2=re:IsHasCategory(CATEGORY_DISABLE)
local sp=re:IsHasCategory(CATEGORY_NEGATE) and Duel.GetChainInfo(ev-1,CHAININFO_TRIGGERING_EFFECT):IsHasType(EFFECT_TYPE_ACTIVATE)
local ex,tg,tc=Duel.GetOperationInfo(ev,CATEGORY_DESTROY) local ex,tg,tc=Duel.GetOperationInfo(ev,CATEGORY_DESTROY)
local b3=(ex and (tg~=nil or tc>0)) local b3=ex and (tg~=nil or tc>0) and not sp
local lab=0 local lab=0
if b1 then lab=lab+1 end if b1 then lab=lab+1 end
if b2 then lab=lab+2 end if b2 then lab=lab+2 end
......
...@@ -53,8 +53,10 @@ function cm.initial_effect(c) ...@@ -53,8 +53,10 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
if e:GetHandler():IsType(TYPE_FIELD) then return LOCATION_FZONE end
return LOCATION_SZONE return LOCATION_SZONE
end end
return _GetActivateLocation(e) return _GetActivateLocation(e)
...@@ -65,6 +67,17 @@ function cm.initial_effect(c) ...@@ -65,6 +67,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
local ge1=Effect.CreateEffect(c) local ge1=Effect.CreateEffect(c)
ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) ge1:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge1:SetCode(EVENT_DESTROYED) ge1:SetCode(EVENT_DESTROYED)
...@@ -145,7 +158,7 @@ function cm.handcon(e) ...@@ -145,7 +158,7 @@ function cm.handcon(e)
return Duel.GetTurnPlayer()==1-e:GetHandlerPlayer() return Duel.GetTurnPlayer()==1-e:GetHandlerPlayer()
end end
function cm.cfilter(c) function cm.cfilter(c)
return c:IsType(TYPE_MONSTER) and not c:IsReason(REASON_DRAW) and not c:IsStatus(STATUS_TO_HAND_WITHOUT_CONFIRM) return c:IsType(TYPE_MONSTER) and not c:IsReason(REASON_DRAW) and (c:IsPublic() or (not c:IsStatus(STATUS_TO_HAND_WITHOUT_CONFIRM) and (c:IsPreviousLocation(LOCATION_DECK) or c:IsPreviousPosition(POS_FACEUP))))
end end
function cm.condition(e,tp,eg,ep,ev,re,r,rp) function cm.condition(e,tp,eg,ep,ev,re,r,rp)
return eg:IsExists(cm.cfilter,1,nil) return eg:IsExists(cm.cfilter,1,nil)
......
...@@ -77,8 +77,10 @@ function cm.initial_effect(c) ...@@ -77,8 +77,10 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) or e:GetDescription()==aux.Stringid(m,1) then if e:GetDescription()==aux.Stringid(m,0) or e:GetDescription()==aux.Stringid(m,1) then
if e:GetHandler():IsType(TYPE_FIELD) then return LOCATION_FZONE end
return LOCATION_SZONE return LOCATION_SZONE
end end
return _GetActivateLocation(e) return _GetActivateLocation(e)
...@@ -89,6 +91,17 @@ function cm.initial_effect(c) ...@@ -89,6 +91,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and (re:GetDescription()==aux.Stringid(m,0) or re:GetDescription()==aux.Stringid(m,1)) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
local ge5=Effect.CreateEffect(c) local ge5=Effect.CreateEffect(c)
ge5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) ge5:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge5:SetCode(EVENT_LEAVE_FIELD) ge5:SetCode(EVENT_LEAVE_FIELD)
......
...@@ -10,6 +10,9 @@ function cm.initial_effect(c) ...@@ -10,6 +10,9 @@ function cm.initial_effect(c)
e1:SetTarget(cm.target) e1:SetTarget(cm.target)
e1:SetOperation(cm.activate) e1:SetOperation(cm.activate)
c:RegisterEffect(e1) c:RegisterEffect(e1)
local e3=e1:Clone()
e3:SetRange(LOCATION_HAND)
--c:RegisterEffect(e3)
local e2=e1:Clone() local e2=e1:Clone()
e2:SetDescription(aux.Stringid(m,0)) e2:SetDescription(aux.Stringid(m,0))
e2:SetRange(LOCATION_DECK) e2:SetRange(LOCATION_DECK)
...@@ -41,8 +44,10 @@ function cm.initial_effect(c) ...@@ -41,8 +44,10 @@ function cm.initial_effect(c)
cm.activate_sequence={} cm.activate_sequence={}
local _GetActivateLocation=Effect.GetActivateLocation local _GetActivateLocation=Effect.GetActivateLocation
local _GetActivateSequence=Effect.GetActivateSequence local _GetActivateSequence=Effect.GetActivateSequence
local _NegateActivation=Duel.NegateActivation
function Effect.GetActivateLocation(e) function Effect.GetActivateLocation(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
if e:GetHandler():IsType(TYPE_FIELD) then return LOCATION_FZONE end
return LOCATION_SZONE return LOCATION_SZONE
end end
return _GetActivateLocation(e) return _GetActivateLocation(e)
...@@ -53,6 +58,17 @@ function cm.initial_effect(c) ...@@ -53,6 +58,17 @@ function cm.initial_effect(c)
end end
return _GetActivateSequence(e) return _GetActivateSequence(e)
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
end end
end end
function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
...@@ -112,7 +128,7 @@ function cm.tdfilter(c) ...@@ -112,7 +128,7 @@ function cm.tdfilter(c)
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then if chk==0 then
return Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_HAND+LOCATION_ONFIELD,0,1,nil) and Duel.IsExistingMatchingCard(cm.tdfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil) and Duel.IsPlayerCanDraw(tp,1) return Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,LOCATION_HAND+LOCATION_ONFIELD,0,1,nil) and Duel.IsExistingMatchingCard(cm.tdfilter,tp,LOCATION_DECK+LOCATION_GRAVE,0,1,nil) and Duel.IsPlayerCanDraw(tp,1) and e:GetHandler():GetFlagEffect(m)==0
end end
end end
function cm.activate(e,tp,eg,ep,ev,re,r,rp) function cm.activate(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -18,6 +18,7 @@ function cm.initial_effect(c) ...@@ -18,6 +18,7 @@ function cm.initial_effect(c)
cm.global_check=true cm.global_check=true
local _IsActiveType=Effect.IsActiveType local _IsActiveType=Effect.IsActiveType
local _GetActiveType=Effect.GetActiveType local _GetActiveType=Effect.GetActiveType
local _NegateActivation=Duel.NegateActivation
local _ChangeChainOperation=Duel.ChangeChainOperation local _ChangeChainOperation=Duel.ChangeChainOperation
function Effect.GetActiveType(e) function Effect.GetActiveType(e)
if e:GetDescription()==aux.Stringid(m,0) then if e:GetDescription()==aux.Stringid(m,0) then
...@@ -29,11 +30,22 @@ function cm.initial_effect(c) ...@@ -29,11 +30,22 @@ function cm.initial_effect(c)
local typ2=e:GetActiveType() local typ2=e:GetActiveType()
return typ&typ2~=0 return typ&typ2~=0
end end
function Duel.NegateActivation(ev)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
local res=_NegateActivation(ev)
if res and aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler()
if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:SetStatus(STATUS_ACTIVATE_DISABLED,true)
end
end
return res
end
function Duel.ChangeChainOperation(ev,...) function Duel.ChangeChainOperation(ev,...)
local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT) local re=Duel.GetChainInfo(ev,CHAININFO_TRIGGERING_EFFECT)
if aux.GetValueType(re)=="Effect" then if aux.GetValueType(re)=="Effect" then
local rc=re:GetHandler() local rc=re:GetHandler()
if rc and rc:IsOnField() and re:GetDescription()==aux.Stringid(m,0) then if rc and rc:IsRelateToEffect(re) and not (rc:IsOnField() and rc:IsFacedown()) and re:GetDescription()==aux.Stringid(m,0) then
rc:CancelToGrave(false) rc:CancelToGrave(false)
end end
end end
......
--新二重 雷霆之怒龙 --新二重 雷霆之怒龙
local s,id,o=GetID() local s,id,o=GetID()
function c21401148.initial_effect(c) function c21401148.initial_effect(c)
s.EnableDualAttribute(c) aux.EnableDualAttribute(c)
--destroy --destroy
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(id,0)) e1:SetDescription(aux.Stringid(id,0))
...@@ -9,15 +9,40 @@ function c21401148.initial_effect(c) ...@@ -9,15 +9,40 @@ function c21401148.initial_effect(c)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetHintTiming(0,TIMING_END_PHASE+TIMINGS_CHECK_MONSTER) e1:SetHintTiming(0,TIMING_END_PHASE+TIMING_EQUIP)
e1:SetRange(LOCATION_MZONE) e1:SetRange(LOCATION_MZONE)
e1:SetCondition(aux.IsDualState) e1:SetCondition(aux.IsDualState)
e1:SetCountLimit(1) e1:SetCountLimit(1)
e1:SetTarget(s.target) e1:SetTarget(s.target)
e1:SetOperation(s.operation) e1:SetOperation(s.operation)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--deck normal type
--把gettype和istype重写,如果c是id,并且在卡组,就返回原本的函数
local ori_GetType = Card.GetType
local ori_IsType = Card.IsType
Card.GetType = function(c)
if c:IsOriginalCodeRule(id) and c:IsLocation(LOCATION_DECK) then
--Debug.Message("gettype")
return TYPE_MONSTER + TYPE_NORMAL
end
return ori_GetType(c)
end
Card.IsType = function(c,type)
if c:IsOriginalCodeRule(id) and type & TYPE_NORMAL and c:IsLocation(LOCATION_DECK) then
if not type==TYPE_NORMAL then
--Debug.Message("istype_cont")
return ori_IsType(c,type~TYPE_NORMAL)
else
--Debug.Message("istype_true")
return true
end
end
return ori_IsType(c,type)
end
end end
function s.EnableDualAttribute(c) function s.EnableDualAttribute(c)
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE) e1:SetType(EFFECT_TYPE_SINGLE)
...@@ -28,15 +53,37 @@ function s.EnableDualAttribute(c) ...@@ -28,15 +53,37 @@ function s.EnableDualAttribute(c)
e2:SetCode(EFFECT_ADD_TYPE) e2:SetCode(EFFECT_ADD_TYPE)
e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE) e2:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE)
e2:SetRange(LOCATION_MZONE+LOCATION_GRAVE+LOCATION_DECK) e2:SetRange(LOCATION_MZONE+LOCATION_GRAVE+LOCATION_DECK)
e2:SetCondition(Auxiliary.DualNormalCondition) e2:SetCondition(aux.TRUE)
e2:SetValue(TYPE_NORMAL) e2:SetValue(TYPE_NORMAL)
c:RegisterEffect(e2) c:RegisterEffect(e2)
local e3=e2:Clone() local e3=e2:Clone()
e3:SetCode(EFFECT_REMOVE_TYPE) e3:SetCode(EFFECT_REMOVE_TYPE)
e3:SetValue(TYPE_EFFECT) e3:SetValue(TYPE_EFFECT)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end
function s.debug(e)
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_ADD_TYPE)
e4:SetProperty(EFFECT_FLAG_SINGLE_RANGE+EFFECT_FLAG_IGNORE_IMMUNE)
e4:SetRange(LOCATION_DECK)
e4:SetValue(TYPE_NORMAL)
e4:SetCondition(s.debug)
c:RegisterEffect(e4)
local e5=e4:Clone()
e5:SetCode(EFFECT_REMOVE_TYPE)
e5:SetValue(TYPE_EFFECT)
c:RegisterEffect(e5)
local c=e:GetHandler()
Debug.Message(c:IsLocation(LOCATION_DECK))
return true
end end
function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function s.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsOnField() end if chkc then return chkc:IsOnField() end
if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end if chk==0 then return Duel.IsExistingTarget(aux.TRUE,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
......
...@@ -9,6 +9,7 @@ function c60152901.initial_effect(c) ...@@ -9,6 +9,7 @@ function c60152901.initial_effect(c)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,60152901) e1:SetCountLimit(1,60152901)
e1:SetCondition(c60152901.e1con) e1:SetCondition(c60152901.e1con)
e1:SetTarget(c60152901.e1tg) e1:SetTarget(c60152901.e1tg)
......
...@@ -9,6 +9,7 @@ function c60152902.initial_effect(c) ...@@ -9,6 +9,7 @@ function c60152902.initial_effect(c)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,60152902) e1:SetCountLimit(1,60152902)
e1:SetCondition(c60152902.e1con) e1:SetCondition(c60152902.e1con)
e1:SetTarget(c60152902.e1tg) e1:SetTarget(c60152902.e1tg)
......
...@@ -9,6 +9,7 @@ function c60152903.initial_effect(c) ...@@ -9,6 +9,7 @@ function c60152903.initial_effect(c)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,60152903) e1:SetCountLimit(1,60152903)
e1:SetCondition(c60152903.e1con) e1:SetCondition(c60152903.e1con)
e1:SetTarget(c60152903.e1tg) e1:SetTarget(c60152903.e1tg)
......
...@@ -9,6 +9,7 @@ function c60152904.initial_effect(c) ...@@ -9,6 +9,7 @@ function c60152904.initial_effect(c)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,60152904) e1:SetCountLimit(1,60152904)
e1:SetCondition(c60152904.e1con) e1:SetCondition(c60152904.e1con)
e1:SetTarget(c60152904.e1tg) e1:SetTarget(c60152904.e1tg)
......
...@@ -9,6 +9,7 @@ function c60152905.initial_effect(c) ...@@ -9,6 +9,7 @@ function c60152905.initial_effect(c)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,60152905) e1:SetCountLimit(1,60152905)
e1:SetCondition(c60152905.e1con) e1:SetCondition(c60152905.e1con)
e1:SetTarget(c60152905.e1tg) e1:SetTarget(c60152905.e1tg)
......
...@@ -9,6 +9,7 @@ function c60152906.initial_effect(c) ...@@ -9,6 +9,7 @@ function c60152906.initial_effect(c)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,60152906) e1:SetCountLimit(1,60152906)
e1:SetCondition(c60152906.e1con) e1:SetCondition(c60152906.e1con)
e1:SetTarget(c60152906.e1tg) e1:SetTarget(c60152906.e1tg)
......
...@@ -9,6 +9,7 @@ function c60152907.initial_effect(c) ...@@ -9,6 +9,7 @@ function c60152907.initial_effect(c)
e1:SetType(EFFECT_TYPE_QUICK_O) e1:SetType(EFFECT_TYPE_QUICK_O)
e1:SetRange(LOCATION_HAND) e1:SetRange(LOCATION_HAND)
e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END) e1:SetHintTiming(0,TIMINGS_CHECK_MONSTER+TIMING_MAIN_END)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,60152907) e1:SetCountLimit(1,60152907)
e1:SetCondition(c60152907.e1con) e1:SetCondition(c60152907.e1con)
e1:SetTarget(c60152907.e1tg) e1:SetTarget(c60152907.e1tg)
......
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