def makeFromDGI(self, dgi): DNANode.DNANode.makeFromDGI(self, dgi) self.code = DNAUtil.dgiExtractString8(dgi) self.wallColor = DNAUtil.dgiExtractColor(dgi) self.title = DNAUtil.dgiExtractString8(dgi) self.article = DNAUtil.dgiExtractString8(dgi) self.buildingType = DNAUtil.dgiExtractString8(dgi)
def makeFromDGI(self, dgi): DNANode.DNANode.makeFromDGI(self, dgi) self.code = DNAUtil.dgiExtractString8(dgi) self.streetTexture = DNAUtil.dgiExtractString8(dgi) self.sidewalkTexture = DNAUtil.dgiExtractString8(dgi) self.curbTexture = DNAUtil.dgiExtractString8(dgi) self.streetColor = DNAUtil.dgiExtractColor(dgi) self.sideWalkColor = DNAUtil.dgiExtractColor(dgi) self.curbColor = DNAUtil.dgiExtractColor(dgi)
def makeFromDGI(self, dgi): DNANode.DNANode.makeFromDGI(self, dgi) self.code = DNAUtil.dgiExtractString8(dgi) self.color = DNAUtil.dgiExtractColor(dgi) self.width = dgi.getInt16() / 100.0 self.height = dgi.getInt16() / 100.0 self.bDefaultColor = dgi.getBool()
def handleNode(self, dgi, target = None): if target is None: return numNodes = dgi.getUint16() for _ in xrange(numNodes): code = DNAUtil.dgiExtractString8(dgi) file = DNAUtil.dgiExtractString8(dgi) node = DNAUtil.dgiExtractString8(dgi) np = NodePath(loader.pdnaModel(file)) if node: newNode = np.find('**/' + node).copyTo(NodePath()) np.removeNode() np = newNode np.setTag('DNACode', code) np.setTag('DNARoot', node) target(np, code)
def makeFromDGI(self, dgi, dnaStorage): DNAGroup.DNAGroup.makeFromDGI(self, dgi) numEdges = dgi.getUint16() for _ in xrange(numEdges): index = dgi.getUint16() endPoint = dgi.getUint16() self.addSuitEdge(dnaStorage.getSuitEdge(index, endPoint)) numVisibles = dgi.getUint16() for _ in xrange(numVisibles): self.addVisible(DNAUtil.dgiExtractString8(dgi)) numCells = dgi.getUint16() for _ in xrange(numCells): w = dgi.getUint8() h = dgi.getUint8() x, y, z = [dgi.getInt32() / 100.0 for i in xrange(3)] self.addBattleCell(DNABattleCell.DNABattleCell(w, h, LVector3f(x, y, z)))
def makeFromDGI(self, dgi, dnaStorage): DNAGroup.DNAGroup.makeFromDGI(self, dgi) numEdges = dgi.getUint16() for _ in xrange(numEdges): index = dgi.getUint16() endPoint = dgi.getUint16() self.addSuitEdge(dnaStorage.getSuitEdge(index, endPoint)) numVisibles = dgi.getUint16() for _ in xrange(numVisibles): self.addVisible(DNAUtil.dgiExtractString8(dgi)) numCells = dgi.getUint16() for _ in xrange(numCells): w = dgi.getUint8() h = dgi.getUint8() x, y, z = [dgi.getInt32() / 100.0 for i in xrange(3)] self.addBattleCell( DNABattleCell.DNABattleCell(w, h, LVector3f(x, y, z)))
def makeFromDGI(self, dgi): DNAGroup.DNAGroup.makeFromDGI(self, dgi) self.code = DNAUtil.dgiExtractString8(dgi) self.color = DNAUtil.dgiExtractColor(dgi) self.windowCount = dgi.getUint8()
def handleStorageData(self, dgi): # Catalog Codes numRoots = dgi.getUint16() for _ in xrange(numRoots): root = DNAUtil.dgiExtractString8(dgi) numCodes = dgi.getUint8() for i in xrange(numCodes): code = DNAUtil.dgiExtractString8(dgi) self.dnaStorage.storeCatalogCode(root, code) # Textures numTextures = dgi.getUint16() for _ in xrange(numTextures): code = DNAUtil.dgiExtractString8(dgi) filename = DNAUtil.dgiExtractString8(dgi) self.dnaStorage.storeTexture(code, loader.pdnaTexture(filename, okMissing=True)) # Fonts numFonts = dgi.getUint16() for _ in xrange(numFonts): code = DNAUtil.dgiExtractString8(dgi) filename = DNAUtil.dgiExtractString8(dgi) self.dnaStorage.storeFont(code, loader.pdnaFont(filename)) # Nodes self.handleNode(dgi, target = self.dnaStorage.storeNode) self.handleNode(dgi, target = self.dnaStorage.storeHoodNode) self.handleNode(dgi, target = self.dnaStorage.storePlaceNode) # Blocks numBlocks = dgi.getUint16() for _ in xrange(numBlocks): number = dgi.getUint8() zone = dgi.getUint16() title = DNAUtil.dgiExtractString8(dgi) article = DNAUtil.dgiExtractString8(dgi) bldgType = DNAUtil.dgiExtractString8(dgi) self.dnaStorage.storeBlock(number, title, article, bldgType, zone) # Suit Points numPoints = dgi.getUint16() for _ in xrange(numPoints): index = dgi.getUint16() pointType = dgi.getUint8() x, y, z = (dgi.getInt32() / 100.0 for i in xrange(3)) graph = dgi.getUint8() landmarkBuildingIndex = dgi.getInt8() self.dnaStorage.storeSuitPoint(DNASuitPoint.DNASuitPoint(index, pointType, LVector3f(x, y, z), landmarkBuildingIndex)) # Suit Edges numEdges = dgi.getUint16() for _ in xrange(numEdges): index = dgi.getUint16() numPoints = dgi.getUint16() for i in xrange(numPoints): endPoint = dgi.getUint16() zoneId = dgi.getUint16() self.dnaStorage.storeSuitEdge(index, endPoint, zoneId) # Battle Cells numCells = dgi.getUint16() for _ in xrange(numCells): w = dgi.getUint8() h = dgi.getUint8() x, y, z = (dgi.getInt32() / 100.0 for i in xrange(3)) self.dnaStorage.storeBattleCell(DNABattleCell.DNABattleCell(w, h, LVector3f(x, y, z)))
def makeFromDGI(self, dgi): DNAGroup.DNAGroup.makeFromDGI(self, dgi) self.code = DNAUtil.dgiExtractString8(dgi) self.color = DNAUtil.dgiExtractColor(dgi)
def makeFromDGI(self, dgi): self.name = DNAUtil.dgiExtractString8(dgi) DNAUtil.dgiExtractString8(dgi) DNAUtil.dgiExtractString8(dgi)
def makeFromDGI(self, dgi): DNALandmarkBuilding.DNALandmarkBuilding.makeFromDGI(self, dgi) self.animName = DNAUtil.dgiExtractString8(dgi)