From a6b29a0d67b261c52b79033c1f140502b27cf428 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Mon, 26 May 2014 13:27:53 -0400 Subject: pass options through everywhere --- lib/Games/SMTNocturne/Demons.pm | 16 +++++++++++----- lib/Games/SMTNocturne/Demons/Fusion.pm | 4 ++-- 2 files changed, 13 insertions(+), 7 deletions(-) (limited to 'lib/Games') diff --git a/lib/Games/SMTNocturne/Demons.pm b/lib/Games/SMTNocturne/Demons.pm index 8241795..7df5358 100644 --- a/lib/Games/SMTNocturne/Demons.pm +++ b/lib/Games/SMTNocturne/Demons.pm @@ -85,7 +85,7 @@ sub fusions_for { for my $demon2 (Games::SMTNocturne::Demons::Demon->from_type($type2)) { next if defined $options->{max_level} && $options->{max_level} < $demon2->level; - push @fusions, [ $demon1, $demon2 ] + push @fusions, [ $options, $demon1, $demon2 ] if (fuse($demon1, $demon2, $options) || '') eq $demon; } } @@ -119,9 +119,15 @@ sub fusions_for { for my $demon1 (@{ $special->{demon1} }) { for my $demon2 (@{ $special->{demon2} }) { for my $demon3 (@{ $special->{demon3} }) { - push @special_fusions, [ $demon1, $demon2, $demon3 ]; - push @special_fusions, [ $demon1, $demon3, $demon2 ]; - push @special_fusions, [ $demon2, $demon3, $demon1 ]; + push @special_fusions, [ + $options, $demon1, $demon2, $demon3 + ]; + push @special_fusions, [ + $options, $demon1, $demon3, $demon2 + ]; + push @special_fusions, [ + $options, $demon2, $demon3, $demon1 + ]; } } } @@ -129,7 +135,7 @@ sub fusions_for { elsif ($special->{demon2}) { for my $demon1 (@{ $special->{demon1} }) { for my $demon2 (@{ $special->{demon2} }) { - push @special_fusions, [ $demon1, $demon2 ]; + push @special_fusions, [ $options, $demon1, $demon2 ]; } } } diff --git a/lib/Games/SMTNocturne/Demons/Fusion.pm b/lib/Games/SMTNocturne/Demons/Fusion.pm index 045b1c6..9ffe9bb 100644 --- a/lib/Games/SMTNocturne/Demons/Fusion.pm +++ b/lib/Games/SMTNocturne/Demons/Fusion.pm @@ -6,7 +6,7 @@ use overload '""' => 'to_string'; use Games::SMTNocturne::Demons::Demon; sub new { - my ($class, $demon1, $demon2, $options, $sacrifice, $kagatsuchi) = @_; + my ($class, $options, $demon1, $demon2, $sacrifice, $kagatsuchi) = @_; my $attrs = {}; @@ -63,7 +63,7 @@ sub all_demons { sub raw { my $self = shift; - my $array = [ @{ $self->demons } ]; + my $array = [ $self->options, @{ $self->demons } ]; push @$array, $self->sacrifice if $self->sacrifice; push @$array, "" -- cgit v1.2.3