diff options
author | unknown <Usuario@Usuario-HP.(none)> | 2012-03-27 15:29:26 (GMT) |
---|---|---|
committer | unknown <Usuario@Usuario-HP.(none)> | 2012-03-27 15:29:26 (GMT) |
commit | b6e6b9851eabb4b2d02edbe17badffe155865c46 (patch) | |
tree | bc01f84f6141ff94efe26fd27f6aab5fc8752000 | |
parent | 10b9ce659d69c7a1dc0a5e782b13c2a61731bdbd (diff) |
add vector movement in a1g1
-rwxr-xr-x | src/api/Sprite.py | 2 | ||||
-rwxr-xr-x | src/states/Area1Game1.py | 25 |
2 files changed, 19 insertions, 8 deletions
diff --git a/src/api/Sprite.py b/src/api/Sprite.py index dd3b342..138a716 100755 --- a/src/api/Sprite.py +++ b/src/api/Sprite.py @@ -39,7 +39,7 @@ class CSprite(pygame.sprite.Sprite): # Speed of the sprite.
self.mSpeed = 0
- self.maxSpeed = 10
+ self.maxSpeed = 100
self.minSpeed = -3
# TODO: Take this values from a constants class.
diff --git a/src/states/Area1Game1.py b/src/states/Area1Game1.py index 29561de..112497f 100755 --- a/src/states/Area1Game1.py +++ b/src/states/Area1Game1.py @@ -52,7 +52,7 @@ class Piece(CSprite): RADIUS_COLLISION = 40 - mPos = CVector(0.0, 0.0) + #mPos = CVector(0.0, 0.0) mOrigin = CVector(0.0, 0.0) mDest = CVector(0.0, 0.0) #center = (0.0, 0.0) @@ -145,13 +145,24 @@ class Piece(CSprite): self.setVelXY((self.mDest.getX() - self.mPos.getX()) / self.TIME_ADJUST, (self.mDest.getY() - self.mPos.getY()) / self.TIME_ADJUST) if (aState == STATE_RETURN): - print 'estado retorno' - print 'pos', self.mPos.getX(), self.mPos.getY() - print 'orig', self.mOrigin.getX(), self.mOrigin.getY() - x = int((self.mOrigin.getX() - self.mPos.getX()) / self.TIME_ADJUST) - y = int((self.mOrigin.getY() - self.mPos.getY()) / self.TIME_ADJUST) + #print 'estado retorno' + #print 'pos', self.mPos.getX(), self.mPos.getY() + #print 'orig', self.mOrigin.getX(), self.mOrigin.getY() + #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) + + x = ((self.mOrigin.getX() - self.mPos.getX())) + y = ((self.mOrigin.getY() - self.mPos.getY())) + vec = CVector(x, y) + vec.normalize() + dist = Math.dist(self.mOrigin.getX(), self.mOrigin.getY(), self.mPos.getX(), self.mPos.getY()) + vec.mul(dist/self.TIME_ADJUST) print 'vel', x, y - self.setVelXY(x, y) + self.setVelXY(vec.x, vec.y) + + if (aState == STATE_OK): self.setPosition(self.mDest) self.mVel = CVector(0.0, 0.0) |