Commit ff12f4e5 authored by 伊蕾娜's avatar 伊蕾娜

fix:小k修复bug

parent 89b983b2
Pipeline #15009 passed with stage
in 49 seconds
......@@ -4,7 +4,16 @@ function c74563034.initial_effect(c)
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN)
e1:SetOperation(c74563034.activate)
c:RegisterEffect(e1)
--adjust
local e21=Effect.CreateEffect(c)
e21:SetType(EFFECT_TYPE_FIELD+EFFECT_TYPE_CONTINUOUS)
e21:SetProperty(EFFECT_FLAG_IGNORE_IMMUNE+EFFECT_FLAG_CANNOT_DISABLE)
e21:SetCode(EVENT_ADJUST)
e21:SetRange(LOCATION_FZONE)
e21:SetOperation(c74563034.adjustop)
c:RegisterEffect(e21)
--synchro level
local e3=Effect.CreateEffect(c)
e3:SetType(EFFECT_TYPE_SINGLE)
......@@ -23,12 +32,26 @@ function c74563034.initial_effect(c)
local e2=Effect.CreateEffect(c)
e2:SetType(EFFECT_TYPE_FIELD)
e2:SetCode(EFFECT_SYNCHRO_MATERIAL)
e2:SetProperty(EFFECT_FLAG_CANNOT_DISABLE+EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e2:SetRange(LOCATION_FZONE)
e2:SetTargetRange(0,LOCATION_MZONE)
e2:SetTarget(c74563034.synfilter)
e2:SetValue(c74563034.mtval)
c:RegisterEffect(e2)
end
function c74563034.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(aux.TRUE,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
local tc=g:GetFirst()
if g:GetCount()>0 then
while tc do
if tc:GetFlagEffect(77002001)>0 then
tc:ResetEffect(EFFECT_ALLOW_SYNCHRO_KOISHI,RESET_CODE)
tc:ResetFlagEffect(77002001)
end
tc=g:GetNext()
end
end
end
function c74563034.synfilter(e,c)
if c:IsType(TYPE_LINK) or c:IsType(TYPE_XYZ) then
return c:IsFaceup() and not c:IsHasEffect(EFFECT_CANNOT_BE_SYNCHRO_MATERIAL)
......@@ -37,7 +60,7 @@ function c74563034.synfilter(e,c)
end
end
function c74563034.attg(e,c)
return c:IsType(TYPE_XYZ) or c:IsType(TYPE_LINK)
return (c:IsType(TYPE_XYZ) or c:IsType(TYPE_LINK)) and c:GetFlagEffect(77002001)==0
end
function c74563034.slevel(e,c)
local tc=e:GetHandler()
......@@ -50,4 +73,26 @@ end
function c74563034.mtval(e,c)
if not c then return false end
return c:IsRace(RACE_FAIRY) and c:IsAttribute(ATTRIBUTE_LIGHT)
end
function c74563034.adjustop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
if c:IsDisabled() then
c:RegisterFlagEffect(74563034,RESET_EVENT+RESETS_STANDARD,0,1)
--Duel.Readjust()
end
if not c:IsDisabled() and c:GetFlagEffect(74563034)>0 then
local g=Duel.GetMatchingGroup(aux.TRUE,tp,LOCATION_MZONE,LOCATION_MZONE,nil)
local tc=g:GetFirst()
if g:GetCount()>0 then
while tc do
if tc:GetFlagEffect(77002001)>0 then
tc:ResetEffect(EFFECT_ALLOW_SYNCHRO_KOISHI,RESET_CODE)
tc:ResetFlagEffect(77002001)
end
tc=g:GetNext()
end
end
c:ResetFlagEffect(74563034)
--Duel.Readjust()
end
end
\ No newline at end of file
......@@ -14,6 +14,7 @@ function c77002001.initial_effect(c)
c:RegisterEffect(e1)
end
function c77002001.tg(e,tp,eg,ep,ev,re,r,rp,chk)
--Debug.Message(e:GetHandler():GetFlagEffect(77002001))
if chk==0 then return true end
Duel.Hint(HINT_SELECTMSG,tp,aux.Stringid(77002001,0))
e:SetLabel(Duel.AnnounceLevel(tp,1,12))
......@@ -23,17 +24,18 @@ function c77002001.op(e,tp,eg,ep,ev,re,r,rp)
if c:IsFaceup() and c:IsRelateToEffect(e) then
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_SINGLE)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e1:SetCode(EFFECT_ALLOW_SYNCHRO_KOISHI)
e1:SetValue(e:GetLabel())
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
e1:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_DISABLE+RESET_PHASE+PHASE_END)
c:RegisterEffect(e1)
local e11=Effect.CreateEffect(c)
e11:SetType(EFFECT_TYPE_SINGLE)
e11:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e11:SetProperty(EFFECT_FLAG_UNCOPYABLE+EFFECT_FLAG_IGNORE_IMMUNE)
e11:SetCode(EFFECT_ADD_TYPE)
e11:SetValue(TYPE_TUNER)
e11:SetReset(RESET_EVENT+RESETS_STANDARD+RESET_PHASE+PHASE_END)
c:RegisterEffect(e11)
c:RegisterFlagEffect(77002001,RESET_PHASE+PHASE_END,0,1)
end
end
\ No newline at end of file
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