summaryrefslogtreecommitdiff
path: root/tools/item_db.pl
diff options
context:
space:
mode:
Diffstat (limited to 'tools/item_db.pl')
-rwxr-xr-xtools/item_db.pl116
1 files changed, 0 insertions, 116 deletions
diff --git a/tools/item_db.pl b/tools/item_db.pl
deleted file mode 100755
index a2b443de9..000000000
--- a/tools/item_db.pl
+++ /dev/null
@@ -1,116 +0,0 @@
-#!/usr/bin/perl
-$db = "item_db";
-$nb_columns = 22;
-@str_col = (1,2,7,19,20,21);
-$line_format = "([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),([^\,]*),(\{.*\}),(\{.*\}),(\{.*\})";
-#$line_format = ;
-$create_table = "#
-# Table structure for table `item_db`
-#
-
-DROP TABLE IF EXISTS `item_db`;
-CREATE TABLE `item_db` (
- `id` smallint(5) unsigned NOT NULL default '0',
- `name_english` varchar(50) NOT NULL default '',
- `name_japanese` varchar(50) NOT NULL default '',
- `type` tinyint(2) unsigned NOT NULL default '0',
- `price_buy` mediumint(10) unsigned default NULL,
- `price_sell` mediumint(10) unsigned default NULL,
- `weight` smallint(5) unsigned NOT NULL default '0',
- `attack` smallint(3) unsigned default NULL,
- `defence` tinyint(3) unsigned default NULL,
- `range` tinyint(2) unsigned default NULL,
- `slots` tinyint(2) unsigned default NULL,
- `equip_jobs` int(12) unsigned default NULL,
- `equip_upper` tinyint(8) unsigned default NULL,
- `equip_genders` tinyint(2) unsigned default NULL,
- `equip_locations` smallint(4) unsigned default NULL,
- `weapon_level` tinyint(2) unsigned default NULL,
- `equip_level` tinyint(3) unsigned default NULL,
- `refineable` tinyint(1) unsigned default NULL,
- `view` smallint(3) unsigned default NULL,
- `script` text,
- `equip_script` text,
- `unequip_script` text,
- PRIMARY KEY (`id`)
-) ENGINE=MyISAM;
-";
-printf("%s\n",$create_table);
-while ($ligne=<STDIN>)
-{
- if ($ligne =~ /[^\r\n]+/)
- {
- $ligne = $&;
- if ($ligne =~ /^\/\//)
- {
- printf("# ");
- $ligne = substr($ligne, 2);
- }
- if ($ligne =~ $line_format) {
- @champ = ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20,$21,$22);
- } else {
- @champ = ();
- }
- if ($#champ != $nb_columns - 1)
- {
- # Can't parse, it's a real comment
- printf ("%s\n", $ligne);
- } else {
- printf("REPLACE INTO `%s` VALUES (", $db);
- for ($i=0; $i<$#champ; $i++)
- {
- printField($champ[$i],",",$i);
- }
- printField($champ[$#champ],");\n",$#champ);
- }
- }
-}
-print("\n");
-
-
-sub printField {
- my ($str, $suffix, $idCol) = @_;
- # Remove first { and last }
- if ($str =~ /{.*}/)
- {
- $str = substr($&,1,-1);
- }
- # If nothing, put NULL
- if ($str eq "") {
- printf("NULL%s", $suffix);
- } else {
- my $flag = 0;
- # Search if it's a string column ?
- foreach $col (@str_col)
- {
- if ($col == $idCol)
- {
- $flag = 1;
- break;
- }
- }
- if ($flag == 1)
- {
- # String column, so escape and add ''
- printf("'%s'%s", escape($str), $suffix);
- } else {
- # Not a string column
- printf("%s%s", $str,$suffix);
- }
- }
-}
-
-sub escape {
- my ($str) = @_;
- my @str_splitted = split("'", $str);
- my $result = "";
- for (my $i=0; $i<=$#str_splitted; $i++)
- {
- if ($i == 0) {
- $result = @str_splitted[0];
- } else {
- $result = $result."\\'".@str_splitted[$i];
- }
- }
- return $result
-}