Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/devtools/CompleteTestKit
diff options
context:
space:
mode:
authordavesilver <nibor123@gmail.com>2010-07-27 15:39:01 (GMT)
committer davesilver <nibor123@gmail.com>2010-07-27 15:39:01 (GMT)
commit95ce0140c9fc98365ed58b0ee2d227b0793e534c (patch)
tree230debdfc5de892ee4a8199f423454379beafdc6 /devtools/CompleteTestKit
parent4ee9c8d4dda26f7d9583e571dfb0477b5714bb50 (diff)
Editing Sprite tests
Diffstat (limited to 'devtools/CompleteTestKit')
-rw-r--r--devtools/CompleteTestKit/DynamicDO.py (renamed from devtools/CompleteTestKit/DynamicDrawableObject2.py)2
-rw-r--r--devtools/CompleteTestKit/FinalDirtyTest.py (renamed from devtools/CompleteTestKit/dirtyTest2.py)4
-rw-r--r--devtools/CompleteTestKit/OriginalScene.py (renamed from devtools/CompleteTestKit/NewScene.py)54
-rw-r--r--devtools/CompleteTestKit/Scene.py54
-rwxr-xr-xdevtools/CompleteTestKit/dirtyTest.py68
5 files changed, 57 insertions, 125 deletions
diff --git a/devtools/CompleteTestKit/DynamicDrawableObject2.py b/devtools/CompleteTestKit/DynamicDO.py
index a58f4b9..5375807 100644
--- a/devtools/CompleteTestKit/DynamicDrawableObject2.py
+++ b/devtools/CompleteTestKit/DynamicDO.py
@@ -26,7 +26,7 @@ class DynamicDrawableObject(DrawableObject, pygame.sprite.Sprite):
# self._last_update = timePassed%self._delay
# self._last_update = timePassed
- def updateCurrentAnimation(self, right, bottom):
+ def updateWithMovementself, right, bottom):
# If we're at the top or bottom of the screen, switch directions.
if (self.yPos + self.ySize) >= bottom or self.yPos < 0: self.ySpeed = self.ySpeed * -1
diff --git a/devtools/CompleteTestKit/dirtyTest2.py b/devtools/CompleteTestKit/FinalDirtyTest.py
index e3c4779..61a1968 100644
--- a/devtools/CompleteTestKit/dirtyTest2.py
+++ b/devtools/CompleteTestKit/FinalDirtyTest.py
@@ -3,9 +3,9 @@ import pygame
from pygame.locals import *
from boxes import BouncingBox
from time import time
-from NewScene import Scene
+from Scene import Scene
from DrawableObject import DrawableObject
-from DynamicDrawableObject2 import DynamicDrawableObject
+from DynamicDO import DynamicDrawableObject
pygame.init()
FRAME=500
diff --git a/devtools/CompleteTestKit/NewScene.py b/devtools/CompleteTestKit/OriginalScene.py
index 9727177..4771f3b 100644
--- a/devtools/CompleteTestKit/NewScene.py
+++ b/devtools/CompleteTestKit/OriginalScene.py
@@ -1,14 +1,18 @@
import pygame
-from pygame.sprite import RenderUpdates
-class Scene(pygame.sprite.RenderUpdates):
-
- def __init__(self, sprites):
+class Scene(pygame.sprite.OrderedUpdates):
+ def __init__(self, drawableObjects):
+
self._spritelist = []
- self._spritelist.append([sprites, sprites.getXPos(), sprites.getYPos()])
- RenderUpdates.__init__(self, sprites)
+ RenderUpdates.__init__(self, *sprites)
+
+ cnt = 0
+ while cnt < len(drawableObjects):
+ self._spritelist.append([drawableObjects[cnt],drawableObjects[cnt].getXPos(),drawableObjects[cnt].getYPos()])
+ cnt += 1
+
self.xPos = 0
self.yPos = 0
self.xSize = 0
@@ -39,29 +43,35 @@ class Scene(pygame.sprite.RenderUpdates):
cnt = 0
while cnt < len(self._spritelist):
- if (self._spritelist[cnt][0].getXPos() + self._spritelist[cnt][0].getXSize()) > highestX: highestX = self._spritelist[cnt][0].getXPos() + self._spritelist[cnt][0].getXSize()
- if (self._spritelist[cnt][0].getYPos() + self._spritelist[cnt][0].getYSize()) > highestY: highestY = self._spritelist[cnt][0].getYPos() + self._spritelist[cnt][0].getYSize()
+ if self._spritelist[cnt][0].getXPos() + self._spritelist[cnt][0].getXSize() > highestX: highestX = self._spritelist[cnt][0].getXPos() + self._spritelist[cnt][0].getXSize()
+ if self._spritelist[cnt][0].getYPos() + self._spritelist[cnt][0].getYSize() > highestY: highestY = self._spritelist[cnt][0].getYPos() + self._spritelist[cnt][0].getYSize()
cnt += 1
self.xSize = highestX - self.xPos
self.ySize = highestY - self.yPos
-
+
def addObjects(self, newDrawableObjects):
- for sprite in newDrawableObjects:
- RenderUpdates.add_internal(self, sprite)
- self._spritelist.append([sprite, sprite.getXPos(), sprite.getYPos()])
+
+ cnt = 0
+ while cnt < len(newDrawableObjects):
+ self._spritelist.append([newDrawableObjects[cnt],newDrawableObjects[cnt].getXPos(),newDrawableObjects[cnt].getYPos()])
+ cnt += 1
+
+ self.calcPosition()
+ self.calcSize()
+ self.setRelativePositions()
def setRelativePositions(self):
cnt = 0
while cnt < len(self._spritelist):
- self._spritelist[cnt][1] = self._spritelist[cnt][0].getXPos() - self.xPos
- self._spritelist[cnt][2] = self._spritelist[cnt][0].getYPos() - self.yPos
+ self._spritelist[cnt][1] = self._spritelist[cnt][1] - self.xPos
+ self._spritelist[cnt][2] = self._spritelist[cnt][2] - self.yPos
cnt += 1
- def removeObject(self, sprite):
- RenderUpdates.remove_internal(self, sprite)
- self._spritelist.remove(sprite)
+ def removeObject(self, index):
+
+ if index < len(self._spritelist): del self._spritelist[index]
def getObject(self, index):
@@ -69,13 +79,8 @@ class Scene(pygame.sprite.RenderUpdates):
return self._spritelist[index][0]
def getListSize(self):
-
return len(self._spritelist)
- def getList(self):
-
- return list(self._spritelist)
-
def moveObjects(self):
cnt = 0
@@ -130,9 +135,6 @@ class Scene(pygame.sprite.RenderUpdates):
def scaleScene(self, newXSize = None, newYSize = None):
- self.calcPosition()
- self.calcSize()
-
xScale = 1
yScale = 1
@@ -146,8 +148,6 @@ class Scene(pygame.sprite.RenderUpdates):
self._spritelist[cnt][2] = yScale * self._spritelist[cnt][2]
cnt += 1
- self.calcPosition()
- self.calcSize()
self.setPosition()
def updateAnimations(self, t):
diff --git a/devtools/CompleteTestKit/Scene.py b/devtools/CompleteTestKit/Scene.py
index 4771f3b..9727177 100644
--- a/devtools/CompleteTestKit/Scene.py
+++ b/devtools/CompleteTestKit/Scene.py
@@ -1,18 +1,14 @@
import pygame
+from pygame.sprite import RenderUpdates
-class Scene(pygame.sprite.OrderedUpdates):
+class Scene(pygame.sprite.RenderUpdates):
- def __init__(self, drawableObjects):
-
- self._spritelist = []
- RenderUpdates.__init__(self, *sprites)
+ def __init__(self, sprites):
+ self._spritelist = []
+ self._spritelist.append([sprites, sprites.getXPos(), sprites.getYPos()])
+ RenderUpdates.__init__(self, sprites)
- cnt = 0
- while cnt < len(drawableObjects):
- self._spritelist.append([drawableObjects[cnt],drawableObjects[cnt].getXPos(),drawableObjects[cnt].getYPos()])
- cnt += 1
-
self.xPos = 0
self.yPos = 0
self.xSize = 0
@@ -43,35 +39,29 @@ class Scene(pygame.sprite.OrderedUpdates):
cnt = 0
while cnt < len(self._spritelist):
- if self._spritelist[cnt][0].getXPos() + self._spritelist[cnt][0].getXSize() > highestX: highestX = self._spritelist[cnt][0].getXPos() + self._spritelist[cnt][0].getXSize()
- if self._spritelist[cnt][0].getYPos() + self._spritelist[cnt][0].getYSize() > highestY: highestY = self._spritelist[cnt][0].getYPos() + self._spritelist[cnt][0].getYSize()
+ if (self._spritelist[cnt][0].getXPos() + self._spritelist[cnt][0].getXSize()) > highestX: highestX = self._spritelist[cnt][0].getXPos() + self._spritelist[cnt][0].getXSize()
+ if (self._spritelist[cnt][0].getYPos() + self._spritelist[cnt][0].getYSize()) > highestY: highestY = self._spritelist[cnt][0].getYPos() + self._spritelist[cnt][0].getYSize()
cnt += 1
self.xSize = highestX - self.xPos
self.ySize = highestY - self.yPos
-
- def addObjects(self, newDrawableObjects):
- cnt = 0
- while cnt < len(newDrawableObjects):
- self._spritelist.append([newDrawableObjects[cnt],newDrawableObjects[cnt].getXPos(),newDrawableObjects[cnt].getYPos()])
- cnt += 1
-
- self.calcPosition()
- self.calcSize()
- self.setRelativePositions()
+ def addObjects(self, newDrawableObjects):
+ for sprite in newDrawableObjects:
+ RenderUpdates.add_internal(self, sprite)
+ self._spritelist.append([sprite, sprite.getXPos(), sprite.getYPos()])
def setRelativePositions(self):
cnt = 0
while cnt < len(self._spritelist):
- self._spritelist[cnt][1] = self._spritelist[cnt][1] - self.xPos
- self._spritelist[cnt][2] = self._spritelist[cnt][2] - self.yPos
+ self._spritelist[cnt][1] = self._spritelist[cnt][0].getXPos() - self.xPos
+ self._spritelist[cnt][2] = self._spritelist[cnt][0].getYPos() - self.yPos
cnt += 1
- def removeObject(self, index):
-
- if index < len(self._spritelist): del self._spritelist[index]
+ def removeObject(self, sprite):
+ RenderUpdates.remove_internal(self, sprite)
+ self._spritelist.remove(sprite)
def getObject(self, index):
@@ -79,8 +69,13 @@ class Scene(pygame.sprite.OrderedUpdates):
return self._spritelist[index][0]
def getListSize(self):
+
return len(self._spritelist)
+ def getList(self):
+
+ return list(self._spritelist)
+
def moveObjects(self):
cnt = 0
@@ -135,6 +130,9 @@ class Scene(pygame.sprite.OrderedUpdates):
def scaleScene(self, newXSize = None, newYSize = None):
+ self.calcPosition()
+ self.calcSize()
+
xScale = 1
yScale = 1
@@ -148,6 +146,8 @@ class Scene(pygame.sprite.OrderedUpdates):
self._spritelist[cnt][2] = yScale * self._spritelist[cnt][2]
cnt += 1
+ self.calcPosition()
+ self.calcSize()
self.setPosition()
def updateAnimations(self, t):
diff --git a/devtools/CompleteTestKit/dirtyTest.py b/devtools/CompleteTestKit/dirtyTest.py
deleted file mode 100755
index faadc9e..0000000
--- a/devtools/CompleteTestKit/dirtyTest.py
+++ /dev/null
@@ -1,68 +0,0 @@
-#! /usr/bin/env python
-import pygame
-from pygame.locals import *
-from boxes import BouncingBox
-from time import time
-pygame.init()
-
-FRAME=500
-screenWidth = 600
-screenHeight = 400
-numImages = 5
-maxTrial = 5 # multiple trials, but hard coded in this test
-dirtyList=[]
-
-print "width,height",
-print screenWidth,
-print ",",
-print screenHeight
-
-screen = pygame.display.set_mode( [int(screenWidth),
- int(screenHeight)] ) #Screen Set 600x400
-pygame.display.set_caption("Sprite Speed Test Window")
-GREEN = 0, 192, 0 # green
-background = pygame.image.load("Room.gif")
-screen.blit(background,[0,0])
-pygame.display.flip()
-start = time()
-frameList = [
- pygame.image.load("./art/BMP24/1.bmp").convert(),
- pygame.image.load("./art/BMP24/2.bmp").convert(),
- pygame.image.load("./art/BMP24/3.bmp").convert(),
- pygame.image.load("./art/BMP24/4.bmp").convert(),
- pygame.image.load("./art/BMP24/5.bmp").convert(),
- pygame.image.load("./art/BMP24/6.bmp").convert(),
- pygame.image.load("./art/BMP24/7.bmp").convert(),
- pygame.image.load("./art/BMP24/8.bmp").convert(),
- pygame.image.load("./art/BMP24/9.bmp").convert(),
-]
-
-for aTrial in range(maxTrial):
- start = time()
- group1=pygame.sprite.RenderUpdates(BouncingBox(frameList,(0,0)) )
- group2=pygame.sprite.RenderUpdates(BouncingBox(frameList,(40,40)) )
- group3=pygame.sprite.RenderUpdates(BouncingBox(frameList,(80,80)) )
- group4=pygame.sprite.RenderUpdates(BouncingBox(frameList,(120,120)) )
- group5=pygame.sprite.RenderUpdates(BouncingBox(frameList,(160,160)) )
- groups=[group1,group2,group3,group4,group5]
- print (time()-start) ,
- print " -- Time to load"
-
- start = time()
- for frame in range(FRAME):
- dirtyList=[]
- for image in range(numImages):
- #move / collision detection
- groups[image].update( screenWidth,screenHeight )
-
- #individually blit each image group - add to list for update
- dirtyList.extend(groups[image].draw(screen))
-
- #draw the images flip/update
- pygame.display.update(dirtyList)
- for image in range(numImages):
- groups[image].clear(screen, background)
-
-
- print 1/((time()-start)/FRAME)
- pygame.display.flip()