print function for hook packet_vender_store2 just return in address memory of array
how should the method of data collection from array memory?
print "@itemList\n"; // this print quene just return in address memory of ARRAY(0x.......)
@itemList is a member of \@venderItemList in hook plugin from network receive servertype0
and how to extract data from @itemList in my plugin code?
@itemList should be containing the data from vender item list
as contains args:
$item->{price},
$item->{amount},
$index,
$item->{type},
$item->{nameID},
$item->{identified}, # should never happen
$item->{broken}, # should never happen
$item->{upgrade},
$item->{cards}
it's should be print item name if i print : just return empty string
print ("$itemList[$index]->{name}");
$index same with index in item vender
print for array addres memory didn't work
print "@{@itemList}\n";
#########################
Code: Select all
package vender;
use strict;
use Plugins;
use Globals;
use Utils;
use Misc;
use Log qw(message warning error debug);
use AI;
use Misc;
use Network;
use Network::Send;
# startup
Plugins::register('vender', 'automatically buy items from merchant vendors', \&Unload, \&Reload);
my $venderItemList = Plugins::addHook('packet_vender_store2', \&itemList);
sub Unload {
message "vender plugin unloading, ";
Plugins::delHook('packet_vender_store2', $venderItemList);
}
my $delay = 0.8;
my $time = time;
sub itemList {
my ($packet, $args) = @_;
my $venderID = $args->{venderID};
my @itemList = $args->{itemList};
print "@itemList\n"; // this print quene just return in address memory of ARRAY(0x.......)
}
# from src network receive servertype0
Plugins::callHook('packet_vender_store2', {
venderID => $venderID,
itemList => \@venderItemList
});