def initialise(self):
        """\
		Minisec 
		"""
        dbconn.use(self.game)

        trans = dbconn.begin()
        try:
            RulesetBase.initialise(self)

            # Need to create the top level universe object...
            universe = Object(type='tp.server.rules.base.objects.Universe')
            universe.id = 0
            universe.name = "The Universe"
            universe.size = SIZE
            universe.parent = 0
            universe.posx = 0
            universe.posy = 0
            universe.turn = 0
            universe.insert()

            trans.commit()
        except:
            trans.rollback()
            raise
	def initialise(self):
		"""\
		Minisec 
		"""
		dbconn.use(self.game)

		trans = dbconn.begin()
		try:
			RulesetBase.initialise(self)

			# Need to create the top level universe object...
			universe = Object(type='tp.server.rules.base.objects.Universe')
			universe.id     = 0
			universe.name   = "The Universe"
			universe.size   = SIZE
			universe.parent = 0
			universe.posx   = 0
			universe.posy   = 0
			universe.turn   = 0
			universe.insert()

			trans.commit()
		except:
			trans.rollback()
			raise
Exemplo n.º 3
0
    def initialise(self, seed=None):
        """\
		TIM Trader
		"""
        trans = dbconn.begin()
        try:
            RulesetBase.initialise(self)

            # Need to create the top level universe object...
            universe = Object(type='tp.server.rules.base.objects.Universe')
            universe.id = 0
            universe.name = "The Universe"
            universe.size = SIZE
            universe.parent = 0
            universe.posx = 0
            universe.posy = 0
            universe.turn = 0
            universe.insert()

            # Create all the resources, they consist of,
            #   - One resource for each resource specified in resources.csv
            #   - One resource for each factory specified  in prodcon.csv
            reader = csv.DictReader(
                open(os.path.join(self.files, "resources.csv"), "r"))
            for row in reader:
                if row['namesingular'] is '':
                    continue

                r = Resource()
                for name, cell in row.iteritems():
                    if cell is '':
                        continue
                    try:
                        setattr(r, name,
                                convert(getattr(Resource.table.c, name), cell))
                    except AttributeError, e:
                        # FIXME: These shouldn't really occur...
                        pass

                r.transportable = bool(row['transportable'])

                r.insert()

            import ProducersConsumers
            for factory in ProducersConsumers.loadfile(
                    os.path.join(self.files, "prodcon.csv")):
                # FIXME: Make these auto generated resources much nicer...
                # Ignore the special case factories which are also goods.
                try:
                    r = Resource(Resource.byname(factory.name))
                    r.desc += "\n"
                except NoSuch:
                    r = Resource()
                    r.namesingular = factory.name
                    r.nameplural = factory.name
                    r.desc = ""
                    r.weight = 1000
                    r.size = 1000

                r.desc += "Converts"
                for product in factory.products:
                    # FIXME: Should also display if usage of this resource is required to grow....
                    r.desc += "\n\t%s -> %s" % product

                r.products = factory.products
                r.save()

            trans.commit()
	def initialise(self, seed=None):
		"""\
		TIM Trader
		"""
		trans = dbconn.begin()
		try:
			RulesetBase.initialise(self)

			# Need to create the top level universe object...
			universe = Object(type='tp.server.rules.base.objects.Universe')
			universe.id     = 0
			universe.name   = "The Universe"
			universe.size   = SIZE
			universe.parent = 0
			universe.posx   = 0
			universe.posy   = 0
			universe.turn   = 0
			universe.insert()

			# Create all the resources, they consist of,
			#   - One resource for each resource specified in resources.csv
			#   - One resource for each factory specified  in prodcon.csv
			reader = csv.DictReader(open(os.path.join(self.files, "resources.csv"), "r"))
			for row in reader:
				if row['namesingular'] is '':
					continue

				r = Resource()
				for name, cell in row.iteritems():
					if cell is '':
						continue
					try:
						setattr(r, name, convert(getattr(Resource.table.c, name), cell))
					except AttributeError, e:
						# FIXME: These shouldn't really occur...
						pass

				r.transportable = bool(row['transportable'])

				r.insert()

			import ProducersConsumers
			for factory in ProducersConsumers.loadfile(os.path.join(self.files, "prodcon.csv")):
				# FIXME: Make these auto generated resources much nicer...
				# Ignore the special case factories which are also goods.
				try:
					r = Resource(Resource.byname(factory.name))
					r.desc += "\n"
				except NoSuch:
					r = Resource()
					r.namesingular = factory.name
					r.nameplural   = factory.name
					r.desc         = ""				
					r.weight = 1000
					r.size   = 1000

				r.desc  += "Converts"
				for product in factory.products:
					# FIXME: Should also display if usage of this resource is required to grow....
					r.desc += "\n\t%s -> %s" % product

				r.products = factory.products
				r.save()

			trans.commit()