git.shiar.nl
/
wormy.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Parse::Binary::Nested: simple non-OO unpackf
[wormy.git]
/
parse-wormedit
diff --git
a/parse-wormedit
b/parse-wormedit
index 585c03a659d9c94343facb91e0335afd9e1fab8b..ed64118e23ef31f7f7f8fc8cce90c9b6427c7b9a 100755
(executable)
--- a/
parse-wormedit
+++ b/
parse-wormedit
@@
-19,7
+19,7
@@
package Shiar_Parse::WormEdit;
use strict;
use warnings;
use strict;
use warnings;
-use Parse::Binary::Nested;
+use Parse::Binary::Nested
qw(unpackf)
;
our %MAGICID = (
"WormEdit053\000LVL" => 53,
our %MAGICID = (
"WormEdit053\000LVL" => 53,
@@
-153,7
+153,7
@@
sub read {
# convert to an easily accessible hash
push @FORMAT, -trail => 'a*';
# convert to an easily accessible hash
push @FORMAT, -trail => 'a*';
- my $data =
Parse::Binary::Nested->new(\@FORMAT)->unpackf(
$input);
+ my $data =
unpackf(\@FORMAT,
$input);
warn "Trailing data left unparsed\n" if length delete $data->{-trail};
$data->{format} = 'WormEdit';
return $data;
warn "Trailing data left unparsed\n" if length delete $data->{-trail};
$data->{format} = 'WormEdit';
return $data;
@@
-167,7
+167,7
@@
use warnings;
use List::Util qw(sum min max);
use Data::Dumper;
use List::Util qw(sum min max);
use Data::Dumper;
-use Parse::Binary::Nested;
+use Parse::Binary::Nested
qw(unpackf)
;
sub read {
my ($self, $input) = @_;
sub read {
my ($self, $input) = @_;
@@
-293,7
+293,7
@@
sub read {
}
}
}
}
- my $data =
Parse::Binary::Nested->new(\@FORMAT)->unpackf(
$input);
+ my $data =
unpackf(\@FORMAT,
$input);
my $offset = 0;
$offsetbase += 1 + @{ $data->{sprite} } if $data->{sprite};
$data->{moderef}->{offset}->{single} == $offsetbase
my $offset = 0;
$offsetbase += 1 + @{ $data->{sprite} } if $data->{sprite};
$data->{moderef}->{offset}->{single} == $offsetbase