Added a drawLine function to the renderer to watch the ball's
authorNolan Eakins <nolan@eakins.net>
Sat, 20 Dec 2003 03:27:06 +0000 (03:27 +0000)
committerNolan Eakins <nolan@eakins.net>
Sat, 20 Dec 2003 03:27:06 +0000 (03:27 +0000)
velocity

src/Field.cpp
src/Makefile
src/Renderer.cpp
src/Renderer.hpp

index 121307a..a4623ce 100644 (file)
@@ -1,4 +1,4 @@
-/* $Header: /home/cvsroot/pong/src/Field.cpp,v 1.7 2003/12/19 23:59:10 nolan Exp $
+/* $Header: /home/cvsroot/pong/src/Field.cpp,v 1.8 2003/12/20 03:27:06 nolan Exp $
  */
 #include "Renderer.hpp"
 #include "Color.hpp"
@@ -137,6 +137,10 @@ void Field::draw(Renderer &renderer, float dt)
     }
   }
 
+#if 0
+  renderer.drawLine(ball.getPosX(), ball.getPosY(), ball.getPosX() + ball.getVelX(),
+           ball.getPosY() + ball.getVelY(), Color(255, 0, 0));
+#endif
   if(renderer.getShowTime())
     renderer.print(0, 16, var_str("Time: %.2f", time()));
 }
index e47cf66..c11c39c 100644 (file)
@@ -8,8 +8,8 @@ LD=g++
 
 #RELEASE=1
 
-SDLCFLAGS=$(shell sdl-config --cflags)
-SDLLIBS=$(shell sdl-config --libs)
+SDLCFLAGS=-I/home/nolan/src/SDL_draw-1.2.1/include $(shell sdl-config --cflags)
+SDLLIBS=-L/home/nolan/apps/lib -lSDL_draw $(shell sdl-config --libs)
 BOOSTPATH=/home/nolan/src/boost-1.30.2
 
 ifdef RELEASE
index 4e3709d..b6061c4 100644 (file)
@@ -1,7 +1,8 @@
-/* $Header: /home/cvsroot/pong/src/Renderer.cpp,v 1.17 2003/12/19 23:59:10 nolan Exp $
+/* $Header: /home/cvsroot/pong/src/Renderer.cpp,v 1.18 2003/12/20 03:27:06 nolan Exp $
  */
 #include <assert.h>
 #include <SDL.h>
+#include <SDL_draw.h>
 #include <boost/filesystem/operations.hpp>
 #include "varstr.h"
 #include "Renderer.hpp"
@@ -55,6 +56,8 @@ Renderer::Renderer(ConfigFile &config)
     SDL_MapRGB(_images[DIGITS]->format, 0, 0, 0));
     SDL_SetColorKey(_images[FONT], SDL_SRCCOLORKEY|SDL_RLEACCEL,
     SDL_MapRGB(_images[FONT]->format, 0, 0, 0));*/
+
+  Draw_Init();
 }
 
 Renderer::~Renderer()
@@ -302,3 +305,17 @@ void Renderer::drawScore(int p1score, int p2score)
                10 * 1.5);
   drawDigit(p2score, x, y);
 }
+
+void Renderer::drawLine(int x1, int y1, int x2, int y2, Color c)
+{
+  if(x1 > x2) {
+    int t = x1;
+    x1 = x2;
+    x2 = t;
+    t = y1;
+    y1 = y2;
+    y2 = t;
+  }
+
+  Draw_Line(_screen, x1, y1, x2, y2, SDL_MapRGB(_screen->format, c.get(Color::Red), c.get(Color::Green), c.get(Color::Blue)));
+}
index 715120f..7d5d197 100644 (file)
@@ -1,4 +1,4 @@
-/* $Header: /home/cvsroot/pong/src/Renderer.hpp,v 1.12 2003/12/19 23:59:10 nolan Exp $
+/* $Header: /home/cvsroot/pong/src/Renderer.hpp,v 1.13 2003/12/20 03:27:06 nolan Exp $
  */
 #ifndef _RENDERER_HPP_
 #define _RENDERER_HPP_
@@ -31,6 +31,7 @@ public:
   void drawImage(Image &image, SDL_Rect *src, SDL_Rect *dst);
   void drawDigit(int digit, int x, int y);
   void drawScore(int p1score, int p2score);
+  void drawLine(int x1, int y1, int x2, int y2, Color c);
   void draw(float dt = 0.0f);
 
   void flip();