eqemu-server/utils/scripts/factionmod.pl
2013-02-16 16:14:39 -08:00

112 lines
4.4 KiB
Perl

use DBI;
my $db = peq;
my $user = eqemu;
my $pass = eqemu;
my $host = localhost;
my $source = "DBI:mysql:database=$db;host=$host";
my $dbh = DBI->connect($source, $user, $pass) || die "Could not create db handle\n";
my $select_query = "SELECT id,name,base,mod_c1,mod_c2,mod_c3,mod_c4,mod_c5,mod_c6,mod_c7,mod_c8,mod_c9,mod_c10,mod_c11,mod_c12,";
$select_query .= "mod_c13,mod_c14,mod_c15,mod_c16,mod_r1,mod_r2,mod_r3,mod_r4,mod_r5,mod_r6,mod_r7,mod_r8,mod_r9,mod_r10,mod_r11,";
$select_query .= "mod_r12,mod_r14,mod_r42,mod_r75,mod_r108,mod_r128,mod_r130,mod_r161,mod_r330,mod_r367,mod_r522,mod_d140,mod_d201,";
$select_query .= "mod_d202,mod_d203,mod_d204,mod_d205,mod_d206,mod_d207,mod_d208,mod_d209,mod_d210,mod_d211,mod_d212,mod_d213,";
$select_query .= "mod_d214,mod_d215,mod_d216 FROM faction_list";
my $count = 0;
my $sth = $dbh->prepare($select_query);
$sth->execute();
while (my $ref = $sth->fetchrow_hashref()) {
for(my $i = 1; $i <= 16; $i++) {
my $field_name = "mod_c" . $i;
if($ref->{$field_name} != 0) {
my $mod_name = "c" . $i;
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{$field_name}, $mod_name);
$count++;
}
}
for(my $i = 1; $i <= 12; $i++) {
my $field_name = "mod_r" . $i;
if($ref->{$field_name} != 0) {
my $mod_name = "r" . $i;
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{$field_name}, $mod_name);
$count++;
}
}
if($ref->{"mod_r14"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r14"}, "r14");
$count++;
}
if($ref->{"mod_r42"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r42"}, "r42");
$count++;
}
if($ref->{"mod_r75"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r75"}, "r75");
$count++;
}
if($ref->{"mod_r108"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r108"}, "r108");
$count++;
}
if($ref->{"mod_r128"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r128"}, "r128");
$count++;
}
if($ref->{"mod_r130"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r130"}, "r130");
$count++;
}
if($ref->{"mod_r161"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r161"}, "r161");
$count++;
}
if($ref->{"mod_r330"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r330"}, "r330");
$count++;
}
if($ref->{"mod_r367"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r367"}, "r367");
$count++;
}
if($ref->{"mod_r522"} != 0) {
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{"mod_r522"}, "r522");
$count++;
}
for(my $i = 201; $i <= 216; $i++) {
my $field_name = "mod_d" . $i;
if($ref->{$field_name} != 0) {
my $mod_name = "d" . $i;
my $rsth = $dbh->prepare("REPLACE INTO `faction_list_mod` (`faction_id`,`mod`,`mod_name`) VALUES(?, ?, ?)");
$rsth->execute($ref->{id}, $ref->{$field_name}, $mod_name);
$count++;
}
}
}
print "$count entries created.\n";