view clients/rio_de_hola/scripts/beekeeper.py @ 49:61d7a0a881bd

fixed sample_unit_test.cpp
author jasoka@33b003aa-7bff-0310-803a-e67f0ece8222
date Sun, 13 Jul 2008 12:47:57 +0000
parents 4a0efb7baf70
children
line wrap: on
line source

from agent import Agent
import settings as TDS
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