summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bin/smt_fusion3
1 files changed, 3 insertions, 0 deletions
diff --git a/bin/smt_fusion b/bin/smt_fusion
index b4b6094..296cd01 100644
--- a/bin/smt_fusion
+++ b/bin/smt_fusion
@@ -83,9 +83,12 @@ sub party_fusion {
sort { $a->level <=> $b->level } map { _demon($_) } keys %$seen
), "\n";
}
+my $SEEN = {};
sub _party_fusion_recursive_fuse {
my ($seen, $deathstones, @demons) = @_;
+ return $seen if $SEEN->{join(';', @demons)}++;
+
$seen->{$_} = 1 for map { $_->name } @demons;
if (@demons > 1) {