Commit 323d73f7 authored by nanahira's avatar nanahira

use getmetatable instead of _G

parent 714f3700
...@@ -1015,8 +1015,7 @@ function Auxiliary.AddFusionProcMix(c,sub,insf,...) ...@@ -1015,8 +1015,7 @@ function Auxiliary.AddFusionProcMix(c,sub,insf,...)
end end
end end
if #mat>0 and c.material_count==nil then if #mat>0 and c.material_count==nil then
local code=c:GetOriginalCode() local mt=getmetatable(c)
local mt=_G["c" .. code]
mt.material_count=#mat mt.material_count=#mat
mt.material=mat mt.material=mat
end end
...@@ -1126,8 +1125,7 @@ function Auxiliary.AddFusionProcMixRep(c,sub,insf,fun1,minc,maxc,...) ...@@ -1126,8 +1125,7 @@ function Auxiliary.AddFusionProcMixRep(c,sub,insf,fun1,minc,maxc,...)
end end
end end
if #mat>0 and c.material_count==nil then if #mat>0 and c.material_count==nil then
local code=c:GetOriginalCode() local mt=getmetatable(c)
local mt=_G["c" .. code]
mt.material_count=#mat mt.material_count=#mat
mt.material=mat mt.material=mat
end end
...@@ -1309,8 +1307,7 @@ function Auxiliary.AddFusionProcCodeRep(c,code1,cc,sub,insf) ...@@ -1309,8 +1307,7 @@ function Auxiliary.AddFusionProcCodeRep(c,code1,cc,sub,insf)
code[i]=code1 code[i]=code1
end end
if c.material_count==nil then if c.material_count==nil then
local code=c:GetOriginalCode() local mt=getmetatable(c)
local mt=_G["c" .. code]
mt.material_count=1 mt.material_count=1
mt.material={code1} mt.material={code1}
end end
...@@ -1513,8 +1510,7 @@ function Auxiliary.RPGOperation(filter) ...@@ -1513,8 +1510,7 @@ function Auxiliary.RPGOperation(filter)
end end
function Auxiliary.AddRitualProcGreaterCode(c,code1) function Auxiliary.AddRitualProcGreaterCode(c,code1)
if not c:IsStatus(STATUS_COPYING_EFFECT) and c.fit_monster==nil then if not c:IsStatus(STATUS_COPYING_EFFECT) and c.fit_monster==nil then
local code=c:GetOriginalCode() local mt=getmetatable(c)
local mt=_G["c" .. code]
mt.fit_monster={code1} mt.fit_monster={code1}
end end
Auxiliary.AddRitualProcGreater(c,Auxiliary.FilterBoolFunction(Card.IsCode,code1)) Auxiliary.AddRitualProcGreater(c,Auxiliary.FilterBoolFunction(Card.IsCode,code1))
...@@ -1585,8 +1581,7 @@ function Auxiliary.RPEOperation(filter) ...@@ -1585,8 +1581,7 @@ function Auxiliary.RPEOperation(filter)
end end
function Auxiliary.AddRitualProcEqualCode(c,code1) function Auxiliary.AddRitualProcEqualCode(c,code1)
if not c:IsStatus(STATUS_COPYING_EFFECT) and c.fit_monster==nil then if not c:IsStatus(STATUS_COPYING_EFFECT) and c.fit_monster==nil then
local code=c:GetOriginalCode() local mt=getmetatable(c)
local mt=_G["c" .. code]
mt.fit_monster={code1} mt.fit_monster={code1}
end end
Auxiliary.AddRitualProcEqual(c,Auxiliary.FilterBoolFunction(Card.IsCode,code1)) Auxiliary.AddRitualProcEqual(c,Auxiliary.FilterBoolFunction(Card.IsCode,code1))
...@@ -1657,16 +1652,14 @@ function Auxiliary.RPEOperation2(filter) ...@@ -1657,16 +1652,14 @@ function Auxiliary.RPEOperation2(filter)
end end
function Auxiliary.AddRitualProcEqual2Code(c,code1) function Auxiliary.AddRitualProcEqual2Code(c,code1)
if not c:IsStatus(STATUS_COPYING_EFFECT) and c.fit_monster==nil then if not c:IsStatus(STATUS_COPYING_EFFECT) and c.fit_monster==nil then
local code=c:GetOriginalCode() local mt=getmetatable(c)
local mt=_G["c" .. code]
mt.fit_monster={code1} mt.fit_monster={code1}
end end
Auxiliary.AddRitualProcEqual2(c,Auxiliary.FilterBoolFunction(Card.IsCode,code1)) Auxiliary.AddRitualProcEqual2(c,Auxiliary.FilterBoolFunction(Card.IsCode,code1))
end end
function Auxiliary.AddRitualProcEqual2Code2(c,code1,code2) function Auxiliary.AddRitualProcEqual2Code2(c,code1,code2)
if not c:IsStatus(STATUS_COPYING_EFFECT) and c.fit_monster==nil then if not c:IsStatus(STATUS_COPYING_EFFECT) and c.fit_monster==nil then
local code=c:GetOriginalCode() local mt=getmetatable(c)
local mt=_G["c" .. code]
mt.fit_monster={code1,code2} mt.fit_monster={code1,code2}
end end
Auxiliary.AddRitualProcEqual2(c,Auxiliary.FilterBoolFunction(Card.IsCode,code1,code2)) Auxiliary.AddRitualProcEqual2(c,Auxiliary.FilterBoolFunction(Card.IsCode,code1,code2))
...@@ -1796,8 +1789,7 @@ end ...@@ -1796,8 +1789,7 @@ end
function Auxiliary.EnableReviveLimitPendulumSummonable(c, loc) function Auxiliary.EnableReviveLimitPendulumSummonable(c, loc)
if c:IsStatus(STATUS_COPYING_EFFECT) then return end if c:IsStatus(STATUS_COPYING_EFFECT) then return end
c:EnableReviveLimit() c:EnableReviveLimit()
local code=c:GetOriginalCode() local mt=getmetatable(c)
local mt=_G["c" .. code]
if loc==nil then loc=0xff end if loc==nil then loc=0xff end
mt.psummonable_location=loc mt.psummonable_location=loc
--complete procedure on pendulum summon success --complete procedure on pendulum summon success
......
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