def activate(self, agent_id: int):
     job = g_player.get_job(JobType.Fetch)
     bb = g_bbm.get_blackboard(agent_id)
     if job:
         bb.set_target_fact_type(FactType.Delivery)
         bb.set_current_job(job)
     else:
         bb.set_request_replan(True)
 def activate(self, agent_id: int):
     job = g_player.get_job(JobType.Build)
     bb = g_bbm.get_blackboard(agent_id)
     if job:
         bb.set_manual_navigation_target(job.location)
         bb.set_current_job(job)
     else:
         bb.set_request_replan(True)
 def activate(self, agent_id: int):
     job = g_player.get_job(JobType.Collect)
     bb = g_bbm.get_blackboard(agent_id)
     if job:
         # structures blackboard
         target_bb = g_bbm.get_blackboard(job.sender_id)
         bb.set_manual_navigation_target(target_bb.get_position())
         bb.set_current_job(job)
 def activate(self, agent_id: int):
     bb = g_bbm.get_blackboard(agent_id)
     structure = bb.get_entity_str()
     prod_list = g_prod[structure]["OutputTable"].keys()
     job = g_player.get_job(JobType.Production, prod_list)
     if job:
         bb.set_production_target(job.extra)
     else:
         bb.set_request_replan(True)