Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/perl
- use strict;
- use warnings;
- use feature qw/say/;
- my %items;
- my %lead_owners;
- my %chars;
- my %filter;
- $filter{realm} = 'Arathor/Hellfire';
- $filter{faction} = 'Alliance';
- $filter{classes} = {
- 'Armor' => '0',
- 'Consumable' => '1',
- 'Container' => '0',
- 'Gem' => '1',
- 'Key' => '0',
- 'Miscellaneous' => '0',
- 'Money' => '0',
- 'Reagent' => '0',
- 'Recipe' => '0',
- 'Projectile' => '0',
- 'Quest' => '0',
- 'Quiver' => '0',
- 'Tradeskill' => '1',
- 'Weapon' => '0'
- };
- foreach (<>) {
- chomp;
- my ($realm,$faction,$char,$location,$item_class,$item_subclass,$item_name,$item_quantity,$item_id) = split(/,/,$_);
- grep { $_ =~ s/(^"|"$)//g; } ($realm,$faction,$char,$location,$item_class,$item_subclass,$item_name,$item_quantity,$item_id);
- if ($realm eq $filter{realm} and $faction eq $filter{faction}) {
- if ($filter{classes}{$item_class}) {
- if (defined($items{$item_name}{$char})) { $item_quantity = $items{$item_name}{$char} + $item_quantity }
- $items{$item_name}{$char} = $item_quantity;
- $chars{$char}[$#{$chars{$char}}+1] = $item_name;
- }
- }
- }
- while (my ($item,$value) = each (%items)) {
- my %subkeys = %{$items{$item}};
- @{$lead_owners{$item}} = ('',0);
- while (my ($char,$quantity) = each (%subkeys)) {
- if ($quantity > $lead_owners{$item}[1]) {
- @{$lead_owners{$item}} = ($char,$quantity);
- }
- }
- }
- while (my ($char,$itemlist) = each (%chars)) {
- say $char;
- foreach (@{$itemlist}) {
- my $item = $_;
- my $quantity = $items{$item}{$char};
- if ($char ne $lead_owners{$item}[0]) {
- say "\t$item ($quantity) -> $lead_owners{$item}[0] ($lead_owners{$item}[1])";
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement