def grant_bar_add(self, gnt): self.grant_bar += gnt if level.has_more_levels() and self.grant_bar > self.level.publication_target: lvl = level.pop_level() self.level = level.current_level() self.grant_bar -= lvl.publication_target self.funds += lvl.grant discovery = random.choice(lvl.discoveries) discovery["granted"] = lvl.grant self.event("grant", discovery)
def __init__(self, lab_name, accelerator_geometry, accelerator_particles): """ """ self.start_time = time() self.last_updated = time() self.last_month_start = time() self.lab_name = lab_name self.data_centre = technology.from_tech_tree('datacentres', 0) self.accelerator = technology.from_tech_tree( 'accelerators', accelerator_geometry, accelerator_particles, 0 ) self.funds = settings.INITIAL_FUNDS - self.accelerator.price self.hr_manager = HR() self.update_max_number_scientists() self.salary = 1000 self.grant_bar = 0 self.level = level.current_level() self.accelerator_running = False self.has_won = False self._events = []