Mercurial > traipse_dev
view orpg/chat/chat_msg.py @ 66:c54768cffbd4 ornery-dev
Traipse Dev 'OpenRPG' {090818-00}
Traipse is a distribution of OpenRPG that is designed to be easy to setup and go. Traipse also makes it easy for developers to work on code without fear of sacrifice. 'Ornery-Orc' continues the trend of 'Grumpy' and adds fixes to the code. 'Ornery-Orc''s main goal is to offer more advanced features and enhance the productivity of the user.
Update Summary:
*Unstable*
This is the first wave of Code Refinement updates. Includes new material from Core Beta; new debugger material (partially implemented), beginnings of switch to etree, TerminalWriter, and a little more. open_rpg has been renamed to component; functioning now as component.get(), component.add(), component.delete(). This version has known bugs, specifically with the gametree and nodes. I think the XML files where not removed during testing of Core and switching back.
author | sirebral |
---|---|
date | Tue, 18 Aug 2009 06:33:37 -0500 |
parents | 4385a7d0efd1 |
children | 449a8900f9ac |
line wrap: on
line source
# Copyright (C) 2000-2001 The OpenRPG Project # # openrpg-dev@lists.sourceforge.net # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # -- # # File: chat_msg.py # Author: Ted Berg # Maintainer: # Version: # $Id: chat_msg.py,v 1.15 2006/11/04 21:24:19 digitalxero Exp $ # # Description: Contains class definitions for manipulating <chat/> messages # # __version__ = "$Id: chat_msg.py,v 1.15 2006/11/04 21:24:19 digitalxero Exp $" #import orpg.orpg_xml from orpg.orpgCore import * from chat_version import CHAT_VERSION CHAT_MESSAGE = 1 WHISPER_MESSAGE = 2 EMOTE_MESSAGE = 3 INFO_MESSAGE = 4 SYSTEM_MESSAGE = 5 WHISPER_EMOTE_MESSAGE = 6 class chat_msg: def __init__(self,xml_text="<chat type=\"1\" version=\""+CHAT_VERSION+"\" alias=\"\" ></chat>"): self.xml = component.get('xml') self.chat_dom = None self.takexml(xml_text) def __del__(self): if self.chat_dom: self.chat_dom.unlink() def toxml(self): return self.xml.toxml(self.chat_dom) def takexml(self,xml_text): #self.xml = component.get('xml') xml_dom = self.xml.parseXml(xml_text) node_list = xml_dom.getElementsByTagName("chat") if len(node_list) < 1: print "Warning: no <chat/> elements found in DOM." else: if len(node_list) > 1: print "Found more than one instance of <" + self.tagname + "/>. Taking first one" self.takedom(node_list[0]) def takedom(self,xml_dom): if self.chat_dom: self.text_node = None self.chat_dom.unlink() self.chat_dom = xml_dom self.text_node = self.xml.safe_get_text_node(self.chat_dom) def set_text(self,text): text = self.xml.strip_text(text) self.text_node._set_nodeValue(text) def set_type(self,type): self.chat_dom.setAttribute("type",str(type)) def get_type(self): return int(self.chat_dom.getAttribute("type")) def set_alias(self,alias): self.chat_dom.setAttribute("alias",alias) def get_alias(self): return self.chat_dom.getAttribute("alias") def get_text(self): return self.text_node._get_nodeValue() def get_version(self): return self.chat_dom.getAttribute("version")