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-08 05:07:20 (GMT)
committer Alan Aguiar <alanjas@hotmail.com>2012-03-08 05:07:20 (GMT)
commitf61165c6d7d75ed48799b5d2e668d458e4d71b8d (patch)
tree9d986d34869530fa8aeae1a2867aa84e2a0f56cf
parent1117f4173fb93f060c04412aae511b83d3bbb8be (diff)
create a label to show the final state of a piece
-rwxr-xr-xsrc/states/Area1Game1.py51
1 files changed, 43 insertions, 8 deletions
diff --git a/src/states/Area1Game1.py b/src/states/Area1Game1.py
index b12fffd..0367320 100755
--- a/src/states/Area1Game1.py
+++ b/src/states/Area1Game1.py
@@ -27,6 +27,9 @@ import api.Mouse as Mouse
import api.Math as Math
+import api.Label
+from api.Label import CLabel
+
STATE_STALE = 0
STATE_DRAG = 1
@@ -39,7 +42,7 @@ class Piece(CSprite):
mState = None
-
+ mParent = None
MIN_DISTANCE = 40
TIME_RETURN = 15
@@ -57,8 +60,12 @@ class Piece(CSprite):
def init(self):
CButton.__init__(self)
+
self.setMaxVel(100, 100)
self.setState(STATE_STALE)
+
+ def set_parent(self, aParent):
+ self.mParent = aParent
#image = ....
def set_origin(self, aOrigin):
self.mOrigin = aOrigin
@@ -83,7 +90,8 @@ class Piece(CSprite):
self.setXY(x, y)
if self.clicked():
d = Math.dist(self.mPos.getX() , self.mPos.getY(), self.mDest.getX(), self.mDest.getY())
- print 'drag-dist:', d
+ #print 'drag-dist:', d
+ #self.d2 = d / 2
#print 'pos', self.mPos.getX()
#print 'dest', self.mDest.getX()
if (d < self.MIN_DISTANCE):
@@ -95,12 +103,18 @@ class Piece(CSprite):
if (self.mState == STATE_ADJUST):
if (Math.dist(self.mPos.getX() , self.mPos.getY(), self.mDest.getX(), self.mDest.getY()) < self.RADIUS_COLLISION):
+ self.mParent.mOption1.set_bgColor((0x19, 0x1C, 0xC0))
self.setState(STATE_OK)
+
if (self.mState == STATE_RETURN):
- if (Math.dist(self.mPos.getX() , self.mPos.getY(), self.mOrigin.getX(), self.mOrigin.getY()) < self.RADIUS_COLLISION):
+ dist = Math.dist(self.mPos.getX() , self.mPos.getY(), self.mOrigin.getX(), self.mOrigin.getY())
+ if (dist < self.RADIUS_COLLISION):
#play(Sonido mal)
self.setState(STATE_STALE)
+ #else:
+ # if (dist < self.d2):
+ # self.setState(STATE_RETURN)
if (self.mState == STATE_OK):
return
@@ -130,8 +144,8 @@ class Piece(CSprite):
print 'estado retorno'
print 'pos', self.mPos.getX(), self.mPos.getY()
print 'orig', self.mOrigin.getX(), self.mOrigin.getY()
- x = (self.mOrigin.getX() - self.mPos.getX()) / self.TIME_ADJUST
- y = (self.mOrigin.getY() - self.mPos.getY()) / self.TIME_ADJUST
+ x = int((self.mOrigin.getX() - self.mPos.getX()) / self.TIME_ADJUST)
+ y = int((self.mOrigin.getY() - self.mPos.getY()) / self.TIME_ADJUST)
print 'vel', x, y
self.setVelXY(x, y)
if (aState == STATE_OK):
@@ -166,11 +180,11 @@ class CArea1Game1(CGameState):
self.mButtonBack = CButton()
#TODO: Create a function to create image.
- self.mButtonBack.bgColor = (0x99, 0x99, 0x66)
+ self.mButtonBack.set_bgColor((0x99, 0x99, 0x66))
self.mButtonBack.font = pygame.font.Font('assets/fonts/fipps.ttf', 20)
self.mButtonBack.setCenter((110, 420))
- self.mButtonBack.size = (200, 40)
- self.mButtonBack.text = "Volver"
+ self.mButtonBack.set_size((200, 40))
+ self.mButtonBack.set_text('Volver')
CGame().addChild(self.mButtonBack)
self.mBackground = Image.loadImage('assets/images/back_game.png', False)
@@ -189,6 +203,7 @@ class CArea1Game1(CGameState):
CGame().addChild(self.mArea2)
self.mPiece1 = Piece()
+ self.mPiece1.set_parent(self)
self.mPiece1.setImage('assets/images/piece1.png', False)
self.mPiece1.set_origin(CVector(350.0, 600.0))
self.mPiece1.set_destine(CVector(435.0, 283.0))
@@ -197,6 +212,22 @@ class CArea1Game1(CGameState):
CGame().addChild(self.mPiece1)
+ self.mOption1 = CLabel()
+ self.mOption1.set_center((100, 100))
+ self.mOption1.set_size((100, 30))
+ self.mOption1.set_text('Option 1')
+
+ self.mOption2 = CLabel()
+ self.mOption2.set_center((100, 140))
+ self.mOption2.set_size((100, 30))
+ self.mOption2.set_text('Option 2')
+
+
+
+ CGame().addChild(self.mOption1)
+ CGame().addChild(self.mOption2)
+
+
def update(self):
#print "menu update"
CGameState.update(self)
@@ -219,12 +250,16 @@ class CArea1Game1(CGameState):
CGame().removeChild(self.mArea1)
CGame().removeChild(self.mArea2)
CGame().removeChild(self.mPiece1)
+ CGame().removeChild(self.mOption1)
+ CGame().removeChild(self.mOption2)
#self.mButtonPlay.destroy()
self.mButtonBack = None
self.mBackground = None
self.mArea1 = None
self.mArea2 = None
self.mPiece1 = None
+ self.mOption1 = None
+ self.mOption2 = None
print "CArea1Game1 destroy"
def doEvents(self, aEvent):