def render(self, surface, viewPortRect ): for eachEntity in self.gameEntities.values(): if eachEntity.activeDirectionIndex != -1: currentMode = eachEntity.currentMode max = self.myImgMngr.getMaxAnimationScenes( eachEntity.name, currentMode ) if int(max) > 0: rotationMode = int( eachEntity.activeDirectionIndex ) % int( max ) else: rotationMode = int( eachEntity.activeDirectionIndex ) someStr = str( rotationMode ) #rotationMode = eachEntity.getRotationModeAsString() strAnimationMode = eachEntity.getAnimationModeAsString() # Which mode? if len( someStr ) == 1: someStr = "000" + someStr else: someStr = "00" + someStr activeImage = self.myImgMngr.getImage( eachEntity.name, currentMode, someStr, strAnimationMode ) if activeImage is not None: # Set activeImage to entity eachEntity.setImage( activeImage ) renderRect = Utils.transformRectPosition( eachEntity.rect, viewPortRect ) # Visibility test to avoid unnescary rendering if eachEntity.checkVisibility is True: entityRect = eachEntity.rect if viewPortRect.collidepoint( entityRect.topleft ) or viewPortRect.collidepoint( entityRect.bottomright ): eachEntity.render( surface, renderRect ) else: eachEntity.render( surface, renderRect )