Commit fb9324a0 authored by Nemo Ma's avatar Nemo Ma

fix

parent 3bc287e0
......@@ -41,6 +41,9 @@ function cm.initial_effect(c)
e3:SetTarget(cm.target4)
e3:SetOperation(cm.operation4)
c:RegisterEffect(e3)
local e5=e3:Clone()
e5:SetCode(EVENT_CHAIN_NEGATED)
c:RegisterEffect(e5)
end
function cm.mat_filter(c)
return c:IsAttribute(ATTRIBUTE_WATER)
......@@ -97,7 +100,7 @@ function cm.operation2(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(m,RESET_CHAIN,0,1)
end
function cm.condition4(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(m)>0
return e:GetHandler():GetFlagEffect(m)>0 and Duel.GetCurrentChain()==1
end
function cm.target4(e,tp,eg,ep,ev,re,r,rp,chk)
local g=Duel.GetMatchingGroup(Card.IsSetCard,tp,LOCATION_DECK,0,nil,0x6978)
......
......@@ -40,6 +40,9 @@ function cm.initial_effect(c)
e3:SetCondition(cm.condition4)
e3:SetOperation(cm.operation4)
c:RegisterEffect(e3)
local e5=e3:Clone()
e5:SetCode(EVENT_CHAIN_NEGATED)
c:RegisterEffect(e5)
end
function cm.mat_filter(c)
return c:IsAttribute(ATTRIBUTE_WATER)
......@@ -96,7 +99,7 @@ function cm.operation2(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(m,RESET_CHAIN,0,1)
end
function cm.condition4(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(m)>0
return e:GetHandler():GetFlagEffect(m)>0 and Duel.GetCurrentChain()==1
end
function cm.operation4(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():ResetFlagEffect(m)
......
......@@ -40,6 +40,9 @@ function cm.initial_effect(c)
e3:SetCondition(cm.condition4)
e3:SetOperation(cm.operation4)
c:RegisterEffect(e3)
local e5=e3:Clone()
e5:SetCode(EVENT_CHAIN_NEGATED)
c:RegisterEffect(e5)
end
function cm.mat_filter(c)
return c:IsAttribute(ATTRIBUTE_WATER)
......@@ -99,7 +102,7 @@ function cm.operation2(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(m,RESET_CHAIN,0,1)
end
function cm.condition4(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(m)>0
return e:GetHandler():GetFlagEffect(m)>0 and Duel.GetCurrentChain()==1
end
function cm.operation4(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():ResetFlagEffect(m)
......
--aoguang,king of dragon palace
--ao guang, king of dragon palace
local m=11451414
local cm=_G["c"..m]
function cm.initial_effect(c)
......@@ -33,6 +33,9 @@ function cm.initial_effect(c)
e3:SetCondition(cm.condition4)
e3:SetOperation(cm.operation4)
c:RegisterEffect(e3)
local e5=e3:Clone()
e5:SetCode(EVENT_CHAIN_NEGATED)
c:RegisterEffect(e5)
--check release count
if not cm.global_check then
cm.global_check=true
......@@ -92,7 +95,7 @@ function cm.operation2(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():RegisterFlagEffect(m,RESET_CHAIN,0,1)
end
function cm.condition4(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetFlagEffect(m)>0
return e:GetHandler():GetFlagEffect(m)>0 and Duel.GetCurrentChain()==1
end
function cm.operation4(e,tp,eg,ep,ev,re,r,rp)
e:GetHandler():ResetFlagEffect(m)
......
......@@ -9,7 +9,8 @@ function cm.initial_effect(c)
--spsummon condition
local e0=Effect.CreateEffect(c)
e0:SetType(EFFECT_TYPE_SINGLE)
e0:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
--e0:SetCode(EFFECT_CANNOT_SPECIAL_SUMMON)
e0:SetCode(EFFECT_SPSUMMON_COST)
e0:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE)
e0:SetCondition(cm.spcon)
c:RegisterEffect(e0)
......@@ -75,7 +76,7 @@ end
function cm.spcon(e,c)
local g=Duel.GetMatchingGroup(Card.IsFaceup,0,LOCATION_MZONE,LOCATION_MZONE,nil)
local num=g:GetSum(Card.GetLevel)
return not cm.isprime(num)
return cm.isprime(num)
end
function cm.filter(c)
return c:IsFaceup() and c:GetLevel()>0
......
......@@ -72,7 +72,7 @@ end
function cm.filter2(c,e,tp,rc)
if not (c:IsType(TYPE_SYNCHRO) and (rc%c:GetLevel()==0) and c:IsCanBeSpecialSummoned(e,0,tp,true,false) and Duel.GetLocationCountFromEx(tp,tp,nil,c)>0) then return false end
--continuously updating
local tab={14000248,14010109,79029117,92361302,92361306,98731001}
local tab={14000248,14010109,79029117,90700065,90700066,90700067,90700068,90700069,92361302,92361306,98731001}
for _,code in pairs(tab) do
if c:GetOriginalCode()==code then return true end
end
......
......@@ -25,7 +25,7 @@ function cm.filter(c)
return c:GetOriginalType()&0x21==0x21 and c:IsRace(RACE_INSECT) and c:IsFaceup()
end
function cm.filter2(c)
return c:IsType(TYPE_MONSTER) and c:IsFaceup() and c:IsAttackAbove(1000) and not c:IsHasEffect(EFFECT_REVERSE_UPDATE) and not c:IsHasEffect(EFFECT_SET_ATTACK_FINAL)
return c:IsType(TYPE_MONSTER) and c:IsFaceup() and c:IsAttackAbove(1000) and not c:IsHasEffect(EFFECT_REVERSE_UPDATE)
end
function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.IsExistingMatchingCard(cm.filter,tp,LOCATION_ONFIELD,LOCATION_ONFIELD,1,nil) end
......@@ -82,6 +82,7 @@ function cm.mvcost(e,tp,eg,ep,ev,re,r,rp,chk)
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetCode(EFFECT_UPDATE_ATTACK)
e1:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetReset(RESET_EVENT+RESETS_STANDARD)
e1:SetValue(-1000)
tc:RegisterEffect(e1,true)
......
......@@ -310,6 +310,9 @@ function cm.disop(e,tp,eg,ep,ev,re,r,rp)
e2:SetOperation(cm.resop)
e2:SetReset(RESET_CHAIN)
Duel.RegisterEffect(e2,tp)
local e3=e2:Clone()
e3:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e3,tp)
end
function cm.rescon(e,tp,eg,ep,ev,re,r,rp)
return ev==e:GetLabel()
......
......@@ -27,6 +27,9 @@ function cm.initial_effect(c)
e2:SetTarget(cm.sptg)
e2:SetOperation(cm.spop)
c:RegisterEffect(e2)
local e4=e2:Clone()
e4:SetCode(EVENT_CHAIN_NEGATED)
c:RegisterEffect(e4)
--setname
local e5=Effect.CreateEffect(c)
e5:SetType(EFFECT_TYPE_SINGLE)
......@@ -128,7 +131,7 @@ function cm.spcon(e,tp,eg,ep,ev,re,r,rp)
local num=Duel.GetFlagEffectLabel(tp,11451480)
if not num then return false end
e:SetLabel(num)
return num>=1
return num>=1 and Duel.GetCurrentChain()==1
end
function cm.spfilter(c,e,tp)
return c:IsCanBeSpecialSummoned(e,0,tp,false,false) and c:IsRace(RACE_FAIRY)
......
......@@ -61,6 +61,9 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetOperation(cm.rsop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(cm.filter,tp,LOCATION_DECK,0,nil)
......
......@@ -74,6 +74,9 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
e1:SetOperation(cm.rsop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local te=e:GetLabelObject()
......
......@@ -62,6 +62,9 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetOperation(cm.rsop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local p=Duel.GetChainInfo(0,CHAININFO_TARGET_PLAYER)
......
......@@ -60,6 +60,9 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetOperation(cm.rsop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SET)
......
......@@ -55,6 +55,9 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetOperation(cm.rsop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
......
......@@ -68,6 +68,9 @@ function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetOperation(cm.rsop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
end
function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.GetLocationCount(tp,LOCATION_MZONE)
......
......@@ -59,6 +59,9 @@ function cm.costop(e,tp,eg,ep,ev,re,r,rp)
e1:SetOperation(cm.rsop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
end
function cm.rscon(e,tp,eg,ep,ev,re,r,rp)
return re==e:GetLabelObject()
......
......@@ -92,6 +92,9 @@ function cm.tg(e,tp,eg,ep,ev,re,r,rp,chk)
e1:SetOperation(cm.rsop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
local e2=e1:Clone()
e2:SetCode(EVENT_CHAIN_NEGATED)
Duel.RegisterEffect(e2,tp)
end
function cm.rscon(e,tp,eg,ep,ev,re,r,rp)
return re==e:GetLabelObject()
......
......@@ -40,7 +40,7 @@ function cm.thop(e,tp,eg,ep,ev,re,r,rp)
local tc=Duel.SelectMatchingCard(tp,cm.thfilter,tp,LOCATION_DECK,0,1,1,nil):GetFirst()
if tc and Duel.SendtoHand(tc,nil,REASON_EFFECT) > 0 then
Duel.ConfirmCards(1-tp,tc)
if tc:IsLocation(LOCATION_HAND) and not tc:IsCode(40009579) and not tc:IsSetCard(0x8f1b) then
if tc:IsLocation(LOCATION_HAND) and not tc:IsCode(40009579) and not tc:IsSetCard(0xcf1b) then
local e1=Effect.CreateEffect(e:GetHandler())
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
......@@ -57,7 +57,7 @@ function cm.aclimit(e,re,tp)
return re:GetHandler():IsCode(e:GetLabel())
end
function cm.tgfilter(c)
return c:IsSetCard(0x7f1b) and not c:IsCode(m) and c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS) and c:IsAbleToGrave()
return not c:IsCode(m) and c:IsType(TYPE_SPELL) and c:IsType(TYPE_CONTINUOUS) and c:IsAbleToGrave()
end
function cm.tgop(e,tp)
local g = Duel.GetMatchingGroup(cm.tgfilter,tp,LOCATION_DECK,0,nil)
......
......@@ -2,6 +2,7 @@
if not pcall(function() require("expansions/script/c40009561") end) then require("script/c40009561") end
local m , cm = rscf.DefineCard(40009575)
function cm.initial_effect(c)
aux.AddCodeList(c,40009579)
--Activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
......
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