Commit c6970151 authored by nanahira's avatar nanahira

Update c101301054.lua

parent fbddd2e1
Pipeline #36433 failed with stages
in 3 minutes and 3 seconds
......@@ -127,8 +127,8 @@ function s.thtg(e,tp,eg,ep,ev,re,r,rp,chk)
local ac=Duel.AnnounceCard(tp,table.unpack(afilter))
s.AddToAnnounced(tp,ac)
Duel.SetTargetParam(ac)
if #s.announce_filter_func(e:GetHandler())<=9+4*(ARTMEGIA_COUNT-2) then
-- it should be at least two possible choices to make it changeable
if #s.announce_filter_func(e:GetHandler())<=9+4*(ARTMEGIA_COUNT-1) then
-- it should be at least 1 possible choice to make it changeable
Auxiliary.DefineGetterTemp(getmetatable(e:GetHandler()),"announce_filter",s.announce_filter_func)
Duel.SetOperationInfo(0,CATEGORY_ANNOUNCE,nil,0,tp,0)
end
......@@ -221,20 +221,15 @@ end
function s.announce_filter_func(c)
local tp=c:GetControler()
local exg=Duel.GetMatchingGroup(aux.AND(Card.IsFaceup,Card.IsSetCard),tp,LOCATION_MZONE,0,nil,0x2cd)
local exc={}
local cchain=Duel.GetCurrentChain()
local called_by_engraver=false
if cchain>1 then
local ac=Duel.GetChainInfo(cchain-1,CHAININFO_TARGET_PARAM)
if ac and ac>0 then
table.insert(exc,ac)
end
local ce=Duel.GetChainInfo(0,CHAININFO_TRIGGERING_EFFECT)
if ce:GetHandler()~=c then
called_by_engraver=true
end
end
local ncodes=s.CreateCodeList(exg,exc,nil,nil)
local ncodes=s.CreateCodeList(exg,s.announced[tp],nil,nil)
if #ncodes>=ARTMEGIA_COUNT and called_by_engraver then
-- make Engraver's effect quit
error("Nothing can be declared. 没有东西可以被宣言。", 3)
......
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