diff options
| author | Sworddragon <sworddragon2@aol.com> | 2011-01-06 00:51:31 +0100 |
|---|---|---|
| committer | oy <Tom_Adams@web.de> | 2011-01-06 12:27:50 +0100 |
| commit | 4ff61fcdaa84e874c862374976bf06bb1f367b7f (patch) | |
| tree | 1698ad6869f97a8e6f7f12d4bb4fd6688f7d5eb6 /datasrc | |
| parent | b90a015daff77074d9749585903c4d263cbadb88 (diff) | |
| download | zcatch-4ff61fcdaa84e874c862374976bf06bb1f367b7f.tar.gz zcatch-4ff61fcdaa84e874c862374976bf06bb1f367b7f.zip | |
Made compiling process Python 3 compatible
Diffstat (limited to 'datasrc')
| -rw-r--r-- | datasrc/compile.py | 91 | ||||
| -rw-r--r-- | datasrc/content.py | 2 | ||||
| -rw-r--r-- | datasrc/datatypes.py | 22 | ||||
| -rw-r--r-- | datasrc/network.py | 2 |
4 files changed, 58 insertions, 59 deletions
diff --git a/datasrc/compile.py b/datasrc/compile.py index 4b7be441..1a726637 100644 --- a/datasrc/compile.py +++ b/datasrc/compile.py @@ -23,23 +23,22 @@ def create_flags_table(names): return lines def EmitEnum(names, num): - print "enum" - print "{" - print "\t%s=0,"%names[0] + print("enum") + print("{") + print("\t%s=0," % names[0]) for name in names[1:]: - print "\t%s,"%name - print "\t%s" % num - print "};" + print("\t%s," % name) + print("\t%s" % num) + print("};") def EmitFlags(names, num): - print "enum" - print "{" + print("enum") + print("{") i = 0 for name in names: - print "\t%s = 1<<%d," % (name,i) + print("\t%s = 1<<%d," % (name,i)) i += 1 - print "};" - + print("};") gen_network_header = False gen_network_source = False @@ -56,28 +55,28 @@ if "server_content_header" in sys.argv: gen_server_content_header = True if "server_content_source" in sys.argv: gen_server_content_source = True if gen_client_content_header: - print "#ifndef CLIENT_CONTENT_HEADER" - print "#define CLIENT_CONTENT_HEADER" + print("#ifndef CLIENT_CONTENT_HEADER") + print("#define CLIENT_CONTENT_HEADER") if gen_server_content_header: - print "#ifndef SERVER_CONTENT_HEADER" - print "#define SERVER_CONTENT_HEADER" + print("#ifndef SERVER_CONTENT_HEADER") + print("#define SERVER_CONTENT_HEADER") if gen_client_content_header or gen_server_content_header: # emit the type declarations - contentlines = file("datasrc/content.py").readlines() + contentlines = open("datasrc/content.py", "rb").readlines() order = [] for line in contentlines: - line = line.strip() + line = line.decode("iso8859-1").strip() if line[:6] == "class " and '(Struct)' in line: order += [line.split()[1].split("(")[0]] for name in order: EmitTypeDeclaration(content.__dict__[name]) - + # the container pointer - print 'extern DATACONTAINER *g_pData;'; - + print('extern DATACONTAINER *g_pData;') + # enums EmitEnum(["IMAGE_%s"%i.name.value.upper() for i in content.container.images.items], "NUM_IMAGES") EmitEnum(["ANIM_%s"%i.name.value.upper() for i in content.container.animations.items], "NUM_ANIMS") @@ -85,41 +84,41 @@ if gen_client_content_header or gen_server_content_header: if gen_client_content_source or gen_server_content_source: if gen_client_content_source: - print '#include "client_data.h"' + print('#include "client_data.h"') if gen_server_content_source: - print '#include "server_data.h"' + print('#include "server_data.h"') EmitDefinition(content.container, "datacontainer") - print 'DATACONTAINER *g_pData = &datacontainer;'; + print('DATACONTAINER *g_pData = &datacontainer;') # NETWORK if gen_network_header: - print "#ifndef GAME_GENERATED_PROTOCOL_H" - print "#define GAME_GENERATED_PROTOCOL_H" - print network.RawHeader + print("#ifndef GAME_GENERATED_PROTOCOL_H") + print("#define GAME_GENERATED_PROTOCOL_H") + print(network.RawHeader) for e in network.Enums: - for l in create_enum_table(["%s_%s"%(e.name, v) for v in e.values], 'NUM_%sS'%e.name): print l - print "" + for l in create_enum_table(["%s_%s"%(e.name, v) for v in e.values], 'NUM_%sS'%e.name): print(l) + print("") for e in network.Flags: - for l in create_flags_table(["%s_%s" % (e.name, v) for v in e.values]): print l - print "" + for l in create_flags_table(["%s_%s" % (e.name, v) for v in e.values]): print(l) + print("") - for l in create_enum_table(["NETOBJ_INVALID"]+[o.enum_name for o in network.Objects], "NUM_NETOBJTYPES"): print l - print "" - for l in create_enum_table(["NETMSG_INVALID"]+[o.enum_name for o in network.Messages], "NUM_NETMSGTYPES"): print l - print "" + for l in create_enum_table(["NETOBJ_INVALID"]+[o.enum_name for o in network.Objects], "NUM_NETOBJTYPES"): print(l) + print("") + for l in create_enum_table(["NETMSG_INVALID"]+[o.enum_name for o in network.Messages], "NUM_NETMSGTYPES"): print(l) + print("") for item in network.Objects + network.Messages: for line in item.emit_declaration(): - print line - print "" + print(line) + print("") EmitEnum(["SOUND_%s"%i.name.value.upper() for i in content.container.sounds.items], "NUM_SOUNDS") EmitEnum(["WEAPON_%s"%i.name.value.upper() for i in content.container.weapons.id.items], "NUM_WEAPONS") - print """ + print(""" class CNetObjHandler { @@ -147,9 +146,9 @@ public: const char *FailedMsgOn(); }; -""" +""") - print "#endif // GAME_GENERATED_PROTOCOL_H" + print("#endif // GAME_GENERATED_PROTOCOL_H") if gen_network_source: @@ -228,13 +227,13 @@ if gen_network_source: for l in lines: - print l + print(l) if 0: for item in network.Objects: for line in item.emit_validate(): - print line - print "" + print(line) + print("") # create validate tables lines = [] @@ -271,8 +270,8 @@ if gen_network_source: if 0: for item in network.Messages: for line in item.emit_unpack(): - print line - print "" + print(line) + print("") lines += ['static void *secure_unpack_invalid(CUnpacker *pUnpacker) { return 0; }'] lines += ['typedef void *(*SECUREUNPACKFUNC)(CUnpacker *pUnpacker);'] @@ -313,7 +312,7 @@ if gen_network_source: for l in lines: - print l + print(l) if gen_client_content_header or gen_server_content_header: - print "#endif" + print("#endif") diff --git a/datasrc/content.py b/datasrc/content.py index a0917a9f..0b55bc68 100644 --- a/datasrc/content.py +++ b/datasrc/content.py @@ -169,7 +169,7 @@ class DataContainer(Struct): self.weapons = Weapons() def FileList(format, num): - return [format%(x+1) for x in xrange(0,num)] + return [format%(x+1) for x in range(0,num)] container = DataContainer() container.sounds.Add(SoundSet("gun_fire", FileList("audio/wp_gun_fire-%02d.wv", 3))) diff --git a/datasrc/datatypes.py b/datasrc/datatypes.py index 4e293ab1..ddb3c9e3 100644 --- a/datasrc/datatypes.py +++ b/datasrc/datatypes.py @@ -1,5 +1,5 @@ +import sys - GlobalIdCounter = 0 def GetID(): global GlobalIdCounter @@ -33,7 +33,7 @@ class BaseType: def __init__(self, type_name): self._type_name = type_name self._target_name = "INVALID" - self._id = GetID() # this is used to remeber what order the members have in structures etc + self._id = GetID() # this is used to remember what order the members have in structures etc def Identifyer(self): return "x"+str(self._id) def TargetName(self): return self._target_name @@ -57,18 +57,18 @@ class Struct(BaseType): def __init__(self, type_name): BaseType.__init__(self, type_name) def Members(self): - def sorter(a,b): - return a.var.ID()-b.var.ID() + def sorter(a): + return a.var.ID() m = [] for name in self.__dict__: if name[0] == "_": continue m += [MemberType(name, self.__dict__[name])] try: - m.sort(sorter) + m.sort(key = sorter) except: for v in m: - print v.name, v.var + print(v.name, v.var) sys.exit(-1) return m @@ -172,15 +172,15 @@ class Pointer(BaseType): def EmitTypeDeclaration(root): for l in root().EmitTypeDeclaration(""): - print l + print(l) def EmitDefinition(root, name): for l in root.EmitPreDefinition(name): - print l - print "%s %s = " % (root.TypeName(), name) + print(l) + print("%s %s = " % (root.TypeName(), name)) for l in root.EmitDefinition(name): - print l - print ";" + print(l) + print(";") # Network stuff after this diff --git a/datasrc/network.py b/datasrc/network.py index 61c69365..9b153016 100644 --- a/datasrc/network.py +++ b/datasrc/network.py @@ -4,7 +4,7 @@ Emotes = ["NORMAL", "PAIN", "HAPPY", "SURPRISE", "ANGRY", "BLINK"] PlayerStates = ["UNKNOWN", "PLAYING", "IN_MENU", "CHATTING"] GameFlags = ["TEAMS", "FLAGS"] -Emoticons = [str(x) for x in xrange(1,16)] +Emoticons = [str(x) for x in range(1,16)] Powerups = ["HEALTH", "ARMOR", "WEAPON", "NINJA"] |