Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Aguiar <alanjas@hotmail.com>2012-03-05 03:19:54 (GMT)
committer Alan Aguiar <alanjas@hotmail.com>2012-03-05 03:19:54 (GMT)
commit1e7363700728c530d0e48b962cf82faf94204545 (patch)
tree12d364e8ce58567ff0f0f3457a1d990f8d84fba1
parentb1c7e612e65cc482cda97453b1498106a023337e (diff)
make some changes in api files
-rwxr-xr-xsrc/api/Button.py15
-rwxr-xr-xsrc/api/Game.py22
-rwxr-xr-xsrc/api/Math.py6
-rwxr-xr-xsrc/api/Mouse.py8
-rwxr-xr-xsrc/api/Sprite.py29
-rwxr-xr-xsrc/api/Vector.py12
6 files changed, 58 insertions, 34 deletions
diff --git a/src/api/Button.py b/src/api/Button.py
index 65fa133..b6c0efc 100755
--- a/src/api/Button.py
+++ b/src/api/Button.py
@@ -2,6 +2,9 @@ import pygame
import api.Label
from api.Label import CLabel
+import Mouse
+
+
class CButton(CLabel):
""" a button based on the label
same properties as label +
@@ -16,6 +19,9 @@ class CButton(CLabel):
self.active = False
self.clicked = False
self.bgColor = (0xCC, 0xCC, 0xCC)
+
+ def setCenter(self, aCenter):
+ self.center = aCenter
def update(self):
CLabel.update(self)
@@ -25,13 +31,14 @@ class CButton(CLabel):
#TODO: Make a CMouse class and check for isPressed() and click().
#check for mouse input
- if pygame.mouse.get_pressed() == (1, 0, 0):
- if self.rect.collidepoint(pygame.mouse.get_pos()):
+
+ if Mouse.get_pressed() == (1, 0, 0):
+ if self.rect.collidepoint(Mouse.get_position()):
self.active = True
#check for mouse release
if self.active == True:
- if pygame.mouse.get_pressed() == (0, 0, 0):
+ if Mouse.get_pressed() == (0, 0, 0):
self.active = False
- if self.rect.collidepoint(pygame.mouse.get_pos()):
+ if self.rect.collidepoint(Mouse.get_position()):
self.clicked = True
diff --git a/src/api/Game.py b/src/api/Game.py
index d5ff8da..12f7b20 100755
--- a/src/api/Game.py
+++ b/src/api/Game.py
@@ -69,10 +69,10 @@ class CGame(object):
#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
+ #self.mSampleSprite = CSuperSprite(self)
+ #self.mSampleSprite.setSpeed(3)
+ #self.mSampleSprite.setAngle(0)
+ #self.mSampleSprite.boundAction = self.mSampleSprite.WRAP
self.mAllSprites = pygame.sprite.Group()
@@ -83,19 +83,19 @@ class CGame(object):
#self.mMainSprites = pygame.sprite.OrderedUpdates(self.mSprites)
#self.mGroups.append(self.mMainSprites)
- self.mS2 = CSprite()
+ #self.mS2 = CSprite()
#self.mS2.setDX(10)
- self.mS2.velX = 30
- self.mS2.velY = 0
- self.mS2.accelY = 1
- self.mS2.maxSpeed = 200
+ #self.mS2.velX = 30
+ #self.mS2.velY = 0
+ #self.mS2.accelY = 1
+ #self.mS2.maxSpeed = 200
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)
+ #self.mAllSprites.add(self.mSampleSprite)
+ #self.mAllSprites.add(self.mS2)
def gameLoop(self):
diff --git a/src/api/Math.py b/src/api/Math.py
index b514234..e8b4845 100755
--- a/src/api/Math.py
+++ b/src/api/Math.py
@@ -40,4 +40,8 @@ def radToDeg(aAngle):
# Returns: The angle in radians.
#-------------------------------------------------------------------------------
def degToRad(aAngle):
- return aAngle * math.pi / 180 \ No newline at end of file
+ return aAngle * math.pi / 180
+
+
+def dist(ax1, ay1, ax2, ay2):
+ return math.sqrt((ax2-ax1)**2 + (ay2-ay1)**2) \ No newline at end of file
diff --git a/src/api/Mouse.py b/src/api/Mouse.py
index 7cfd40b..54f3b3b 100755
--- a/src/api/Mouse.py
+++ b/src/api/Mouse.py
@@ -2,7 +2,9 @@
import pygame
-class CMouse():
- def get_position(self):
- return pygame.mouse.get_pos() \ No newline at end of file
+def get_position():
+ return pygame.mouse.get_pos()
+
+def get_pressed():
+ return pygame.mouse.get_pressed() \ No newline at end of file
diff --git a/src/api/Sprite.py b/src/api/Sprite.py
index 8c73b37..3882e84 100755
--- a/src/api/Sprite.py
+++ b/src/api/Sprite.py
@@ -65,8 +65,8 @@ class CSprite(pygame.sprite.Sprite):
# Set the position of the image.
# oldCenter is used to draw the trace in drawTrace().
# oldCenter is the position of the sprite in the previous frame.
- self.oldCenter = (self.mPos.x, self.mPos.y)
- self.rect.center = (self.mPos.x, self.mPos.y)
+ self.oldCenter = (self.mPos.getX(), self.mPos.getY())
+ self.rect.center = (self.mPos.getX(), self.mPos.getY())
# Angle of rotation in degrees used for movement calculations.
self.mAngle = 0
@@ -78,9 +78,10 @@ class CSprite(pygame.sprite.Sprite):
self.currentState = "default"
def setXY(self, aX, aY):
- self.mPos.x = aX
- self.mPos.y = aY
- self.rect.center = (self.mPos.x, self.mPos.y)
+ #print 'alan', dir(self.mPos)
+ self.mPos.setX(aX)
+ self.mPos.setY(aY)
+ self.rect.center = (self.mPos.getX(), self.mPos.getY())
def setVelXY(self, aVelX, aVelY):
self.mVel.setXY(aVelX, aVelY)
@@ -100,17 +101,18 @@ class CSprite(pygame.sprite.Sprite):
# Rotate the image according to the angle of the sprite.
self.__rotateSpriteImage()
self.checkBounds()
- self.rect.center = (self.mPos.x, self.mPos.y)
+
+ self.rect.center = (self.mPos.getX(), self.mPos.getY())
# TODO: Test this. Need to pass a reference to background to draw.
# self.drawTrace((255,0,0))
self.mVel.add(self.mAccel)
#self.mVel.truncate(self.maxSpeed)
- if (self.mVel.x > self.maxSpeed):
- self.mVel.x = self.maxSpeed
- if (self.mVel.y > self.maxSpeed):
- self.mVel.y = self.maxSpeed
+ if (self.mVel.getX() > self.maxSpeed):
+ self.mVel.setX(self.maxSpeed)
+ if (self.mVel.getY() > self.maxSpeed):
+ self.mVel.setY(self.maxSpeed)
self.mPos.add(self.mVel)
@@ -143,8 +145,8 @@ class CSprite(pygame.sprite.Sprite):
self.dy = math.sin(theta) * self.mSpeed
self.dy *= -1
- self.mPos.x += self.dx
- self.mPos.y += self.dy
+ self.mPos.setX(self.mPos.getX() + self.dx)
+ self.mPos.setY(self.mPos.getY() + self.dy)
#---------------------------------------------------------------------------
# __rotateSpriteImage().
@@ -276,7 +278,8 @@ class CSprite(pygame.sprite.Sprite):
""" place the sprite directly at the given position
expects an (x, y) tuple
"""
- (self.mPos.x, self.mPos.y) = position
+ self.mPos.setX(position.getX())
+ self.mPos.setY(position.getY())
def moveBy (self, vector):
""" move the sprite by the (dx, dy) values in vector
diff --git a/src/api/Vector.py b/src/api/Vector.py
index bae033c..bbe6580 100755
--- a/src/api/Vector.py
+++ b/src/api/Vector.py
@@ -5,8 +5,8 @@ EPSILON = 0.000001
class CVector(object):
- x = 0.0
- y = 0.0
+ #x = 0.0
+ #y = 0.0
def __init__(self, aX = 0.0, aY = 0.0):
self.x = aX
@@ -24,6 +24,14 @@ class CVector(object):
# Sets the y value of the vector.
def setY(self, aY):
self.y = aY
+
+ # Gets the x value of the vector
+ def getX(self):
+ return self.x
+
+ # Gets the y value of the vector
+ def getY(self):
+ return self.y
def setVec(self, aVec):
self.x = aVec.x;