Commit bcbcacd0 authored by VanillaSalt's avatar VanillaSalt

faster activatable check

parent bb5f1dd1
...@@ -3,6 +3,7 @@ function c23536866.initial_effect(c) ...@@ -3,6 +3,7 @@ function c23536866.initial_effect(c)
--xyz --xyz
local e1=Effect.CreateEffect(c) local e1=Effect.CreateEffect(c)
e1:SetDescription(aux.Stringid(23536866,0)) e1:SetDescription(aux.Stringid(23536866,0))
e1:SetCategory(CATEGORY_SPECIAL_SUMMON)
e1:SetType(EFFECT_TYPE_IGNITION) e1:SetType(EFFECT_TYPE_IGNITION)
e1:SetRange(LOCATION_GRAVE) e1:SetRange(LOCATION_GRAVE)
e1:SetProperty(EFFECT_FLAG_CARD_TARGET) e1:SetProperty(EFFECT_FLAG_CARD_TARGET)
...@@ -35,7 +36,7 @@ function c23536866.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -35,7 +36,7 @@ function c23536866.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local exg=Duel.GetMatchingGroup(c23536866.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg) local exg=Duel.GetMatchingGroup(c23536866.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg)
if chk==0 then return Duel.IsPlayerCanSpecialSummonCount(tp,2) if chk==0 then return Duel.IsPlayerCanSpecialSummonCount(tp,2)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>1
and mg:IsExists(c23536866.mfilter1,1,nil,mg,exg) end and exg:GetCount()>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg1=mg:FilterSelect(tp,c23536866.mfilter1,1,1,nil,mg,exg) local sg1=mg:FilterSelect(tp,c23536866.mfilter1,1,1,nil,mg,exg)
local tc1=sg1:GetFirst() local tc1=sg1:GetFirst()
......
...@@ -38,7 +38,7 @@ function c56611470.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -38,7 +38,7 @@ function c56611470.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local mg=Duel.GetMatchingGroup(c56611470.filter,tp,LOCATION_MZONE,0,nil,e) local mg=Duel.GetMatchingGroup(c56611470.filter,tp,LOCATION_MZONE,0,nil,e)
local exg=Duel.GetMatchingGroup(c56611470.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg) local exg=Duel.GetMatchingGroup(c56611470.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg)
if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>-2 if chk==0 then return Duel.GetLocationCount(tp,LOCATION_MZONE)>-2
and mg:IsExists(c56611470.mfilter1,1,nil,mg,exg) end and exg:GetCount()>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_XMATERIAL)
local sg1=mg:FilterSelect(tp,c56611470.mfilter1,1,1,nil,mg,exg) local sg1=mg:FilterSelect(tp,c56611470.mfilter1,1,1,nil,mg,exg)
local tc1=sg1:GetFirst() local tc1=sg1:GetFirst()
......
...@@ -28,7 +28,7 @@ function c61314842.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -28,7 +28,7 @@ function c61314842.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local exg=Duel.GetMatchingGroup(c61314842.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg) local exg=Duel.GetMatchingGroup(c61314842.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg)
if chk==0 then return Duel.IsPlayerCanSpecialSummonCount(tp,2) if chk==0 then return Duel.IsPlayerCanSpecialSummonCount(tp,2)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>1 and Duel.GetLocationCount(tp,LOCATION_MZONE)>1
and mg:IsExists(c61314842.mfilter1,1,nil,mg,exg) end and exg:GetCount()>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg1=mg:FilterSelect(tp,c61314842.mfilter1,1,1,nil,mg,exg) local sg1=mg:FilterSelect(tp,c61314842.mfilter1,1,1,nil,mg,exg)
local tc1=sg1:GetFirst() local tc1=sg1:GetFirst()
......
...@@ -39,7 +39,7 @@ function c62829077.mfilter2(c,mc,mg,exg) ...@@ -39,7 +39,7 @@ function c62829077.mfilter2(c,mc,mg,exg)
return mg:IsExists(c62829077.mfilter3,1,c,c,mc,exg) return mg:IsExists(c62829077.mfilter3,1,c,c,mc,exg)
end end
function c62829077.mfilter3(c,mc1,mc2,exg) function c62829077.mfilter3(c,mc1,mc2,exg)
return c~=mc2 and exg:IsExists(Card.IsXyzSummonable,1,nil,Group.FromCards(c,mc1,mc2)) return c~=mc2 and exg:IsExists(Card.IsXyzSummonable,1,nil,Group.FromCards(c,mc1,mc2),3,3)
end end
function c62829077.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) function c62829077.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
if chkc then return false end if chkc then return false end
...@@ -47,7 +47,7 @@ function c62829077.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc) ...@@ -47,7 +47,7 @@ function c62829077.target(e,tp,eg,ep,ev,re,r,rp,chk,chkc)
local exg=Duel.GetMatchingGroup(c62829077.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg) local exg=Duel.GetMatchingGroup(c62829077.xyzfilter,tp,LOCATION_EXTRA,0,nil,mg)
if chk==0 then return Duel.IsPlayerCanSpecialSummonCount(tp,2) if chk==0 then return Duel.IsPlayerCanSpecialSummonCount(tp,2)
and Duel.GetLocationCount(tp,LOCATION_MZONE)>2 and Duel.GetLocationCount(tp,LOCATION_MZONE)>2
and mg:IsExists(c62829077.mfilter1,1,nil,mg,exg) end and exg:GetCount()>0 end
Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON) Duel.Hint(HINT_SELECTMSG,tp,HINTMSG_SPSUMMON)
local sg1=mg:FilterSelect(tp,c62829077.mfilter1,1,1,nil,mg,exg) local sg1=mg:FilterSelect(tp,c62829077.mfilter1,1,1,nil,mg,exg)
local tc1=sg1:GetFirst() local tc1=sg1:GetFirst()
......
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