def placeUniqueBuildings(self):
		lBuildings = []
		for iBuilding in xrange(gc.getNumBuildingInfos()):
			if utils.getBuildingCategory(iBuilding) == 2 and not gc.getBuildingInfo(iBuilding).isGraphicalOnly():
				lBuildings.append((gc.getBuildingInfo(iBuilding).getDescription(), iBuilding))

		lBuildings.sort()
		self.list = lBuildings
		self.placeItems(WidgetTypes.WIDGET_PEDIA_JUMP_TO_BUILDING, gc.getBuildingInfo)
Пример #2
0
	def placeUniqueBuildings(self):
		lBuildings = []
		for iBuilding in xrange(gc.getNumBuildingInfos()):
			if utils.getBuildingCategory(iBuilding) == 2 and not gc.getBuildingInfo(iBuilding).isGraphicalOnly():
				lBuildings.append((gc.getBuildingInfo(iBuilding).getDescription(), iBuilding))

		lBuildings.sort()
		self.list = lBuildings
		self.placeItems(WidgetTypes.WIDGET_PEDIA_JUMP_TO_BUILDING, gc.getBuildingInfo)
	def placeGreatWonders(self):
		lBuildings = []
		for iBuilding in xrange(gc.getNumBuildingInfos()):
			if utils.getBuildingCategory(iBuilding) == 4:
				szDescription = gc.getBuildingInfo(iBuilding).getDescription().replace("The ", "")
				lBuildings.append((szDescription, iBuilding))

		lBuildings.sort()
		self.list = lBuildings
		self.placeItems(WidgetTypes.WIDGET_PEDIA_JUMP_TO_BUILDING, gc.getBuildingInfo)
Пример #4
0
	def placeGreatWonders(self):
		lBuildings = []
		for iBuilding in xrange(gc.getNumBuildingInfos()):
			if utils.getBuildingCategory(iBuilding) == 4:
				szDescription = gc.getBuildingInfo(iBuilding).getDescription().replace("The ", "")
				lBuildings.append((szDescription, iBuilding))

		lBuildings.sort()
		self.list = lBuildings
		self.placeItems(WidgetTypes.WIDGET_PEDIA_JUMP_TO_BUILDING, gc.getBuildingInfo)
Пример #5
0
	def placeBuildings(self):
		lBuildings = []
		for iBuilding in xrange(gc.getNumBuildingInfos()):
			if utils.getBuildingCategory(iBuilding) == 0:
				if iBuilding == utils.getUniqueBuilding(self.iActivePlayer, iBuilding):
					lBuildings.append((gc.getBuildingInfo(iBuilding).getDescription(), iBuilding))
			
		lBuildings.sort()
		self.list = lBuildings
		self.placeItems(WidgetTypes.WIDGET_PEDIA_JUMP_TO_BUILDING, gc.getBuildingInfo)
	def pediaJump(self, iCategory, iItem, bRemoveFwdList, bIsLink):
		bAddToHistory = False
		if not self.pediaHistory:
			bAddToHistory = True
		elif iCategory != PEDIA_MAIN or iItem == PEDIA_UNIT_UPGRADES or iItem == PEDIA_PROMOTION_TREE:
			prev = self.pediaHistory[0]
			if prev[0] != iCategory or prev[1] != iItem:
				bAddToHistory = True
		if bAddToHistory:
			self.pediaHistory.append((iCategory, iItem))
		if bRemoveFwdList:
			self.pediaFuture = []

		screen = self.getScreen()
		if not screen.isActive():
			self.createScreen(screen)

		if iCategory == PEDIA_MAIN:
			BugUtil.debug("Main link %d" % iItem)
			self.showContents(bIsLink, iItem)
			screen.setSelectedListBoxStringGFC(self.CATEGORY_LIST_ID, iItem - (PEDIA_MAIN + 1))
			#self.iCategory = iItem
			return

		if iCategory == PEDIA_BUILDINGS:
			iCategory += utils.getBuildingCategory(iItem)
		elif iCategory == PEDIA_UNITS:
			iCategory += self.getUnitCategory(iItem)
		elif iCategory == PEDIA_BTS_CONCEPTS:
			iCategory = self.determineNewConceptSubCategory(iItem)
			BugUtil.debug("Switching to category %d" % iCategory)

		self.showContents(bIsLink, iCategory)
		screen.setSelectedListBoxStringGFC(self.CATEGORY_LIST_ID, iCategory - (PEDIA_MAIN + 1))
		if (iCategory not in (PEDIA_UNIT_UPGRADES, PEDIA_PROMOTION_TREE)):
			screen.enableSelect(self.ITEM_LIST_ID, True)
			if self.iItemIndex != -1:
				BugUtil.debug("Deselecting item %d" % self.iItemIndex)
				screen.selectRow(self.ITEM_LIST_ID, self.iItemIndex, False)
			BugUtil.debug("Selecting item %d" % iItem)
			self.iItem = iItem
			for i, item in enumerate(self.list):
				if (item[1] == iItem):
					BugUtil.debug("Selecting %dth item %d" % (i, iItem))
					#screen.setSelectedListBoxStringGFC(self.ITEM_LIST_ID, i)
					screen.selectRow(self.ITEM_LIST_ID, i, True)
					self.iItemIndex = i
					#break

		#self.iCategory = iCategory
		BugUtil.debug("Drawing screen %d item %d" % (iCategory, iItem))
		self.deleteAllWidgets()
		func = self.mapScreenFunctions.get(iCategory)
		func.interfaceScreen(iItem)
Пример #7
0
	def pediaJump(self, iCategory, iItem, bRemoveFwdList, bIsLink):
		bAddToHistory = False
		if not self.pediaHistory:
			bAddToHistory = True
		elif iCategory != PEDIA_MAIN or iItem == PEDIA_UNIT_UPGRADES or iItem == PEDIA_PROMOTION_TREE:
			prev = self.pediaHistory[0]
			if prev[0] != iCategory or prev[1] != iItem:
				bAddToHistory = True
		if bAddToHistory:
			self.pediaHistory.append((iCategory, iItem))
		if bRemoveFwdList:
			self.pediaFuture = []

		screen = self.getScreen()
		if not screen.isActive():
			self.createScreen(screen)

		if iCategory == PEDIA_MAIN:
			BugUtil.debug("Main link %d" % iItem)
			self.showContents(bIsLink, iItem)
			screen.setSelectedListBoxStringGFC(self.CATEGORY_LIST_ID, iItem - (PEDIA_MAIN + 1))
			#self.iCategory = iItem
			return

		if iCategory == PEDIA_BUILDINGS:
			iCategory += utils.getBuildingCategory(iItem)
		elif iCategory == PEDIA_UNITS:
			iCategory += self.getUnitCategory(iItem)
		elif iCategory == PEDIA_BTS_CONCEPTS:
			iCategory = self.determineNewConceptSubCategory(iItem)
			BugUtil.debug("Switching to category %d" % iCategory)

		self.showContents(bIsLink, iCategory)
		screen.setSelectedListBoxStringGFC(self.CATEGORY_LIST_ID, iCategory - (PEDIA_MAIN + 1))
		if (iCategory not in (PEDIA_UNIT_UPGRADES, PEDIA_PROMOTION_TREE)):
			screen.enableSelect(self.ITEM_LIST_ID, True)
			if self.iItemIndex != -1:
				BugUtil.debug("Deselecting item %d" % self.iItemIndex)
				screen.selectRow(self.ITEM_LIST_ID, self.iItemIndex, False)
			BugUtil.debug("Selecting item %d" % iItem)
			self.iItem = iItem
			for i, item in enumerate(self.list):
				if (item[1] == iItem):
					BugUtil.debug("Selecting %dth item %d" % (i, iItem))
					#screen.setSelectedListBoxStringGFC(self.ITEM_LIST_ID, i)
					screen.selectRow(self.ITEM_LIST_ID, i, True)
					self.iItemIndex = i
					#break

		#self.iCategory = iCategory
		BugUtil.debug("Drawing screen %d item %d" % (iCategory, iItem))
		self.deleteAllWidgets()
		func = self.mapScreenFunctions.get(iCategory)
		func.interfaceScreen(iItem)
	def placeReligiousBuildings(self):
		lBuildings = []
		prevReligion = -1

		for iBuilding in xrange(gc.getNumBuildingInfos()):
			if utils.getBuildingCategory(iBuilding) == 1:
				iReligion = gc.getBuildingInfo(iBuilding).getReligionType()
				if iReligion != prevReligion:
					hReligion = CyTranslator().getText("TXT_KEY_PEDIA_HEADER_RELIGION", (gc.getReligionInfo(iReligion).getDescription(), ''))
					lBuildings.append(("", -1))
					lBuildings.append((hReligion, -1))

				szDescription = gc.getBuildingInfo(iBuilding).getDescription().replace("The ", "")
				lBuildings.append((szDescription, iBuilding))
				prevReligion = iReligion

		del lBuildings[0]
		self.list = lBuildings
		self.placeItems(WidgetTypes.WIDGET_PEDIA_JUMP_TO_BUILDING, gc.getBuildingInfo)
Пример #9
0
	def placeReligiousBuildings(self):
		lBuildings = []
		prevReligion = -1

		for iBuilding in xrange(gc.getNumBuildingInfos()):
			if utils.getBuildingCategory(iBuilding) == 1:
				iReligion = gc.getBuildingInfo(iBuilding).getReligionType()
				if iReligion != prevReligion:
					hReligion = CyTranslator().getText("TXT_KEY_PEDIA_HEADER_RELIGION", (gc.getReligionInfo(iReligion).getDescription(), ''))
					lBuildings.append(("", -1))
					lBuildings.append((hReligion, -1))

				szDescription = gc.getBuildingInfo(iBuilding).getDescription().replace("The ", "")
				lBuildings.append((szDescription, iBuilding))
				prevReligion = iReligion

		del lBuildings[0]
		self.list = lBuildings
		self.placeItems(WidgetTypes.WIDGET_PEDIA_JUMP_TO_BUILDING, gc.getBuildingInfo)