further refactoring. fixing DRY
parent
df4078a643
commit
39983f5c56
|
@ -159,37 +159,18 @@ Catalyst Controller.
|
|||
|
||||
=cut
|
||||
|
||||
sub gen_der {
|
||||
my @g;
|
||||
for my $gender (keys %genders) {
|
||||
for (my $x = 0; $x <= ($genders{$gender} * 10); $x++) {
|
||||
push @g, $gender;
|
||||
}
|
||||
}
|
||||
return shuffle @g;
|
||||
}
|
||||
|
||||
sub gen_races {
|
||||
my %races = @_;
|
||||
my @r;
|
||||
for my $k (keys %races) {
|
||||
my $v = $races{$k};
|
||||
# generates a random array using the probabilities in the list
|
||||
sub gen_array {
|
||||
my %list = @_;
|
||||
my @a;
|
||||
for my $k (keys %list) {
|
||||
my $v = $list{$k};
|
||||
for (1..$v*10) {
|
||||
push @r, $k;
|
||||
push @a, $k;
|
||||
}
|
||||
}
|
||||
return shuffle @r;
|
||||
}
|
||||
|
||||
sub gen_classes {
|
||||
my %classes = @_;
|
||||
my @c;
|
||||
for my $class (keys %classes) {
|
||||
for (my $x = 0; $x <= ($classes{$class} * 10); $x++) {
|
||||
push @c, $class;
|
||||
}
|
||||
}
|
||||
return shuffle @c;
|
||||
return shuffle @a;
|
||||
}
|
||||
|
||||
sub randomlist($$$) {
|
||||
|
@ -197,11 +178,11 @@ sub randomlist($$$) {
|
|||
my %races = %{shift()};
|
||||
my %classes = %{shift()};
|
||||
|
||||
my @r = gen_races(%races);
|
||||
my @c = gen_classes(%classes);
|
||||
my @g = gen_der();
|
||||
my @r = gen_array(%races);
|
||||
my @c = gen_array(%classes);
|
||||
my @g = gen_array(%genders);
|
||||
my @characters;
|
||||
for (my $x = 0; $x < 10; $x++) {
|
||||
for (my $x = 0; $x < $count; $x++) {
|
||||
my $race = $r[int(rand(scalar @r))];
|
||||
my $gender = $g[int(rand(scalar @g))];
|
||||
my $class = $c[int(rand(scalar @c))];
|
||||
|
|
Loading…
Reference in New Issue