Commit 52ed02e6 authored by Vury Leo's avatar Vury Leo

tuning 白の枢機竜

parent 958d30ae
...@@ -44,11 +44,6 @@ function s.initial_effect(c) ...@@ -44,11 +44,6 @@ function s.initial_effect(c)
e3:SetOperation(s.attop) e3:SetOperation(s.attop)
c:RegisterEffect(e3) c:RegisterEffect(e3)
end end
function s.ffilter(c,fc,sub,mg,sg)
return not sg or sg:FilterCount(aux.TRUE,c)==0
or (sg:IsExists(Card.IsFusionAttribute,1,c,c:GetFusionAttribute())
and not sg:IsExists(Card.IsRace,1,c,c:GetRace()))
end
function s.tglimit(e,c) function s.tglimit(e,c)
return c:IsAttribute(e:GetHandler():GetAttribute()) return c:IsAttribute(e:GetHandler():GetAttribute())
end end
......
...@@ -3631,14 +3631,12 @@ function Fusion.StrictGroup(e,leftovers,mg_base,grp,tc,fgoalcheck,chkf) ...@@ -3631,14 +3631,12 @@ function Fusion.StrictGroup(e,leftovers,mg_base,grp,tc,fgoalcheck,chkf)
end end
-- has_same on full matched -- has_same on full matched
if grp.has_same and not Fusion.CheckHasSame(grp,matched,e) then if grp.has_same and not Fusion.CheckHasSame(grp,matched,e) then
Debug.Message("rejected by has_same")
return false return false
end end
-- unique_by on full matched -- unique_by on full matched
if grp.unique_by then if grp.unique_by then
local matcher=Fusion.UniqueByMatching(grp.unique_by,#matched) local matcher=Fusion.UniqueByMatching(grp.unique_by,#matched)
if not matcher(matched) then if not matcher(matched) then
Debug.Message("rejected by unique_by")
return false return false
end end
end end
...@@ -3681,7 +3679,10 @@ function Fusion.SearchGroup(e,leftovers,mg_base,grp,tc,fgoalcheck,chkf) ...@@ -3681,7 +3679,10 @@ function Fusion.SearchGroup(e,leftovers,mg_base,grp,tc,fgoalcheck,chkf)
mg_tmp:Merge(subG) mg_tmp:Merge(subG)
-- has_same check -- has_same check
local ok_same=not grp.has_same or Fusion.CheckHasSame(grp,sub_g_arr,e) local ok_same=true
if grp.has_same and #sub_g_arr>1 then
ok_same=Fusion.CheckHasSame(grp,sub_g_arr,e)
end
-- unique_by check -- unique_by check
local ok_unique=true local ok_unique=true
...@@ -3711,15 +3712,6 @@ function Fusion.SearchGroup(e,leftovers,mg_base,grp,tc,fgoalcheck,chkf) ...@@ -3711,15 +3712,6 @@ function Fusion.SearchGroup(e,leftovers,mg_base,grp,tc,fgoalcheck,chkf)
local prune=false local prune=false
local partial={table.unpack(comb,1,depth)} local partial={table.unpack(comb,1,depth)}
-- aux.FCheckAdditional prune
if not prune and aux.FCheckAdditional then
local mg_p=mg_base:Clone()
mg_p:Merge(Group.FromCards(table.unpack(partial)))
if not aux.FCheckAdditional(tc:GetOwner(),mg_p,tc) then
prune=true
end
end
-- early unique_by prune on partial subset via UniqueByMatching -- early unique_by prune on partial subset via UniqueByMatching
if not prune and grp.unique_by then if not prune and grp.unique_by then
local part_matcher=Fusion.UniqueByMatching(grp.unique_by,#partial) local part_matcher=Fusion.UniqueByMatching(grp.unique_by,#partial)
...@@ -4285,8 +4277,8 @@ function Fusion.UniqueByMatching(key_func,min_needed) ...@@ -4285,8 +4277,8 @@ function Fusion.UniqueByMatching(key_func,min_needed)
end end
--- Collects all keys used by the cards in `sel` assigned to slot i --- Collects all keys used by the cards in `sel` assigned to slot i
--- @param cards_sel Card[] the arrayified sel --- @param cards_sel Card[] the arrayified sel
--- @param mapping table mapping sel‐index → slot‐index --- @param mapping table mapping sel‐index → slot‐index
--- @param slot_idx number --- @param slot_idx number
--- @param key_func fun(Card):any[] --- @param key_func fun(Card):any[]
--- @return table used_keys --- @return table used_keys
......
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