view clients/rio_de_hola/scripts/agents/beekeeper.py @ 199:4ea1e0b56a07

fixes based on the updated SDK from barra. These scripts were still trying to use swig 1.3.35 and in the new SDK swig was updated to 1.3.38
author vtchill@33b003aa-7bff-0310-803a-e67f0ece8222
date Fri, 13 Mar 2009 01:58:04 +0000
parents 9a1529f9625e
children
line wrap: on
line source

from agent import Agent
import fife, random

_STATE_NONE, _STATE_TALK = 0, 1

class Beekeeper(Agent):
	def __init__(self, model, agentName, layer, uniqInMap=True):
		super(Beekeeper, self).__init__(model, agentName, layer, uniqInMap)
		self.state = _STATE_NONE

	def onInstanceActionFinished(self, instance, action):
		self.talk()

	def start(self):
		self.facingLoc = self.agent.getLocation()
		c = self.facingLoc.getExactLayerCoordinatesRef()
		c.x += random.randint(-1, 1)
		c.y += random.randint(-1, 1)
		self.talk()

	def talk(self):
		self.state = _STATE_TALK
		self.agent.act('talk', self.facingLoc, True) # never calls back