From 90cde0fa835649025173a5907990e0059d24c888 Mon Sep 17 00:00:00 2001 From: unknown Date: Sun, 16 Jan 2011 19:41:38 -0600 Subject: [PATCH] Removed the delete SDL_Screen in ~Game and updated todo on Point2D fixed loading animation bug --- Animation.cpp | 49 ++++++++++++++++++++++++------------------- ArtAssets/Sprites/sun.anim | 2 +- ArtAssets/Sprites/viking.anim | 8 +++---- Game.cpp | 2 -- fns.h | 2 +- 5 files changed, 33 insertions(+), 30 deletions(-) diff --git a/Animation.cpp b/Animation.cpp index 515ad08..eedee23 100644 --- a/Animation.cpp +++ b/Animation.cpp @@ -73,29 +73,34 @@ int Animation::loadAnimation(std::string animFile) /** Collision data */ char c; value>>c; - while(c != ')'){ - if(c == 'n') - continue; - else if(c == 'c') - { - double xOffset = 0.0, yOffset = 0.0; - value>>xOffset; - value>>yOffset; - double radius; - value>>radius; - mAnim[count].bounds.push_back(new CollisionCircle(Point2D(xOffset, yOffset), radius)); - } - else if(c == 'r') - { - double xOffset = 0.0, yOffset = 0.0; - value>>xOffset; - value>>yOffset; - double width = 0.0 , height = 0.0; - value>>width; - value>>height; - mAnim[count].bounds.push_back(new CollisionRectangle(Point2D(xOffset, yOffset), width, height)); - } + if(c == '('){ value>>c; + while(c != ')'){ + if(c == 'n'){ + value>>c; + continue; + } + else if(c == 'c') + { + double xOffset = 0.0, yOffset = 0.0; + value>>xOffset; + value>>yOffset; + double radius; + value>>radius; + mAnim[count].bounds.push_back(new CollisionCircle(Point2D(xOffset, yOffset), radius)); + } + else if(c == 'r') + { + double xOffset = 0.0, yOffset = 0.0; + value>>xOffset; + value>>yOffset; + double width = 0.0 , height = 0.0; + value>>width; + value>>height; + mAnim[count].bounds.push_back(new CollisionRectangle(Point2D(xOffset, yOffset), width, height)); + } + value>>c; + } } /** Load image for Frame */ diff --git a/ArtAssets/Sprites/sun.anim b/ArtAssets/Sprites/sun.anim index c0932cd..c7fbbd1 100644 --- a/ArtAssets/Sprites/sun.anim +++ b/ArtAssets/Sprites/sun.anim @@ -1,6 +1,6 @@ #Number of Frames #ArtAssets/ milisec Transparency -#filename pause r g b xOffset yOffset ( collisionType +#filename pause r g b xOffset yOffset ( collisionType , ... ) NumFrames: 4 sun1.bmp 20 0 0 255 0.0 0.0 ( n ) sun2.bmp 20 0 0 255 0.0 0.0 ( n ) diff --git a/ArtAssets/Sprites/viking.anim b/ArtAssets/Sprites/viking.anim index 4d21111..ed996a4 100644 --- a/ArtAssets/Sprites/viking.anim +++ b/ArtAssets/Sprites/viking.anim @@ -1,11 +1,11 @@ #Number of Frames #ArtAssets/ milisec Transparency -#filename pause r g b xOffset yOffset +#filename pause r g b xOffset yOffset ( , ... ) NumFrames: 9 viking1.bmp 50 0 255 0 0.0 0.0 ( n ) -viking2.bmp 50 0 255 0 0.0 0.0 ( n ) -viking3.bmp 50 0 255 0 0.0 0.0 ( n ) -viking4.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 ) diff --git a/Game.cpp b/Game.cpp index ce12c8f..b79f2fa 100644 --- a/Game.cpp +++ b/Game.cpp @@ -40,8 +40,6 @@ Game::~Game() for (size_t i = 0; i < mLevels.size(); ++i) { delete mLevels[i]; } - /// \todo Does this even need to be here or will closing the program unallocate the mem? - //delete mScreen; } Level* Game::getCurrentLevel() diff --git a/fns.h b/fns.h index 378f3e8..8885d4b 100644 --- a/fns.h +++ b/fns.h @@ -23,7 +23,7 @@ class Point2D } Point2D (const SizeD& copy);///< Copy object - /** \todo add typical vector functionality like length, nomal vectors etc. */ + /** \todo add nomal vectors */ double x;/**< x position */ double y;/**< y Position */ double length();/**< The length of the Point (from origin) -- 2.11.0