You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(5) |
Dec
(2) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(4) |
Feb
(5) |
Mar
(56) |
Apr
(110) |
May
(187) |
Jun
(317) |
Jul
(280) |
Aug
(191) |
Sep
(42) |
Oct
(104) |
Nov
(123) |
Dec
(80) |
2002 |
Jan
(281) |
Feb
(251) |
Mar
(238) |
Apr
(70) |
May
(118) |
Jun
(117) |
Jul
(74) |
Aug
(104) |
Sep
(42) |
Oct
(36) |
Nov
(60) |
Dec
(60) |
2003 |
Jan
(183) |
Feb
(45) |
Mar
(111) |
Apr
(89) |
May
(38) |
Jun
(37) |
Jul
(14) |
Aug
(31) |
Sep
(37) |
Oct
(87) |
Nov
(179) |
Dec
(93) |
2004 |
Jan
(32) |
Feb
(31) |
Mar
(1) |
Apr
(5) |
May
(76) |
Jun
(20) |
Jul
(4) |
Aug
(9) |
Sep
|
Oct
(5) |
Nov
(5) |
Dec
(30) |
2005 |
Jan
(33) |
Feb
(30) |
Mar
(41) |
Apr
(20) |
May
(73) |
Jun
(33) |
Jul
(151) |
Aug
(104) |
Sep
(76) |
Oct
(34) |
Nov
(86) |
Dec
(151) |
2006 |
Jan
(136) |
Feb
(39) |
Mar
(17) |
Apr
(18) |
May
(62) |
Jun
(92) |
Jul
(13) |
Aug
(15) |
Sep
(47) |
Oct
(207) |
Nov
(217) |
Dec
(48) |
2007 |
Jan
(66) |
Feb
(199) |
Mar
(130) |
Apr
(90) |
May
(70) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Digital X. <dig...@us...> - 2007-03-14 22:36:12
|
Update of /cvsroot/openrpg/openrpg1/orpg In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv10057/orpg Modified Files: orpg_version.py Log Message: Index: orpg_version.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/orpg_version.py,v retrieving revision 1.107 retrieving revision 1.108 diff -C2 -d -r1.107 -r1.108 *** orpg_version.py 13 Mar 2007 23:56:44 -0000 1.107 --- orpg_version.py 14 Mar 2007 22:36:12 -0000 1.108 *************** *** 3,7 **** #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070314-00" --- 3,7 ---- #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070314-01" |
From: Digital X. <dig...@us...> - 2007-03-14 22:35:37
|
Update of /cvsroot/openrpg/openrpg1/orpg In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv9685/orpg Modified Files: Tag: BRANCH-1-7-1 orpg_version.py Log Message: Index: orpg_version.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/orpg_version.py,v retrieving revision 1.98.2.7 retrieving revision 1.98.2.8 diff -C2 -d -r1.98.2.7 -r1.98.2.8 *** orpg_version.py 14 Mar 2007 20:02:25 -0000 1.98.2.7 --- orpg_version.py 14 Mar 2007 22:35:37 -0000 1.98.2.8 *************** *** 3,7 **** #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070314-00" --- 3,7 ---- #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070314-01" |
From: Digital X. <dig...@us...> - 2007-03-14 22:30:15
|
Update of /cvsroot/openrpg/openrpg1/orpg/networking In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv7215/orpg/networking Modified Files: mplay_server.py Log Message: Fixed a bug that was causing room messages to be loaded from the improper directory on *nix Index: mplay_server.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/networking/mplay_server.py,v retrieving revision 1.139 retrieving revision 1.140 diff -C2 -d -r1.139 -r1.140 *** mplay_server.py 13 Mar 2007 23:55:57 -0000 1.139 --- mplay_server.py 14 Mar 2007 22:30:07 -0000 1.140 *************** *** 1811,1815 **** roomMsgFile = open(data[0]) else: ! roomMsgFile = open( self.groups[group_id].messageFile, "r" ) roomMsg = roomMsgFile.read() roomMsgFile.close() --- 1811,1815 ---- roomMsgFile = open(data[0]) else: ! roomMsgFile = open( orpg.dirpath.dir_struct["user"] + self.groups[group_id].messageFile, "r" ) roomMsg = roomMsgFile.read() roomMsgFile.close() |
From: Digital X. <dig...@us...> - 2007-03-14 22:29:07
|
Update of /cvsroot/openrpg/openrpg1/orpg/networking In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv6804/orpg/networking Modified Files: Tag: BRANCH-1-7-1 mplay_server.py Log Message: Fixed a bug that was causing room messages to be loaded from the improper directory on *nix Index: mplay_server.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/networking/mplay_server.py,v retrieving revision 1.133.2.3 retrieving revision 1.133.2.4 diff -C2 -d -r1.133.2.3 -r1.133.2.4 *** mplay_server.py 13 Mar 2007 20:47:43 -0000 1.133.2.3 --- mplay_server.py 14 Mar 2007 22:29:05 -0000 1.133.2.4 *************** *** 1794,1798 **** roomMsgFile = open(data[0]) else: ! roomMsgFile = open( self.groups[group_id].messageFile, "r" ) roomMsg = roomMsgFile.read() roomMsgFile.close() --- 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() |
From: Digital X. <dig...@us...> - 2007-03-14 20:02:26
|
Update of /cvsroot/openrpg/openrpg1/orpg In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv21991/orpg Modified Files: Tag: BRANCH-1-7-1 orpg_version.py Log Message: Index: orpg_version.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/orpg_version.py,v retrieving revision 1.98.2.6 retrieving revision 1.98.2.7 diff -C2 -d -r1.98.2.6 -r1.98.2.7 *** orpg_version.py 13 Mar 2007 20:48:05 -0000 1.98.2.6 --- orpg_version.py 14 Mar 2007 20:02:25 -0000 1.98.2.7 *************** *** 3,7 **** #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070313-00" --- 3,7 ---- #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070314-00" |
From: Digital X. <dig...@us...> - 2007-03-14 00:03:15
|
Update of /cvsroot/openrpg/openrpg1/orpg/chat In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv30695/orpg/chat Modified Files: chatwnd.py Log Message: Index: chatwnd.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/chat/chatwnd.py,v retrieving revision 1.165 retrieving revision 1.166 diff -C2 -d -r1.165 -r1.166 *** chatwnd.py 13 Mar 2007 23:11:42 -0000 1.165 --- chatwnd.py 14 Mar 2007 00:03:12 -0000 1.166 *************** *** 2331,2335 **** for i in xrange(0,len(matches)): ! dlg = wx.TextEntryDialog(self, matches[i][1] + "?", "Missing Value?") dlg.SetValue('') if matches[i][1] != '': --- 2331,2338 ---- for i in xrange(0,len(matches)): ! lb = "Replace '?' with: " ! if len(matches[i][1]): ! lb = matches[i][1] + "?: " ! dlg = wx.TextEntryDialog(self, lb, "Missing Value?") dlg.SetValue('') if matches[i][1] != '': |
From: Digital X. <dig...@us...> - 2007-03-14 00:02:36
|
Update of /cvsroot/openrpg/openrpg1/orpg/chat In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv30283/orpg/chat Modified Files: Tag: BRANCH-1-7-1 chatwnd.py Log Message: Index: chatwnd.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/chat/chatwnd.py,v retrieving revision 1.161.2.1 retrieving revision 1.161.2.2 diff -C2 -d -r1.161.2.1 -r1.161.2.2 *** chatwnd.py 13 Mar 2007 23:12:38 -0000 1.161.2.1 --- chatwnd.py 14 Mar 2007 00:02:35 -0000 1.161.2.2 *************** *** 2293,2297 **** for i in xrange(0,len(matches)): ! dlg = wx.TextEntryDialog(self, matches[i][1] + "?", "Missing Value?") dlg.SetValue('') if matches[i][1] != '': --- 2293,2300 ---- for i in xrange(0,len(matches)): ! lb = "Replace '?' with: " ! if len(matches[i][1]): ! lb = matches[i][1] + "?: " ! dlg = wx.TextEntryDialog(self, lb, "Missing Value?") dlg.SetValue('') if matches[i][1] != '': |
From: Digital X. <dig...@us...> - 2007-03-13 23:56:45
|
Update of /cvsroot/openrpg/openrpg1/orpg In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv27630/orpg Modified Files: orpg_version.py Log Message: Index: orpg_version.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/orpg_version.py,v retrieving revision 1.106 retrieving revision 1.107 diff -C2 -d -r1.106 -r1.107 *** orpg_version.py 9 Mar 2007 14:40:56 -0000 1.106 --- orpg_version.py 13 Mar 2007 23:56:44 -0000 1.107 *************** *** 3,7 **** #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070309-00" --- 3,7 ---- #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070314-00" |
From: Digital X. <dig...@us...> - 2007-03-13 23:55:58
|
Update of /cvsroot/openrpg/openrpg1/orpg/templates In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv27222/orpg/templates Modified Files: default_server_ini.xml Log Message: Added the ability to auto register the server via the ini Added the ability to change the Lobby name via the ini Added the ability to set the server name via the ini Index: default_server_ini.xml =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/templates/default_server_ini.xml,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** default_server_ini.xml 18 Oct 2006 21:50:18 -0000 1.11 --- default_server_ini.xml 13 Mar 2007 23:55:57 -0000 1.12 *************** *** 1,22 **** ! <server> ! <service port='6774' address='hostname/address' /> ! <map file='myfiles/Lobby_map.xml' /> ! <message file='myfiles/LobbyMessage.html' /> ! <validate_protocol value='true' /> ! <autokick silent='no' delay='480' /> <version min="1.6.3" /> ! <cheat text='**Fudged Roll**' help='The text will be included in any faked roll by anyone but a GM' /> <room_defaults> ! <passwords allow='yes'/> ! <map file=''/> ! <message file='myfiles/LobbyMessage.html'/> </room_defaults> <room name="Example Persistant #1" password="password" boot="password"> ! <map file='myfiles/Lobby_map.xml' /> ! <message file='myfiles/LobbyMessage.html' /> </room> <room name="Example Persistant #2" password="" boot="password"> ! <map file='myfiles/Lobby_map.xml' /> ! <message file='myfiles/LobbyMessage.html' /> </room> </server> --- 1,22 ---- ! <server lobbyname="Lobby" boot="" register="No" name="Server Name"> ! <service port="6774" address="hostname/address" /> ! <map file="myfiles/Lobby_map.xml" /> ! <message file="myfiles/LobbyMessage.html" /> ! <validate_protocol value="true" /> ! <autokick silent="no" delay="480" /> <version min="1.6.3" /> ! <cheat text="**Fudged Roll**" help="The text will be included in any faked roll by anyone but a GM" /> <room_defaults> ! <passwords allow="yes"/> ! <map file=""/> ! <message file="myfiles/LobbyMessage.html"/> </room_defaults> <room name="Example Persistant #1" password="password" boot="password"> ! <map file="myfiles/Lobby_map.xml" /> ! <message file="myfiles/LobbyMessage.html" /> </room> <room name="Example Persistant #2" password="" boot="password"> ! <map file="myfiles/Lobby_map.xml" /> ! <message file="myfiles/LobbyMessage.html" /> </room> </server> |
From: Digital X. <dig...@us...> - 2007-03-13 23:55:58
|
Update of /cvsroot/openrpg/openrpg1 In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv27222 Modified Files: start_server.py Log Message: Added the ability to auto register the server via the ini Added the ability to change the Lobby name via the ini Added the ability to set the server name via the ini Index: start_server.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/start_server.py,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** start_server.py 18 Feb 2007 16:14:48 -0000 1.31 --- start_server.py 13 Mar 2007 23:55:57 -0000 1.32 *************** *** 24,33 **** if __name__ == '__main__': - lobby_boot_pwd = "" - name = "" - post = "N" - opt="N" gc.set_debug(gc.DEBUG_UNCOLLECTABLE) gc.enable() # See if we have command line arguments in need of processing --- 24,30 ---- if __name__ == '__main__': gc.set_debug(gc.DEBUG_UNCOLLECTABLE) gc.enable() + orpg_server = orpg.networking.mplay_server.mplay_server() # See if we have command line arguments in need of processing *************** *** 37,44 **** # Server Name if o[0] in ( "-n", ): ! name = o[1] # Post server to meta if o[0] in ( "-p", ): ! post = 'Y' # Lobby Password if o[0] in ( "-l", ): --- 34,41 ---- # Server Name if o[0] in ( "-n", ): ! orpg_server.name = o[1] # Post server to meta if o[0] in ( "-p", ): ! orpg_server.reg = 'Y' # Lobby Password if o[0] in ( "-l", ): *************** *** 50,75 **** usage( 1 ) - # Now, validate that if we had options passed in, they make sense! If - # no options were passed in, follow the normal prompt for information - # start up path. If -p is passed in, make sure name and password is - # also provided. - if len(opts): - if (post == 'Y') and ((len(name) == 0) or (len(lobby_boot_pwd) == 0)): - usage(1) - if (len(lobby_boot_pwd) == 0): - lobby_boot_pwd = raw_input("Enter boot password for the Lobby: ") - # Only ask if we didn't pass in options and post isn't 'Y' - if ( (post == 'N') and (opt == 'N') ): - opt = raw_input("Do you want to post your server to the OpenRPG Meta Server list? (y,n)") - if len(opt) and (opt[0] == 'y' or opt[0] == 'Y'): - post = 'Y' - else: - post = 'N' - - # If we are going to post make sure we have a server name, if not, ask for it - if ( post == 'Y' ) and (len(name) == 0 ): - name = raw_input("Server Name?") # start server! - orpg_server = orpg.networking.mplay_server.mplay_server() orpg_server.force_check = 1 orpg_server.remoteadmin = 1 --- 47,51 ---- *************** *** 79,91 **** orpg_server.force_check=0 ! if ( post == 'Y' ) and (len(name)): ! # Start the registration thread ! # register servers ! orpg_server.register( name ) print "-----------------------------------------------------" print "Type 'help' or '?' or 'h' for server console commands" print "-----------------------------------------------------" - #orpg_server.print_help() - orpg_server.groups['0'].boot_pwd = lobby_boot_pwd opt = "None" --- 55,82 ---- orpg_server.force_check=0 ! if len(orpg_server.groups['0'].boot_pwd) != 0: ! lobby_boot_pwd = orpg_server.groups['0'].boot_pwd ! elif len(lobby_boot_pwd) == 0: ! lobby_boot_pwd = raw_input("Enter boot password for the Lobby: ") ! ! orpg_server.groups['0'].boot_pwd = lobby_boot_pwd ! ! if orpg_server.reg[0].upper() != "Y" and orpg_server.reg[0].upper() != "N": ! opt = raw_input("Do you want to post your server to the OpenRPG Meta Server list? (y,n)") ! if len(opt) and (opt[0].upper() == 'Y'): ! orpg_server.reg = 'Y' ! else: ! orpg_server.reg = 'N' ! ! ! if orpg_server.reg[0].upper() == "Y": ! if orpg_server.name == None: ! orpg_server.name = raw_input("Server Name?") ! ! orpg_server.register(orpg_server.name) ! print "-----------------------------------------------------" print "Type 'help' or '?' or 'h' for server console commands" print "-----------------------------------------------------" opt = "None" |
From: Digital X. <dig...@us...> - 2007-03-13 23:55:58
|
Update of /cvsroot/openrpg/openrpg1/orpg/networking In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv27222/orpg/networking Modified Files: mplay_server.py Log Message: Added the ability to auto register the server via the ini Added the ability to change the Lobby name via the ini Added the ability to set the server name via the ini Index: mplay_server.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/networking/mplay_server.py,v retrieving revision 1.138 retrieving revision 1.139 diff -C2 -d -r1.138 -r1.139 *** mplay_server.py 13 Mar 2007 17:43:52 -0000 1.138 --- mplay_server.py 13 Mar 2007 23:55:57 -0000 1.139 *************** *** 385,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 ) --- 385,402 ---- boot_pwd = self.configDoc.getAttribute("boot") + self.reg = "" + if self.configDoc.hasAttribute("register"): + self.reg = self.configDoc.getAttribute("register") + + LobbyName = 'Lobby' + if self.configDoc.hasAttribute("lobbyname"): + LobbyName = self.configDoc.getAttribute("lobbyname") + + if self.configDoc.hasAttribute("name"): + self.name = self.configDoc.getAttribute("name") + # 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"]+'Lobby_map.xml', orpg.dirpath.dir_struct["user"]+'LobbyMessage.html', 1 ) |
From: Digital X. <dig...@us...> - 2007-03-13 23:12:41
|
Update of /cvsroot/openrpg/openrpg1/orpg/chat In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv9631/orpg/chat Modified Files: Tag: BRANCH-1-7-1 chatwnd.py Log Message: Fixed a bug in the Unknown replacement for dice rolls Index: chatwnd.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/chat/chatwnd.py,v retrieving revision 1.161 retrieving revision 1.161.2.1 diff -C2 -d -r1.161 -r1.161.2.1 *** chatwnd.py 11 Feb 2007 03:49:32 -0000 1.161 --- chatwnd.py 13 Mar 2007 23:12:38 -0000 1.161.2.1 *************** *** 2289,2307 **** newstr = "0" ! reg = re.compile("(\?)(\{*[a-zA-Z ]*\}*)") matches = reg.findall(s) - dlg = wx.TextEntryDialog(self,"Replace '?' with", "Missing Value?") for i in xrange(0,len(matches)): dlg.SetValue('') if matches[i][1] != '': ! dlg.SetTitle("Missing Value for " + matches[i][1]) if dlg.ShowModal() == wx.ID_OK: newstr = dlg.GetValue() if newstr == '': newstr = '0' ! s = s.replace(matches[i][0], newstr, 1).replace(matches[i][1], '', 1) ! dlg.Destroy() --- 2289,2307 ---- newstr = "0" ! reg = re.compile("(\?\{*)([a-zA-Z ]*)(\}*)") matches = reg.findall(s) for i in xrange(0,len(matches)): + dlg = wx.TextEntryDialog(self, matches[i][1] + "?", "Missing Value?") dlg.SetValue('') if matches[i][1] != '': ! dlg.SetTitle("Enter Value for " + matches[i][1]) if dlg.ShowModal() == wx.ID_OK: newstr = dlg.GetValue() if newstr == '': newstr = '0' ! s = s.replace(matches[i][0], newstr, 1).replace(matches[i][1], '', 1).replace(matches[i][2], '', 1) ! dlg.Destroy() |
From: Digital X. <dig...@us...> - 2007-03-13 23:11:43
|
Update of /cvsroot/openrpg/openrpg1/orpg/chat In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv9185/orpg/chat Modified Files: chatwnd.py Log Message: Fixed a bug in the Unknown replacement for dice rolls Index: chatwnd.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/chat/chatwnd.py,v retrieving revision 1.164 retrieving revision 1.165 diff -C2 -d -r1.164 -r1.165 *** chatwnd.py 27 Feb 2007 03:05:16 -0000 1.164 --- chatwnd.py 13 Mar 2007 23:11:42 -0000 1.165 *************** *** 2327,2345 **** newstr = "0" ! reg = re.compile("(\?)(\{*[a-zA-Z ]*\}*)") matches = reg.findall(s) - dlg = wx.TextEntryDialog(self,"Replace '?' with", "Missing Value?") for i in xrange(0,len(matches)): dlg.SetValue('') if matches[i][1] != '': ! dlg.SetTitle("Missing Value for " + matches[i][1]) if dlg.ShowModal() == wx.ID_OK: newstr = dlg.GetValue() if newstr == '': newstr = '0' ! s = s.replace(matches[i][0], newstr, 1).replace(matches[i][1], '', 1) ! dlg.Destroy() --- 2327,2345 ---- newstr = "0" ! reg = re.compile("(\?\{*)([a-zA-Z ]*)(\}*)") matches = reg.findall(s) for i in xrange(0,len(matches)): + dlg = wx.TextEntryDialog(self, matches[i][1] + "?", "Missing Value?") dlg.SetValue('') if matches[i][1] != '': ! dlg.SetTitle("Enter Value for " + matches[i][1]) if dlg.ShowModal() == wx.ID_OK: newstr = dlg.GetValue() if newstr == '': newstr = '0' ! s = s.replace(matches[i][0], newstr, 1).replace(matches[i][1], '', 1).replace(matches[i][2], '', 1) ! dlg.Destroy() |
From: Digital X. <dig...@us...> - 2007-03-13 20:48:13
|
Update of /cvsroot/openrpg/openrpg1/orpg In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv15255/orpg Modified Files: Tag: BRANCH-1-7-1 orpg_version.py Log Message: Index: orpg_version.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/orpg_version.py,v retrieving revision 1.98.2.5 retrieving revision 1.98.2.6 diff -C2 -d -r1.98.2.5 -r1.98.2.6 *** orpg_version.py 9 Mar 2007 14:32:14 -0000 1.98.2.5 --- orpg_version.py 13 Mar 2007 20:48:05 -0000 1.98.2.6 *************** *** 3,7 **** #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070309-00" --- 3,7 ---- #BUILD NUMBER FORMAT: "YYMMDD-##" where ## is the incremental daily build index (if needed) ! BUILD = "070313-00" |
From: Digital X. <dig...@us...> - 2007-03-13 20:47:46
|
Update of /cvsroot/openrpg/openrpg1/orpg/networking In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv15047/orpg/networking Modified Files: Tag: BRANCH-1-7-1 mplay_server.py Log Message: Fixed a bug in the server that prevented it from using the port specified in the server_ini.xml (03/13/2007) Fixed a bug in the VS dice roller code (03/13/2007) Index: mplay_server.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/networking/mplay_server.py,v retrieving revision 1.133.2.2 retrieving revision 1.133.2.3 diff -C2 -d -r1.133.2.2 -r1.133.2.3 *** mplay_server.py 27 Feb 2007 03:10:22 -0000 1.133.2.2 --- mplay_server.py 13 Mar 2007 20:47:43 -0000 1.133.2.3 *************** *** 70,75 **** myname = '' - #OPENRPG_PORT = 6774 - def id_compare(a,b): "converts strings to intergers for list sort comparisons for group and player ids so they end up in numeric order" --- 70,73 ---- *************** *** 134,138 **** minVersion=self.minVersion.split('.') version=ver.split('.') ! for i in range(min(len(minVersion),len(version))): w=max(len(minVersion[i]),len(version[i])) v1=minVersion[i].rjust(w); --- 132,136 ---- minVersion=self.minVersion.split('.') version=ver.split('.') ! for i in xrange(min(len(minVersion),len(version))): w=max(len(minVersion[i]),len(version[i])) v1=minVersion[i].rjust(w); *************** *** 269,273 **** # Since the server is just starting here, we read in the XML configuration # file. Notice the lobby is still created here by default. ! self.groups = { '0': game_group( '0','Lobby','','The game lobby', '', '', orpg.dirpath.dir_struct["user"]+'Lobby_map.xml',orpg.dirpath.dir_struct["user"]+'LobbyMessage.html',1 ) } self.initServerConfig() --- 267,271 ---- # Since the server is just starting here, we read in the XML configuration # file. Notice the lobby is still created here by default. ! self.groups = { '0': game_group('0','Lobby','','The game lobby', '', '', orpg.dirpath.dir_struct["user"] + 'Lobby_map.xml', orpg.dirpath.dir_struct["user"] + 'LobbyMessage.html', 1)} self.initServerConfig() *************** *** 324,334 **** # try to use it. try: ! self.banDom = minidom.parse( orpg.dirpath.dir_struct["user"]+'ban_list.xml' ) self.banDom.normalize() self.banDoc = self.banDom.documentElement ! for element in self.banDom.getElementsByTagName( 'banned' ): playerName = element.getAttribute( 'name' ).replace("&", "&").replace("<", "<").replace('"', """).replace(">", ">") ! playerIP = element.getAttribute( 'ip' ) self.ban_list[playerIP] = {} --- 322,332 ---- # try to use it. try: ! self.banDom = minidom.parse(orpg.dirpath.dir_struct["user"] + 'ban_list.xml') self.banDom.normalize() self.banDoc = self.banDom.documentElement ! for element in self.banDom.getElementsByTagName('banned'): playerName = element.getAttribute( 'name' ).replace("&", "&").replace("<", "<").replace('"', """).replace(">", ">") ! playerIP = element.getAttribute('ip') self.ban_list[playerIP] = {} *************** *** 348,357 **** # try to use it. try: ! file = open(orpg.dirpath.dir_struct["user"]+'ban_list.xml' ,"w") ! file.write("<server>\n") for ip in self.ban_list: ! file.write("<banned name = \"" + str(self.ban_list[ip]['name'].replace("&", "&").replace("<", "<").replace(""", '"').replace(">", ">")) + "\" ip = \"" + str(self.ban_list[ip]['ip']) + "\" />") ! file.write("</server>") except Exception, e: --- 346,359 ---- # try to use it. try: ! data = [] ! data.append("<server>\n") for ip in self.ban_list: ! data.append(' <banned name="' + str(self.ban_list[ip]['name'].replace("&", "&").replace("<", "<").replace(""", '"').replace(">", ">")) + '" ip="' + str(self.ban_list[ip]['ip']) + '" />' + "\n") ! data.append("</server>") ! ! file = open(orpg.dirpath.dir_struct["user"] + 'ban_list.xml' ,"w") ! file.write("".join(data)) ! file.close() except Exception, e: *************** *** 361,365 **** # This method reads in the server's configuration file and reconfigs the server # as needed, over-riding any default values as requested. ! def initServerConfig( self ): self.log_msg("Processing Server Configuration File...") --- 363,367 ---- # This method reads in the server's configuration file and reconfigs the server # as needed, over-riding any default values as requested. ! def initServerConfig(self): self.log_msg("Processing Server Configuration File...") *************** *** 370,384 **** # try to use it. try: ! self.configDom = minidom.parse( orpg.dirpath.dir_struct["user"]+'server_ini.xml' ) self.configDom.normalize() self.configDoc = self.configDom.documentElement # Obtain the lobby/server password if it's been specified ! admin_pwd = self.configDoc.getAttribute( "admin" ) ! boot_pwd = self.configDoc.getAttribute( "boot" ) # Update the lobby with the passwords if they've been specified ! if( len(admin_pwd) or 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 ) --- 372,389 ---- # try to use it. try: ! self.configDom = minidom.parse(orpg.dirpath.dir_struct["user"] + 'server_ini.xml') self.configDom.normalize() self.configDoc = self.configDom.documentElement # Obtain the lobby/server password if it's been specified ! boot_pwd = "" ! if self.configDoc.hasAttribute("admin"): ! boot_pwd = self.configDoc.getAttribute("admin") ! elif self.configDoc.hasAttribute("boot"): ! 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 ) *************** *** 386,393 **** # set ip or dns name to send to meta server ! service_node = self.configDoc.getElementsByTagName( "service" )[0] ! address = service_node.getAttribute( "address" ) address = address.lower() if address == "" or address == "hostname/address" or address == "localhost": --- 391,398 ---- # set ip or dns name to send to meta server ! service_node = self.configDoc.getElementsByTagName("service")[0] ! address = service_node.getAttribute("address") address = address.lower() if address == "" or address == "hostname/address" or address == "localhost": *************** *** 396,399 **** --- 401,408 ---- self.server_address = address + self.server_port = OPENRPG_PORT + if service_node.hasAttribute("port"): + self.server_port = int(service_node.getAttribute("port")) + # Get the minimum openrpg version from config if available # if it isn't set min version to internal default. *************** *** 402,406 **** # <version min="x.x.x"> try: ! mver = self.configDoc.getElementsByTagName( "version" )[0] self.minClientVersion = mver.getAttribute("min") except: --- 411,415 ---- # <version min="x.x.x"> try: ! mver = self.configDoc.getElementsByTagName("version")[0] self.minClientVersion = mver.getAttribute("min") except: *************** *** 410,414 **** #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 = "" --- 419,423 ---- #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 = "" *************** *** 418,422 **** if tags.length > 0: newroom_node = tags[0] ! dmf = newroom_node.getAttribute( "file" ) if dmf != "": self.defaultMessageFile = dmf --- 427,431 ---- if tags.length > 0: newroom_node = tags[0] ! dmf = newroom_node.getAttribute("file") if dmf != "": self.defaultMessageFile = dmf *************** *** 440,444 **** try: ! ak = self.configDoc.getElementsByTagName( "autokick" )[0] if ak.hasAttribute("silent"): if ((ak.getAttribute("silent")).lower() == "yes"): --- 449,453 ---- try: ! ak = self.configDoc.getElementsByTagName("autokick")[0] if ak.hasAttribute("silent"): if ((ak.getAttribute("silent")).lower() == "yes"): *************** *** 462,466 **** alk = "" if (self.silent_auto_kick == 1): alk = "(Silent Mode)" ! self.log_msg("Auto Kick: Delay="+str(self.zombie_time)+" "+alk) #------------------------[ END <AUTOKICK> TAG PROCESSING ]-------------- --- 471,475 ---- alk = "" if (self.silent_auto_kick == 1): alk = "(Silent Mode)" ! self.log_msg("Auto Kick: Delay="+str(self.zombie_time) + " " + alk) #------------------------[ END <AUTOKICK> TAG PROCESSING ]-------------- *************** *** 484,492 **** #pull information from config file DOM try: ! roomdefaults = self.configDom.getElementsByTagName( "room_defaults" )[0] #rd.normalize() #roomdefaults = self.rd.documentElement try: ! setting = roomdefaults.getElementsByTagName( 'passwords' )[0] rpw = setting.getAttribute('allow') if rpw == "no" or rpw=="0": --- 493,501 ---- #pull information from config file DOM try: ! roomdefaults = self.configDom.getElementsByTagName("room_defaults")[0] #rd.normalize() #roomdefaults = self.rd.documentElement try: ! setting = roomdefaults.getElementsByTagName('passwords')[0] rpw = setting.getAttribute('allow') if rpw == "no" or rpw=="0": *************** *** 498,503 **** self.log_msg("Room Defaults: [Warning] Allowing Passworded Rooms") try: ! setting = roomdefaults.getElementsByTagName( 'map' )[0] ! map = setting.getAttribute( 'file' ) if map != "": roomdefault_map = map --- 507,512 ---- self.log_msg("Room Defaults: [Warning] Allowing Passworded Rooms") try: ! setting = roomdefaults.getElementsByTagName('map')[0] ! map = setting.getAttribute('file') if map != "": roomdefault_map = map *************** *** 507,512 **** try: ! setting = roomdefaults.getElementsByTagName( 'message' )[0] ! msg = setting.getAttribute( 'file' ) if msg != "": roomdefault_msg = msg --- 516,521 ---- try: ! setting = roomdefaults.getElementsByTagName('message')[0] ! msg = setting.getAttribute('file') if msg != "": roomdefault_msg = msg *************** *** 534,539 **** ###Server Cheat message try: ! cheat_node = self.configDoc.getElementsByTagName( "cheat" )[0] ! self.cheat_msg = cheat_node.getAttribute( "text" ) except: self.cheat_msg = "**FAKE ROLL**" --- 543,548 ---- ###Server Cheat message try: ! cheat_node = self.configDoc.getElementsByTagName("cheat")[0] ! self.cheat_msg = cheat_node.getAttribute("text") except: self.cheat_msg = "**FAKE ROLL**" *************** *** 559,573 **** ! def makePersistentRooms( self ): 'Creates rooms on the server as defined in the server config file.' ! for element in self.configDom.getElementsByTagName( 'room' ): ! roomName = element.getAttribute( 'name' ) ! roomPassword = element.getAttribute( 'password' ) ! bootPassword = element.getAttribute( 'boot' ) # Conditionally check for minVersion attribute ! if element.hasAttribute( 'minVersion' ): ! minVersion = element.getAttribute( 'minVersion' ) else: minVersion = "" --- 568,582 ---- ! def makePersistentRooms(self): 'Creates rooms on the server as defined in the server config file.' ! for element in self.configDom.getElementsByTagName('room'): ! roomName = element.getAttribute('name') ! roomPassword = element.getAttribute('password') ! bootPassword = element.getAttribute('boot') # Conditionally check for minVersion attribute ! if element.hasAttribute('minVersion'): ! minVersion = element.getAttribute('minVersion') else: minVersion = "" *************** *** 575,583 **** # Extract the map filename attribute from the map node # 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 --- 584,592 ---- # Extract the map filename attribute from the map node # 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 *************** *** 590,594 **** ! def isPersistentRoom( self, id ): 'Returns True if the id is a persistent room (other than the lobby), otherwise, False.' --- 599,603 ---- ! def isPersistentRoom(self, id): 'Returns True if the id is a persistent room (other than the lobby), otherwise, False.' *************** *** 745,749 **** self.metas[meta].register(name=name,realHostName=self.server_address,num_users=num_players) else: ! self.metas[meta] = registerThread(name=name,realHostName=self.server_address,num_users=num_players,MetaPath=meta,port=OPENRPG_PORT,register_callback=self.register_callback) self.metas[meta].start() --- 754,758 ---- self.metas[meta].register(name=name,realHostName=self.server_address,num_users=num_players) else: ! self.metas[meta] = registerThread(name=name, realHostName=self.server_address, num_users=num_players, MetaPath=meta, port=self.server_port,register_callback=self.register_callback) self.metas[meta].start() *************** *** 898,902 **** ip = socket.gethostbyname(socket.gethostname()) kill = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ! kill.connect((ip,OPENRPG_PORT)) # Now, send the "system" command using the correct protocol format --- 907,911 ---- ip = socket.gethostbyname(socket.gethostname()) kill = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ! kill.connect((ip, self.server_port)) # Now, send the "system" command using the correct protocol format *************** *** 1331,1337 **** def checkClientVersion(self, clientversion): ! minv=self.minClientVersion.split('.') ! cver=clientversion.split('.') ! for i in range(min(len(minv),len(cver))): w=max(len(minv[i]),len(cver[i])) v1=minv[i].rjust(w); --- 1340,1346 ---- def checkClientVersion(self, clientversion): ! minv = self.minClientVersion.split('.') ! cver = clientversion.split('.') ! for i in xrange(min(len(minv),len(cver))): w=max(len(minv[i]),len(cver[i])) v1=minv[i].rjust(w); *************** *** 1376,1380 **** # Send the server's lobby message to the client no matter what ! self.sendMsg( socket, "<msg to='" + player_id + "' from='0' group_id='0' />" + lobbyMsg, self.players[player_id].useCompression, self.players[player_id].compressionType ) return except: --- 1385,1389 ---- # Send the server's lobby message to the client no matter what ! self.sendMsg(socket, "<msg to='" + player_id + "' from='0' group_id='0' />" + lobbyMsg, self.players[player_id].useCompression, self.players[player_id].compressionType) return except: *************** *** 1388,1396 **** try: self.log_msg("listen thread running...") ! self.listen_sock.bind( ("", OPENRPG_PORT) ) ! self.listen_sock.listen( 5 ) except Exception, e: ! self.log_msg( ("Error binding request socket!", e) ) self.alive = 0 --- 1397,1408 ---- try: self.log_msg("listen thread running...") ! adder = "" ! if self.server_address: ! adder = self.server_address ! self.listen_sock.bind((adder, self.server_port)) ! self.listen_sock.listen(5) except Exception, e: ! self.log_msg(("Error binding request socket!", e)) self.alive = 0 *************** *** 1407,1411 **** # our face! :O After words, this thread is dead ready for another connection # accept to come in. ! thread.start_new_thread( self.acceptedNewConnectionThread, ( newsock, addr ) ) except: --- 1419,1423 ---- # our face! :O After words, this thread is dead ready for another connection # accept to come in. ! thread.start_new_thread(self.acceptedNewConnectionThread, ( newsock, addr )) except: *************** *** 1776,1780 **** #also goes ahead if there is a defaultRoomMessage --akoman ! if self.isPersistentRoom( group_id ) or self.defaultMessageFile != None: try: if self.groups[group_id].messageFile[:4] == 'http': --- 1788,1792 ---- #also goes ahead if there is a defaultRoomMessage --akoman ! if self.isPersistentRoom(group_id) or self.defaultMessageFile != None: try: if self.groups[group_id].messageFile[:4] == 'http': *************** *** 1792,1800 **** # Spit that darn message out now! ! self.players[from_id].outbox.put( "<msg to='" + from_id + "' from='0' group_id='" + group_id + "' />" ! + roomMsg ) # Now, tell everyone that we've arrived ! self.send_to_all('0',self.groups[group_id].toxml('update')) # this line sends a handle role message to change the players role --- 1804,1811 ---- # Spit that darn message out now! ! self.players[from_id].outbox.put("<msg to='" + from_id + "' from='0' group_id='" + group_id + "' />" + roomMsg) # Now, tell everyone that we've arrived ! self.send_to_all('0', self.groups[group_id].toxml('update')) # this line sends a handle role message to change the players role *************** *** 1804,1809 **** self.return_room_roles(from_id,group_id) self.log_msg(("join_group", (from_id, group_id))) ! self.handle_role("set", from_id, self.players[from_id].role, ! self.groups[group_id].boot_pwd, group_id) except Exception, e: --- 1815,1819 ---- self.return_room_roles(from_id,group_id) self.log_msg(("join_group", (from_id, group_id))) ! self.handle_role("set", from_id, self.players[from_id].role, self.groups[group_id].boot_pwd, group_id) except Exception, e: *************** *** 2289,2295 **** --- 2299,2319 ---- self.log_msg('Exception in admin_kick() ' + str(e)) + + def admin_banip(self, ip, name="", silent = 0): + "Ban a player from a server from the console" + try: + self.ban_list[ip] = {} + self.ban_list[ip]['ip'] = ip + self.ban_list[ip]['name'] = name + self.saveBanList() + + except Exception, e: + traceback.print_exc() + self.log_msg('Exception in admin_banip() ' + str(e)) + def admin_ban(self, id, message="", silent = 0): "Ban a player from a server from the console" try: + id = str(id) group_id = self.players[id].group_id ip = self.players[id].ip *************** *** 2506,2509 **** --- 2530,2539 ---- self.players[pid].outbox.put(msg) + elif cmd == "banip": + ip = xml_dom.getAttribute("bip") + name = xml_dom.getAttribute("bname") + msg = "<msg to='" + pid + "' from='0' group_id='" + gid + "'> Banned: " + str(ip) + self.admin_banip(ip, name) + elif cmd == "ban": id = xml_dom.getAttribute("bid") |
From: Digital X. <dig...@us...> - 2007-03-13 20:47:45
|
Update of /cvsroot/openrpg/openrpg1/orpg/dieroller In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv15047/orpg/dieroller Modified Files: Tag: BRANCH-1-7-1 die.py Log Message: Fixed a bug in the server that prevented it from using the port specified in the server_ini.xml (03/13/2007) Fixed a bug in the VS dice roller code (03/13/2007) Index: die.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/dieroller/die.py,v retrieving revision 1.12 retrieving revision 1.12.2.1 diff -C2 -d -r1.12 -r1.12.2.1 *** die.py 11 Nov 2006 23:36:01 -0000 1.12 --- die.py 13 Mar 2007 20:47:43 -0000 1.12.2.1 *************** *** 305,308 **** --- 305,309 ---- self.history = None self.value = None + self.target = None self.roll(min) *************** *** 434,438 **** def __init__(self,source=[]): die_base.__init__(self,source) - self.target = None # Examples of adding member functions through inheritance. --- 435,438 ---- *************** *** 487,492 **** ! def vs( self, target ): ! self.target = target return self --- 487,493 ---- ! def vs(self, target): ! for dn in self.data: ! dn.target = target return self *************** *** 496,505 **** ## we only return the number of successful saves. A negative ## value will never be generated. ! def sum( self ): retValue = 0 for dn in self.data: setValue = reduce( lambda x, y : int(x)+int(y), dn.history ) ! if self.target: ! if setValue >= self.target: retValue += 1 --- 497,506 ---- ## we only return the number of successful saves. A negative ## value will never be generated. ! def sum(self): retValue = 0 for dn in self.data: setValue = reduce( lambda x, y : int(x)+int(y), dn.history ) ! if dn.target: ! if setValue >= dn.target: retValue += 1 |
From: Digital X. <dig...@us...> - 2007-03-13 17:53:44
|
Update of /cvsroot/openrpg/openrpg1/orpg/dieroller In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv8501/orpg/dieroller Modified Files: die.py wodex.py Log Message: Fixed a bug in the VS code Fixed a Bug in the exault roller that caused the BOTCH to show up when it should not Index: wodex.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/dieroller/wodex.py,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** wodex.py 9 Mar 2007 14:07:46 -0000 1.7 --- wodex.py 13 Mar 2007 17:53:42 -0000 1.8 *************** *** 238,243 **** succ = self.xsum(self.target) ! if succ == 0: myStr += 'BOTCH!' elif succ == 1: myStr += str(succ) + " Success" --- 238,245 ---- succ = self.xsum(self.target) ! if succ == 0 and 1 in self.data: myStr += 'BOTCH!' + elif succ == 0: + myStr += str(succ) + " Failure" elif succ == 1: myStr += str(succ) + " Success" *************** *** 273,278 **** succ = self.xsum(self.target) ! if succ == 0: myStr += 'BOTCH!' elif succ == 1: myStr += str(succ) + " Success" --- 275,282 ---- succ = self.xsum(self.target) ! if succ == 0 and 1 in self.data: myStr += 'BOTCH!' + elif succ == 0: + myStr += str(succ) + " Failure" elif succ == 1: myStr += str(succ) + " Success" Index: die.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/dieroller/die.py,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** die.py 11 Nov 2006 23:36:01 -0000 1.12 --- die.py 13 Mar 2007 17:53:42 -0000 1.13 *************** *** 305,308 **** --- 305,309 ---- self.history = None self.value = None + self.target = None self.roll(min) *************** *** 434,438 **** def __init__(self,source=[]): die_base.__init__(self,source) - self.target = None # Examples of adding member functions through inheritance. --- 435,438 ---- *************** *** 487,492 **** ! def vs( self, target ): ! self.target = target return self --- 487,493 ---- ! def vs(self, target): ! for dn in self.data: ! dn.target = target return self *************** *** 496,505 **** ## we only return the number of successful saves. A negative ## value will never be generated. ! def sum( self ): retValue = 0 for dn in self.data: setValue = reduce( lambda x, y : int(x)+int(y), dn.history ) ! if self.target: ! if setValue >= self.target: retValue += 1 --- 497,506 ---- ## we only return the number of successful saves. A negative ## value will never be generated. ! def sum(self): retValue = 0 for dn in self.data: setValue = reduce( lambda x, y : int(x)+int(y), dn.history ) ! if dn.target: ! if setValue >= dn.target: retValue += 1 |
From: Digital X. <dig...@us...> - 2007-03-13 17:43:59
|
Update of /cvsroot/openrpg/openrpg1/orpg/networking In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv4548/orpg/networking Modified Files: mplay_server.py Log Message: Fixed a bug that was preventing the port specification from the server_ini being used Index: mplay_server.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/networking/mplay_server.py,v retrieving revision 1.137 retrieving revision 1.138 diff -C2 -d -r1.137 -r1.138 *** mplay_server.py 3 Mar 2007 00:44:12 -0000 1.137 --- mplay_server.py 13 Mar 2007 17:43:52 -0000 1.138 *************** *** 70,75 **** myname = '' - #OPENRPG_PORT = 6774 - def id_compare(a,b): "converts strings to intergers for list sort comparisons for group and player ids so they end up in numeric order" --- 70,73 ---- *************** *** 269,273 **** # Since the server is just starting here, we read in the XML configuration # file. Notice the lobby is still created here by default. ! self.groups = { '0': game_group( '0','Lobby','','The game lobby', '', '', orpg.dirpath.dir_struct["user"]+'Lobby_map.xml',orpg.dirpath.dir_struct["user"]+'LobbyMessage.html',1 ) } self.initServerConfig() --- 267,271 ---- # Since the server is just starting here, we read in the XML configuration # file. Notice the lobby is still created here by default. ! self.groups = { '0': game_group('0','Lobby','','The game lobby', '', '', orpg.dirpath.dir_struct["user"] + 'Lobby_map.xml', orpg.dirpath.dir_struct["user"] + 'LobbyMessage.html', 1)} self.initServerConfig() *************** *** 367,371 **** # This method reads in the server's configuration file and reconfigs the server # as needed, over-riding any default values as requested. ! def initServerConfig( self ): self.log_msg("Processing Server Configuration File...") --- 365,369 ---- # This method reads in the server's configuration file and reconfigs the server # as needed, over-riding any default values as requested. ! def initServerConfig(self): self.log_msg("Processing Server Configuration File...") *************** *** 376,390 **** # try to use it. try: ! self.configDom = minidom.parse( orpg.dirpath.dir_struct["user"]+'server_ini.xml' ) self.configDom.normalize() self.configDoc = self.configDom.documentElement # Obtain the lobby/server password if it's been specified ! admin_pwd = self.configDoc.getAttribute( "admin" ) ! boot_pwd = self.configDoc.getAttribute( "boot" ) # Update the lobby with the passwords if they've been specified ! if( len(admin_pwd) or 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 ) --- 374,391 ---- # try to use it. try: ! self.configDom = minidom.parse(orpg.dirpath.dir_struct["user"] + 'server_ini.xml') self.configDom.normalize() self.configDoc = self.configDom.documentElement # Obtain the lobby/server password if it's been specified ! boot_pwd = "" ! if self.configDoc.hasAttribute("admin"): ! boot_pwd = self.configDoc.getAttribute("admin") ! elif self.configDoc.hasAttribute("boot"): ! 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 ) *************** *** 392,399 **** # set ip or dns name to send to meta server ! service_node = self.configDoc.getElementsByTagName( "service" )[0] ! address = service_node.getAttribute( "address" ) address = address.lower() if address == "" or address == "hostname/address" or address == "localhost": --- 393,400 ---- # set ip or dns name to send to meta server ! service_node = self.configDoc.getElementsByTagName("service")[0] ! address = service_node.getAttribute("address") address = address.lower() if address == "" or address == "hostname/address" or address == "localhost": *************** *** 402,405 **** --- 403,410 ---- self.server_address = address + self.server_port = OPENRPG_PORT + if service_node.hasAttribute("port"): + self.server_port = int(service_node.getAttribute("port")) + # Get the minimum openrpg version from config if available # if it isn't set min version to internal default. *************** *** 408,412 **** # <version min="x.x.x"> try: ! mver = self.configDoc.getElementsByTagName( "version" )[0] self.minClientVersion = mver.getAttribute("min") except: --- 413,417 ---- # <version min="x.x.x"> try: ! mver = self.configDoc.getElementsByTagName("version")[0] self.minClientVersion = mver.getAttribute("min") except: *************** *** 416,420 **** #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 = "" --- 421,425 ---- #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 = "" *************** *** 424,428 **** if tags.length > 0: newroom_node = tags[0] ! dmf = newroom_node.getAttribute( "file" ) if dmf != "": self.defaultMessageFile = dmf --- 429,433 ---- if tags.length > 0: newroom_node = tags[0] ! dmf = newroom_node.getAttribute("file") if dmf != "": self.defaultMessageFile = dmf *************** *** 446,450 **** try: ! ak = self.configDoc.getElementsByTagName( "autokick" )[0] if ak.hasAttribute("silent"): if ((ak.getAttribute("silent")).lower() == "yes"): --- 451,455 ---- try: ! ak = self.configDoc.getElementsByTagName("autokick")[0] if ak.hasAttribute("silent"): if ((ak.getAttribute("silent")).lower() == "yes"): *************** *** 468,472 **** alk = "" if (self.silent_auto_kick == 1): alk = "(Silent Mode)" ! self.log_msg("Auto Kick: Delay="+str(self.zombie_time)+" "+alk) #------------------------[ END <AUTOKICK> TAG PROCESSING ]-------------- --- 473,477 ---- alk = "" if (self.silent_auto_kick == 1): alk = "(Silent Mode)" ! self.log_msg("Auto Kick: Delay="+str(self.zombie_time) + " " + alk) #------------------------[ END <AUTOKICK> TAG PROCESSING ]-------------- *************** *** 490,498 **** #pull information from config file DOM try: ! roomdefaults = self.configDom.getElementsByTagName( "room_defaults" )[0] #rd.normalize() #roomdefaults = self.rd.documentElement try: ! setting = roomdefaults.getElementsByTagName( 'passwords' )[0] rpw = setting.getAttribute('allow') if rpw == "no" or rpw=="0": --- 495,503 ---- #pull information from config file DOM try: ! roomdefaults = self.configDom.getElementsByTagName("room_defaults")[0] #rd.normalize() #roomdefaults = self.rd.documentElement try: ! setting = roomdefaults.getElementsByTagName('passwords')[0] rpw = setting.getAttribute('allow') if rpw == "no" or rpw=="0": *************** *** 504,509 **** self.log_msg("Room Defaults: [Warning] Allowing Passworded Rooms") try: ! setting = roomdefaults.getElementsByTagName( 'map' )[0] ! map = setting.getAttribute( 'file' ) if map != "": roomdefault_map = map --- 509,514 ---- self.log_msg("Room Defaults: [Warning] Allowing Passworded Rooms") try: ! setting = roomdefaults.getElementsByTagName('map')[0] ! map = setting.getAttribute('file') if map != "": roomdefault_map = map *************** *** 513,518 **** try: ! setting = roomdefaults.getElementsByTagName( 'message' )[0] ! msg = setting.getAttribute( 'file' ) if msg != "": roomdefault_msg = msg --- 518,523 ---- try: ! setting = roomdefaults.getElementsByTagName('message')[0] ! msg = setting.getAttribute('file') if msg != "": roomdefault_msg = msg *************** *** 540,545 **** ###Server Cheat message try: ! cheat_node = self.configDoc.getElementsByTagName( "cheat" )[0] ! self.cheat_msg = cheat_node.getAttribute( "text" ) except: self.cheat_msg = "**FAKE ROLL**" --- 545,550 ---- ###Server Cheat message try: ! cheat_node = self.configDoc.getElementsByTagName("cheat")[0] ! self.cheat_msg = cheat_node.getAttribute("text") except: self.cheat_msg = "**FAKE ROLL**" *************** *** 565,579 **** ! def makePersistentRooms( self ): 'Creates rooms on the server as defined in the server config file.' ! for element in self.configDom.getElementsByTagName( 'room' ): ! roomName = element.getAttribute( 'name' ) ! roomPassword = element.getAttribute( 'password' ) ! bootPassword = element.getAttribute( 'boot' ) # Conditionally check for minVersion attribute ! if element.hasAttribute( 'minVersion' ): ! minVersion = element.getAttribute( 'minVersion' ) else: minVersion = "" --- 570,584 ---- ! def makePersistentRooms(self): 'Creates rooms on the server as defined in the server config file.' ! for element in self.configDom.getElementsByTagName('room'): ! roomName = element.getAttribute('name') ! roomPassword = element.getAttribute('password') ! bootPassword = element.getAttribute('boot') # Conditionally check for minVersion attribute ! if element.hasAttribute('minVersion'): ! minVersion = element.getAttribute('minVersion') else: minVersion = "" *************** *** 581,589 **** # Extract the map filename attribute from the map node # 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 --- 586,594 ---- # Extract the map filename attribute from the map node # 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 *************** *** 596,600 **** ! def isPersistentRoom( self, id ): 'Returns True if the id is a persistent room (other than the lobby), otherwise, False.' --- 601,605 ---- ! def isPersistentRoom(self, id): 'Returns True if the id is a persistent room (other than the lobby), otherwise, False.' *************** *** 751,755 **** self.metas[meta].register(name=name,realHostName=self.server_address,num_users=num_players) else: ! self.metas[meta] = registerThread(name=name,realHostName=self.server_address,num_users=num_players,MetaPath=meta,port=OPENRPG_PORT,register_callback=self.register_callback) self.metas[meta].start() --- 756,760 ---- self.metas[meta].register(name=name,realHostName=self.server_address,num_users=num_players) else: ! self.metas[meta] = registerThread(name=name, realHostName=self.server_address, num_users=num_players, MetaPath=meta, port=self.server_port,register_callback=self.register_callback) self.metas[meta].start() *************** *** 904,908 **** ip = socket.gethostbyname(socket.gethostname()) kill = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ! kill.connect((ip,OPENRPG_PORT)) # Now, send the "system" command using the correct protocol format --- 909,913 ---- ip = socket.gethostbyname(socket.gethostname()) kill = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ! kill.connect((ip, self.server_port)) # Now, send the "system" command using the correct protocol format *************** *** 1398,1406 **** try: self.log_msg("listen thread running...") ! self.listen_sock.bind( ("", OPENRPG_PORT) ) ! self.listen_sock.listen( 5 ) except Exception, e: ! self.log_msg( ("Error binding request socket!", e) ) self.alive = 0 --- 1403,1414 ---- try: self.log_msg("listen thread running...") ! adder = "" ! if self.server_address: ! adder = self.server_address ! self.listen_sock.bind((adder, self.server_port)) ! self.listen_sock.listen(5) except Exception, e: ! self.log_msg(("Error binding request socket!", e)) self.alive = 0 *************** *** 1417,1421 **** # our face! :O After words, this thread is dead ready for another connection # accept to come in. ! thread.start_new_thread( self.acceptedNewConnectionThread, ( newsock, addr ) ) except: --- 1425,1429 ---- # our face! :O After words, this thread is dead ready for another connection # accept to come in. ! thread.start_new_thread(self.acceptedNewConnectionThread, ( newsock, addr )) except: *************** *** 2308,2312 **** self.ban_list[ip]['name'] = name self.saveBanList() ! except Exception, e: traceback.print_exc() --- 2316,2320 ---- self.ban_list[ip]['name'] = name self.saveBanList() ! except Exception, e: traceback.print_exc() |
From: chock-full <te...@co...> - 2007-03-13 16:07:03
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type"> </head> <body bgcolor="#ffffff" text="#000000"> <img alt="power of attorney" src="cid:par...@co..." height="168" width="674"><br> Technically, saying the bathroom had 'no toilet paper' was incorrect. By the time she got to 'Love Shack', it was all over. The whole freaking state is a lake effect.<br> But Buffy the Vampire Slayer is getting deleted in an hour, and you can't get any rest thinking about missing an episode of your forty-ninth favorite show, give or take a Seinfeld.<br> A winning lottery ticket code? I would swear that when I left today, I could hear the conference room giggling at me.<br> Mais suis super content car au moins je me leve le matin pour faire quelque chose et ca vraiment c'est cool. Un stage, c'est bien sympa, mais comment tu fais pour vivre?<br> "Sourpeas: "Don't let the door smack you in the ass on the way out.<br> So far as I can remember, my water usage has been pretty steady for several years now.<br> I'm talking about making kick-ass mix tapes.<br> I don't know what you do when you disappear in there to get ready in the morning. Me: Well, it's been making this hissing noise for the past few weeks?<br> I don't plan to find out, that's for damned sure.<br> The four-ounce bottle in my hand probably cost more than my last fifteen-gallon tank of gas.<br> Only, my Spanish isn't so good.<br> And while forty hours of TiVo is good, they say more is better. That's when I heard the key in the front door.<br> I've never heard of L'oreal Matrix shampoo, but I did see the Matrix.<br> Then, I'm supposed to actually pay attention to these friends, as they yap away about what they like, and what they don't like, and what they're looking for in a perfect 'soulmate'. Or am I full of shit? I didn't mean to make you the butt of a joke. And now we'll have an experienced set of eyeballs poring over our shoebox filing system.<br> we are here in Chez Charlie. The whole freaking state is a lake effect. >From the front door, she couldn't see me in the hallway.<br> And besides, I myself am 'old', 'tampered with', and quite possibly 'counterfeit'.<br> I'll still be slinging the same nonsense on this site several days a week, and occasionally managing to get a piece published elsewhere. You can make shirts, hoodies, bags, pants, and even stuff for kids. In Boston, six inches of snow is what you leave on the sidewalks when you get tired of shoveling.<br> Next up was some sort of fancy 'salon product'.<br> Otherwise, the two people in question actually meet, recoil in horror at the sight of the other, and take turns beating the shit out of you for setting them up with a bug-eyed retarded freak. Bhavana's career in trouble? "Others might think that getting out of bed is the worst part. Those are traits that make a painkiller good.<br> </body> </html> |
From: Neville <yi...@dr...> - 2007-03-13 04:22:08
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type"> </head> <body bgcolor="#ffffff" text="#000000"> <img alt="laboriously" src="cid:par...@dr..." height="232" width="524"><br> We build solid foundations upon which successful campaigns are launched and deliver long lasting results. We have an in-house developed tool to check how sites appear on keywords. Please visit the website links provided. Search engine submission 2. Spider then registers your site to those same search engines for the next SIX months to keep placement strong.<br> tags in the HTML code of a web page. 9I have modified the proposal to adjust for 6 months FREE of submission services for your website!<br> Looking forward to a mutually beneficial and rewarding relationship.<br> This package cost includes optimization and submission for three months. Follow the same pattern for your other key phrases either re-writing or creating new optimized pages for them only using one or two key phrases per page.<br> We will analyze your e-marketing approach with the top brands and integrate the features that are lacking in your approach to augment the results.<br> Promote Your Site in Online Forums and Blogs.<br> This chapter examines if Google.<br> I've included a complete break down of dates, price and what you can expect along with a few recent clients of mine you can test out. Please advise the next steps.<br> The more visible text there is on a web page, the more a search engine can index. Miscellaneous Strategies23. doc file that showcases some current rankings for several past and present clients.<br> Gather and share advice and info on better ways to work with search engines.<br> Also, here are some examples of my design work: XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX Thank you in advance for your time.<br> Beware of directories that solicit you for "upgraded listings.<br> People don't search on single keywords alone, unless they are looking for a name brand or high profile site that's well known through other avenues of advertising and marketing.<br> Each site was optimized for search engines, and keyword optimized.<br> This package cost includes optimization and submission for three months.<br> Kindly see our feedback. Don't use keywords or phrases that are too broad.<br> This chapter examines if Google. META DescriptionThe META description tag allows you to describe your web page.<br> Keyword Research: Collection of keywords based on initial questionnaire, site research 3.<br> Currently I am working on - XXXXX XXXXX Price estimation for search engine optimization depends on the website and the targeted result. I have worked with a variety of clients from different sectors.<br> Document TitleThe document title is the text within the .<br> Exchange Ads with Complementary Businesses.<br> </body> </html> |
From: Digital X. <dig...@us...> - 2007-03-10 17:14:15
|
Update of /cvsroot/openrpg/openrpg1/orpg/tools In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv30970/orpg/tools Modified Files: orpg_sound.py Log Message: Removed Errant Print Statment Index: orpg_sound.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/tools/orpg_sound.py,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** orpg_sound.py 10 Mar 2007 17:12:47 -0000 1.23 --- orpg_sound.py 10 Mar 2007 17:14:15 -0000 1.24 *************** *** 92,97 **** self.parent._mgr.Update() - print pos - if pos > 0: self.seeking = True --- 92,95 ---- |
From: Digital X. <dig...@us...> - 2007-03-10 17:12:53
|
Update of /cvsroot/openrpg/openrpg1/orpg/tools In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv30203/orpg/tools Modified Files: orpg_sound.py Log Message: Made it so you can play sounds if you are not connected to a server Made it so Sounds are saved in a drop down list on the Sound Toolbar so you can sounds Made it so if a sound was playing and another sound interupted it, if you switch back to the previous sound it would start back up again where it left off Added a progress bar to the Sound Toolbar Index: orpg_sound.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/tools/orpg_sound.py,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** orpg_sound.py 11 Feb 2007 03:49:36 -0000 1.22 --- orpg_sound.py 10 Mar 2007 17:12:47 -0000 1.23 *************** *** 2,28 **** from orpg.orpg_wx import * - #---------------------------------------------------------------------- - - class StaticText(wx.StaticText): - """ - A StaticText that only updates the label if it has changed, to - help reduce potential flicker since these controls would be - updated very frequently otherwise. - """ - def SetLabel(self, label): - if label <> self.GetLabel(): - wx.StaticText.SetLabel(self, label) - - #---------------------------------------------------------------------- class orpgSound(wx.Panel): def __init__(self, parent, openrpg): wx.Panel.__init__(self, parent, -1) ! self.openrpg = openrpg self.settings = openrpg.get_component('settings') # Create some controls try: ! self.mc = wx.media.MediaCtrl(self, style=wx.SIMPLE_BORDER) self.mc.Hide() self.OldPlayer = False --- 2,15 ---- from orpg.orpg_wx import * class orpgSound(wx.Panel): def __init__(self, parent, openrpg): wx.Panel.__init__(self, parent, -1) ! self.parent = parent self.openrpg = openrpg self.settings = openrpg.get_component('settings') # Create some controls try: ! self.mc = wx.media.MediaCtrl(self) self.mc.Hide() self.OldPlayer = False *************** *** 41,58 **** self.stopBtn = btn3 ! self.st_name = StaticText(self, -1, size=(100,-1)) self.loopSound = False # setup the layout sizer = wx.GridBagSizer(hgap=1, vgap=1) ! sizer.Add(self.st_name, (0,0), flag=wx.EXPAND) sizer.Add(btn2, (0,1)) sizer.Add(btn3, (0,2)) sizer.AddGrowableCol(0) self.SetSizer(sizer) self.SetAutoLayout(True) self.Fit() self.Bind(wx.EVT_CLOSE, self.OnClose) self.timer = wx.Timer(self, wx.NewId()) --- 28,54 ---- self.stopBtn = btn3 ! self.playList = wx.Choice(self, wx.ID_ANY) ! self.playDict = {} ! ! ! self.slider = wx.Slider(self, -1, 0, 0, 0, size=wx.Size(300, -1)) ! self.Bind(wx.EVT_SLIDER, self.onSeek, self.slider) self.loopSound = False + self.seeking = False # setup the layout sizer = wx.GridBagSizer(hgap=1, vgap=1) ! sizer.Add(self.playList, (0,0)) sizer.Add(btn2, (0,1)) sizer.Add(btn3, (0,2)) + sizer.Add(self.slider, (0,3), flag=wx.EXPAND) sizer.AddGrowableCol(0) + sizer.AddGrowableCol(3) self.SetSizer(sizer) self.SetAutoLayout(True) self.Fit() + self.Bind(wx.EVT_CHOICE, self.PlaySelected, self.playList) self.Bind(wx.EVT_CLOSE, self.OnClose) self.timer = wx.Timer(self, wx.NewId()) *************** *** 79,90 **** os.system(unix_player + " " + sound_file) def LoadSound(self, sound_file, type="local"): (path, name) = os.path.split(sound_file) ! if type == 'remote': ! self.mc.LoadFromURI(sound_file) ! else: ! self.mc.Load(sound_file) ! self.st_name.SetLabel(name) return --- 75,124 ---- os.system(unix_player + " " + sound_file) + def onSeek(self, evt): + offset = self.slider.GetValue() + self.mc.Seek(offset) + + def PlaySelected(self, evt): + name = self.playList.GetStringSelection() + info = self.playDict[name] + sound_file = info[0] + pos = info[1] + + self.mc.Load(sound_file) + + pane = self.parent._mgr.GetPane("Sound Control Toolbar") + pane.window.SetInitialSize() + pane.BestSize(pane.window.GetEffectiveMinSize() + (0, 1)) + self.parent._mgr.Update() + + print pos + + if pos > 0: + self.seeking = True + wx.CallAfter(self.mc.Pause) + def LoadSound(self, sound_file, type="local"): + if self.mc.GetState() == wx.media.MEDIASTATE_PLAYING: + pos = self.mc.Tell() + len = self.mc.Length() + self.mc.Stop() + if (len-pos) <= 2000: + pos = 0 + pname = self.playList.GetStringSelection() + self.playDict[pname][1] = pos + (path, name) = os.path.split(sound_file) ! self.mc.Load(sound_file) ! if not self.playDict.has_key(name): ! self.playList.Append(name) ! ! pane = self.parent._mgr.GetPane("Sound Control Toolbar") ! pane.window.SetInitialSize() ! pane.BestSize(pane.window.GetEffectiveMinSize() + (0, 1)) ! self.parent._mgr.Update() ! ! self.playDict[name] = [sound_file, 0] ! self.playList.SetStringSelection(name) return *************** *** 114,123 **** self.stopBtn.Disable() if self.mc.GetState() != wx.media.MEDIASTATE_PLAYING and self.loopSound: self.mc.Play() elif self.stopBtn.IsShown(): self.playBtn.Hide() self.stopBtn.Hide() - self.Layout() return --- 148,173 ---- self.stopBtn.Disable() + self.slider.SetRange(0, self.mc.Length()) + + if not self.seeking: + self.slider.SetValue(self.mc.Tell()) + if self.mc.GetState() != wx.media.MEDIASTATE_PLAYING and self.loopSound: self.mc.Play() + + if self.seeking: + name = self.playList.GetStringSelection() + info = self.playDict[name] + + if self.mc.Tell() >= info[1]: + self.seeking = False + + else: + self.slider.SetValue(info[1]) + wx.CallAfter(self.onSeek, None) + elif self.stopBtn.IsShown(): self.playBtn.Hide() self.stopBtn.Hide() return |
From: Digital X. <dig...@us...> - 2007-03-10 17:12:52
|
Update of /cvsroot/openrpg/openrpg1/orpg/chat In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv30203/orpg/chat Modified Files: commands.py Log Message: Made it so you can play sounds if you are not connected to a server Made it so Sounds are saved in a drop down list on the Sound Toolbar so you can sounds Made it so if a sound was playing and another sound interupted it, if you switch back to the previous sound it would start back up again where it left off Added a progress bar to the Sound Toolbar Index: commands.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/chat/commands.py,v retrieving revision 1.78 retrieving revision 1.79 diff -C2 -d -r1.78 -r1.79 *** commands.py 3 Mar 2007 00:43:46 -0000 1.78 --- commands.py 10 Mar 2007 17:12:46 -0000 1.79 *************** *** 179,189 **** loop = '' (name, ip, id, text_status, version, protocol_version, client_string, role) = self.session.get_my_info() group_id = self.session.group_id ! if role != 'Lurker' and group_id != '0': try: ! self.chat.sound_player.play(snd, 'remote', loop) ! snd_xml = '<sound url="' + snd + '" group_id="' + group_id + '" from="' + id + '" loop="' + str(loop) + '" />' ! self.session.send_sound(snd_xml) except Exception, e: print e --- 179,192 ---- loop = '' + type = 'remote' + (name, ip, id, text_status, version, protocol_version, client_string, role) = self.session.get_my_info() group_id = self.session.group_id ! if (role != 'Lurker' and group_id != '0') or self.session.get_status() != 1: try: ! self.chat.sound_player.play(snd, type, loop) ! if type == 'remote': ! snd_xml = '<sound url="' + snd + '" group_id="' + group_id + '" from="' + id + '" loop="' + str(loop) + '" />' ! self.session.send_sound(snd_xml) except Exception, e: print e |
From: Digital X. <dig...@us...> - 2007-03-10 04:06:21
|
Update of /cvsroot/openrpg/openrpg1/orpg/mapper In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv11383/orpg/mapper Modified Files: fog.py map.py Log Message: Removed Errant Print Statment Fixed an issue with the experimental fog code Index: fog.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/mapper/fog.py,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** fog.py 9 Mar 2007 14:46:00 -0000 1.31 --- fog.py 10 Mar 2007 04:06:20 -0000 1.32 *************** *** 282,286 **** self.log.log("Enter fog_layer->createregn2(self, polyline, mode, show)", ORPG_DEBUG) ! regn = self.scanConvert(polyline, show) area = "" for i in polyline: --- 282,286 ---- self.log.log("Enter fog_layer->createregn2(self, polyline, mode, show)", ORPG_DEBUG) ! regn = self.scanConvert(polyline) area = "" for i in polyline: *************** *** 311,315 **** self.log.log("Exit fog_layer->createregn(self, polyline, mode, show)", ORPG_DEBUG) ! def scanConvert(self, polypt, show="Yes"): self.log.log("Enter fog_layer->scanConvert(self, polypt)", ORPG_DEBUG) --- 311,315 ---- self.log.log("Exit fog_layer->createregn(self, polyline, mode, show)", ORPG_DEBUG) ! def scanConvert(self, polypt): self.log.log("Enter fog_layer->scanConvert(self, polypt)", ORPG_DEBUG) *************** *** 320,329 **** for i in list: if regn.IsEmpty(): ! if show == "Yes" and "__WXGTK__" not in wx.PlatformInfo: regn = wx.Region(i.left*COURSE, i.y*COURSE, i.right*COURSE+1-i.left*COURSE, 1*COURSE) else: regn = wx.Region(i.left, i.y, i.right+1-i.left, 1) else: ! if show == "Yes" and "__WXGTK__" not in wx.PlatformInfo: regn.Union(i.left*COURSE, i.y*COURSE, i.right*COURSE+1-i.left*COURSE, 1*COURSE) else: --- 320,329 ---- for i in list: if regn.IsEmpty(): ! if "__WXGTK__" not in wx.PlatformInfo: regn = wx.Region(i.left*COURSE, i.y*COURSE, i.right*COURSE+1-i.left*COURSE, 1*COURSE) else: regn = wx.Region(i.left, i.y, i.right+1-i.left, 1) else: ! if "__WXGTK__" not in wx.PlatformInfo: regn.Union(i.left*COURSE, i.y*COURSE, i.right*COURSE+1-i.left*COURSE, 1*COURSE) else: Index: map.py =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/mapper/map.py,v retrieving revision 1.68 retrieving revision 1.69 diff -C2 -d -r1.68 -r1.69 *** map.py 21 Feb 2007 16:00:27 -0000 1.68 --- map.py 10 Mar 2007 04:06:20 -0000 1.69 *************** *** 283,288 **** if not self.isEditor: self.frame.session.send(send_text) - else: - print " of no data in send_map_data() ignored" wx.EndBusyCursor() --- 283,286 ---- |
From: Digital X. <dig...@us...> - 2007-03-09 14:58:42
|
Update of /cvsroot/openrpg/openrpg1/orpg/templates/nodes In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv17674/orpg/templates/nodes Modified Files: macro.xml Log Message: Dont change the name for blank macros Index: macro.xml =================================================================== RCS file: /cvsroot/openrpg/openrpg1/orpg/templates/nodes/macro.xml,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** macro.xml 18 Oct 2006 21:50:18 -0000 1.4 --- macro.xml 9 Mar 2007 14:58:36 -0000 1.5 *************** *** 1,6 **** <nodehandler class="macro_handler" icon="gear" module="chatmacro" name="Macro" version="1.0"> ! <text>/name MyOtherName ! Hello, World ! /name MyRealName</text> </nodehandler> \ No newline at end of file --- 1,4 ---- <nodehandler class="macro_handler" icon="gear" module="chatmacro" name="Macro" version="1.0"> ! <text>/me used a blank macro</text> </nodehandler> \ No newline at end of file |