Esempio n. 1
0
 def addObjects(self, newDrawableObjects):
     for sprite in newDrawableObjects:
         RenderUpdates.add_internal(self, sprite)
         self._spritelist.insert(
             len(self._spritelist) - 1,
             [sprite, sprite.getXPos(),
              sprite.getYPos()])
Esempio n. 2
0
    def add_internal(self, sprite):
        #prevent duplication
        if self.spritedict.has_key(sprite):
            return

        RenderUpdates.add_internal(self, sprite)

        if not hasattr(sprite, 'zAxis'):
            #TODO: is this legal?
            sprite.zAxis = 0

        z = sprite.zAxis

        if z == 0:
            self.orderedSprites.insert(0, sprite)

        else:
            success = 0
            for i in range(len(self.orderedSprites) - 1):
                candidate = self.orderedSprites[i]
                if z < candidate.zAxis:
                    self.orderedSprites.insert(i, sprite)
                    success = 1
                    break
            if not success:
                self.orderedSprites.append(sprite)
Esempio n. 3
0
 def addObject(self, newDrawableObject):
     RenderUpdates.add_internal(self, newDrawableObject)
     self._spritelist.insert(
         len(self._spritelist) - 1, [
             newDrawableObject,
             newDrawableObject.getXPos(),
             newDrawableObject.getYPos()
         ])
Esempio n. 4
0
 def add_ontop(self, ref_sprite, sprite):
     """ Add the sprite to the group on top ref_sprite.
     
     The sprite will be added on top of ref sprite so ref_sprite is
     below of it.
     """
     RenderUpdates.add_internal(self, sprite)
     i = self._spritelist.index(ref_sprite)
     self._spritelist.insert(i, sprite)
     
     sprite.add_internal(self)
Esempio n. 5
0
 def add_below(self, ref_sprite, sprite):
     """ Add the sprite to the group below ref_sprite.
     
     The sprite will be added below ref sprite so ref_sprite is
     on top of it.
     """
     RenderUpdates.add_internal(self, sprite)
     i = self._spritelist.index(ref_sprite)
     self._spritelist.insert(i+1, sprite)
     
     sprite.add_internal(self)
Esempio n. 6
0
    def add_internal (self, sprite):
        """RenderLayer.add_internal (...) -> None
        """
        if sprite in self.spritedict:
            return
        RenderUpdates.add_internal (self, sprite)

        if sprite.depth == 0:
            self.sprite_depths.insert (0, sprite)
        else:
            success = False
            for i in range (len (self.sprite_depths) - 1):
                candidate = self.sprite_depths[i]
                if sprite.depth < candidate.depth:
                    self.sprite_depths.insert (i, sprite)
                    success = True
                    break
            if not success:
                self.sprite_depths.append (sprite)
Esempio n. 7
0
	def add_internal( self, sprite ):
		RenderUpdates.add_internal( self, sprite )
		center = self.bgMangr.GetDisplayCenter(sprite.rect)
		self.displayRects[sprite] = sprite.rect.move(0,0) #copy
		self.displayRects[sprite].center = center
Esempio n. 8
0
 def addObjects(self, newDrawableObjects):
     for sprite in newDrawableObjects:
        RenderUpdates.add_internal(self, sprite)
        self._spritelist.insert(len(self._spritelist) - 1, [sprite, sprite.getXPos(), sprite.getYPos()])
Esempio n. 9
0
 def addObject(self, newDrawableObject):
     RenderUpdates.add_internal(self, newDrawableObject)
     self._spritelist.insert(len(self._spritelist) - 1, [newDrawableObject, newDrawableObject.getXPos(), newDrawableObject.getYPos()])
Esempio n. 10
0
	def add_internal( self, sprite ):
		RenderUpdates.add_internal( self, sprite )
		center = self.bgMangr.GetDisplayCenter(sprite.rect)
		sprite.displayRect.center = center
Esempio n. 11
0
 def add_internal(self, sprite):
     RenderUpdates.add_internal(self, sprite)
     center = self.bgMangr.GetDisplayCenter(sprite.rect)
     sprite.displayRect.center = center