From ab436145e132bd6154cb04bb7197e97ec1372fd1 Mon Sep 17 00:00:00 2001
From: Shivam Gupta <sgupta72@illinois.edu>
Date: Mon, 27 Nov 2017 11:30:48 -0600
Subject: [PATCH] Working

---
 Makefile          |   4 +-
 enemy.cpp         |  76 ++++++++++++++++++++++++++++
 enemy.h           |  19 +++++++
 enemy.png         | Bin 0 -> 36207 bytes
 enemy_flipped.png | Bin 0 -> 36140 bytes
 entity.cpp        |  15 ++++++
 entity.h          |  22 ++++++++
 game.cpp          |  78 ++++++++++-------------------
 mario.png         | Bin 7297 -> 8783 bytes
 mario_flipped.png | Bin 0 -> 8853 bytes
 platform.cpp      |  21 ++++++++
 platform.h        |  18 +++++++
 platform.png      | Bin 0 -> 6119 bytes
 player.cpp        | 124 ++++++++++++++++++++++++++++++++++++++++++++++
 player.h          |  29 +++++++++++
 rect.cpp          |  80 +++++++++++++++++++++---------
 rect.h            |  25 +++++++---
 window.cpp        |   5 ++
 window.h          |   1 +
 19 files changed, 434 insertions(+), 83 deletions(-)
 create mode 100644 enemy.cpp
 create mode 100644 enemy.h
 create mode 100644 enemy.png
 create mode 100644 enemy_flipped.png
 create mode 100644 entity.cpp
 create mode 100644 entity.h
 create mode 100644 mario_flipped.png
 create mode 100644 platform.cpp
 create mode 100644 platform.h
 create mode 100644 platform.png
 create mode 100644 player.cpp
 create mode 100644 player.h

diff --git a/Makefile b/Makefile
index eae8b5b..c2d392c 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
 all :
-	g++ main.cpp game.cpp window.cpp rect.cpp -lSDL2 -lSDL2_image
+	g++ main.cpp game.cpp window.cpp rect.cpp player.cpp platform.cpp entity.cpp enemy.cpp -lSDL2 -lSDL2_image
 test :
-	g++ test.cpp game.cpp window.cpp rect.cpp -lSDL2 -lSDL2_image -o test
+	g++ test.cpp game.cpp window.cpp rect.cpp player.cpp platform.cpp entity.cpp enemy.cpp -lSDL2 -lSDL2_image -o test
diff --git a/enemy.cpp b/enemy.cpp
new file mode 100644
index 0000000..a535bf2
--- /dev/null
+++ b/enemy.cpp
@@ -0,0 +1,76 @@
+#include "enemy.h"
+#include <iostream>
+
+using namespace std;
+
+Enemy::Enemy(Window &window)
+{
+    rect = new Rect("enemy.png", window, 1, 11);
+    vector<pair<int, int> > enemy_animations;
+    for(int i = 0; i < 1; i++)
+    {
+        for(int j = 0; j < 11; j++)
+        {
+            enemy_animations.push_back(make_pair(i, j));
+        }
+    }
+    rect->SetAnimationFrames(enemy_animations);
+    rect->Move(400, 300);
+    flipped_rect = new Rect("enemy_flipped.png", window, 1, 11);
+    vector<pair<int, int> > flipped_enemy_animations;
+    for(int i = 0; i < 1; i++)
+    {
+        for(int j = 10; j >= 0; j--)
+        {
+            flipped_enemy_animations.push_back(make_pair(i, j));
+        }
+    }
+    flipped_rect->SetAnimationFrames(enemy_animations);
+    flipped_rect->Move(400, 300);
+    vy = 0;
+    right = true;
+}
+
+Enemy::~Enemy()
+{
+    delete rect;
+}
+
+void Enemy::Update(vector<Entity*> entities)
+{
+    vy += 10;
+    if(right)
+    {
+        rect->Move(rect->get_x() + 10, rect->get_y() + vy);
+        flipped_rect->Move(rect->get_x() + 10, rect->get_y() + vy);
+    }
+    else
+    {
+        rect->Move(rect->get_x() - 10, rect->get_y() + vy);
+        flipped_rect->Move(rect->get_x() - 10, rect->get_y() + vy);
+    }
+    if(rect->get_x() >= 600)
+        right = false;
+    else if(rect->get_x() <= 200)
+        right = true;
+    for(int i = 0; i < entities.size(); i++)
+    {
+        if(rect->CheckCollision(*(entities[i]->get_rect())))
+            vy = 0;
+        rect->CorrectPosition(entities[i]->get_rect());
+        flipped_rect->CorrectPosition(entities[i]->get_rect());
+    }
+}
+
+void Enemy::Draw(Window &window)
+{
+    if(right)
+        rect->Draw(window);
+    else
+        flipped_rect->Draw(window);
+}
+
+Rect *Enemy::get_rect()
+{
+    return rect;
+}
diff --git a/enemy.h b/enemy.h
new file mode 100644
index 0000000..fbe29d1
--- /dev/null
+++ b/enemy.h
@@ -0,0 +1,19 @@
+#ifndef ENEMY_H
+#define ENEMY_H
+
+#include "entity.h"
+class Enemy: public Entity
+{
+public:
+    Enemy(Window &window);
+    ~Enemy();
+    void Update(vector<Entity *> entities);
+    void Draw(Window &window);
+    Rect *get_rect();
+private:
+    Rect *rect;
+    Rect *flipped_rect;
+    int vy;
+    bool right;
+};
+#endif
diff --git a/enemy.png b/enemy.png
new file mode 100644
index 0000000000000000000000000000000000000000..9472d676106cd21d3d6c34f3bd6a5465e4ee8583
GIT binary patch
literal 36207
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
WfB2xQ!AO+=0000<MNUMnLSTaTE_5IO

literal 0
HcmV?d00001

diff --git a/enemy_flipped.png b/enemy_flipped.png
new file mode 100644
index 0000000000000000000000000000000000000000..aa6569181f5f9cb5ced3957ad549fba272e9bb2c
GIT binary patch
literal 36140
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

literal 0
HcmV?d00001

diff --git a/entity.cpp b/entity.cpp
new file mode 100644
index 0000000..5648f23
--- /dev/null
+++ b/entity.cpp
@@ -0,0 +1,15 @@
+#include "entity.h"
+
+using namespace std;
+
+void Entity::HandleEvents(const SDL_Event &event)
+{
+}
+
+void Entity::Update(vector<Entity*> &entities)
+{
+}
+
+void Entity::Draw(Window &window)
+{
+}
diff --git a/entity.h b/entity.h
new file mode 100644
index 0000000..27221af
--- /dev/null
+++ b/entity.h
@@ -0,0 +1,22 @@
+#ifndef ENTITY_H
+#define ENTITY_H
+
+#include <SDL2/SDL.h>
+#include <vector>
+#include "window.h"
+using namespace std;
+
+/**
+ * Base entity class
+ */
+class Entity
+{
+public:
+    virtual ~Entity() {};
+    virtual void HandleEvents(const SDL_Event &event);
+    virtual void Update(vector<Entity*> &entities);
+    virtual void Draw(Window &window);
+    virtual Rect *get_rect() = 0;
+};
+
+#endif
diff --git a/game.cpp b/game.cpp
index 3b740b1..ecaa905 100644
--- a/game.cpp
+++ b/game.cpp
@@ -1,6 +1,10 @@
 #include "game.h"
 #include "window.h"
 #include "rect.h"
+#include "player.h"
+#include "entity.h"
+#include "platform.h"
+#include "enemy.h"
 #include <iostream>
 #include <SDL2/SDL_image.h>
 
@@ -24,70 +28,40 @@ Game::Game()
 
 void Game::GameLoop()
 {
+    //Create window
     Window window;
-    Rect rect("mario.png", window);
-    vector<Rect*> rects;
-    for(int i = 0; i < 4; i++)
-    {
-        for(int j = 0; j < 9; j++)
-        {
-            rects.push_back(new Rect("spritesheet.png", window, 4, 9));
-            rects[rects.size()-1]->Move(300, (9 * i + j) * 64);
-        }
-    }
+    //Create player
+    Player player(window);
+    vector<Enemy *> enemies;
+    enemies.push_back(new Enemy(window));
+    vector<Entity*> entities;
+    for(int i = 0; i < 10; i++)
+        entities.push_back(new Platform(window, i * 120, 500));
     while(!quit)
     {
         while(SDL_PollEvent(&e) != 0)
         {
             if(e.type == SDL_QUIT)
                 quit = true;
-            else if(e.type == SDL_KEYDOWN && e.key.repeat == 0)
-            {
-                switch (e.key.keysym.sym)
-                {
-                    case SDLK_UP:
-                        rect.AddVelocity(0, -10);
-                        break;
-                    case SDLK_DOWN:
-                        rect.AddVelocity(0, 10);
-                        break;
-                    case SDLK_LEFT:
-                        rect.AddVelocity(-10, 0);
-                        break;
-                    case SDLK_RIGHT:
-                        rect.AddVelocity(10, 0);
-                        break;
-                }
-            }
-            else if(e.type == SDL_KEYUP && e.key.repeat == 0)
-            {
-                switch (e.key.keysym.sym)
-                {
-                    case SDLK_UP:
-                        rect.AddVelocity(0, 10);
-                        break;
-                    case SDLK_DOWN:
-                        rect.AddVelocity(0, -10);
-                        break;
-                    case SDLK_LEFT:
-                        rect.AddVelocity(10, 0);
-                        break;
-                    case SDLK_RIGHT:
-                        rect.AddVelocity(-10, 0);
-                        break;
-                }
-            }
+            player.HandleEvents(e);
         }
-        rect.UpdatePosition();
-        rect.CorrectPosition(rects);
-        for(int i = 0; i < 4; i++)
+        window.ClearWindow();
+        for(int i = 0; i < enemies.size(); i++)
+            enemies[i]->Update(entities);
+        player.Update(entities);
+        for(int i = 0; i < enemies.size(); i++)
         {
-            for(int j = 0; j < 9; j++)
+            if(player.HandleEnemy(enemies[i]))
             {
-                rects[9 * i + j]->Draw(window, i, j);
+                delete enemies[i];
+                enemies.clear();
             }
         }
-        rect.Draw(window);
+        player.Draw(window);
+        for(int i = 0; i < enemies.size(); i++)
+            enemies[i]->Draw(window);
+        for(int i = 0; i < entities.size(); i++)
+            entities[i]->Draw(window);
         window.Update();
         SDL_Delay(100);
     }
diff --git a/mario.png b/mario.png
index 8ba13e77787eaeb74dbf9841b5981931f68a1de0..57bea3c2dd8423a05fb9756ed6457fb6b1b2e9ba 100644
GIT binary patch
literal 8783
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
FV1fYf0lNSI

literal 7297
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

diff --git a/mario_flipped.png b/mario_flipped.png
new file mode 100644
index 0000000000000000000000000000000000000000..9f8cefdbc9d4f769e5ed4b217ff17220b74e3100
GIT binary patch
literal 8853
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
DiHaAz

literal 0
HcmV?d00001

diff --git a/platform.cpp b/platform.cpp
new file mode 100644
index 0000000..0e9edd2
--- /dev/null
+++ b/platform.cpp
@@ -0,0 +1,21 @@
+#include "platform.h"
+
+Platform::Platform(Window &window, int x, int y)
+{
+    rect = new Rect("platform.png", window);
+    rect->Move(x, y);
+}
+
+Platform::~Platform()
+{
+    delete rect;
+}
+
+void Platform::Draw(Window &window)
+{
+    rect->Draw(window);
+}
+Rect *Platform::get_rect()
+{
+    return rect;
+}
diff --git a/platform.h b/platform.h
new file mode 100644
index 0000000..875b654
--- /dev/null
+++ b/platform.h
@@ -0,0 +1,18 @@
+#ifndef PLATFORM_H
+#define PLATFORM_H
+
+#include "entity.h"
+#include "window.h"
+#include "rect.h"
+
+class Platform: public Entity
+{
+public:  
+    Platform(Window &window, int x, int y);
+    ~Platform();
+    void Draw(Window &window);
+    Rect *get_rect();  
+private:
+    Rect *rect;
+};
+#endif
diff --git a/platform.png b/platform.png
new file mode 100644
index 0000000000000000000000000000000000000000..6dfeda0687a8fe4d4a504de1ba0baabd75bfa1e1
GIT binary patch
literal 6119
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
Il(h`~AET>Y-v9sr

literal 0
HcmV?d00001

diff --git a/player.cpp b/player.cpp
new file mode 100644
index 0000000..817c10d
--- /dev/null
+++ b/player.cpp
@@ -0,0 +1,124 @@
+#include "player.h"
+#include <SDL2/SDL.h>
+#include <vector>
+#include <iostream>
+
+using namespace std;
+
+Player::Player(Window &window)
+{
+    rect = new Rect("mario.png", window, 1, 4);
+    vector<pair<int, int> > mario_animations;
+    for(int i = 0; i < 1; i++)
+    {
+        for(int j = 0; j < 4; j++)
+        {
+            mario_animations.push_back(make_pair(i, j));
+        }
+    }
+    rect->SetAnimationFrames(mario_animations);
+    flipped_rect = new Rect("mario_flipped.png", window, 1, 4);
+    vector<pair<int, int> > mario_flipped_animations;
+    for(int i = 0; i < 1; i++)
+    {
+        for(int j = 3; j >= 0; j--)
+        {
+            mario_flipped_animations.push_back(make_pair(i, j));
+        }
+    }
+    flipped_rect->SetAnimationFrames(mario_flipped_animations);
+    jump = false;
+    flipped = false;
+    vx = 0;
+    vy = 0;
+}
+
+Player::~Player()
+{
+    delete rect;
+}
+
+void Player::HandleEvents(const SDL_Event &e)
+{
+    if(e.type == SDL_KEYDOWN && e.key.repeat == 0)
+    {
+        switch (e.key.keysym.sym)
+        {
+            case SDLK_UP:
+                jump = true;
+                break;
+            case SDLK_LEFT:
+                vx -= 20;
+                flipped = true;
+                break;
+            case SDLK_RIGHT:
+                vx += 20;
+                flipped = false;
+                break;
+        }
+    }
+    else if(e.type == SDL_KEYUP && e.key.repeat == 0)
+    {
+        switch (e.key.keysym.sym)
+        {
+            case SDLK_LEFT:
+                vx += 20;
+                break;
+            case SDLK_RIGHT:
+                vx -= 20;
+                break;
+        }
+    }
+}
+
+void Player::Update(vector<Entity *> entities)
+{
+    //gravity
+    vy += 10;
+    //perform jump
+    if(jump)
+    {
+        vy = -50;
+        jump = false;
+    }
+    rect->Move(rect->get_x() + vx, rect->get_y() + vy);
+    flipped_rect->Move(rect->get_x() + vx, rect->get_y() + vy);
+    for(int i = 0; i < entities.size(); i++)
+    {
+        if(rect->CheckCollision(*(entities[i]->get_rect())))
+            vy = 0;
+        rect->CorrectPosition(entities[i]->get_rect());
+        flipped_rect->CorrectPosition(entities[i]->get_rect());
+    }
+}
+
+bool Player::HandleEnemy(Enemy *enemy)
+{
+    if(vy > 0 && rect->CheckCollision(*(enemy->get_rect())))
+        return true;
+    if(vy <= 0 && rect->CheckCollision(*enemy->get_rect()))
+        cout << "DEAD!!" << endl;
+    return false;
+}
+void Player::Draw(Window &window)
+{
+    if(!flipped)
+    {
+        if(vx == 0)
+            rect->Draw(window, 0, 0);
+        else
+            rect->Draw(window);
+    }
+    else
+    {
+        if(vx == 0)
+            flipped_rect->Draw(window, 0, 3);
+        else
+            flipped_rect->Draw(window);
+    }
+}
+
+Rect *Player::get_rect()
+{
+    return rect;
+}
diff --git a/player.h b/player.h
new file mode 100644
index 0000000..8d197cb
--- /dev/null
+++ b/player.h
@@ -0,0 +1,29 @@
+#ifndef PLAYER_H
+#define PLAYER_H
+
+#include "entity.h"
+#include "enemy.h"
+#include <SDL2/SDL.h>
+
+/**
+ * Main player class, inherits entity
+ */
+class Player: public Entity
+{
+public:
+    Player(Window &window);
+    ~Player();
+    void HandleEvents(const SDL_Event &event);
+    void Update(vector<Entity *> entities);
+    bool HandleEnemy(Enemy *enemy);
+    void Draw(Window &window);
+    Rect *get_rect();
+private:
+    Rect *rect;
+    Rect *flipped_rect;
+    bool flipped;
+    int vx, vy;
+    bool jump;
+};
+
+#endif
diff --git a/rect.cpp b/rect.cpp
index 0b5d55b..6b79679 100644
--- a/rect.cpp
+++ b/rect.cpp
@@ -21,6 +21,8 @@ void Rect::LoadImage(string filename, Window &window)
         cout << "Unable to convert surface: " << SDL_GetError() << endl;
     }
     SDL_FreeSurface(loaded);
+    animation_frames.push_back(make_pair(0, 0));
+    current_frame = 0;
 }
 Rect::Rect(string filename, Window &window)
 {
@@ -29,8 +31,8 @@ Rect::Rect(string filename, Window &window)
     y = 0;
     w = image->w;
     h = image->h;
-    vx = 0;
-    vy = 0;
+    //vx = 0;
+    //vy = 0;
     rows = 1;
     columns = 1;
 }
@@ -42,8 +44,8 @@ Rect::Rect(string filename, Window &window, int rows, int columns)
     y = 0;
     w = image->w/columns;
     h = image->h/rows;
-    vx = 0;
-    vy = 0;
+    //vx = 0;
+    //vy = 0;
     this->rows = rows;
     this->columns = columns;
 }
@@ -60,31 +62,29 @@ void Rect::Move(int x, int y)
     this->y = y;
 }
 
-void Rect::AddVelocity(int vx, int vy)
-{
-    this->vx += vx;
-    this->vy += vy;
-}
+//void Rect::AddVelocity(int vx, int vy)
+//{
+//    this->vx += vx;
+//    this->vy += vy;
+//}
 
-void Rect::UpdatePosition()
-{
-    x += vx;
-    y += vy;
-}
+//void Rect::UpdatePosition()
+//{
+    //x += vx;
+    //y += vy;
+//}
 
 void Rect::Draw(Window &window)
 {
-    SDL_Rect dstrect;
-    dstrect.x = x;
-    dstrect.y = y;
-    SDL_BlitSurface(image, NULL, window.get_screen_surface(), &dstrect);
+    Draw(window, animation_frames[current_frame].first, animation_frames[current_frame].second);
+    current_frame = (current_frame + 1) % animation_frames.size();
 }
 
 void Rect::Draw(Window &window, int row, int column)
 {
     SDL_Rect srcrect;
-    srcrect.x = (double(row)/double(rows)) * (image->h/rows);
-    srcrect.y = (double(column)/double(columns)) * (image->w / columns);
+    srcrect.x = double(column) * (image->h/rows);
+    srcrect.y = double(row) * (double(image->w) / double(columns));
     srcrect.w = image->w/columns;
     srcrect.h = image->h/rows;
     SDL_Rect dstrect;
@@ -102,18 +102,36 @@ bool Rect::CheckCollision(Rect &rect)
     return true;
 }
 
+void Rect::CorrectPosition(Rect* rect)
+{
+    if(CheckCollision(*rect))
+    {
+        //if(vy > 0)
+        y = rect->get_y() - h;
+        //else if(vy < 0)
+        //    y = rect->get_y() + rect->get_h();
+    }
+}
 void Rect::CorrectPosition(vector<Rect*> rects)
 {
     for(int i = 0; i < rects.size(); i++)
     {
         if(CheckCollision(*rects[i]))
         {
-            x -= vx;
-            y -= vy;
-            break;
+            //x -= vx;
+            //if(vx > 0)
+            //    x = rects[i]->get_x() - w;
+            //else if(vx < 0)
+            //    x = rects[i]->get_x() + rects[i]->get_w();
+            //y -= vy;
+            //if(vy > 0)
+            y = rects[i]->get_y() - h;
+            //else if(vy < 0)
+            //    y = rects[i]->get_y() + rects[i]->get_h();
         }
     }
 }
+
 int Rect::get_x()
 {
     return x;
@@ -123,7 +141,23 @@ int Rect::get_y()
 {
     return y;
 }
+
+int Rect::get_w()
+{
+    return w;
+}
+
+int Rect::get_h()
+{
+    return h;
+}
+
 SDL_Surface *Rect::get_image()
 {
     return image;
 }
+
+void Rect::SetAnimationFrames(vector<pair<int, int> > animation_frames)
+{
+    this->animation_frames = animation_frames;
+}
diff --git a/rect.h b/rect.h
index edcd35c..7fe829a 100644
--- a/rect.h
+++ b/rect.h
@@ -18,7 +18,7 @@ public:
      * load spritesheet
      * filename: filaname of image file
      * window: window to draw on
-    **/
+     */
     Rect(string filename, Window &window);
     /**
      * load spritesheet
@@ -26,21 +26,21 @@ public:
      * window: window to draw on
      * rows: rows in spritesheet
      * column: columns in spritesheet
-    **/
+     */
     Rect(string filename, Window &window, int rows, int columns);
     ~Rect();
     /**
      * move rect to x, y coordinate
-    **/
+     */
     void Move(int x, int y);
     /**
      * add velocity to movement
     **/
-    void AddVelocity(int vx, int vy);
+    //void AddVelocity(int vx, int vy);
     /**
      * update position of rect
     **/
-    void UpdatePosition();
+    //void UpdatePosition();
     /**
      * draw the image
      * window: window to draw on
@@ -58,6 +58,11 @@ public:
      * rect: rectangle ot check against
     **/
     bool CheckCollision(Rect &rect);
+    /**
+     * move back if colliding with rect in rects
+     * rect: rect to check against
+    **/
+    void CorrectPosition(Rect *rect);
     /**
      * move back if colliding with rect in rects
      * rects: rect vector to check against
@@ -71,6 +76,13 @@ public:
     int get_x();
 
     int get_y();
+
+    int get_w();
+
+    int get_h();
+
+    //set frames to use for animation
+    void SetAnimationFrames(vector<pair<int, int> > animation_frames);
 private:
     /**
      * actually load image
@@ -81,7 +93,8 @@ private:
     SDL_Surface *image;
     int x, y;
     int w, h;
-    int vx, vy;
     int rows, columns;
+    vector<pair<int, int> > animation_frames;
+    int current_frame;
 };
 #endif
diff --git a/window.cpp b/window.cpp
index 221d2d2..55f4501 100644
--- a/window.cpp
+++ b/window.cpp
@@ -25,6 +25,11 @@ Window::~Window()
     window = NULL;
 }
 
+void Window::ClearWindow()
+{
+    SDL_FillRect(screen_surface, NULL, SDL_MapRGB(screen_surface->format, 0xFF, 0xFF, 0xFF));
+}
+
 SDL_Surface *Window::get_screen_surface()
 {
     return screen_surface;
diff --git a/window.h b/window.h
index a1b76cf..4d202b9 100644
--- a/window.h
+++ b/window.h
@@ -13,6 +13,7 @@ public:
     ~Window();
     //get screen surface to draw on, etc.
     SDL_Surface *get_screen_surface();
+    void ClearWindow();
     //update window
     void Update();
 private:
-- 
GitLab