Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/api/Game.py
diff options
context:
space:
mode:
authorFernando Sansberro <sansberro@batovi.com>2012-04-21 12:19:39 (GMT)
committer Fernando Sansberro <sansberro@batovi.com>2012-04-21 12:19:39 (GMT)
commit0eb075f87d98e8588fa2d8b8bc5f1513d377d8ba (patch)
treef4712b0a49968fdb950ec1343045ff0715bef6bf /src/api/Game.py
parent4a59a2320d9b65a997c34c707631fbf5d206a7fa (diff)
Renamed states folder to game. Some improvements in codebase.
Diffstat (limited to 'src/api/Game.py')
-rwxr-xr-xsrc/api/Game.py60
1 files changed, 31 insertions, 29 deletions
diff --git a/src/api/Game.py b/src/api/Game.py
index b3fe189..b49b3ff 100755
--- a/src/api/Game.py
+++ b/src/api/Game.py
@@ -15,16 +15,21 @@ import api.MultiLabel
from api.MultiLabel import CMultiLabel
import gc
+from api.Mouse import CMouse
+
from gettext import gettext as _
+import Image
+
class CGame(object):
mInstance = None
mState = None
mScreen = None
mBackground = None
- mSampleSprite = None
- mSprites = None
+ mAllSprites = None
+ mMousePointerSprite = None
+ mMouse = None
mGroups = None
mMainSprites = None
mClock = None
@@ -49,15 +54,20 @@ class CGame(object):
print gc.collect(), " deleted objects"
self.mState = aState
+ self.mState.init()
def destroy(self):
if (self.mState != None):
self.mState.destroy()
self.mState = None
+ self.mMouse.destroy()
self.mBackground = None
+ self.mMousePointerSprite.destroy()
+ self.mMousePointerSprite = None
self.mInstance = None
# destroy pygame
- pygame.quit()
+ #pygame.quit()
+ pygame.mouse.set_visible(True)
print "destroy"
def init(self):
@@ -72,38 +82,22 @@ class CGame(object):
self.mBackground = pygame.Surface(self.mScreen.get_size())
self.mBackground.fill((255, 0, 0))
- #self.mBackground = CImage.loadImage("assets/images/back_menu.png", False)
-
- #self.mSampleSprite = CSuperSprite(self)
- #self.mSampleSprite.setSpeed(3)
- #self.mSampleSprite.setAngle(0)
- #self.mSampleSprite.boundAction = self.mSampleSprite.WRAP
-
+ # Sound system initialization.
+ pygame.mixer.init()
#self.mAllSprites = pygame.sprite.Group()
Sprites = []
self.mAllSprites = pygame.sprite.LayeredUpdates(Sprites)
-
- #self.mGroups = []
- #self.mSprites = [self.mSampleSprite]
- #self.mMainSprites = pygame.sprite.OrderedUpdates(self.mSprites)
- #self.mGroups.append(self.mMainSprites)
-
- #self.mS2 = CSprite()
- #self.mS2.setDX(10)
- #self.mS2.velX = 30
- #self.mS2.velY = 0
- #self.mS2.accelY = 1
- #self.mS2.maxSpeed = 200
+ pygame.mouse.set_visible(False)
+ self.mMouse = CMouse()
+ self.mMousePointerSprite = CSprite()
+ self.mMousePointerSprite.setImage(Image.loadImage('assets/images/cursor.png', True))
+ self.addChild(self.mMousePointerSprite)
self.mScreen.blit(self.mBackground, (0, 0))
self.mClock = pygame.time.Clock()
self.mQuit = False
-
- #self.mAllSprites.add(self.mSampleSprite)
- #self.mAllSprites.add(self.mS2)
-
def gameLoop(self):
print "start game loop here"
@@ -121,6 +115,9 @@ class CGame(object):
self.doEvents(event)
+ self.mMouse.update()
+ self.mMousePointerSprite.setXY(self.mMouse.getX(), self.mMouse.getY())
+
#self.mState.preUpdate()
self.mState.update()
@@ -144,15 +141,17 @@ class CGame(object):
"""
pass
- def setSprites(self, aSpritesArray):
- self.mSprites = aSpritesArray
+# def setSprites(self, aSpritesArray):
+# self.mSprites = aSpritesArray
#self.mGroups = []
#self.mMainSprites = pygame.sprite.OrderedUpdates(self.mSprites)
#self.mGroups.append(self.mMainSprites)
# Add a sprite to the sprite list.
def addChild(self, aSprite, aLayer=0):
+ self.mAllSprites.remove(self.mMousePointerSprite)
self.mAllSprites.add(aSprite, layer=aLayer)
+ self.mAllSprites.add(self.mMousePointerSprite)
def removeChild(self, aSprite):
self.mAllSprites.remove(aSprite)
@@ -160,4 +159,7 @@ class CGame(object):
def setBackground(self, aBackgroundImage):
self.mBackground = None
self.mBackground = aBackgroundImage
- self.mScreen.blit(self.mBackground, (0, 0))
+ self.blitBackground(self.mBackground)
+
+ def blitBackground(self, aBackgroundImage):
+ self.mScreen.blit(aBackgroundImage, (0, 0)) \ No newline at end of file