From d5461ef16f4b64ba784d3a29ee9b1b54a1e7dba3 Mon Sep 17 00:00:00 2001 From: Rudolf Polzer Date: Sun, 23 Jan 2011 19:33:15 +0100 Subject: [PATCH] weapon profiler: support a new file format that includes all data (for bots too, and damage, hits, kills in one file) --- misc/tools/WeaponEncounterProfile.pm | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/misc/tools/WeaponEncounterProfile.pm b/misc/tools/WeaponEncounterProfile.pm index 08d36bb1..1da3cc2b 100644 --- a/misc/tools/WeaponEncounterProfile.pm +++ b/misc/tools/WeaponEncounterProfile.pm @@ -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) -- 2.39.2