Fixed Error now problems with library
authorunknown <ivan@.ne.tamu.edu>
Tue, 18 Jan 2011 23:00:28 +0000 (17:00 -0600)
committerunknown <ivan@.ne.tamu.edu>
Tue, 18 Jan 2011 23:00:28 +0000 (17:00 -0600)
ArtAssets/Sprites/sun.anim
ArtAssets/Sprites/viking.anim
Sprite.cpp
WorldObject.h

index c7fbbd1..29e9d82 100644 (file)
@@ -2,7 +2,7 @@
 #ArtAssets/ milisec    Transparency
 #filename      pause   r       g       b       xOffset yOffset ( collisionType <Circle has offset, radius | rectangle has offset, width, height>, ... )
 NumFrames: 4
-sun1.bmp       20      0 0 255 0.0 0.0 ( n )
-sun2.bmp       20      0 0 255 0.0 0.0 ( n )
-sun3.bmp       20      0 0 255 0.0 0.0 ( n )
-sun4.bmp       20      0 0 255 0.0 0.0 ( n )
+sun1.bmp       20      0 0 255 0.0 0.0 ( c 0.0 0.0 0.0 )
+sun2.bmp       20      0 0 255 0.0 0.0 ( c 0.0 0.0 0.0 )
+sun3.bmp       20      0 0 255 0.0 0.0 ( c 0.0 0.0 0.0 )
+sun4.bmp       20      0 0 255 0.0 0.0 ( c 0.0 0.0 0.0 )
index ed996a4..02056f4 100644 (file)
@@ -2,12 +2,12 @@
 #ArtAssets/ milisec    Transparency
 #filename      pause   r       g       b       xOffset yOffset ( <n | c | r> <Circle has offset, radius | rectangle has offset, width, height>, ... )
 NumFrames: 9
-viking1.bmp 50 0 255 0 0.0 0.0 ( n )
-viking2.bmp 50 0 255 0 0.0 0.0 ( c 0.0 0.0 3.0 )
-viking3.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 5.0 3.0 )
-viking4.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 5.0 3.0 r -6.0 3.0 5.0 5.0 )
-viking5.bmp 50 0 255 0 0.0 0.0 ( n )
-viking6.bmp 50 0 255 0 0.0 0.0 ( n )
-viking7.bmp 50 0 255 0 0.0 0.0 ( n )
-viking8.bmp 50 0 255 0 0.0 0.0 ( n )
-viking9.bmp 50 0 255 0 0.0 0.0 ( n )
+viking1.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 150.0 100.0 )
+viking2.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 150.0 100.0 )
+viking3.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 150.0 100.0 )
+viking4.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 150.0 100.0 r -6.0 3.0 5.0 5.0 )
+viking5.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 150.0 100.0 )
+viking6.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 150.0 100.0 )
+viking7.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 150.0 100.0 )
+viking8.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 150.0 100.0 )
+viking9.bmp 50 0 255 0 0.0 0.0 ( r 0.0 0.0 150.0 100.0 )
index 212c03d..98b528a 100644 (file)
@@ -20,15 +20,19 @@ Sprite::Sprite(SDL_Surface *screen, std::string name, Actor actor) :
 
 void Sprite::draw()
 {
+       //Frame so we don't have to find it so often
+       SpriteFrame frame = mActor.mAnimations[mActor.mCurrentAnimation]->mAnim[mActor.mFrame];
        if(mAnimating == 1) {
-               if(mLastUpdate+mActor.mAnimations[mActor.mCurrentAnimation]->mAnim[mActor.mFrame].pause*mSpeed<SDL_GetTicks()) {
+               if(mLastUpdate+frame.pause*mSpeed<SDL_GetTicks()) {
                        //obtain current peg 
-                       Point2D ppos = mActor.mAnimations[mActor.mCurrentAnimation]->mAnim[mActor.mFrame].animationPeg;
+                       Point2D ppos = frame.animationPeg;
                        mActor.mFrame++;
                        if(mActor.mFrame > mActor.mAnimations[mActor.mCurrentAnimation]->mNumFrames-1)
                                mActor.mFrame=0;
+                       //update frame so we don't need to worry
+                       frame = mActor.mAnimations[mActor.mCurrentAnimation]->mAnim[mActor.mFrame];
                        //obtain next peg
-                       Point2D npos = mActor.mAnimations[mActor.mCurrentAnimation]->mAnim[mActor.mFrame].animationPeg;
+                       Point2D npos = frame.animationPeg;
                        //move current position to difference of two
                        mPos.add(ppos - npos);
                        mLastUpdate = SDL_GetTicks();
@@ -38,7 +42,7 @@ void Sprite::draw()
        dest.x = mPos.x;
        dest.y = mPos.y;
        if(mVisible == true)
-               SDL_BlitSurface(mActor.mAnimations[mActor.mCurrentAnimation]->mAnim[mActor.mFrame].image,NULL,mScreen,&dest);
+               SDL_BlitSurface(frame.image,NULL,mScreen,&dest);
        if(Game::game()->ShowCollisions)
-               drawCollisions(mActor.mAnimations[mActor.mCurrentAnimation]->mAnim[mActor.mFrame].collisionData, mPos);
+               drawCollisions(frame.collisionData, frame.animationPeg);
 }
index a12380d..2fd0a1f 100644 (file)
@@ -10,7 +10,7 @@ public:
          ZOrder(z),
                  mVisible(true)
          {}
-         virtual void draw(Point2D& pos) = 0;/**< Draws the Object. */
+         virtual void draw() = 0;/**< Draws the Object. */
          void drawCollisions(vector<Collision*>& vec, Point2D& pos);/**< Draws Collision data for the Object */
          void xadd(int num) {mPos.x += num;}/**< Increase x coordiante by a given amount. */
          void yadd(int num) {mPos.y += num;}/**< Increase y coordinate by a given amount. */