diff options
Diffstat (limited to 'behaviors')
-rw-r--r-- | behaviors/AddPixelEvent.py | 26 | ||||
-rw-r--r-- | behaviors/DebugBehavior.py | 2 | ||||
-rw-r--r-- | behaviors/LoopAndDie.xml | 2 | ||||
-rw-r--r-- | behaviors/PixelDecay.xml | 11 |
4 files changed, 38 insertions, 3 deletions
diff --git a/behaviors/AddPixelEvent.py b/behaviors/AddPixelEvent.py new file mode 100644 index 0000000..7f134e1 --- /dev/null +++ b/behaviors/AddPixelEvent.py @@ -0,0 +1,26 @@ +from operationscore.Behavior import * +import util.Strings as Strings +from logger import main_log +class AddPixelEvent(Behavior): + def behaviorInit(self): + [module, className] = self['Class'].split('.') + try: + exec('from ' + module+'.'+className + ' import *', globals()) + except Exception as inst: + main_log.error('Error importing ' + module+'.'+className+ '. Component not\ + initialized.') + main_log.error(str(inst)) + self.eventGenerator = eval('lambda args:'+className+'(args)') + + #^lambda function to do generate new event (takes args) + + def processResponse(self, sensors, recurses): + ret = [] + for sensory in sensors: + outDict = {} + outDict[Strings.LOCATION] = sensory[Strings.LOCATION] + settingsDict = dict(self.argDict) + settingsDict['Color'] = sensory['Color'] + outDict['PixelEvent'] = self.eventGenerator(settingsDict) + ret.append(outDict) + return (ret, recurses) diff --git a/behaviors/DebugBehavior.py b/behaviors/DebugBehavior.py index eb525e7..9bf3ea8 100644 --- a/behaviors/DebugBehavior.py +++ b/behaviors/DebugBehavior.py @@ -4,5 +4,5 @@ import pdb class DebugBehavior(Behavior): def processResponse(self, sensorInputs, recursiveInputs): if sensorInputs != []: - main_log.debug('Sensor Inputs: '+ str(sensorInputs)) + main_log.debug('Sensor Inputs: ' + str(sensorInputs)) return [] diff --git a/behaviors/LoopAndDie.xml b/behaviors/LoopAndDie.xml index af26562..e2940e4 100644 --- a/behaviors/LoopAndDie.xml +++ b/behaviors/LoopAndDie.xml @@ -1,6 +1,6 @@ <Behavior> <Class>behaviors.RecursiveDecay</Class> <Args> - <InitialResponseCount>70</InitialResponseCount> + <InitialResponseCount>20</InitialResponseCount> </Args> </Behavior> diff --git a/behaviors/PixelDecay.xml b/behaviors/PixelDecay.xml index f9eee0d..bfe84ca 100644 --- a/behaviors/PixelDecay.xml +++ b/behaviors/PixelDecay.xml @@ -1,4 +1,4 @@ -<Behavior> +<!--<Behavior> <Class>behaviors.DecayBehavior</Class> <Args> <DecayType>Exponential</DecayType> @@ -6,4 +6,13 @@ <z-index>0</z-index> <RenderToScreen>False</RenderToScreen> </Args> +</Behavior>--> +<Behavior> + <Class>behaviors.AddPixelEvent</Class> + <Args> + <Class>pixelevents.DecayEvent</Class> + <DecayType>Exponential</DecayType> + <Coefficient>.01</Coefficient> + <z-index>0</z-index> + </Args> </Behavior> |