diff options
author | Andrei Karas <akaras@inbox.ru> | 2014-09-24 11:41:39 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2014-09-24 11:41:39 +0300 |
commit | a8151acf92fba0e0c8b09e7f04dbb7a4bc89834a (patch) | |
tree | 1c12f772c9c060c35868958db5f82dddbace84f2 /hercules/maptool.py | |
parent | 1a381b5f46aa8708dfc5fe96ccb8dd8cfdddb2f2 (diff) | |
download | tools-a8151acf92fba0e0c8b09e7f04dbb7a4bc89834a.tar.gz tools-a8151acf92fba0e0c8b09e7f04dbb7a4bc89834a.tar.bz2 tools-a8151acf92fba0e0c8b09e7f04dbb7a4bc89834a.tar.xz tools-a8151acf92fba0e0c8b09e7f04dbb7a4bc89834a.zip |
hercules: add pets.xml generation.
Diffstat (limited to 'hercules/maptool.py')
-rwxr-xr-x | hercules/maptool.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/hercules/maptool.py b/hercules/maptool.py index fa3ecc8..26e5848 100755 --- a/hercules/maptool.py +++ b/hercules/maptool.py @@ -35,6 +35,8 @@ def detectCommand(): return "monsterstoxml" elif sys.argv[0][-20:] == "/mercenariestoxml.py": return "mercenariestoxml" + elif sys.argv[0][-13:] == "/petstoxml.py": + return "petstoxml" return "help" def makeDir(path): @@ -394,6 +396,27 @@ def convertMercenaries(): data = data + tpl.format(mercenaryId, mercenarySprite) saveFile(destDir + "mercenaries.xml", mercenaries.format(data)) +def convertPets(): + destDir = "clientdata/" + templatesDir = "templates/" + petsDbFile = "serverdata/db/pet_db.txt" + fieldsSplit = re.compile(",") + makeDir(destDir) + tpl = readFile(templatesDir + "pet.tpl") + pets = readFile(templatesDir + "pets.xml") + data = "" + petSprite = "<sprite>monsters/tortuga.xml</sprite>"; + with open(petsDbFile, "r") as f: + for line in f: + if line == "" or line[0:2] == "//": + continue + rows = fieldsSplit.split(line) + if len(rows) < 9: + continue + petId = rows[0] + data = data + tpl.format(petId, petSprite) + saveFile(destDir + "pets.xml", pets.format(data)) + def readMapCache(path, cmd): if cmd == "help": @@ -410,6 +433,9 @@ def readMapCache(path, cmd): elif cmd == "mercenariestoxml": convertMercenaries(); return + elif cmd == "petstoxml": + convertPets(); + return with open(path, "rb") as f: size = readInt32(f) |