Commit e1488f56 authored by Nemo Ma's avatar Nemo Ma

fix

parent 0a0f3645
No preview for this file type
This diff is collapsed.
--Real Scl Version - Variable --Real Scl Version - Variable
local Version_Number=20200409 local Version_Number=20200218
local m=10199990 local m=10199990
local vm=10199991 local vm=10199991
rsv={} --"Base Function" rsv={} --"Base Function"
...@@ -21,18 +21,11 @@ rsreset={} --"Reset Function" ...@@ -21,18 +21,11 @@ rsreset={} --"Reset Function"
rshint={} --"Hint Function" rshint={} --"Hint Function"
rsloc={} --"Location Function" rsloc={} --"Location Function"
rsdv="Divide_Variable"
--Info Variable --Info Variable
rsval.valinfo ={} --"Value for inside series, inside type etc." rsef.valinfo ={} --"Value for inside series, inside type etc."
rscost.costinfo ={} --"Cost information, for record cost value" rscost.costinfo ={} --"Cost information, for record cost value"
rsop.opinfo={} --"Operation information, for record something" rsef.targetlist ={} --"Target group list, for rstg.GetTargetAttribute"
rsef.relationinfo={} --"Field,Pendulum,Continous leave field" rsef.attachinfo ={} --"Effect information for attach effects"
rstg.targetlist ={} --"Target group list, for rstg.GetTargetAttribute"
rsef.attacheffect ={} --"Effect information for attach effects"
rsef.attacheffectf ={}
rsef.solveeffect ={}
rsop.baseop={}
rscf.synchro_material_action={} --"Custom syn material's action" rscf.synchro_material_action={} --"Custom syn material's action"
rscf.xyz_material_action={} --"Custom xyz material's action" rscf.xyz_material_action={} --"Custom xyz material's action"
...@@ -58,17 +51,14 @@ rsreset.est_pend= rsreset.est + rsreset.pend ...@@ -58,17 +51,14 @@ rsreset.est_pend= rsreset.est + rsreset.pend
rsreset.ered = RESET_EVENT+RESETS_REDIRECT rsreset.ered = RESET_EVENT+RESETS_REDIRECT
--Code Variable --Code Variable
rscode.Extra_Effect_Activate = m+100 --"Attach Effect" rscode.Extra_Effect = m+100 --"Attach Effect"
rscode.Extra_Effect_BSolve = m+200 rscode.Extra_Effect_FORCE= m+200 --"Attach Effect,Force"
rscode.Extra_Effect_ASolve = m+800 rscode.Summon_Flag = m+300 --"Summon Flag for SummonBuff"
rscode.Phase_Leave_Flag = m+300 --"Summon Flag for SummonBuff"
rscode.Extra_Synchro_Material= m+400 --"Extra Synchro Material" rscode.Extra_Synchro_Material= m+400 --"Extra Synchro Material"
rscode.Extra_Xyz_Material = m+401 --"Extra Xyz Material" rscode.Extra_Xyz_Material = m+401 --"Extra Xyz Material"
rscode.Utility_Xyz_Material = m+500 --"Utility Xyz Material" rscode.Utility_Xyz_Material = m+500 --"Utility Xyz Material"
rscode.Previous_Set_Code = m+600 --"Previous Set Code" rscode.Previous_Set_Code = m+600 --"Previous Set Code"
rscode.Synchro_Material = m+700 --"Record synchro proceudre target" rscode.Synchro_Material = m+700 --"Record synchro proceudre target"
rscode.Pre_Complete_Proc = m+900 --"Previous c:CompleteProcedure"
--Hint Message Variable --Hint Message Variable
rshint.act=aux.Stringid(m,0) --"activate spell/trap" rshint.act=aux.Stringid(m,0) --"activate spell/trap"
...@@ -79,22 +69,19 @@ rshint.spproc=aux.Stringid(m,4) --"SS by self produce" ...@@ -79,22 +69,19 @@ rshint.spproc=aux.Stringid(m,4) --"SS by self produce"
rshint.negeffect=aux.Stringid(19502505,1) --"negate activation" rshint.negeffect=aux.Stringid(19502505,1) --"negate activation"
rshint.eq=aux.Stringid(68184115,0) --"cards will equip" rshint.eq=aux.Stringid(68184115,0) --"cards will equip"
rshint.te=aux.Stringid(24094258,3) --"add to extra deck" rshint.te=aux.Stringid(24094258,3) --"add to extra deck"
rshint.xyz=HINTMSG_XMATERIAL --"cards will become overlay cards" rshint.xyz=HINTMSG_XMATERIAL --"cards will be overlay cards"
rshint.diseffect=aux.Stringid(39185163,1) --"negate effect" rshint.diseffect=aux.Stringid(39185163,1) --"negate effect"
rshint.negsum=aux.Stringid(m+1,1) --"negate summon" rshint.negsum=aux.Stringid(m+1,1) --"negate summon"
rshint.negsp=aux.Stringid(74892653,0) --"negate special summon" rshint.negsp=aux.Stringid(74892653,0) --"negate special summon"
rshint.darktuner=aux.Stringid(m,14) --"treat as dark tuner" rshint.darktuner=aux.Stringid(m,14) --"treat as dark tuner"
rshint.darksynchro=aux.Stringid(m,15) --"treat as dark synchro" rshint.darksynchro=aux.Stringid(m,15) --"treat as dark synchro"
rshint.choose=aux.Stringid(23912837,1) --"choose 1 effect" rshint.choose=aux.Stringid(23912837,1) --"choose 1 effect"
rshint.epleave=aux.Stringid(m,3) --"end phase leave field"
rshint.finshcopy=aux.Stringid(43387895,1) --"reset copy effect"
--Property Variable --Property Variable
rsflag.flaglist = { EFFECT_FLAG_CARD_TARGET,EFFECT_FLAG_PLAYER_TARGET,EFFECT_FLAG_DELAY,EFFECT_FLAG_DAMAGE_STEP,EFFECT_FLAG_DAMAGE_CAL, rsflag.flaglist = { EFFECT_FLAG_CARD_TARGET,EFFECT_FLAG_PLAYER_TARGET,EFFECT_FLAG_DELAY,EFFECT_FLAG_DAMAGE_STEP,EFFECT_FLAG_DAMAGE_CAL,
EFFECT_FLAG_IGNORE_IMMUNE,EFFECT_FLAG_SET_AVAILABLE,EFFECT_FLAG_IGNORE_RANGE,EFFECT_FLAG_SINGLE_RANGE,EFFECT_FLAG_BOTH_SIDE, EFFECT_FLAG_IGNORE_IMMUNE,EFFECT_FLAG_SET_AVAILABLE,EFFECT_FLAG_IGNORE_RANGE,EFFECT_FLAG_SINGLE_RANGE,EFFECT_FLAG_BOTH_SIDE,
EFFECT_FLAG_UNCOPYABLE,EFFECT_FLAG_CANNOT_DISABLE,EFFECT_FLAG_CANNOT_NEGATE,EFFECT_FLAG_CLIENT_HINT,EFFECT_FLAG_LIMIT_ZONE, EFFECT_FLAG_UNCOPYABLE,EFFECT_FLAG_CANNOT_DISABLE,EFFECT_FLAG_CANNOT_NEGATE,EFFECT_FLAG_CLIENT_HINT,EFFECT_FLAG_LIMIT_ZONE,
EFFECT_FLAG_ABSOLUTE_TARGET,EFFECT_FLAG_SPSUM_PARAM, EFFECT_FLAG_ABSOLUTE_TARGET,EFFECT_FLAG_SPSUM_PARAM }
EFFECT_FLAG_EVENT_PLAYER }
rsflag.tg_d = EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY rsflag.tg_d = EFFECT_FLAG_CARD_TARGET+EFFECT_FLAG_DELAY
rsflag.dsp_d = EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY rsflag.dsp_d = EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_DELAY
rsflag.dsp_tg = EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_CARD_TARGET rsflag.dsp_tg = EFFECT_FLAG_DAMAGE_STEP+EFFECT_FLAG_CARD_TARGET
...@@ -116,34 +103,22 @@ rscate.neg_des = CATEGORY_NEGATE+CATEGORY_DESTROY ...@@ -116,34 +103,22 @@ rscate.neg_des = CATEGORY_NEGATE+CATEGORY_DESTROY
rscf.typelist = { TYPE_MONSTER,TYPE_NORMAL,TYPE_EFFECT,TYPE_DUAL,TYPE_UNION,TYPE_TOON,TYPE_TUNER,TYPE_RITUAL,TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK,TYPE_TOKEN,TYPE_PENDULUM,TYPE_SPSUMMON,TYPE_FLIP,TYPE_SPIRIT, rscf.typelist = { TYPE_MONSTER,TYPE_NORMAL,TYPE_EFFECT,TYPE_DUAL,TYPE_UNION,TYPE_TOON,TYPE_TUNER,TYPE_RITUAL,TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK,TYPE_TOKEN,TYPE_PENDULUM,TYPE_SPSUMMON,TYPE_FLIP,TYPE_SPIRIT,
TYPE_SPELL,TYPE_EQUIP,TYPE_FIELD,TYPE_CONTINUOUS,TYPE_QUICKPLAY, TYPE_SPELL,TYPE_EQUIP,TYPE_FIELD,TYPE_CONTINUOUS,TYPE_QUICKPLAY,
TYPE_TRAP,TYPE_COUNTER,TYPE_TRAPMONSTER } TYPE_TRAP,TYPE_COUNTER,TYPE_TRAPMONSTER }
rscf.extype = TYPE_FUSION+TYPE_SYNCHRO+TYPE_XYZ+TYPE_LINK rscf.extype = TYPE_FUSION+TYPE_SYNCHRO+TYPE_XYZ+TYPE_PENDULUM+TYPE_LINK
rscf.extype_r = rscf.extype + TYPE_RITUAL rscf.extype_r = rscf.extype + TYPE_RITUAL
rscf.extype_p = rscf.extype + TYPE_PENDULUM rscf.extype_np = rscf.extype - TYPE_PENDULUM
rscf.extype_rp = rscf.extype + TYPE_RITUAL + TYPE_PENDULUM
rscf.exlist = { TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK } rscf.exlist = { TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK }
rscf.exlist_r = { TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK,TYPE_RITUAL }
rscf.exlist_p = { TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK,TYPE_PENDULUM }
rscf.exlist_rp = { TYPE_FUSION,TYPE_SYNCHRO,TYPE_XYZ,TYPE_LINK,TYPE_PENDULUM,TYPE_RITUAL }
--Location Variable --Location Variable
rsloc.hd=LOCATION_HAND+LOCATION_DECK rsloc.hd=LOCATION_HAND+LOCATION_DECK
rsloc.ho=LOCATION_HAND+LOCATION_ONFIELD
rsloc.hg=LOCATION_HAND+LOCATION_GRAVE
rsloc.dg=LOCATION_DECK+LOCATION_GRAVE rsloc.dg=LOCATION_DECK+LOCATION_GRAVE
rsloc.gr=LOCATION_GRAVE+LOCATION_REMOVED rsloc.gr=LOCATION_GRAVE+LOCATION_REMOVED
rsloc.dgr=LOCATION_DECK+LOCATION_GRAVE+LOCATION_REMOVED
rsloc.hdg=LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE rsloc.hdg=LOCATION_HAND+LOCATION_DECK+LOCATION_GRAVE
rsloc.de=LOCATION_DECK+LOCATION_EXTRA rsloc.de=LOCATION_DECK+LOCATION_EXTRA
rsloc.mg=LOCATION_MZONE+LOCATION_GRAVE
rsloc.og=LOCATION_ONFIELD+LOCATION_GRAVE
rsloc.hmg=LOCATION_HAND+LOCATION_MZONE+LOCATION_GRAVE
rsloc.hog=LOCATION_HAND+LOCATION_ONFIELD+LOCATION_GRAVE
rsloc.all=0xff rsloc.all=0xff
--Escape Old Functions --Escape Old Functions
function rsof.Escape_Old_Functions() function rsof.Escape_Old_Functions()
rsof.DefineCard = rscf.DefineCard rsof.DefineCard = rscf.DefineCard
rscf.FilterFaceUp = rscf.fufilter
rsof.SendtoHand = rsop.SendtoHand rsof.SendtoHand = rsop.SendtoHand
rsof.SendtoDeck = rsop.SendtoDeck rsof.SendtoDeck = rsop.SendtoDeck
rsof.SendtoGrave = rsop.SendtoGrave rsof.SendtoGrave = rsop.SendtoGrave
...@@ -154,35 +129,7 @@ function rsof.Escape_Old_Functions() ...@@ -154,35 +129,7 @@ function rsof.Escape_Old_Functions()
rsof.SelectOption_Page= rsop.SelectOption_Page rsof.SelectOption_Page= rsop.SelectOption_Page
rsof.SelectNumber= rsop.AnnounceNumber rsof.SelectNumber= rsop.AnnounceNumber
rsof.SelectNumber_List= rsop.AnnounceNumber_List rsof.SelectNumber_List= rsop.AnnounceNumber_List
rsof.IsSet = rscf.DefineSet rsof.IsSet = rscf.DefineSet
--some card use old SummonBuff's phase leave field parterment, must fix them in their luas
rssf.SummonBuff=function(attlist,isdis,isdistig,selfleave,phaseleave)
local bufflist={}
if attlist then
for index,par in pairs(attlist) do
if par then
if index==1 then att="atkf" end
if index==2 then att="deff" end
if index==3 then att="lv" end
table.insert(bufflist,att)
table.insert(bufflist,par)
end
end
end
if isdis then
table.insert(bufflist,"dis,dise")
table.insert(bufflist,true)
end
if isdistig then
table.insert(bufflist,"tri")
table.insert(bufflist,true)
end
if selfleave then
table.insert(bufflist,"leave")
table.insert(bufflist,selfleave)
end
return bufflist
end
end end
--Record Author --Record Author
local am=10199992 local am=10199992
local Version_Number=20200323 local Version_Number=20200310
#Scl #Scl
local rsdka = Dakyria local rsdka = Dakyria
local rsdio = Diablo local rsdio = Diablo
...@@ -13,8 +13,6 @@ local rssp = Stellar_Pearl ...@@ -13,8 +13,6 @@ local rssp = Stellar_Pearl
//local rsgd = Ghostdom_Dragon //local rsgd = Ghostdom_Dragon
local rsed = Epic_Dragon local rsed = Epic_Dragon
local rsdh = Devil_Hunter local rsdh = Devil_Hunter
local rsds = Dark_Souls
local rsca = Corona
#Scl - Special Mode #Scl - Special Mode
local rssm = Special_Mode local rssm = Special_Mode
...@@ -27,18 +25,18 @@ local rssmf = Special_Mode_Fast_Duel ...@@ -27,18 +25,18 @@ local rssmf = Special_Mode_Fast_Duel
local rssmm = Special_Mode_Multiple_Duel local rssmm = Special_Mode_Multiple_Duel
local rssmu = Special_Mode_Universal_Duel local rssmu = Special_Mode_Universal_Duel
#Gale 1472676207 #Gale
local rsve = Voison local rsve = Voison
local rsneov= Neons local rsneov= Neons
local tfrsv = T.Fairies local tfrsv = T.Fairies
local rsss = Star_Spirit local rsss = Star_Spirit
#ChiJiang 626386490 #ChiJiang
local rsnm = Nightmare local rsnm = Nightmare
local rslf = Little_Fox local rslf = Little_Fox
local rccv = Thermonuclear local rccv = Thermonuclear
#XiaoMi 643865567 #XiaoMi
local rssg = Sex_Gun local rssg = Sex_Gun
local rsps = Pseudo_Soul local rsps = Pseudo_Soul
local rsdcc = Dragon_Chess_Corps local rsdcc = Dragon_Chess_Corps
...@@ -52,43 +50,29 @@ local rsvw = Virus_Wrom ...@@ -52,43 +50,29 @@ local rsvw = Virus_Wrom
local rsia = Indolent_Angel local rsia = Indolent_Angel
local rsso = Simulated_Organism local rsso = Simulated_Organism
#NianBao 583322404 #NianBao
local rslap = Lapin local rslap = Lapin
local rskh = Karehana
#XiaoDaoHeng 1614895649 #XiaoDaoHeng
local rslrd = Life_DeathRound_Dance local rslrd = Life_DeathRound_Dance
#Huang 1184387005 #Huang
local rsts = Trinity_Sword local rsts = Trinity_Sword
#Luoxing 1151483512 #Luoxing
local rsdt = Dark_Tale local rsdt = Dark_Tale
local rsod = Order local rsod = Order
#YunZeZhun 1587361112 #YunZeZhun
local rsphh = Phantom_Thieves_Of_Hearts local rsphh = Phantom_Thieves_Of_Hearts
local rsgc = Guard_City local rsgc = Guard_City
#ZhenDong #ZhenDong
local rsfv = Fgo/Assassin local rsfv = Fgo/Assassin
#JingJing 1772438857 #JingJing
local rsba = BlueAngel local rsba = BlueAngel
#Akashic 3204027606
local rszg = Zogu
local rsgs = Gran_Sphere
local rsoc = Oligocene_Civilization
local rsgol = Giant_of_Light
local rssb = Space_Beasts
#HeiBai 1172777968
local rstm = Toaru_Majutsu_no_Index
#2558566212
local rsgod = God
--Set Code --Set Code
#Scl #Scl
--local = 0x1330 --local = 0x1330
...@@ -124,7 +108,7 @@ local Stellar_Pearl = 0xa333 ...@@ -124,7 +108,7 @@ local Stellar_Pearl = 0xa333
local Utoland = 0xc333 local Utoland = 0xc333
--local = 0x1334 --local = 0x1334
local = 0x3334 local = 0x3334
local Summerlover = 0x5334 local Summerlover = 0x5334
local Quasi_Beast = 0x6334 local Quasi_Beast = 0x6334
local Bite_Teech = 0x9334 local Bite_Teech = 0x9334
...@@ -135,9 +119,9 @@ local = 0xc334 ...@@ -135,9 +119,9 @@ local = 0xc334
local Oraclesmith = 0x3335 local Oraclesmith = 0x3335
local DevilHunter = 0x5335 local DevilHunter = 0x5335
local DevilSlayer = 0x6335 local DevilSlayer = 0x6335
local DMC = 0x9335 local = 0x9335
local Ashenone = 0xa335 local = 0xa335
local Cinderlord = 0xc335 local = 0xc335
--local = 0x1336 --local = 0x1336
local = 0x3336 local = 0x3336
......
...@@ -22,6 +22,7 @@ function c114707556.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -22,6 +22,7 @@ function c114707556.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_PZONE,LOCATION_PZONE)>0 end if chk==0 then return Duel.GetFieldGroupCount(tp,LOCATION_PZONE,LOCATION_PZONE)>0 end
local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,LOCATION_PZONE) local g=Duel.GetFieldGroup(tp,LOCATION_PZONE,LOCATION_PZONE)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0) Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
Duel.SetOperationInfo(0,CATEGORY_TOGRAVE,nil,1,tp,LOCATION_DECK)
end end
function c114707556.thfilter1(c) function c114707556.thfilter1(c)
return c:IsSetCard(0xc6) and c:IsType(TYPE_MONSTER) and c:IsAbleToGrave() return c:IsSetCard(0xc6) and c:IsType(TYPE_MONSTER) and c:IsAbleToGrave()
......
...@@ -95,11 +95,11 @@ function cm.lvop(e,tp,eg,ep,ev,re,r,rp) ...@@ -95,11 +95,11 @@ function cm.lvop(e,tp,eg,ep,ev,re,r,rp)
Duel.RegisterEffect(e2,tp) Duel.RegisterEffect(e2,tp)
end end
end end
function cmcfilter(c) function cm.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0x79) and c:IsType(TYPE_SYNCHRO) return c:IsFaceup() and c:IsSetCard(0x79) and c:IsType(TYPE_SYNCHRO)
end end
function cm.condition1(e,tp,eg,ep,ev,re,r,rp) function cm.condition1(e,tp,eg,ep,ev,re,r,rp)
return Duel.IsExistingMatchingCard(cmcfilter,tp,LOCATION_MZONE,0,1,nil) return Duel.IsExistingMatchingCard(cm.cfilter,tp,LOCATION_MZONE,0,1,nil)
end end
function cm.desfilter(c) function cm.desfilter(c)
return c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToGrave() return c:IsType(TYPE_SPELL+TYPE_TRAP) and c:IsAbleToGrave()
...@@ -108,9 +108,9 @@ function cm.handes(e,tp,eg,ep,ev,re,r,rp) ...@@ -108,9 +108,9 @@ function cm.handes(e,tp,eg,ep,ev,re,r,rp)
local id=Duel.GetChainInfo(ev,CHAININFO_CHAIN_ID) local id=Duel.GetChainInfo(ev,CHAININFO_CHAIN_ID)
if ep==tp or id==cm[0] or not re:IsActiveType(TYPE_MONSTER) then return end if ep==tp or id==cm[0] or not re:IsActiveType(TYPE_MONSTER) then return end
cm[0]=id cm[0]=id
if Duel.IsExistingMatchingCard(cm.desfilter,1-tp,LOCATION_HAND+LOCATION_SZONE,0,1,nil) and Duel.SelectYesNo(1-tp,aux.Stringid(m,3)) then if Duel.IsExistingMatchingCard(cm.desfilter,1-tp,LOCATION_HAND+LOCATION_ONFIELD,0,1,nil) and Duel.SelectYesNo(1-tp,aux.Stringid(m,3)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local g=Duel.SelectMatchingCard(1-tp,cm.desfilter,1-tp,LOCATION_HAND+LOCATION_SZONE,0,1,1,nil) local g=Duel.SelectMatchingCard(1-tp,cm.desfilter,1-tp,LOCATION_HAND+LOCATION_ONFIELD,0,1,1,nil)
Duel.SendtoGrave(g,REASON_EFFECT) Duel.SendtoGrave(g,REASON_EFFECT)
Duel.BreakEffect() Duel.BreakEffect()
else else
......
...@@ -19,6 +19,7 @@ function c117485040.initial_effect(c) ...@@ -19,6 +19,7 @@ function c117485040.initial_effect(c)
e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS) e3:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e3:SetCode(EVENT_SPSUMMON_SUCCESS) e3:SetCode(EVENT_SPSUMMON_SUCCESS)
e3:SetRange(LOCATION_SZONE) e3:SetRange(LOCATION_SZONE)
e3:SetCountLimit(1,117485040)
e3:SetCondition(c117485040.pencon) e3:SetCondition(c117485040.pencon)
e3:SetOperation(c117485040.penop) e3:SetOperation(c117485040.penop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
......
...@@ -107,7 +107,7 @@ function c118824150.sccost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -107,7 +107,7 @@ function c118824150.sccost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.Remove(c,POS_FACEUP,REASON_COST) Duel.Remove(c,POS_FACEUP,REASON_COST)
end end
function c118824150.scfilter(c,e,tp) function c118824150.scfilter(c,e,tp)
return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_DRAGON) and c:IsType(TYPE_SYNCHRO) and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_SYNCHRO,tp,false,false) return c:IsAttribute(ATTRIBUTE_LIGHT) and c:IsRace(RACE_DRAGON) and c:IsType(TYPE_SYNCHRO) and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_SYNCHRO,tp,false,true)
end end
function c118824150.sctg(e,tp,eg,ep,ev,re,r,rp,chk) function c118824150.sctg(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c118824150.scfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>0 and Duel.IsExistingMatchingCard(c118824150.scfilter,tp,LOCATION_GRAVE,0,1,nil,e,tp) end
...@@ -117,5 +117,6 @@ end ...@@ -117,5 +117,6 @@ end
function c118824150.scop(e,tp,eg,ep,ev,re,r,rp) function c118824150.scop(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS) local g=Duel.GetChainInfo(0,CHAININFO_TARGET_CARDS)
if not g or g:FilterCount(Card.IsRelateToEffect,nil,e)~=1 then return end if not g or g:FilterCount(Card.IsRelateToEffect,nil,e)~=1 then return end
Duel.SpecialSummon(g,SUMMON_TYPE_SYNCHRO,tp,tp,false,false,POS_FACEUP) Duel.SpecialSummon(g,SUMMON_TYPE_SYNCHRO,tp,tp,false,true,POS_FACEUP)
end g:GetFirst():CompleteProcedure()
\ No newline at end of file end
...@@ -20,7 +20,7 @@ function cm.negtg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -20,7 +20,7 @@ function cm.negtg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function cm.negop(e,tp,eg,ep,ev,re,r,rp) function cm.negop(e,tp,eg,ep,ev,re,r,rp)
if not Duel.NegateActivation(ev) then return end if not Duel.NegateActivation(ev) then return end
if Duel.IsExistingMatchingCard(Card.IsCanTurnSet,tp,0,LOCATION_MZONE,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(m,0))>0 then if Duel.IsExistingMatchingCard(Card.IsCanTurnSet,tp,0,LOCATION_MZONE,1,nil) and Duel.SelectYesNo(tp,aux.Stringid(m,0)) then
Duel.BreakEffect() Duel.BreakEffect()
rsop.SelectSolve(HINTMSG_POSCHANGE,tp,Card.IsCanTurnSet,tp,0,LOCATION_MZONE,1,1,nil,cm.solvefun) rsop.SelectSolve(HINTMSG_POSCHANGE,tp,Card.IsCanTurnSet,tp,0,LOCATION_MZONE,1,1,nil,cm.solvefun)
end end
...@@ -38,7 +38,7 @@ function cm.actval(e,re) ...@@ -38,7 +38,7 @@ function cm.actval(e,re)
return rc:IsLocation(LOCATION_GRAVE) return rc:IsLocation(LOCATION_GRAVE)
end end
function cm.atkval(e,c) function cm.atkval(e,c)
return Duel.GetMatchingGroupCount(cm.afilter,tp,rsloc.og,rsloc.og,nil)*100 return Duel.GetMatchingGroupCount(cm.afilter,tp,rsloc.og,rsloc.og,nil)*-100
end end
function cm.afilter(c) function cm.afilter(c)
return c:IsFacedown() or c:IsLocation(LOCATION_GRAVE) return c:IsFacedown() or c:IsLocation(LOCATION_GRAVE)
......
...@@ -23,7 +23,7 @@ function c30000005.initial_effect(c) ...@@ -23,7 +23,7 @@ function c30000005.initial_effect(c)
e2:SetCode(EVENT_SUMMON_SUCCESS) e2:SetCode(EVENT_SUMMON_SUCCESS)
e2:SetProperty(EFFECT_FLAG_DELAY) e2:SetProperty(EFFECT_FLAG_DELAY)
e2:SetRange(LOCATION_SZONE) e2:SetRange(LOCATION_SZONE)
e2:SetCountLimit(1) e2:SetCountLimit(99)
e2:SetTarget(c30000005.sptg) e2:SetTarget(c30000005.sptg)
e2:SetOperation(c30000005.spop) e2:SetOperation(c30000005.spop)
c:RegisterEffect(e2) c:RegisterEffect(e2)
......
...@@ -43,7 +43,7 @@ function c30000007.op(e,tp,eg,ep,ev,re,r,rp) ...@@ -43,7 +43,7 @@ function c30000007.op(e,tp,eg,ep,ev,re,r,rp)
while gc do while gc do
local e3=Effect.CreateEffect(e:GetHandler()) local e3=Effect.CreateEffect(e:GetHandler())
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_CANNOT_TRIGGER) e3:SetCode(EFFECT_CANNOT_TO_GRAVE)
e3:SetReset(RESET_EVENT+RESETS_STANDARD) e3:SetReset(RESET_EVENT+RESETS_STANDARD)
gc:RegisterEffect(e3) gc:RegisterEffect(e3)
gc=sg:GetNext() gc=sg:GetNext()
......
...@@ -158,7 +158,7 @@ function c30000033.target(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -158,7 +158,7 @@ function c30000033.target(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c30000033.thfilter(c) function c30000033.thfilter(c)
return c:IsDefenseBelow(2200) and c:IsType(TYPE_MONSTER) and c:IsAttribute(ATTRIBUTE_DARK) and c:IsAbleToHand() return c:IsDefenseBelow(8000) and c:IsType(TYPE_MONSTER) and c:IsAttribute(ATTRIBUTE_DARK) and c:IsAbleToHand()
end end
function c30000033.operation(e,tp,eg,ep,ev,re,r,rp) function c30000033.operation(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -113,9 +113,9 @@ function c30000035.thfilter(c) ...@@ -113,9 +113,9 @@ function c30000035.thfilter(c)
return c:IsAbleToRemoveAsCost() and not c:IsCode(30000035) return c:IsAbleToRemoveAsCost() and not c:IsCode(30000035)
end end
function c30000035.thcost(e,tp,eg,ep,ev,re,r,rp,chk) function c30000035.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(c30000035.thfilter,tp,LOCATION_HAND+LOCATION_ONFIELD+LOCATION_GRAVE,0,7,nil) end if chk==0 then return Duel.IsExistingMatchingCard(c30000035.thfilter,tp,LOCATION_HAND+LOCATION_ONFIELD+LOCATION_GRAVE,0,5,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_REMOVE)
local g=Duel.SelectMatchingCard(tp,c30000035.thfilter,tp,LOCATION_HAND+LOCATION_ONFIELD+LOCATION_GRAVE,0,7,7,nil) local g=Duel.SelectMatchingCard(tp,c30000035.thfilter,tp,LOCATION_HAND+LOCATION_ONFIELD+LOCATION_GRAVE,0,5,5,nil)
Duel.Remove(g,POS_FACEUP,REASON_COST) Duel.Remove(g,POS_FACEUP,REASON_COST)
end end
function c30000035.thtg(e,tp,eg,ep,ev,re,r,rp,chk) function c30000035.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
......
--终焉邪魂 感染源核 --终焉邪魂 感染源核
function c30000042.initial_effect(c) function c30000042.initial_effect(c)
--link summon --link summon
aux.AddLinkProcedure(c,c30000042.mfilter,4) aux.AddLinkProcedure(c,c30000042.mfilter,3)
c:EnableReviveLimit() c:EnableReviveLimit()
--tohand --tohand
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
......
...@@ -40,7 +40,7 @@ function c30000049.initial_effect(c) ...@@ -40,7 +40,7 @@ function c30000049.initial_effect(c)
end end
function c30000049.lcheck(g) function c30000049.lcheck(g)
return g:IsExists(Card.IsLinkSetCard,1,nil,0x920) and g:IsExists(Card.IsAttackAbove,2,nil,2400) return g:IsExists(Card.IsAttackAbove,2,nil,2400)
end end
function c30000049.spcon1(e,tp,eg,ep,ev,re,r,rp) function c30000049.spcon1(e,tp,eg,ep,ev,re,r,rp)
......
...@@ -35,7 +35,7 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -35,7 +35,7 @@ function cm.cost(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD) Duel.DiscardHand(tp,Card.IsDiscardable,1,1,REASON_COST+REASON_DISCARD)
end end
function cm.filter(c) function cm.filter(c)
return c:IsSetCard(0x9da0) and ((c:IsType(TYPE_FIELD) or c:IsType(TYPE_CONTINUOUS)) and not c:IsForbidden() and Duel.GetLocationCount(tp,LOCATION_SZONE)>0) or ((c:IsType(TYPE_QUICKPLAY) or c:GetType()==TYPE_SPELL or c:GetType()==TYPE_TRAP) and c:CheckActivateEffect(false,true,false)~=nil ) return c:IsSetCard(0x9da0) and (((c:IsType(TYPE_FIELD) or c:IsType(TYPE_CONTINUOUS)) and not c:IsForbidden() and Duel.GetLocationCount(tp,LOCATION_SZONE)>0) or ((c:IsType(TYPE_QUICKPLAY) or c:GetType()==TYPE_SPELL or c:GetType()==TYPE_TRAP) and c:CheckActivateEffect(false,true,false)~=nil ))
end end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then if chkc then
......
...@@ -118,7 +118,7 @@ function c79029034.tgfilter(c) ...@@ -118,7 +118,7 @@ function c79029034.tgfilter(c)
return c:IsType(TYPE_MONSTER) return c:IsType(TYPE_MONSTER)
end end
function c79029034.tgcon(e) function c79029034.tgcon(e)
return Duel.IsExistingMatchingCard(c79029034.tgfilter,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,e:GetHandler()) return Duel.IsExistingMatchingCard(aux.TRUE,e:GetHandlerPlayer(),LOCATION_MZONE,0,1,e:GetHandler())
end end
function c79029034.discon(e,tp,eg,ep,ev,re,r,rp) function c79029034.discon(e,tp,eg,ep,ev,re,r,rp)
return rp==1-tp and not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev) return rp==1-tp and not e:GetHandler():IsStatus(STATUS_BATTLE_DESTROYED) and Duel.IsChainNegatable(ev)
......
...@@ -129,13 +129,13 @@ function c79029093.sprop1(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -129,13 +129,13 @@ function c79029093.sprop1(e,tp,eg,ep,ev,re,r,rp,c)
end end
end end
function c79029093.copycost(e,tp,eg,ep,ev,re,r,rp,chk) function c79029093.copycost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetFlagEffect(79029093)==0 and Duel.IsCanRemoveCounter(tp,1,0,0x1099,79029010,REASON_COST) end if chk==0 then return e:GetHandler():GetFlagEffect(79029093)==0 and Duel.IsCanRemoveCounter(tp,1,0,0x1099,10,REASON_COST) end
e:GetHandler():RegisterFlagEffect(c79029093,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1) e:GetHandler():RegisterFlagEffect(79029093,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
Duel.RemoveCounter(tp,1,0,0x1099,79029010,REASON_COST) Duel.RemoveCounter(tp,1,0,0x1099,10,REASON_COST)
end end
function c79029093.copycost1(e,tp,eg,ep,ev,re,r,rp,chk) function c79029093.copycost1(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():GetFlagEffect(79029093)==0 and Duel.CheckLPCost(tp,6000) end if chk==0 then return e:GetHandler():GetFlagEffect(79029093)==0 and Duel.CheckLPCost(tp,6000) end
e:GetHandler():RegisterFlagEffect(c79029093,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1) e:GetHandler():RegisterFlagEffect(79029093,RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END,0,1)
Duel.PayLPCost(tp,6000) Duel.PayLPCost(tp,6000)
end end
function c79029093.copyfilter(c) function c79029093.copyfilter(c)
......
...@@ -11,7 +11,7 @@ function c79029133.initial_effect(c) ...@@ -11,7 +11,7 @@ function c79029133.initial_effect(c)
c:RegisterEffect(e1) c:RegisterEffect(e1)
--Activate --Activate
local e2=Effect.CreateEffect(c) local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_TRIGGER_F) e2:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e2:SetCategory(CATEGORY_TOGRAVE+CATEGORY_HANDES) e2:SetCategory(CATEGORY_TOGRAVE+CATEGORY_HANDES)
e2:SetCode(EVENT_DRAW) e2:SetCode(EVENT_DRAW)
e2:SetRange(LOCATION_MZONE) e2:SetRange(LOCATION_MZONE)
...@@ -63,13 +63,13 @@ function c79029133.adjustop(e,tp,eg,ep,ev,re,r,rp) ...@@ -63,13 +63,13 @@ function c79029133.adjustop(e,tp,eg,ep,ev,re,r,rp)
if (phase==PHASE_DAMAGE and not Duel.IsDamageCalculated()) or phase==PHASE_DAMAGE_CAL then return end if (phase==PHASE_DAMAGE and not Duel.IsDamageCalculated()) or phase==PHASE_DAMAGE_CAL then return end
local sg=Group.CreateGroup() local sg=Group.CreateGroup()
for p=1,1 do for p=1,1 do
local g=Duel.GetMatchingGroup(Card.IsFaceup,p,LOCATION_MZONE,0,nil) local g=Duel.GetMatchingGroup(Card.IsFaceup,1-tp,LOCATION_MZONE,0,nil)
local race=1 local race=1
while bit.band(RACE_ALL,race)~=0 do while bit.band(RACE_ALL,race)~=0 do
local rg=g:Filter(Card.IsRace,nil,race) local rg=g:Filter(Card.IsRace,nil,race)
local rc=rg:GetCount() local rc=rg:GetCount()
if rc>1 then if rc>1 then
Duel.Hint(HINT_SELECTMSG,p,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_TOGRAVE)
local dg=rg:Select(p,rc-1,rc-1,nil) local dg=rg:Select(p,rc-1,rc-1,nil)
sg:Merge(dg) sg:Merge(dg)
end end
......
...@@ -63,7 +63,7 @@ function c79029157.econ(e) ...@@ -63,7 +63,7 @@ function c79029157.econ(e)
ct=ct+1 ct=ct+1
end end
end end
return e:GetHandler():GetFlagEffect(c79029157+e:GetLabel())>=ct return e:GetHandler():GetFlagEffect(79029157+e:GetLabel())>=ct
end end
function c79029157.elimit(e,re,tp) function c79029157.elimit(e,re,tp)
return re:IsActiveType(TYPE_MONSTER) return re:IsActiveType(TYPE_MONSTER)
......
...@@ -57,8 +57,7 @@ end ...@@ -57,8 +57,7 @@ end
function c79029197.spop(e,tp,eg,ep,ev,re,r,rp) function c79029197.spop(e,tp,eg,ep,ev,re,r,rp)
if Duel.SelectYesNo(1-tp,aux.Stringid(1474910,0)) then if Duel.SelectYesNo(1-tp,aux.Stringid(1474910,0)) then
if Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST) then if Duel.Remove(e:GetHandler(),POS_FACEUP,REASON_COST) then
local p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER) local ht=Duel.GetFieldGroupCount(tp,LOCATION_HAND,0)
local ht=Duel.GetFieldGroupCount(p,LOCATION_HAND,0)
Duel.Draw(p,4-ht,REASON_EFFECT) Duel.Draw(p,4-ht,REASON_EFFECT)
local ht1=Duel.GetFieldGroupCount(1-tp,LOCATION_HAND,0) local ht1=Duel.GetFieldGroupCount(1-tp,LOCATION_HAND,0)
Duel.Draw(1-tp,4-ht1,REASON_EFFECT) Duel.Draw(1-tp,4-ht1,REASON_EFFECT)
......
...@@ -44,7 +44,7 @@ function c79029207.initial_effect(c) ...@@ -44,7 +44,7 @@ function c79029207.initial_effect(c)
local e3=Effect.CreateEffect(c) local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE) e3:SetType(EFFECT_TYPE_SINGLE)
e3:SetCode(EFFECT_CANNOT_BE_BATTLE_TARGET) e3:SetCode(EFFECT_CANNOT_BE_BATTLE_TARGET)
e3:SetValue(aux.tgoval) e3:SetValue(aux.imval1)
e3:SetCondition(c79029207.ctcon) e3:SetCondition(c79029207.ctcon)
c:RegisterEffect(e3) c:RegisterEffect(e3)
local e4=e3:Clone() local e4=e3:Clone()
...@@ -80,6 +80,7 @@ function c79029207.sprop(e,tp,eg,ep,ev,re,r,rp,c) ...@@ -80,6 +80,7 @@ function c79029207.sprop(e,tp,eg,ep,ev,re,r,rp,c)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
local g2=g:FilterSelect(tp,c79029207.sprfilter2,1,1,mc,tp,mc,c,mc:GetLink()) local g2=g:FilterSelect(tp,c79029207.sprfilter2,1,1,mc,tp,mc,c,mc:GetLink())
g1:Merge(g2) g1:Merge(g2)
e:GetHandler():SetMaterial(g1)
Duel.Overlay(e:GetHandler(),g1) Duel.Overlay(e:GetHandler(),g1)
Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_MZONE,POS_FACEUP,true) Duel.MoveToField(e:GetHandler(),tp,tp,LOCATION_MZONE,POS_FACEUP,true)
Debug.Message("说不定我会偷偷溜到其他地方去呢。") Debug.Message("说不定我会偷偷溜到其他地方去呢。")
......
...@@ -77,7 +77,7 @@ function c79029213.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -77,7 +77,7 @@ function c79029213.activate(e,tp,eg,ep,ev,re,r,rp)
tc:CompleteProcedure() tc:CompleteProcedure()
if tc:IsType(TYPE_PENDULUM) then if tc:IsType(TYPE_PENDULUM) then
local e1=Effect.CreateEffect(e:GetHandler()) local e1=Effect.CreateEffect(e:GetHandler())
e1:SetDescription(aux.Stringid(20004,5)) e1:SetDescription(aux.Stringid(79029213,2))
e1:SetType(EFFECT_TYPE_FIELD) e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_EXTRA_PENDULUM_SUMMON) e1:SetCode(EFFECT_EXTRA_PENDULUM_SUMMON)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET) e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
...@@ -124,11 +124,11 @@ function c79029213.spop(e,tp,eg,ep,ev,re,r,rp) ...@@ -124,11 +124,11 @@ function c79029213.spop(e,tp,eg,ep,ev,re,r,rp)
local b1=not Duel.IsExistingMatchingCard(c79029213.bfil1,tp,LOCATION_SZONE,0,1,nil) local b1=not Duel.IsExistingMatchingCard(c79029213.bfil1,tp,LOCATION_SZONE,0,1,nil)
local b2=not Duel.IsExistingMatchingCard(c79029213.bfil2,tp,LOCATION_SZONE,0,1,nil) local b2=not Duel.IsExistingMatchingCard(c79029213.bfil2,tp,LOCATION_SZONE,0,1,nil)
if b1 and b2 then if b1 and b2 then
op=Duel.SelectOption(tp,aux.Stringid(20004,7),aux.Stringid(20004,6)) op=Duel.SelectOption(tp,aux.Stringid(79029213,1),aux.Stringid(79029213,0))
elseif b1 then elseif b1 then
op=Duel.SelectOption(tp,aux.Stringid(20004,7)) op=Duel.SelectOption(tp,aux.Stringid(79029213,1))
elseif b2 then elseif b2 then
op=Duel.SelectOption(tp,aux.Stringid(20004,6))+1 op=Duel.SelectOption(tp,aux.Stringid(79029213,0))+1
else else
return false return false
end 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