stratgame

annotate src/game_part.cc @ 3:8d95187cb3ee

foo
author John Tsiombikas <nuclear@member.fsf.org>
date Wed, 23 May 2012 17:10:46 +0300
parents 369b51c9e4a8
children cd12944a8ea8
rev   line source
nuclear@3 1 #include <stdlib.h>
nuclear@0 2 #include "opengl.h"
nuclear@0 3 #include "game_part.h"
nuclear@0 4 #include "level.h"
nuclear@0 5
nuclear@0 6 Game::~Game() {}
nuclear@0 7
nuclear@2 8 bool Game::init()
nuclear@2 9 {
nuclear@2 10 if(!level.load("data/test.level")) {
nuclear@2 11 return false;
nuclear@2 12 }
nuclear@2 13 return true;
nuclear@2 14 }
nuclear@2 15
nuclear@3 16 void Game::start()
nuclear@3 17 {
nuclear@3 18 Part::start();
nuclear@3 19
nuclear@3 20 glEnable(GL_DEPTH_TEST);
nuclear@3 21 }
nuclear@3 22
nuclear@0 23 void Game::draw() const
nuclear@0 24 {
nuclear@3 25 glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
nuclear@0 26
nuclear@0 27 glMatrixMode(GL_MODELVIEW);
nuclear@0 28 glLoadIdentity();
nuclear@3 29 glTranslatef(0, 0, -4);
nuclear@3 30 glRotatef(50, 1, 0, 0);
nuclear@3 31 glRotatef(current_time / 100.0, 0, 1, 0);
nuclear@0 32
nuclear@3 33 level.draw();
nuclear@3 34 }
nuclear@3 35
nuclear@3 36 void Game::reshape(int x, int y)
nuclear@3 37 {
nuclear@3 38 glMatrixMode(GL_PROJECTION);
nuclear@3 39 glLoadIdentity();
nuclear@3 40 gluPerspective(45.0, (float)x / (float)y, 0.5, 500);
nuclear@0 41 }
nuclear@0 42
nuclear@0 43 void Game::key(int key, bool pressed)
nuclear@0 44 {
nuclear@0 45 switch(key) {
nuclear@0 46 case 27:
nuclear@3 47 exit(0);
nuclear@3 48 //cur_part = menu_part;
nuclear@0 49 break;
nuclear@0 50
nuclear@0 51 default:
nuclear@0 52 break;
nuclear@0 53 }
nuclear@0 54 }