diff clients/rio_de_hola/scripts/agents/beekeeper.py @ 98:214e3eb81eb2

better structure for techdemo scripts + svn:ignore fixes
author jasoka@33b003aa-7bff-0310-803a-e67f0ece8222
date Mon, 21 Jul 2008 13:46:15 +0000
parents clients/rio_de_hola/scripts/beekeeper.py@4a0efb7baf70
children ae3b8139c7c7
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/clients/rio_de_hola/scripts/agents/beekeeper.py	Mon Jul 21 13:46:15 2008 +0000
@@ -0,0 +1,24 @@
+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