#This file is distributed under the terms of the GNU General Public license. #Copyright (C) 2000 Aloril (See the file COPYING for details). from mind.Goal import Goal class DynamicGoal(Goal): """Base class for dynamic or trigger goals. A dynamic goal is one which is activated by an event or trigger, usually the sight of an event, or a trigger language construct in a talk operation.""" def __init__(self, desc="some dynamic goal", trigger=None, **kw): kw['desc'] = desc apply(Goal.__init__,(self,),kw) self.trigger_data = trigger self.vars.append("trigger_data") def trigger(self): return self.trigger_data def event(self, me, original_op, op): """this is called when trigger even is received""" #redefine this pass