def assignLabor(self, department, cultists): #TODO: add permanency, monthly function? if not self.departments.has_key(department): #new one. d = LaborPool() d.name = department self.departments[department] = d d = self.departments[department] for c in cultists: if c.department: #Make sure they're not in two departments at once. c.department.removePerson(c) d.addPerson(c) self._docallbacks() return d #So the user can set the laborpool's attributes, if need be.
def setupDepartmentsInit(self): """Set up cult departments at run-time. Some may not be in use.""" department_list = [ "recruiting", "welcome", "print_propaganda", "panhandling", "praying", "pr", "thought_police", "black_ops" ] for department_name in department_list: self.departments[department_name] = LaborPool(department_name)
def __init__(self): CrudeObservable.__init__(self) self.name = "cult" self.short_name = "cult" self.members_name = "cult" self.founding_date = None self.date = None self.membership = [] self.ex_members = [] self.enemies = [] self.departments = {} self.addLaborPool(labor_pool_street_preaching) self.addLaborPool( LaborPool("meditation", "Transcendental Medication", "Sitting around doing nothing.")) self.addLaborPool(labor_pool_indoctrinating_recruits) max = LaborPool("10max", "10 Max", "Only 10 people at a time.") max.setMaxPeople(10) self.addLaborPool(max) self.addLaborPool(labor_pool_write_scripture) self.fame = 0 self.max_fame = 0 self.popularity = 0 self.funds = 1000 #starting money self.doctrines = [] #no starting doctrines? self.authoritarianism = 0 self.recruit_base_morale_min = 40 #need ways to avoid this... self.recruit_base_morale_max = 80 #need ways to avoid this... self.dogma = 10 self.spent_dogma = 0 self.supplies = {} #Pamphlets, books and so on. self.last_month_fame = 0 self.last_month_popularity = 0 self.last_month_funds = 0 self.last_month_morale = 0 self.financial_log = { datetime.date(1998, 4, 1): (("starting funds", 999, 0), ("people buying crap", 1, 0), ("End of month total", 1000, 0)) } #Date: (tuple of (name, gain, loss))? Should work.... self.last_month_membership_count = 1 self.shopping_list = {}
def __init__(self): CrudeObservable.__init__(self) self.name = "cult" self.short_name = "cult" self.members_name = "cult" self.founding_date = None self.date = None self.membership = [] self.ex_members = [] self.enemies = [] self.departments = {} self.addLaborPool(labor_pool_street_preaching) self.addLaborPool(LaborPool("meditation","Transcendental Medication", "Sitting around doing nothing.")) self.addLaborPool(labor_pool_indoctrinating_recruits) max = LaborPool("10max", "10 Max", "Only 10 people at a time.") max.setMaxPeople(10) self.addLaborPool(max) self.addLaborPool(labor_pool_write_scripture) self.fame = 0 self.max_fame = 0 self.popularity = 0 self.funds = 1000 #starting money self.doctrines = [] #no starting doctrines? self.authoritarianism = 0 self.recruit_base_morale_min = 40 #need ways to avoid this... self.recruit_base_morale_max = 80 #need ways to avoid this... self.dogma = 10 self.spent_dogma = 0 self.supplies = {} #Pamphlets, books and so on. self.last_month_fame = 0 self.last_month_popularity = 0 self.last_month_funds = 0 self.last_month_morale = 0 self.financial_log = {datetime.date(1998,4,1): (("starting funds", 999, 0), ("people buying crap", 1, 0),("End of month total", 1000,0))} #Date: (tuple of (name, gain, loss))? Should work.... self.last_month_membership_count = 1 self.shopping_list = {}
def __init__(self): CrudeObservable.__init__(self) self.name = "cult" self.membership = [] self.ex_members = [] self.departments = { "Street Preaching": labor_pool_street_preaching, 'Meditating': LaborPool("Transcendental Medication"), "Indoctrinating Recruits": labor_pool_indoctrinating_recruits, "Write Scripture": labor_pool_write_scripture } self.fame = 0 self.popularity = 0 self.funds = 1000 #starting money self.doctrines = [] #no starting doctrines? self.authoritarianism = 0 self.recruit_base_morale_min = 40 #need ways to avoid this... self.recruit_base_morale_max = 80 #need ways to avoid this... self.dogma = 10 self.supplies = {} #Pamphlets, books and so on.
if cult.dogma > 20: msg += "a website\n" msg += "radio and TV ads\n" msg += "magazine ads\n" if cult.dogma > 40: msg += "a book\n" msg += "a movie\n" if cult.dogma > 60: msg += "a regular radio or TV program\n" msg += "a series of books\n" cult._docallbacks() return msg labor_pool_street_preaching = LaborPool( "street_preaching", "Recruiting: Street Preaching", "Standing around in public hollering at the crowds.", streetPreaching, Person.RANK_OUTER_CIRCLE, 5) labor_pool_indoctrinating_recruits = LaborPool( "indoctrination", "Indoctrinating Recruits", "Teaching new members the cult's doctrines.", indoctrinatingRecruits, Person.RANK_OUTER_CIRCLE, 5) #Gotta be at least outer circle to do this... labor_pool_write_scripture = LaborPool("scripture", "Write Scripture", "Elaborating upon the cult's dogma.", writeScripture, Person.RANK_LEADER, 0) class Cult(CrudeObservable): """Stats: name secrecy weirdness
msg += "introductory pamphlets\n" if cult.dogma > 20: msg += "a website\n" msg += "radio and TV ads\n" msg += "magazine ads\n" if cult.dogma > 40: msg += "a book\n" msg += "a movie\n" if cult.dogma > 60: msg += "a regular radio or TV program\n" msg += "a series of books\n" return msg labor_pool_street_preaching = LaborPool("Recruiting: Street Preaching", streetPreaching, Person.RANK_OUTER_CIRCLE, 5) labor_pool_indoctrinating_recruits = LaborPool( "Indoctrinating Recruits", indoctrinatingRecruits, Person.RANK_OUTER_CIRCLE, 5) #Gotta be at least outer circle to do this... labor_pool_write_scripture = LaborPool("Write Scripture", writeScripture, Person.RANK_LEADER, 0) class Cult(CrudeObservable): """Stats: name secrecy weirdness clout wealth