From 3c410c7ab75a2f730ef41ca8d0c55fe1fc23ac13 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Thu, 19 Feb 2015 00:02:49 +0300 Subject: hercules: convert to acc_reg_num_db.sql --- hercules/code/server/accreg.py | 53 +++++++++++++++++++++++++++++++++++++++ hercules/code/server/evol/main.py | 2 ++ hercules/code/server/tmw/main.py | 2 ++ 3 files changed, 57 insertions(+) create mode 100644 hercules/code/server/accreg.py (limited to 'hercules/code/server') diff --git a/hercules/code/server/accreg.py b/hercules/code/server/accreg.py new file mode 100644 index 0000000..98b0934 --- /dev/null +++ b/hercules/code/server/accreg.py @@ -0,0 +1,53 @@ +# -*- coding: utf8 -*- +# +# Copyright (C) 2014 Evol Online +# Author: Andrei Karas (4144) + +import re + +from code.fileutils import * +from code.stringutils import * +from code.server.dbitem import * + +def convertAccReg(): + srcFile = "olddb/accreg.txt" + dstFile = "newdb/acc_reg_num_db.sql" + fieldsSplit = re.compile("\t") + comaSplit = re.compile(",") + spaceSplit = re.compile(" ") + tpl = readFile("templates/acc_reg_num_db.sql") + firstLine = True + with open(dstFile, "w") as w: + w.write(tpl) + w.write("INSERT INTO `acc_reg_num_db` VALUES ") + with open(srcFile, "r") as r: + for line in r: + if line[:2] == "//": + continue + line = stripNewLine(line) + rows = fieldsSplit.split(line) + if len(rows) != 2: + print "wrong accreg.txt line: " + line + continue + + accountId = rows[0] + + data = spaceSplit.split(rows[1]) + for varStr in data: + if varStr == "": + continue + + tmp = comaSplit.split(varStr) + + if firstLine == False: + w.write(",\n") + else: + firstLine = False + + w.write(("({account_id},'{key}',{index},{value})").format( + account_id = accountId, + key = tmp[0], + index = "0", + value = tmp[1] + )) + w.write("\n") diff --git a/hercules/code/server/evol/main.py b/hercules/code/server/evol/main.py index f00192b..8d62d17 100644 --- a/hercules/code/server/evol/main.py +++ b/hercules/code/server/evol/main.py @@ -5,6 +5,7 @@ # Author: Andrei Karas (4144) from code.server.account import * +from code.server.accreg import * from code.server.storage import * from code.server.db.char import * from code.server.db.charregnumdb import * @@ -38,3 +39,4 @@ def dbEvolMain(): saveSkillTable(users) saveInventoryTable(users) convertStorage() + convertAccReg() diff --git a/hercules/code/server/tmw/main.py b/hercules/code/server/tmw/main.py index 8e2e9e3..da8951c 100644 --- a/hercules/code/server/tmw/main.py +++ b/hercules/code/server/tmw/main.py @@ -5,6 +5,7 @@ # Author: Andrei Karas (4144) from code.server.account import * +from code.server.accreg import * from code.server.storage import * from code.server.db.char import * from code.server.db.charregnumdb import * @@ -41,3 +42,4 @@ def dbTmwMain(): saveSkillTable(users) saveInventoryTable(users) convertStorage() + convertAccReg() -- cgit v1.2.3-60-g2f50