Mercurial > traipse_dev
diff orpg/chat/commands.py @ 71:449a8900f9ac ornery-dev
Code refining almost completed, for this round. Some included files are still in need of some clean up, but this is test worthy.
author | sirebral |
---|---|
date | Thu, 20 Aug 2009 03:00:39 -0500 |
parents | 4385a7d0efd1 |
children | eb1b275699c4 |
line wrap: on
line diff
--- a/orpg/chat/commands.py Tue Aug 18 20:48:36 2009 -0500 +++ b/orpg/chat/commands.py Thu Aug 20 03:00:39 2009 -0500 @@ -12,7 +12,10 @@ import time import orpg.orpg_version import orpg.orpg_windows -import traceback +import traceback + +from orpg.tools.orpg_log import logger +from orpg.tools.decorators import debugging ##-------------------------------------------------------------- ## dynamically loading module for extended developer commands @@ -35,7 +38,8 @@ # Initialization subroutine. # # !self : instance of self - # !chat : instance of the chat window to write to + # !chat : instance of the chat window to write to + @debugging def __init__(self,chat): self.post = chat.Post self.colorize = chat.colorize @@ -55,18 +59,21 @@ # of implemented emotions. # # !self : instance of self - # !text : string of text matching an implemented emotion + # !text : string of text matching an implemented emotion + @debugging def addcommand(self, cmd, function, helpmsg): if not self.cmdlist.has_key(cmd) and not self.shortcmdlist.has_key(cmd): self.cmdlist[cmd] = {} self.cmdlist[cmd]['function'] = function self.cmdlist[cmd]['help'] = helpmsg #print 'Command Added: ' + cmd - + + @debugging def addshortcmd(self, shortcmd, longcmd): if not self.shortcmdlist.has_key(shortcmd) and not self.cmdlist.has_key(shortcmd): self.shortcmdlist[shortcmd] = longcmd - + + @debugging def removecmd(self, cmd): if self.cmdlist.has_key(cmd): del self.cmdlist[cmd] @@ -75,7 +82,8 @@ #print 'Command Removed: ' + cmd - + + @debugging def defaultcmds(self): self.addcommand('/help', self.on_help, '- Displays this help message') self.addcommand('/version', self.on_version, ' - Displays current version of OpenRPG.') @@ -104,7 +112,8 @@ self.addcommand('/sound', self.on_sound, 'Sound_URL - Plays a sound for all clients in the room.') self.addcommand('/purge', self.on_purge, 'This will clear the entire chat window') self.addcommand('/advfilter', self.on_filter, 'This will toggle the Advanced Filter') - + + @debugging def defaultcmdalias(self): self.addshortcmd('/?', '/help') self.addshortcmd('/he', '/me') @@ -118,8 +127,8 @@ #This is just an example or a differant way the shorcmd can be used self.addshortcmd('/sleep', '/me falls asleep') - - + + @debugging def docmd(self,text): cmdsearch = string.split(text,None,1) cmd = string.lower(cmdsearch[0]) @@ -134,7 +143,8 @@ else: msg = "Sorry I don't know what %s is!" % (cmd) self.chat.InfoPost(msg) - + + @debugging def on_filter(self, cmdargs): #print self.chat.advancedFilter test = not self.chat.advancedFilter @@ -158,11 +168,13 @@ self.chat.InfoPost("Advanced Filtering has been turned On") else: self.chat.InfoPost("Advanced Filtering has been turned Off") - + + @debugging def on_purge(self, cmdargs): self.chat.PurgeChat() self.chat.InfoPost('Chat Buffer has been Purged!') - + + @debugging def on_sound(self, cmdargs): if len(cmdargs) < 8: self.chat.InfoPost("You must provide a URL for the file name, it does not work for just local sound files") @@ -195,10 +207,12 @@ self.chat.InfoPost("You cannot send sound files to the lobby!") else: self.chat.InfoPost("Something dun fuckered up Frank!") - + + @debugging def on_version(self, cmdargs=""): self.chat.InfoPost("Version is OpenRPG " + self.chat.version) - + + @debugging def on_load(self, cmdargs): args = string.split(cmdargs,None,-1) try: @@ -208,13 +222,15 @@ except Exception,e: print e self.chat.InfoPost("ERROR Loading settings") - + + @debugging def on_font(self, cmdargs): try: fontsettings = self.chat.set_default_font(fontname=cmdargs, fontsize=None) except: self.chat.InfoPost("ERROR setting default font") - + + @debugging def on_fontsize(self, cmdargs): args = string.split(cmdargs,None,-1) try: @@ -222,7 +238,8 @@ except Exception, e: print e self.chat.InfoPost("ERROR setting default font size") - + + @debugging def on_close(self, cmdargs): try: chatpanel = self.chat @@ -233,14 +250,16 @@ chatpanel.parent.onCloseTab(0) except: self.chat.InfoPost("Error: cannot close private chat tab.") - + + @debugging def on_time(self, cmdargs): local_time = time.localtime() gmt_time = time.gmtime() format_string = "%A %b %d, %Y %I:%M:%S%p" self.chat.InfoPost("<br />Local: " + time.strftime(format_string)+\ "<br />GMT: "+time.strftime(format_string,gmt_time)) - + + @debugging def on_dieroller(self, cmdargs): args = string.split(cmdargs,None,-1) rm = self.chat.DiceManager @@ -252,12 +271,14 @@ print e self.chat.InfoPost("Available die rollers: " + str(rm.listRollers())) self.chat.InfoPost("You are using the <b>\"" + rm.getRoller() + "\"</b> die roller.") - + + @debugging def on_ping(self, cmdargs): ct = time.clock() msg = "<ping player='"+self.session.id+"' time='"+str(ct)+"' />" self.session.outbox.put(msg) - + + @debugging def on_log(self,cmdargs): args = string.split(cmdargs,None,-1) logfile = self.settings.get_setting( 'GameLogPrefix' ) @@ -288,7 +309,8 @@ self.postLoggingState() else: self.chat.InfoPost("Unknown logging command, use 'on' or 'off'" ) - + + @debugging def postLoggingState( self ): logfile = self.settings.get_setting( 'GameLogPrefix' ) try: @@ -304,7 +326,8 @@ # This subroutine will set the players netork status. # #!self : instance of self - + + @debugging def on_name(self, cmdargs): #only 20 chars no more! :) if cmdargs == "": @@ -318,7 +341,8 @@ # This subroutine will set the players netork status. # - # !self : instance of self + # !self : instance of self + @debugging def on_status(self, cmdargs): if cmdargs == "": self.chat.InfoPost("Incorrect synatx for status.") @@ -327,7 +351,8 @@ txt = cmdargs[:20] self.session.set_text_status(str(txt)) # def on_status - end - + + @debugging def on_set(self, cmdargs): args = string.split(cmdargs,None,-1) keys = self.settings.get_setting_keys() @@ -361,7 +386,8 @@ # This subroutine will display the correct usage of the different emotions. # #!self : instance of self - + + @debugging def on_help(self, cmdargs=""): cmds = self.cmdlist.keys() cmds.sort() @@ -383,7 +409,8 @@ # This subroutine will either show the list of currently ignored users # !self : instance of self # !text : string that is comprised of a list of users to toggle the ignore flag - + + @debugging def on_ignore(self, cmdargs): args = string.split(cmdargs,None,-1) (ignore_list, ignore_name) = self.session.get_ignore_list() @@ -409,7 +436,8 @@ except: self.chat.InfoPost(m + " was ignored because it is an invalid player ID") traceback.print_exc() - + + @debugging def on_role(self, cmdargs): if cmdargs == "": self.session.display_roles() @@ -440,7 +468,8 @@ # !self : instance of self # !text : string that is comprised of a list of users and the message to #whisper. - + + @debugging def on_whisper(self, cmdargs): delim = cmdargs.find("=") @@ -458,7 +487,8 @@ #--------------------------------------------------------- # [START] Digitalxero Multi Whisper Group 1/1/05 -#--------------------------------------------------------- +#--------------------------------------------------------- + @debugging def on_groupwhisper(self, cmdargs): args = string.split(cmdargs,None,-1) delim = cmdargs.find("=") @@ -518,7 +548,8 @@ #--------------------------------------------------------- # [END] Digitalxero Multi Whisper Group 1/1/05 #--------------------------------------------------------- - + + @debugging def on_gmwhisper(self, cmdargs): if cmdargs == "": self.chat.InfoPost("**Incorrect syntax for GM Whisper.") @@ -533,7 +564,8 @@ self.on_whisper(gmstring + "=" + cmdargs) else: self.chat.InfoPost("**No GMs to Whisper to.") - + + @debugging def on_moderate(self, cmdargs): if cmdargs != "": pos = cmdargs.find("=") @@ -570,10 +602,12 @@ msg = "<moderate action='list' from='"+self.session.id+"' />" self.session.outbox.put(msg) self.session.update() - + + @debugging def on_update(self, cmdargs): self.chat.InfoPost("This command is no longer valid") - + + @debugging def on_description(self, cmdargs): if len(cmdargs) <= 0: self.chat.InfoPost("**No description text to display." + str(delim)) @@ -583,7 +617,8 @@ mesg += "</font></td></tr></table>" self.chat.Post(mesg) self.chat.send_chat_message(mesg) - + + @debugging def invoke_tab(self, cmdargs): ######START mDuo13's Tab Initiator######## try: @@ -608,7 +643,8 @@ self.chat.parent.newMsg(nidx) return #######END mDuo13's Tab Initiator######### - + + @debugging def on_remote_admin(self, cmdargs): args = string.split(cmdargs,None,-1) #handles remote administration commands