Example #1
0
void onTimer( int v ) {
	 
	glutTimerFunc( TIMER_PERIOD, onTimer, 0 ) ;
	// Write your codes here.

    
	
	 // to refresh the window it calls display() function

	if ( gameState != RUN ) return ;

	if ( lastKey == UP ) snake.setSpeed(Vec(0,1)) ;
	if ( lastKey == DOWN ) snake.setSpeed(Vec(0,-1)) ;
	if ( lastKey == LEFT ) snake.setSpeed(Vec(-1,0)) ;
	if ( lastKey == RIGHT ) snake.setSpeed(Vec(1,0)) ;

	snake.Update() ;

	if( snake.getPos().equal( food.getPos())) {
		score++;
		food.reset();
		snake.grow();
	}

	/*if ( snake.hitWall()) {
		gameState = GAMEOVER ;
	}*/

	if ( snake.bites() ) {
		gameState = GAMEOVER ;
	}

	glutPostRedisplay() ; // display()

}