Commit d589bd45 authored by VanillaSalt's avatar VanillaSalt

fix

parent 3fa8432a
......@@ -75,7 +75,7 @@ function c10117149.cfilter(c)
return c:IsFaceup() and c:IsSetCard(0xab)
end
function c10117149.atkval(e,c)
return Duel.GetMatchingGroupCount(c10117149.cfilter,tp,LOCATION_EXTRA,0,nil)*500
return Duel.GetMatchingGroupCount(c10117149.cfilter,c:GetControler(),LOCATION_EXTRA,0,nil)*500
end
function c10117149.spcon(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler()
......
......@@ -55,9 +55,9 @@ function c17086528.lvfilter(c,rk)
end
function c17086528.rktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return false end
if chk==0 then return Duel.IsExistingTarget(c17086528.rkfilter,tp,LOCATION_MZONE,0,1,nil) end
if chk==0 then return Duel.IsExistingTarget(c17086528.rkfilter,tp,LOCATION_MZONE,0,1,nil,tp) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
local g=Duel.SelectTarget(tp,c17086528.rkfilter,tp,LOCATION_MZONE,0,1,1,nil)
local g=Duel.SelectTarget(tp,c17086528.rkfilter,tp,LOCATION_MZONE,0,1,1,nil,tp)
e:SetLabelObject(g:GetFirst())
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TARGET)
Duel.SelectTarget(tp,c17086528.lvfilter,tp,LOCATION_MZONE,0,1,1,g:GetFirst(),g:GetFirst():GetRank())
......
......@@ -41,7 +41,8 @@ function c19355597.spop(e,tp,eg,ep,ev,re,r,rp)
local tg=Duel.SelectMatchingCard(tp,c19355597.tgfilter,tp,LOCATION_MZONE,0,1,1,nil,e,tp)
local tc=tg:GetFirst()
local g=Duel.GetMatchingGroup(c19355597.spfilter,tp,LOCATION_EXTRA,0,nil,e,tp)
if tc and Duel.SendtoGrave(tc,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_GRAVE) and g:GetCount()>0 then
if tc and Duel.SendtoGrave(tc,REASON_EFFECT)~=0 and tc:IsLocation(LOCATION_GRAVE) and g:GetCount()>0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg=g:Select(tp,1,1,nil)
Duel.SpecialSummon(sg,0,tp,tp,true,false,POS_FACEUP)
end
......
......@@ -28,6 +28,7 @@ function c23296404.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>-1
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false)
and Duel.IsExistingTarget(c23296404.desfilter,tp,LOCATION_ONFIELD,0,3,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c23296404.desfilter,tp,LOCATION_ONFIELD,0,3,3,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,3,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
......@@ -48,6 +49,7 @@ function c23296404.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c23296404.thfilter(chkc) and chkc~=e:GetHandler() end
if chk==0 then return Duel.IsExistingTarget(c23296404.thfilter,tp,LOCATION_MZONE,0,1,e:GetHandler())
and Duel.IsExistingMatchingCard(c23296404.tdfilter,tp,0,LOCATION_ONFIELD,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectTarget(tp,c23296404.thfilter,tp,LOCATION_MZONE,0,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,1,1-tp,LOCATION_ONFIELD)
......
......@@ -56,21 +56,29 @@ function c28265983.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
c28265983.destg1(e,tp,teg,tep,tev,tre,tr,trp,1)
else
e:SetCategory(CATEGORY_DESTROY)
e:SetProperty(0)
e:SetOperation(c28265983.desop2)
c28265983.descost2(e,tp,eg,ep,ev,re,r,rp,1)
c28265983.destg2(e,tp,eg,ep,ev,re,r,rp,1)
end
else
e:SetCategory(0)
e:SetProperty(0)
e:SetOperation(c28265983.nop)
end
end
function c28265983.nop(e,tp,eg,ep,ev,re,r,rp)
end
function c28265983.descon1(e,tp,eg,ep,ev,re,r,rp)
return ep==tp
end
function c28265983.desfilter11(c)
function c28265983.desfilter1(c)
return c:IsFaceup() and c:IsDestructable()
end
function c28265983.destg1(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(1-tp) and c28265983.desfilter1(chkc) end
if chk==0 then return Duel.GetFlagEffect(tp,28265983)==0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c28265983.desfilter1,tp,0,LOCATION_MZONE,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,g:GetCount(),0,0)
Duel.RegisterFlagEffect(tp,28265983,RESET_PHASE+RESET_END,0,1)
......
--ブリリアント・スパーク
function c3105404.initial_effect(c)
Duel.EnableGlobalFlag(GLOBALFLAG_DELAYED_QUICKEFFECT)
--activate
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_DAMAGE)
......
......@@ -34,6 +34,7 @@ function c32566831.activate(e,tp,eg,ep,ev,re,r,rp)
local g=Duel.GetMatchingGroup(c32566831.tgfilter,p,LOCATION_DECK,0,nil)
if dr~=0 and g:GetCount()>0 and Duel.SelectYesNo(p,aux.Stringid(32566831,0)) then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,p,HINTMSG_TOGRAVE)
local sg=g:Select(p,1,1,nil)
Duel.SendtoGrave(sg,REASON_EFFECT)
end
......
......@@ -40,7 +40,7 @@ function c44405066.initial_effect(c)
e4:SetOperation(c44405066.spop)
c:RegisterEffect(e4)
end
function c44405066.indcon(e,c)
function c44405066.indcon(e)
return e:GetHandler():GetOverlayCount()>0
end
function c44405066.regop(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -27,13 +27,16 @@ function c58569561.actcon(e,tp,eg,ep,ev,re,r,rp)
return ac and ac:IsControler(tp) and ac:IsRace(RACE_PLANT)
end
function c58569561.actop(e,tp,eg,ep,ev,re,r,rp)
local e1=Effect.CreateEffect(e:GetHandler())
local c=e:GetHandler()
local e1=Effect.CreateEffect(c)
e1:SetType(EFFECT_TYPE_FIELD)
e1:SetCode(EFFECT_CANNOT_ACTIVATE)
e1:SetRange(LOCATION_MZONE)
e1:SetProperty(EFFECT_FLAG_PLAYER_TARGET)
e1:SetTargetRange(0,1)
e1:SetValue(c58569561.actlimit)
Duel.RegisterEffect(e1,tp)
e1:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+PHASE_DAMAGE)
c:RegisterEffect(e1)
end
function c58569561.actlimit(e,re,tp)
return re:IsActiveType(TYPE_MONSTER) and not re:GetHandler():IsImmuneToEffect(e)
......
......@@ -28,6 +28,7 @@ function c59785059.sptg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>-1
and e:GetHandler():IsCanBeSpecialSummoned(e,0,tp,false,false)
and Duel.IsExistingTarget(c59785059.desfilter,tp,LOCATION_ONFIELD,0,3,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c59785059.desfilter,tp,LOCATION_ONFIELD,0,3,3,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,3,0,0)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,e:GetHandler(),1,0,0)
......@@ -45,6 +46,7 @@ function c59785059.tdtg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsControler(tp) and c59785059.thfilter(chkc) and chkc~=e:GetHandler() end
if chk==0 then return Duel.IsExistingTarget(c59785059.thfilter,tp,LOCATION_MZONE,0,1,e:GetHandler())
and Duel.IsExistingMatchingCard(Card.IsAbleToDeck,tp,0,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_ATOHAND)
local g=Duel.SelectTarget(tp,c59785059.thfilter,tp,LOCATION_MZONE,0,1,1,e:GetHandler())
Duel.SetOperationInfo(0,CATEGORY_TOHAND,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_TODECK,nil,1,1-tp,LOCATION_MZONE)
......
......@@ -63,6 +63,7 @@ function c65472618.regop(e,tp,eg,ep,ev,re,r,rp)
e1:SetCode(EVENT_PHASE+PHASE_END)
e1:SetCountLimit(1)
e1:SetOperation(c65472618.thop)
e1:SetReset(RESET_PHASE+PHASE_END)
Duel.RegisterEffect(e1,tp)
end
function c65472618.thfilter(c)
......
......@@ -34,8 +34,13 @@ function c65872270.target(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetCategory(CATEGORY_DESTROY+CATEGORY_TOHAND+CATEGORY_SEARCH)
e:SetOperation(c65872270.desop)
c65872270.destg(e,tp,eg,ep,ev,re,r,rp,1)
else
e:SetCategory(0)
e:SetOperation(c65872270.nop)
end
end
function c65872270.nop(e,tp,eg,ep,ev,re,r,rp)
end
function c65872270.descon(e,tp,eg,ep,ev,re,r,rp)
return Duel.GetTurnPlayer()==tp
and (Duel.GetCurrentPhase()==PHASE_MAIN1 or Duel.GetCurrentPhase()==PHASE_MAIN2)
......@@ -62,7 +67,7 @@ function c65872270.desop(e,tp,eg,ep,ev,re,r,rp)
if ct2>0 then
Duel.BreakEffect()
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_RTOHAND)
rg=g:Select(tp,1,ct2,nil)
local rg=g:Select(tp,1,ct2,nil)
Duel.SendtoHand(rg,nil,REASON_EFFECT)
end
end
......
......@@ -9,14 +9,14 @@ function c66194206.initial_effect(c)
e1:SetOperation(c66194206.activate)
c:RegisterEffect(e1)
--to hand
local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e1:SetCode(EVENT_TO_GRAVE)
e1:SetCondition(c66194206.thcon)
e1:SetTarget(c66194206.thtg)
e1:SetOperation(c66194206.thop)
c:RegisterEffect(e1)
local e2=Effect.CreateEffect(c)
e2:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e2:SetType(EFFECT_TYPE_SINGLE+EFFECT_TYPE_TRIGGER_O)
e2:SetCode(EVENT_TO_GRAVE)
e2:SetCondition(c66194206.thcon)
e2:SetTarget(c66194206.thtg)
e2:SetOperation(c66194206.thop)
c:RegisterEffect(e2)
end
function c66194206.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return e:GetHandler():IsAbleToDeck() end
......
......@@ -13,6 +13,7 @@ end
function c68833958.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return chkc:IsLocation(LOCATION_MZONE) and chkc:IsFaceup() end
if chk==0 then return Duel.IsExistingTarget(Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_FACEUP)
Duel.SelectTarget(tp,Card.IsFaceup,tp,LOCATION_MZONE,LOCATION_MZONE,1,1,nil)
end
function c68833958.activate(e,tp,eg,ep,ev,re,r,rp)
......
......@@ -34,8 +34,8 @@ function c70479321.initial_effect(c)
c:RegisterEffect(e4)
--atk
local e5=e2:Clone()
e2:SetRange(LOCATION_MZONE)
e2:SetOperation(c70479321.atkop2)
e5:SetRange(LOCATION_MZONE)
e5:SetOperation(c70479321.atkop2)
c:RegisterEffect(e5)
end
function c70479321.atktg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
......
--グニッションP
--グニッションP
function c79555535.initial_effect(c)
--activate
local e1=Effect.CreateEffect(c)
......@@ -39,7 +39,7 @@ function c79555535.destg(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chk==0 then return Duel.IsExistingTarget(c79555535.desfilter,tp,LOCATION_ONFIELD,0,1,nil)
and Duel.IsExistingMatchingCard(c79555535.thfilter,tp,LOCATION_DECK,0,1,nil) end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectTarget(tp,c79555535.thfilter,tp,LOCATION_ONFIELD,0,1,1,nil)
local g=Duel.SelectTarget(tp,c79555535.desfilter,tp,LOCATION_ONFIELD,0,1,1,nil)
Duel.SetOperationInfo(0,CATEGORY_DESTROY,g,1,0,0)
Duel.SetOperationInfo(0,CATEGORY_TOHAND,nil,1,tp,LOCATION_DECK)
end
......
......@@ -88,7 +88,7 @@ function c82734805.exop(e,tp,eg,ep,ev,re,r,rp)
local g2=Duel.GetMatchingGroup(Card.IsAbleToGrave,tp,0,LOCATION_EXTRA,nil)
local sg2=nil
if g2:GetCount()>=3 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
Duel.Hint(HINT_SELECTMSG,1-tp,HINTMSG_TOGRAVE)
sg2=g2:Select(1-tp,3,3,nil)
else sg2=g2 end
sg1:Merge(sg2)
......@@ -150,13 +150,13 @@ function c82734805.fscon(e,g,gc,chkf)
if g==nil then return true end
if gc then
if gc:IsHasEffect(EFFECT_FUSION_SUBSTITUTE) then
return g:IsExists(c82734805.fcfilter1,1,gc,code1,code2,g)
return g:IsExists(c82734805.fcfilter1,1,gc,14799437,23440231,g)
elseif gc:IsCode(14799437) then
return g:IsExists(c82734805.fcfilter2,1,gc,23440231,g)
elseif gc:IsCode(23440231) then
return g:IsExists(c82734805.fcfilter2,1,gc,14799437,g)
elseif gc:IsSetCard(0xbb) then
return g:IsExists(c82734805.fcfilter3,1,gc)
return g:IsExists(c82734805.fcfilter3,1,gc,g)
end
end
local b1=0 local b2=0 local bs=0
......@@ -179,9 +179,6 @@ function c82734805.fscon(e,g,gc,chkf)
return b1+b2+bs>=2 and g2:GetCount()>=3-bs
end
end
function c82734805.fofilter(c)
return c:IsSetCard(0xbb) or c:IsHasEffect(EFFECT_FUSION_SUBSTITUTE)
end
function c82734805.fsop(e,tp,eg,ep,ev,re,r,rp,gc,chkf)
if gc then
local sg=eg local g1=nil local g2=nil local g3=nil
......
......@@ -47,6 +47,7 @@ function c92266279.target(e,tp,eg,ep,ev,re,r,rp,chk)
end
if opt==0 then
e:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e:SetProperty(0)
e:SetOperation(c92266279.thop)
c92266279.thcost(e,tp,eg,ep,ev,re,r,rp,1)
c92266279.thtg(e,tp,eg,ep,ev,re,r,rp,1)
......@@ -56,8 +57,14 @@ function c92266279.target(e,tp,eg,ep,ev,re,r,rp,chk)
e:SetOperation(c92266279.recop)
c92266279.rectg(e,tp,eg,ep,ev,re,r,rp,1)
end
else
e:SetCategory(0)
e:SetProperty(0)
e:SetOperation(c92266279.nop)
end
end
function c92266279.nop(e,tp,eg,ep,ev,re,r,rp)
end
function c92266279.thcost(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then return Duel.CheckLPCost(tp,1000) and Duel.GetFlagEffect(tp,92266279)==0 end
Duel.PayLPCost(tp,1000)
......
......@@ -43,6 +43,7 @@ end
function c92693205.desop(e,tp,eg,ep,ev,re,r,rp)
local ct=Duel.GetMatchingGroupCount(c92693205.cfilter,tp,LOCATION_MZONE,0,e:GetHandler())
if ct==0 then return end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_DESTROY)
local g=Duel.SelectMatchingCard(tp,Card.IsDestructable,tp,LOCATION_MZONE,LOCATION_MZONE,1,ct,nil)
if g:GetCount()>0 then
Duel.Destroy(g,REASON_EFFECT)
......
......@@ -45,7 +45,7 @@ function c93983867.activate(e,tp,eg,ep,ev,re,r,rp)
e1:SetProperty(EFFECT_FLAG_CANNOT_DISABLE)
e1:SetCountLimit(1)
e1:SetOperation(c93983867.retop)
e1:SetReset(RESET_PHASE+RESET_END)
e1:SetReset(RESET_EVENT+0x1fe0000+RESET_PHASE+RESET_END)
tc:RegisterEffect(e1)
end
else
......
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