@@ -210,7 +210,7 @@ def __init__(self, name, values):
210210 self .values = values
211211
212212class NetObject :
213- def __init__ (self , name , variables ):
213+ def __init__ (self , name , variables , ex = None , fixup = True ):
214214 l = name .split (":" )
215215 self .name = l [0 ]
216216 self .base = ""
@@ -220,6 +220,10 @@ def __init__(self, name, variables):
220220 self .struct_name = "CNetObj_%s" % self .name
221221 self .enum_name = "NETOBJTYPE_%s" % self .name .upper ()
222222 self .variables = variables
223+ if fixup and ex != None :
224+ ex = "object-{}" .format (ex )
225+ self .ex = ex
226+
223227 def emit_declaration (self ):
224228 if self .base :
225229 lines = ["struct %s : public %s" % (self .struct_name ,self .base_struct_name ), "{" ]
@@ -245,15 +249,17 @@ def emit_validate(self, base_item):
245249
246250
247251class NetEvent (NetObject ):
248- def __init__ (self , name , variables ):
249- NetObject .__init__ (self , name , variables )
252+ def __init__ (self , name , variables , ex = None ):
253+ NetObject .__init__ (self , name , variables , ex = ex )
250254 self .base_struct_name = "CNetEvent_%s" % self .base
251255 self .struct_name = "CNetEvent_%s" % self .name
252256 self .enum_name = "NETEVENTTYPE_%s" % self .name .upper ()
253257
254258class NetMessage (NetObject ):
255- def __init__ (self , name , variables ):
256- NetObject .__init__ (self , name , variables )
259+ def __init__ (self , name , variables , ex = None ):
260+ if ex != None :
261+ ex = "message-{}" .format (ex )
262+ NetObject .__init__ (self , name , variables , ex = ex , fixup = False )
257263 self .base_struct_name = "CNetMsg_%s" % self .base
258264 self .struct_name = "CNetMsg_%s" % self .name
259265 self .enum_name = "NETMSGTYPE_%s" % self .name .upper ()
@@ -399,3 +405,15 @@ def emit_unpack_check(self):
399405 self .var .name = self .base_name + "[%d]" % i
400406 lines += self .var .emit_unpack_check ()
401407 return lines
408+
409+ class NetObjectEx (NetObject ):
410+ def __init__ (self , name , ex , variables ):
411+ NetObject .__init__ (self , name , variables , ex = ex )
412+
413+ class NetEventEx (NetEvent ):
414+ def __init__ (self , name , ex , variables ):
415+ NetEvent .__init__ (self , name , variables , ex = ex )
416+
417+ class NetMessageEx (NetMessage ):
418+ def __init__ (self , name , ex , variables ):
419+ NetMessage .__init__ (self , name , variables , ex = ex )
0 commit comments