Subversion Repositories sssnakesss

Compare Revisions

Ignore whitespace Rev 2 → Rev 3

/tmake.lua
3,7 → 3,7
 
function build()
Set("Sources", Srcs("main.cpp", "sssnakesss.cpp"))
Set("Libraries", Libs("SDL", "SDL_image", "SDL_mixer", "SDL_ttf"))
Set("Libraries", Libs("SDL", "SDL_image", "SDL_mixer", "SDL_ttf", "GL"))
Set("Includes", Incs("SDL", "SDL_image", "SDL_mixer", "SDL_ttf"))
 
Compile()
/include/sssnakesss.hpp
1,6 → 1,8
#ifndef SSSNAKESSS_H
#define SSSNAKESSS_H
 
struct SDL_Surface;
 
class SSSNAKESSS
{
public:
21,6 → 23,8
private:
bool running;
SDL_Surface *screen;
};
 
#endif // SSSNAKESSS_H
/src/sssnakesss.cpp
1,3 → 1,6
#include "SDL/SDL.h"
#include "SDL/SDL_opengl.h"
 
#include "sssnakesss.hpp"
 
SSSNAKESSS::SSSNAKESSS()
29,11 → 32,40
 
bool SSSNAKESSS::initSDL()
{
if (SDL_Init(SDL_INIT_EVERYTHING) != 0)
{
return false;
}
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
screen = SDL_SetVideoMode(640, 480, 16, SDL_OPENGL);
if (!screen)
{
return false;
}
return true;
}
 
bool SSSNAKESSS::initOpenGL()
{
glEnable(GL_TEXTURE_2D);
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
glViewport(0, 0, 640, 480);
glClear(GL_COLOR_BUFFER_BIT);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0f, 640, 480, 0.0f, -1.0f, 1.0f);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
return true;
}
 
55,6 → 87,17
 
void SSSNAKESSS::checkEvents()
{
SDL_Event event;
 
while (SDL_PollEvent(&event))
{
switch (event.type)
{
case SDL_QUIT:
running = false;
break;
}
}
}
 
void SSSNAKESSS::update()