Commit dc03c8dd authored by REIKAI's avatar REIKAI 💬

bug fix

parent 8afb5be7
Pipeline #20969 passed with stages
in 29 minutes and 13 seconds
...@@ -33,7 +33,7 @@ function c12852104.initial_effect(c) ...@@ -33,7 +33,7 @@ function c12852104.initial_effect(c)
--to hand --to hand
local e21=Effect.CreateEffect(c) local e21=Effect.CreateEffect(c)
e21:SetDescription(aux.Stringid(12852104,1)) e21:SetDescription(aux.Stringid(12852104,1))
e21:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND+CATEGORY_TODECK) e21:SetCategory(CATEGORY_SEARCH+CATEGORY_TOHAND)
e21:SetType(EFFECT_TYPE_IGNITION) e21:SetType(EFFECT_TYPE_IGNITION)
e21:SetRange(LOCATION_GRAVE) e21:SetRange(LOCATION_GRAVE)
e21:SetCountLimit(1,12852106) e21:SetCountLimit(1,12852106)
...@@ -94,12 +94,5 @@ function c12852104.thop1(e,tp,eg,ep,ev,re,r,rp) ...@@ -94,12 +94,5 @@ function c12852104.thop1(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 then if g:GetCount()>0 then
Duel.SendtoHand(g,nil,REASON_EFFECT) Duel.SendtoHand(g,nil,REASON_EFFECT)
Duel.ConfirmCards(1-tp,g) Duel.ConfirmCards(1-tp,g)
Duel.ShuffleHand(tp)
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TODECK)
local sg=Duel.SelectMatchingCard(tp,Card.IsAbleToDeck,tp,LOCATION_HAND,0,1,1,nil)
if #sg>0 then
Duel.BreakEffect()
Duel.SendtoDeck(sg,nil,SEQ_DECKSHUFFLE,REASON_EFFECT)
end
end end
end end
\ No newline at end of file
...@@ -65,7 +65,7 @@ function cm.spfilter1(c,e,tp,m,f,chkf) ...@@ -65,7 +65,7 @@ function cm.spfilter1(c,e,tp,m,f,chkf)
return c:IsType(TYPE_FUSION) and (not f or f(c)) return c:IsType(TYPE_FUSION) and (not f or f(c))
and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_FUSION,tp,false,false) and c:CheckFusionMaterial(m,nil,chkf) and c:IsCanBeSpecialSummoned(e,SUMMON_TYPE_FUSION,tp,false,false) and c:CheckFusionMaterial(m,nil,chkf)
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then if chk==0 then
local chkf=tp local chkf=tp
local mg=Duel.GetFusionMaterial(tp) local mg=Duel.GetFusionMaterial(tp)
...@@ -91,7 +91,7 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -91,7 +91,7 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA) Duel.SetOperationInfo(0,CATEGORY_SPECIAL_SUMMON,nil,1,tp,LOCATION_EXTRA)
Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,0,LOCATION_MZONE+LOCATION_GRAVE) Duel.SetOperationInfo(0,CATEGORY_REMOVE,nil,1,0,LOCATION_MZONE+LOCATION_GRAVE)
end end
function cm.spop(e,tp,eg,ep,ev,re,r,rp) function cm.activate(e,tp,eg,ep,ev,re,r,rp)
local chkf=tp local chkf=tp
local mg=Duel.GetFusionMaterial(tp):Filter(cm.mfilter1,nil,e) local mg=Duel.GetFusionMaterial(tp):Filter(cm.mfilter1,nil,e)
local mg1=mg:Clone() local mg1=mg:Clone()
......
...@@ -69,7 +69,7 @@ function cm.spcheck(c,e,tp,lv,tc) ...@@ -69,7 +69,7 @@ function cm.spcheck(c,e,tp,lv,tc)
return Duel.GetLocationCountFromEx(1-tp,1-tp,nil)>0 return Duel.GetLocationCountFromEx(1-tp,1-tp,nil)>0
end end
end end
function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.target(e,tp,eg,ep,ev,re,r,rp,chk)
if chk==0 then if chk==0 then
if e:GetLabel() == 1 then if e:GetLabel() == 1 then
return Duel.IsExistingMatchingCard(cm.check,tp,LOCATION_MZONE,0,1,nil,e,tp) return Duel.IsExistingMatchingCard(cm.check,tp,LOCATION_MZONE,0,1,nil,e,tp)
...@@ -85,7 +85,7 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -85,7 +85,7 @@ function cm.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
Duel.SetTargetParam(g:GetSum(Card.GetLevel)) Duel.SetTargetParam(g:GetSum(Card.GetLevel))
Duel.SendtoDeck(g,nil,2,REASON_COST) Duel.SendtoDeck(g,nil,2,REASON_COST)
end end
function cm.spop(e,tp) function cm.activate(e,tp)
local lv = Duel.GetChainInfo(0,CHAININFO_TARGET_PARAM) local lv = Duel.GetChainInfo(0,CHAININFO_TARGET_PARAM)
if Duel.IsExistingMatchingCard(cm.spcheck,tp,LOCATION_EXTRA,0,1,nil,e,tp,lv) then if Duel.IsExistingMatchingCard(cm.spcheck,tp,LOCATION_EXTRA,0,1,nil,e,tp,lv) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
......
...@@ -39,7 +39,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp) ...@@ -39,7 +39,7 @@ function cm.activate(e,tp,eg,ep,ev,re,r,rp)
if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(m,0)) then if g:GetCount()>0 and Duel.SelectYesNo(tp,aux.Stringid(m,0)) then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOGRAVE)
local sg=g:Select(tp,1,1,nil) local sg=g:Select(tp,1,1,nil)
Duel.SendtoHand(sg,REASON_EFFECT) Duel.SendtoHand(sg,nil,REASON_EFFECT)
end end
end end
function cm.cftg(e,tp,eg,ep,ev,re,r,rp,chk) function cm.cftg(e,tp,eg,ep,ev,re,r,rp,chk)
......
...@@ -42,7 +42,7 @@ function s.negcon(e,tp,eg,ep,ev,re,r,rp) ...@@ -42,7 +42,7 @@ function s.negcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetOverlayGroup():IsExists(s.disconf,1,nil) return e:GetHandler():GetOverlayGroup():IsExists(s.disconf,1,nil)
end end
function s.distgf(c,rc) function s.distgf(c,rc)
return c:IsType(TYPE_XYZ) and rc:GetAttribute()&c:GetAttribute()~=0 return rc:GetAttribute()&c:GetAttribute()~=0
end end
function s.distg(e,c) function s.distg(e,c)
return e:GetHandler():GetOverlayGroup():IsExists(s.distgf,1,nil,c) return e:GetHandler():GetOverlayGroup():IsExists(s.distgf,1,nil,c)
......
...@@ -55,8 +55,11 @@ end ...@@ -55,8 +55,11 @@ end
function s.negcon(e,tp,eg,ep,ev,re,r,rp) function s.negcon(e,tp,eg,ep,ev,re,r,rp)
return e:GetHandler():GetOverlayGroup():IsExists(s.disconf,1,nil) return e:GetHandler():GetOverlayGroup():IsExists(s.disconf,1,nil)
end end
function s.attallf(c)
return not s.disconf(c)
end
function s.attall(e,tp,eg,ep,ev,re,r,rp) function s.attall(e,tp,eg,ep,ev,re,r,rp)
return not e:GetHandler():GetOverlayGroup():IsExists(s.disconf,1,nil) return e:GetHandler():GetOverlayGroup():IsExists(s.attallf,1,nil)
end end
function s.distgf(c,rc) function s.distgf(c,rc)
return rc:GetAttribute()&c:GetAttribute()~=0 return rc:GetAttribute()&c:GetAttribute()~=0
......
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
function c33200002.initial_effect(c) function c33200002.initial_effect(c)
--Activate --Activate
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetCategory(CATEGORY_TOHAND+CATEGORY_SEARCH)
e1:SetType(EFFECT_TYPE_ACTIVATE) e1:SetType(EFFECT_TYPE_ACTIVATE)
e1:SetCode(EVENT_FREE_CHAIN) e1:SetCode(EVENT_FREE_CHAIN)
e1:SetCountLimit(1,33200002+EFFECT_COUNT_CODE_OATH) e1:SetCountLimit(1,33200002+EFFECT_COUNT_CODE_OATH)
......
...@@ -26,7 +26,7 @@ function cm.inmop1(e,tp,eg,ep,ev,re,r,rp) ...@@ -26,7 +26,7 @@ function cm.inmop1(e,tp,eg,ep,ev,re,r,rp)
e1:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x3531)) e1:SetTarget(aux.TargetBoolFunction(Card.IsSetCard,0x3531))
e1:SetValue(cm.efilter) e1:SetValue(cm.efilter)
e1:SetLabelObject(re) e1:SetLabelObject(re)
e1:SetReset(RESET_EVENT+RESET_CHAIN) e1:SetReset(RESET_CHAIN)
Duel.RegisterEffect(e1,tp) Duel.RegisterEffect(e1,tp)
e:SetLabelObject(e1) e:SetLabelObject(e1)
end end
......
...@@ -45,7 +45,7 @@ function c67200300.sptg(e,tp,eg,ep,ev,re,r,rp,chk) ...@@ -45,7 +45,7 @@ function c67200300.sptg(e,tp,eg,ep,ev,re,r,rp,chk)
end end
function c67200300.spop(e,tp,eg,ep,ev,re,r,rp) function c67200300.spop(e,tp,eg,ep,ev,re,r,rp)
local c=e:GetHandler() local c=e:GetHandler()
if not c:IsRelateToEffect(e) then return end if not c:IsRelateToEffect(e) or not Duel.IsExistingMatchingCard(c67200300.penfilter,tp,LOCATION_DECK,0,1,nil) then return end
if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then if Duel.SpecialSummon(c,0,tp,tp,false,false,POS_FACEUP)~=0 then
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_TOFIELD)
local g=Duel.SelectMatchingCard(tp,c67200300.penfilter,tp,LOCATION_DECK,0,1,1,nil) local g=Duel.SelectMatchingCard(tp,c67200300.penfilter,tp,LOCATION_DECK,0,1,1,nil)
......
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