Commit 5fc5d147 authored by POLYMER's avatar POLYMER

fix

parent 666f52e9
......@@ -2687,11 +2687,8 @@ function cm.AllEffectReset(c)
Duel.RegisterFlagEffect(0,53702700,0,0,0)
end
function cm.AllEffectRstop(e,tp,eg,ep,ev,re,r,rp)
--if Duel.GetFlagEffect(0,53702700)>0 then return end
--Duel.RegisterFlagEffect(0,53702700,0,0,0)
local g=Duel.GetMatchingGroup(function(c)return c:GetFlagEffect(53702700)==0 end,0,0xff,0xff,nil)
local g=Duel.GetMatchingGroup(function(c)return c:GetFlagEffect(53702700)==0 and c.initial_effect end,0,0xff,0xff,nil)
if #g==0 then return end
--Debug.Message(99)
local reg=Card.RegisterEffect
local rstg=Duel.GetMatchingGroup(function(c)return c.Snnm_Ef_Rst and c:GetFlagEffect(53702700)==0 end,0,0xff,0xff,nil)
local rstt={}
......@@ -2783,44 +2780,6 @@ function cm.AllEffectRstop(e,tp,eg,ep,ev,re,r,rp)
_G["c"..sc:GetOriginalCode()].pend_effect=se
end
end
--[[if cm.IsInTable(53796005,rstt) then
local cd,et=se:GetCode(),se:GetType()
if (cd==EVENT_SUMMON_SUCCESS or cd==EVENT_FLIP_SUMMON_SUCCESS or cd==EVENT_SPSUMMON_SUCCESS) and et&EFFECT_TYPE_SINGLE and et&(EFFECT_TYPE_TRIGGER_F+EFFECT_TYPE_TRIGGER_O)~=0 then
local ex1=Effect.CreateEffect(sc)
ex1:SetType(EFFECT_TYPE_FIELD)
ex1:SetCode(EFFECT_ACTIVATE_COST)
ex1:SetRange(0xff)
ex1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_PLAYER_TARGET)
ex1:SetTargetRange(1,1)
ex1:SetLabelObject(se)
ex1:SetTarget(function(e,te,tp)return te==e:GetLabelObject()end)
ex1:SetCost(function(e,te,tp)return Duel.GetFlagEffect(0,53796005)==0 end)
sc:RegisterEffect(ex1)
local x=true
if sc:IsHasEffect(53796005) then
for _,i in ipairs{sc:IsHasEffect(53796005)} do
if i:GetOperation()==se:GetOperation() then x=false end
end
end
if x then
local ex2=se:Clone()
ex2:SetCode(EVENT_LEAVE_FIELD)
sc:RegisterEffect(ex2)
local ex3=ex1:Clone()
ex3:SetLabelObject(ex2)
ex3:SetTarget(function(e,te,tp)return te==e:GetLabelObject()end)
ex3:SetCost(function(e,te,tp)return Duel.GetFlagEffect(0,53796005)>0 end)
sc:RegisterEffect(ex3)
local ex4=Effect.CreateEffect(sc)
ex4:SetType(EFFECT_TYPE_SINGLE)
ex4:SetProperty(EFFECT_FLAG_SET_AVAILABLE)
ex4:SetCode(53796005)
ex4:SetRange(0xff)
ex4:SetOperation(se:GetOperation())
sc:RegisterEffect(ex4)
end
end
end--]]
if cm.IsInTable(53799017,rstt) then
if se:GetType()==EFFECT_TYPE_ACTIVATE then
local tg=se:GetTarget()
......@@ -2839,53 +2798,50 @@ function cm.AllEffectRstop(e,tp,eg,ep,ev,re,r,rp)
end
end
end
local e1=Effect.CreateEffect(sc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
e1:SetRange(0xff)
e1:SetCode(53702701)
e1:SetLabelObject(se)
reg(sc,e1,true)
--if se:GetCode()==EFFECT_ADD_TYPE then Debug.Message(sc:GetCode()) end
return reg(sc,se,bool)
end
--[[AD_Avoid_RegisterEffect=Duel.RegisterEffect
Duel.RegisterEffect=function(...)
return
end--]]
--local cscs=g:GetFirst()
for tc in aux.Next(g) do
if tc.initial_effect then
--Debug.Message(tc:GetCode())
local ini=cm.initial_effect
cm.initial_effect=function() end
--if cscs:IsCode(53715006) then Debug.Message(cscs:IsType(TYPE_EFFECT)) end
if tc:GetFlagEffect(53702700)>0 then
local le={tc:IsHasEffect(53702701)}
for _,v in pairs(le) do v:GetLabelObject():Reset() v:Reset() end
else
if tc:GetOriginalType()&0x1~=0 and tc:GetOriginalType()&0x20==0 then
local le1={tc:IsHasEffect(EFFECT_ADD_TYPE)}
tc:ReplaceEffect(m,0)
local le2={tc:IsHasEffect(EFFECT_ADD_TYPE)}
cm.RemoveElements(le1,le2)
for _,v in pairs(le2) do v:Reset() end
else tc:ReplaceEffect(m,0) end
end
--if cscs:IsCode(53715006) then Debug.Message(cscs:IsType(TYPE_EFFECT)) end
cm.initial_effect=ini
tc.initial_effect(tc)
--if cscs:IsCode(53715006) then Debug.Message(cscs:IsType(TYPE_EFFECT)) end
end
end
for tc in aux.Next(g) do cm.ReplaceEffect(tc,tc:GetOriginalCode(),0) end
Card.RegisterEffect=reg
--Duel.RegisterEffect=AD_Avoid_RegisterEffect
if cm.IsInTable(53759012,rstt) then Effect.SetLabelObject=c53759012[1] end
if #helltaker>0 then Effect.SetLabelObject=AD_Helltaker end
Duel.ResetFlagEffect(0,53764007)
g:ForEach(Card.RegisterFlagEffect,53702700,0,0,0)
e:Reset()
end
function cm.ReplaceEffect(c,...)
local proeffects={}
local tempro=Effect.SetProperty
Effect.SetProperty=function(pe,prop1,prop2)
if not prop2 then prop2=0 end
if prop1&EFFECT_FLAG_UNCOPYABLE~=0 then
proeffects[pe]={prop1,prop2}
prop1=prop1&(~EFFECT_FLAG_UNCOPYABLE)
end
return tempro(pe,prop1,prop2)
end
local temclo=Effect.Clone
Effect.Clone=function(ce)
local cle=temclo(ce)
if proeffects[ce] then proeffects[cle]=proeffects[ce] end
return cle
end
local rid=0
if c:GetOriginalType()&0x1~=0 and c:GetOriginalType()&0x20==0 then
local le1={c:IsHasEffect(EFFECT_ADD_TYPE)}
rid=c:ReplaceEffect(...)
local le2={c:IsHasEffect(EFFECT_ADD_TYPE)}
cm.RemoveElements(le1,le2)
for _,v in pairs(le2) do v:Reset() end
else rid=c:ReplaceEffect(...) end
c:SetStatus(STATUS_EFFECT_REPLACED,false)
Effect.SetProperty=tempro
Effect.Clone=temclo
for ke,vp in pairs(proeffects) do
local prop1,prop2=table.unpack(vp)
ke:SetProperty(prop1|EFFECT_FLAG_UNCOPYABLE,prop2)
end
return rid
end
function cm.reni(c,sdes,scat,styp,spro,scod,sran,sct,sht,scon,scos,stg,sop)
if scon==0 then scon=aux.TRUE end
if scos==0 then scos=aux.TRUE end
......@@ -3152,6 +3108,7 @@ function cm.ReturnLock(e,tp,eg,ep,ev,re,r,rp)
end
end
function cm.Intersection(table1, table2)
if type(table1)~="table" or type(table2)~="table" then return false,{} end
local commonElements = {}
local elementsInTable1 = {}
for _, value in ipairs(table1) do
......@@ -3179,24 +3136,19 @@ function cm.Merge(table1, table2)
end
end
function cm.Merged(array1, array2)
local t1 = (type(array1) == "table") and array1 or {}
local t2 = (type(array2) == "table") and array2 or {}
local merged = {}
-- 添加第一个数组的元素到 merged 中
for _, v in ipairs(array1) do
for _, v in ipairs(t1) do
merged[v] = true
end
-- 添加第二个数组的元素到 merged 中
for _, v in ipairs(array2) do
for _, v in ipairs(t2) do
merged[v] = true
end
-- 构建最终的结果数组
local result = {}
for k, _ in pairs(merged) do
table.insert(result, k)
end
return result
end
function cm.Remove(tbl,value)
......@@ -3246,13 +3198,6 @@ function cm.MultiDual(c)
e2:SetOperation(cm.MultiDualCheck)
e2:SetCountLimit(1,EFFECT_COUNT_CODE_DUEL+53753000)
c:RegisterEffect(e2)
--[[local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_SUMMON_COST)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SINGLE_RANGE)
e3:SetRange(LOCATION_MZONE)
e3:SetOperation(cm.MultiDualReset)
c:RegisterEffect(e3)--]]
local e4=Effect.CreateEffect(c)
e4:SetType(EFFECT_TYPE_SINGLE)
e4:SetCode(EFFECT_MULTI_SUMMONABLE)
......
......@@ -6,8 +6,7 @@ cm.downside_code=m+25
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c)
local es=aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
es:SetProperty(es:GetProperty()&(~EFFECT_FLAG_UNCOPYABLE))
aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
c:EnableReviveLimit()
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
......
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729003
local cm=_G["c"..m]
cm.name="心化大贤 祭心"
......@@ -6,7 +8,6 @@ cm.downside_code=m+2
function cm.initial_effect(c)
c:EnableReviveLimit()
local es=aux.AddLinkProcedure(c,cm.matfilter,1,1)
es:SetProperty(es:GetProperty()&(~EFFECT_FLAG_UNCOPYABLE))
es:SetValue(es:GetValue()|SUMMON_VALUE_SELF)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
......@@ -42,7 +43,7 @@ function cm.regop(e,tp,eg,ep,ev,re,r,rp)
local tcode=c.downside_code
Duel.Hint(HINT_CARD,0,m)
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,m+2)
Duel.RaiseEvent(c,EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
end
......
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729005
local cm=_G["c"..m]
cm.name="心化根绝神 阿日阿"
......@@ -9,7 +11,7 @@ function cm.initial_effect(c)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e1:SetCode(EFFECT_SEND_REPLACE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
e1:SetTarget(cm.rtg)
e1:SetValue(function(e,c)return true end)
c:RegisterEffect(e1)
......@@ -47,7 +49,7 @@ function cm.backop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(tp,Group.FromCards(c))
Duel.ConfirmCards(1-tp,Group.FromCards(c))
end
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
if c:IsLocation(LOCATION_HAND) then Duel.ShuffleHand(c:GetControler()) end
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
......@@ -59,7 +61,7 @@ function cm.rtg(e,tp,eg,ep,ev,re,r,rp,chk)
local tcode=c.upside_code
Duel.Hint(HINT_CARD,0,m)
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,m-2)
end
function cm.op(e,tp,eg,ep,ev,re,r,rp)
......@@ -91,7 +93,7 @@ function cm.spop(e,tp,eg,ep,ev,re,r,rp)
local tcode=tc.downside_code
Duel.Hint(HINT_CARD,0,code)
tc:SetEntityCode(tcode,true)
tc:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(tc,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
......
......@@ -6,8 +6,7 @@ cm.downside_code=m+25
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c)
local es=aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
es:SetProperty(es:GetProperty()&(~EFFECT_FLAG_UNCOPYABLE))
aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
c:EnableReviveLimit()
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
......
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729007
local cm=_G["c"..m]
cm.name="心化根绝域神 尼奥阿日阿"
......@@ -135,7 +137,7 @@ function cm.seop(e,tp,eg,ep,ev,re,r,rp)
local tcode=c.downside_code
Duel.Hint(HINT_CARD,0,c:GetOriginalCode())
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
end
......@@ -6,8 +6,7 @@ cm.downside_code=m+25
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c)
local es=aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
es:SetProperty(es:GetProperty()&(~EFFECT_FLAG_UNCOPYABLE))
aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
c:EnableReviveLimit()
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
......
......@@ -6,8 +6,7 @@ cm.downside_code=m+25
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c)
local es=aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
es:SetProperty(es:GetProperty()&(~EFFECT_FLAG_UNCOPYABLE))
aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
c:EnableReviveLimit()
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
......
......@@ -6,8 +6,7 @@ cm.downside_code=m+25
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c)
local es=aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
es:SetProperty(es:GetProperty()&(~EFFECT_FLAG_UNCOPYABLE))
aux.AddLinkProcedure(c,function(c)return c:IsLevelBelow(4) and c:IsLinkRace(RACE_PYRO)end,1,1)
c:EnableReviveLimit()
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
......
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729016
local cm=_G["c"..m]
cm.name="晶栖秘所"
......@@ -43,7 +45,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
local tcode=c.downside_code
Duel.Hint(HINT_CARD,0,m)
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
Duel.RaiseEvent(c,EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
end
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729017
local cm=_G["c"..m]
cm.name="根绝复还"
......@@ -43,7 +45,7 @@ function cm.op(e,tp,eg,ep,ev,re,r,rp)
local tcode=c.upside_code
Duel.Hint(HINT_CARD,0,m)
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
Duel.RaiseEvent(c,EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
end
......
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729026
local cm=_G["c"..m]
cm.name="心化荒魔 吉戈伦"
......@@ -16,7 +18,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EFFECT_SEND_REPLACE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
e2:SetTarget(cm.rtg)
e2:SetValue(function(e,c)return true end)
c:RegisterEffect(e2)
......@@ -38,7 +40,7 @@ function cm.backop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(tp,Group.FromCards(c))
Duel.ConfirmCards(1-tp,Group.FromCards(c))
end
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
if c:IsLocation(LOCATION_HAND) then Duel.ShuffleHand(c:GetControler()) end
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
......@@ -50,7 +52,7 @@ function cm.rtg(e,tp,eg,ep,ev,re,r,rp,chk)
local tcode=c.upside_code
Duel.Hint(HINT_CARD,0,m)
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
end
......
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729031
local cm=_G["c"..m]
cm.name="心化寂魔 翁席恩"
......@@ -21,7 +23,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EFFECT_SEND_REPLACE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
e2:SetTarget(cm.rtg)
e2:SetValue(function(e,c)return true end)
c:RegisterEffect(e2)
......@@ -43,7 +45,7 @@ function cm.backop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(tp,Group.FromCards(c))
Duel.ConfirmCards(1-tp,Group.FromCards(c))
end
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
if c:IsLocation(LOCATION_HAND) then Duel.ShuffleHand(c:GetControler()) end
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
......@@ -55,7 +57,7 @@ function cm.rtg(e,tp,eg,ep,ev,re,r,rp,chk)
local tcode=c.upside_code
Duel.Hint(HINT_CARD,0,m)
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
end
......
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729035
local cm=_G["c"..m]
cm.name="心化焚魔 赫弗诺"
......@@ -24,7 +26,7 @@ function cm.initial_effect(c)
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e3:SetCode(EFFECT_SEND_REPLACE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e3:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
e3:SetTarget(cm.rtg)
e3:SetValue(function(e,c)return true end)
c:RegisterEffect(e3)
......@@ -47,7 +49,7 @@ function cm.backop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(tp,Group.FromCards(c))
Duel.ConfirmCards(1-tp,Group.FromCards(c))
end
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
if c:IsLocation(LOCATION_HAND) then Duel.ShuffleHand(c:GetControler()) end
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
......@@ -59,7 +61,7 @@ function cm.rtg(e,tp,eg,ep,ev,re,r,rp,chk)
local tcode=c.upside_code
Duel.Hint(HINT_CARD,0,m)
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
end
......
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729037
local cm=_G["c"..m]
cm.name="心化洪魔 卡塔斯凯德"
......@@ -21,7 +23,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EFFECT_SEND_REPLACE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
e2:SetTarget(cm.rtg)
e2:SetValue(function(e,c)return true end)
c:RegisterEffect(e2)
......@@ -43,7 +45,7 @@ function cm.backop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(tp,Group.FromCards(c))
Duel.ConfirmCards(1-tp,Group.FromCards(c))
end
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
if c:IsLocation(LOCATION_HAND) then Duel.ShuffleHand(c:GetControler()) end
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
......@@ -55,7 +57,7 @@ function cm.rtg(e,tp,eg,ep,ev,re,r,rp,chk)
local tcode=c.upside_code
Duel.Hint(HINT_CARD,0,m)
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
end
......
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53729039
local cm=_G["c"..m]
cm.name="心化君魔 冬贝司"
cm.upside_code=m-25
cm.downside_code=m
cm.HartrazDownside=true
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
function cm.initial_effect(c)
c:EnableReviveLimit()
local e1=Effect.CreateEffect(c)
......@@ -19,7 +19,7 @@ function cm.initial_effect(c)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_CONTINUOUS)
e2:SetCode(EFFECT_SEND_REPLACE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_SET_AVAILABLE)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_SET_AVAILABLE)
e2:SetTarget(cm.rtg)
e2:SetValue(function(e,c)return true end)
c:RegisterEffect(e2)
......@@ -41,7 +41,7 @@ function cm.backop(e,tp,eg,ep,ev,re,r,rp)
Duel.ConfirmCards(tp,Group.FromCards(c))
Duel.ConfirmCards(1-tp,Group.FromCards(c))
end
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
if c:IsLocation(LOCATION_HAND) then Duel.ShuffleHand(c:GetControler()) end
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
......@@ -60,7 +60,7 @@ function cm.rtg(e,tp,eg,ep,ev,re,r,rp,chk)
local tcode=c.upside_code
Duel.Hint(HINT_CARD,0,m)
c:SetEntityCode(tcode,true)
c:ReplaceEffect(tcode,0,0)
SNNM.ReplaceEffect(c,tcode,0,0)
Duel.Hint(HINT_CARD,0,tcode)
Duel.RaiseEvent(e:GetHandler(),EVENT_ADJUST,nil,0,PLAYER_NONE,PLAYER_NONE,0)
end
if not require and dofile then function require(str) return dofile(str..".lua") end end
if not pcall(function() require("expansions/script/c53702500") end) then require("script/c53702500") end
local m=53796107
local cm=_G["c"..m]
cm.name="侵入魔鬼指令"
......@@ -138,15 +140,7 @@ function cm.start(e,tp,eg,ep,ev,re,r,rp)
end
return cm[7](tc,e,f)
end
for tc in aux.Next(g1) do
if tc.initial_effect then
local ini=cm.initial_effect
cm.initial_effect=function() end
tc:ReplaceEffect(m,0)
cm.initial_effect=ini
tc.initial_effect(tc)
end
end
for tc in aux.Next(g1) do cm.ReplaceEffect(tc,tc:GetOriginalCode(),0) end
Card.RegisterEffect=cm[7]
local g2=Duel.GetMatchingGroup(Card.IsOriginalCodeRule,0,0xff,0xff,nil,22009013,62007535,84488827,85505315)
for tc in aux.Next(g2) do
......
......@@ -151,26 +151,9 @@ function s.spsummon(tc,tp)
local op=se:GetOperation()
se:SetCondition(s.rcon(con,cost,tg,op))
end
local e2=Effect.CreateEffect(sc)
e2:SetType(EFFECT_TYPE_SINGLE)
e2:SetProperty(EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_CANNOT_DISABLE)
e2:SetRange(0xff)
e2:SetCode(id+500)
e2:SetLabelObject(se)
reg(sc,e2,true)
return reg(sc,se,bool)
end
if tc.initial_effect then
local ini=s.initial_effect
s.initial_effect=function() end
if tc:GetFlagEffect(53702700)>0 then
local le={tc:IsHasEffect(id+500)}
for _,v in pairs(le) do v:GetLabelObject():Reset() v:Reset() end
else tc:ReplaceEffect(id,0) end
s.initial_effect=ini
tc.initial_effect(tc)
tc:RegisterFlagEffect(53702700,0,0,0)
end
if tc.initial_effect then s.ReplaceEffect(tc,tc:GetOriginalCode(),0) end
Card.RegisterEffect=reg
return Duel.SpecialSummon(tc,0,tp,tp,false,false,POS_FACEUP)
end
......@@ -249,27 +249,8 @@ function s.geop(e,tp,eg,ep,ev,re,r,rp)
local res=f(tc,te,bool)
local con=te:GetCondition()
if con then te:SetCondition(s.con(con)) end
local e1=Effect.CreateEffect(tc)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_SET_AVAILABLE+EFFECT_FLAG_CANNOT_DISABLE)
e1:SetRange(0xff)
e1:SetCode(id+500)
e1:SetLabelObject(te)
f(tc,e1,true)
return f(tc,te,bool)
end
for tc in aux.Next(cg) do
if tc.initial_effect then
local ini=s.initial_effect
s.initial_effect=function() end
if tc:GetFlagEffect(53702700)>0 then
local le={tc:IsHasEffect(id+500)}
for _,v in pairs(le) do v:GetLabelObject():Reset() v:Reset() end
else tc:ReplaceEffect(id,0) end
s.initial_effect=ini
tc.initial_effect(tc)
tc:RegisterFlagEffect(53702700,0,0,0)
end
end
for tc in aux.Next(cg) do cm.ReplaceEffect(tc,tc:GetOriginalCode(),0) end
Card.RegisterEffect=f
end
......@@ -23,7 +23,9 @@ function s.initial_effect(c)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,0)
end
return f1(p,tg,tp,bool)
local res=0
if tp then res=f1(p,tg,tp,bool) else res=f1(p,tg) end
return res
end
end
end
......
......@@ -17,17 +17,16 @@ function cm.initial_effect(c)
e1:SetOperation(cm.actop)
e1:SetLabelObject(e0)
c:RegisterEffect(e1)
if not cm.global_check then
cm.global_check=true
local ge2=Effect.CreateEffect(c)
ge2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge2:SetCode(EVENT_FREE_CHAIN)
ge2:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_IMMUNE)
ge2:SetCondition(cm.hspcon)
ge2:SetOperation(cm.hspop)
ge2:SetLabelObject(e0)
Duel.RegisterEffect(ge2,0)
end
local ge2=Effect.CreateEffect(c)
ge2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
ge2:SetCode(EVENT_FREE_CHAIN)
ge2:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_IMMUNE)
ge2:SetCondition(cm.hspcon)
ge2:SetOperation(cm.hspop)
ge2:SetLabelObject(e0)
Duel.RegisterEffect(ge2,0)
local ge3=ge2:Clone()
Duel.RegisterEffect(ge3,1)
--atk up
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
......@@ -153,7 +152,7 @@ function cm.desactivate(e,tp,eg,ep,ev,re,r,rp)
e1:SetValue(TYPE_SPELL+TYPE_CONTINUOUS)
sc:RegisterEffect(e1,true)
--if #c==0 then return end
Duel.RaiseEvent(c,EVENT_SPSUMMON_SUCCESS_G_P,e,REASON_EFFECT,tp,tp,0)
--Duel.RaiseEvent(c,EVENT_SPSUMMON_SUCCESS_G_P,e,REASON_EFFECT,tp,tp,0)
Duel.SpecialSummon(c,0,tp,tp,true,true,POS_FACEUP,c:GetColumnZone(LOCATION_MZONE,tp))
c:CompleteProcedure()
end
......
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