From: Digital X. <dig...@us...> - 2007-03-15 20:00:01
|
Update of /cvsroot/openrpg/openrpg1/orpg/networking In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv10416/orpg/networking Modified Files: Tag: BRANCH-1-7-1 mplay_server.py Log Message: Fixed a bug in the room message system Index: mplay_server.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/networking/mplay_server.py,v retrieving revision 1.133.2.4 retrieving revision 1.133.2.5 diff -C2 -d -r1.133.2.4 -r1.133.2.5 *** mplay_server.py 14 Mar 2007 22:29:05 -0000 1.133.2.4 --- mplay_server.py 15 Mar 2007 19:59:57 -0000 1.133.2.5 *************** *** 383,391 **** boot_pwd = self.configDoc.getAttribute("boot") # Update the lobby with the passwords if they've been specified if len(boot_pwd): ! self.groups = {'0': game_group( '0', 'Lobby', "", 'The game lobby', boot_pwd, "", ! orpg.dirpath.dir_struct["user"]+'Lobby_map.xml', ! orpg.dirpath.dir_struct["user"]+'LobbyMessage.html', 1 ) } --- 383,403 ---- boot_pwd = self.configDoc.getAttribute("boot") + map_node = service_node = self.configDoc.getElementsByTagName("map")[0] + msg_node = service_node = self.configDoc.getElementsByTagName("message")[0] + + mapFile = map_node.getAttribute('file') + msgFile = msg_node.getAttribute('file') + + if mapFile == '': + mapFile = 'Lobby_map.xml' + + if msgFile == '': + msgFile = 'LobbyMessage.html' + # Update the lobby with the passwords if they've been specified if len(boot_pwd): ! self.groups = {'0': game_group( '0', LobbyName, "", 'The game lobby', boot_pwd, "", ! orpg.dirpath.dir_struct["user"] + mapFile.replace("myfiles/", ""), ! orpg.dirpath.dir_struct["user"] + msgFile.replace("myfiles/", ""), 1 ) } *************** *** 417,442 **** - #finds out if the user wants a default room message, and what file the user wants --akoman - #edit: jan10/03 - I assumed there would always be a newroom setting. Modified code to make it optional - tags = self.configDoc.getElementsByTagName("newrooms") - self.defaultMessageFile = "" # This try/except bit is to allow older versions of python to continue without a list error. - try: - if tags.length > 0: - newroom_node = tags[0] - dmf = newroom_node.getAttribute("file") - if dmf != "": - self.defaultMessageFile = dmf - except: - try: - if tags > 0: - newroom_node = tags[0] - dmf = newroom_node.getAttribute("file") - if dmf != "": - self.defaultMessageFile = dmf - except: - pass --- 429,435 ---- *************** *** 510,514 **** map = setting.getAttribute('file') if map != "": ! roomdefault_map = map self.log_msg("Room Defaults: Using " + str(map) + " for room map") except: --- 503,507 ---- map = setting.getAttribute('file') if map != "": ! roomdefault_map = orpg.dirpath.dir_struct["user"] + map.replace("myfiles/", "") self.log_msg("Room Defaults: Using " + str(map) + " for room map") except: *************** *** 519,523 **** msg = setting.getAttribute('file') if msg != "": ! roomdefault_msg = msg self.log_msg("Room Defaults: Using " + str(msg) + " for room messages") except: --- 512,519 ---- msg = setting.getAttribute('file') if msg != "": ! if msg[:4].lower() == 'http': ! roomdefault_msg = msg ! else: ! roomdefault_msg = orpg.dirpath.dir_struct["user"] + msg.replace("myfiles/", "") self.log_msg("Room Defaults: Using " + str(msg) + " for room messages") except: *************** *** 534,537 **** --- 530,538 ---- self.defaultMessageFile = None + if roomdefault_map != "" or roomdefault_map != None: + self.defaultMapFile = roomdefault_map #<room_defaults> tag superceeds older <newrooms> tag + else: + self.defaultMapFile = None + ##### room default map not handled yet. SETTING IGNORED if roomdefault_pass == 0: self.allow_room_passwords = 0 *************** *** 585,597 **** # we only care about the first map element found -- others are ignored mapElement = element.getElementsByTagName('map')[0] ! mapFile = mapElement.getAttribute('file') messageElement = element.getElementsByTagName('message')[0] messageFile = messageElement.getAttribute('file') # Make sure we have a message to even mess with ! if( len(messageFile) == 0 ): messageFile = self.defaultMessageFile #create the new persistant group self.new_group( roomName, roomPassword, bootPassword, minVersion, mapFile, messageFile, persist = 1 ) --- 586,604 ---- # we only care about the first map element found -- others are ignored mapElement = element.getElementsByTagName('map')[0] ! mapFile = orpg.dirpath.dir_struct["user"] + mapElement.getAttribute('file') messageElement = element.getElementsByTagName('message')[0] messageFile = messageElement.getAttribute('file') + if messageFile[:4] != 'http': + messageFile = orpg.dirpath.dir_struct["user"] + messageFile.replace("myfiles/", "") + # Make sure we have a message to even mess with ! if(len(messageFile) == 0): messageFile = self.defaultMessageFile + if(len(mapFile) == 0): + mapFile = self.defaultMapFile + #create the new persistant group self.new_group( roomName, roomPassword, bootPassword, minVersion, mapFile, messageFile, persist = 1 ) *************** *** 1794,1798 **** roomMsgFile = open(data[0]) else: ! roomMsgFile = open(orpg.dirpath.dir_struct["user"] + self.groups[group_id].messageFile, "r" ) roomMsg = roomMsgFile.read() roomMsgFile.close() --- 1801,1805 ---- roomMsgFile = open(data[0]) else: ! roomMsgFile = open(self.groups[group_id].messageFile, "r") roomMsg = roomMsgFile.read() roomMsgFile.close() |