def update(self, playboard):
		
		if not self.staff_randomized:
			for staff in playboard.model.staff:
				x, y = playboard.get_random_open_tile()
				staff.x = x * 32 + 16
				staff.y = y * 32 + 16
			self.staff_randomized = True
		
		event = self.get_events_for_frame()
		
		if event != None:
			type = event[0]
			if type == 'device':
				device_type = event[2]
				ailment = event[3]
				device = Device(playboard, self.counter, device_type, 200, 10, ailment)
				self.devices.append(device)
				self.active_devices.append(device)
		
		
		new_active_devices = []
		for device in self.active_devices:
			device.update()
			if device.state == 'new':
				playboard.animations.append({
					'type': 'device',
					'ttl': 10,
					'mx': device.x,
					'my': device.y,
					'x': device.x,
					'y': device.y,
					'device': device.device_type,
					'overlay': 'check',
					'vx': 0,
					'vy': -3
				})
			elif device.state == 'dead' and device.replaced:
				playboard.animations.append({
					'type': 'device',
					'ttl': 10,
					'mx': device.x,
					'my': device.y,
					'x': device.x,
					'y': device.y,
					'device': device.device_type,
					'overlay': 'dead',
					'vx': 0,
					'vy': -3
				})
				
			else:
				new_active_devices.append(device)
		self.active_devices = new_active_devices
		
		self.counter += 1