weapon profiler: support a new file format that includes all data (for bots too, and damage, hits, kills in one file)

This commit is contained in:
Rudolf Polzer 2011-01-23 19:33:15 +01:00
parent 9e4a6e1d65
commit d5461ef16f

View File

@ -27,7 +27,27 @@ sub load($)
/^$/ and next;
/^#/ and next;
/^\/\// and next;
my ($addr, $map, $attackerweapon, $targweapon, $value) = split /\t/, $_;
my ($addr, $map, $attackerweapon, $targweapon, $value);
if(/^(\S+)\t(\S+)\t(\d+) (\d+)\t(\d+) (\d+)\t(\d+) (\d+) (\S+)$/)
{
# new format (Xonotic)
($addr, $map, $attackerweapon, $targweapon) = ($1, $2, $3, $5);
next if $4 and not $ENV{WEAPONPROFILER_WITHBOTS};
next if $6 and not $ENV{WEAPONPROFILER_WITHBOTS};
$value =
$ENV{WEAPONPROFILER_DAMAGE} ? $9 :
$ENV{WEAPONPROFILER_HITS} ? $8 :
$7;
}
elsif(/^(\S+)\t(\S+)\t(\d+)\t(\d+)\t(\S+)$/)
{
# legacy format (Nexuiz)
($addr, $map, $attackerweapon, $targweapon, $value) = ($1, $2, $3, $4, $5);
}
else
{
next;
}
$targweapon = int $self->weaponid_from_name($targweapon)
if $targweapon ne int $targweapon;
$attackerweapon = int $self->weaponid_from_name($attackerweapon)