What you mean by"failt" to procude? My framework is controlling 30 trading bots on USWest and there are many videos on Youtube ... just search for "rotmg perl" ...
And I don't really care about your stupid preschool social engineering shit - sorry. ;-)
---------- Post added at 05:04 PM ---------- Previous post was at 04:52 PM ----------
By the way my framework is written in Perl/Moose and you wouldn't understand it most likely anyway ... here is a code example taken from my PacketFactoy and the Packet superclass for how my OO code looks like ...
And I don't really care about your stupid preschool social engineering shit - sorry. ;-)
---------- Post added at 05:04 PM ---------- Previous post was at 04:52 PM ----------
By the way my framework is written in Perl/Moose and you wouldn't understand it most likely anyway ... here is a code example taken from my PacketFactoy and the Packet superclass for how my OO code looks like ...
Code:
#!/usr/bin/perl -w
package Rotmg::PacketFactory;
use Moose;
#use MooseX::AbstractFactory; # use rebless/moosex::traits/roles?
with 'Rotmg::PacketFactory::Packet';
use Carp;
use Data::Dumper;
use Module::Load::Conditional qw(check_install can_load);
sub newPacket {
my $self=shift;
my $packetHandler=undef;
if(defined $self->packetName){
$packetHandler='Rotmg::PacketFactory::' . ucfirst(lc($self->packetName));
if(can_load(modules=>{$packetHandler=>undef})){
my $p=$packetHandler->meta->rebless_instance($self); # rebless into subclass so we don't need to copy all the packet data ...
print 'Reblessing into [' . ref($p) . '] ...' . "\n";
return $p;
}else{
carp 'PacketHandler ' . $packetHandler . ' not found or erroneous for packetType ' . $self->packetName . '!' . "\n";
}
}else{
carp 'PacketName not defined!' . "\n";
}
return $self;
}
__PACKAGE__->meta->make_immutable;
1;
Code:
#!/usr/bin/perl -w
package Rotmg::PacketFactory::Packet;
use Moose::Role;
use Carp;
use Rotmg::PacketConfig;
has 'length' => (isa => 'Int', is => 'rw', required => 0);
has 'packetId' => (isa => 'Int', is => 'rw', required => 0, trigger => \&_packetId_changed);
has 'packetName' => (isa => 'Str', is => 'rw', required => 0, trigger => \&_packetName_changed);
has 'encrypted' => (isa => 'Str', is => 'rw', required => 0);
has 'data' => (isa => 'Str', is => 'rw', required => 0);
has 'packetConfig' => (isa => 'Rotmg::PacketConfig', is => 'ro', required => 1, sub { return Rotmg::PacketConfig->new({'configFile'=>'../packetConfig.txt'}) });
sub _packetId_changed {
my $self=shift;
my $packetId=shift;
if(defined $packetId && !defined $self->packetName){
$self->packetName($self->packetConfig->packetId2packetName($packetId));
}
};
sub _packetName_changed {
my $self=shift;
my $packetName=shift;
if(defined $packetName && !defined $self->packetId){
$self->packetId($self->packetConfig->packetName2packetId($packetName));
}
};
__PACKAGE__->meta->make_immutable;
1;
