You are on page 1of 9

for(i=0;i<gamelevel;i++)

{
pos[i]=100;
}

int flagDup=0;
while(flagDup==0)
{
pos[i]=rand%100;
for(int j=0;j<gamelevel;j++)
{
if(pos[i]==pos[j])
flagdup=0;
}
flagDup==1;
}

#include<stdlib.h>
#include<stdio.h>
#include<GL/glut.h>
#include<math.h>
#include<string.h>
#include <dos.h>
#include "Windows.h"
#include <stdio.h>
#include "eyeq polygon.h"
#include "warmup.h"
int siz=80;
int wp=1,st=3,abt=1;
int ab_l=0,st_l=0; //about level state start leve state
int wp_l=0;
// warmup_level state
int game_mode;
int game[100][5];
int X=130,Y=200,width=50;
int gameEQ[100][5],donelevel1=0;
int h[100],n;
void print_string_array(int x,int y,char str[])
{
glRasterPos2f(x,y);
for(int i=0;i<strlen(str);i++)
{
glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_24,str[i]);
}
} // print string at x,y position which is stored in character array
void mainMenuDesign()
{
glColor3f(.6,.4,.4);
char *str1="About";
print_string_array(100,250,str1);
char *str2="WarmUp";
print_string_array(330,250,str2);
char *str3="Start";
print_string_array(600,250,str1);
} // menu like about start warm up designs

void myinit()
{
glMatrixMode(GL_PROJECTION_MATRIX);
glLoadIdentity();
gluOrtho2D(0,900,0,800);
glMatrixMode(GL_MODELVIEW);
} //initial projection matrix and orthogonal
void bgcolor()
{
glClearColor(0.6,0.01,0,1); //MAROON COLOR
//glClearColor(0.2,0.00,.4,1); //VIOLET COLOR
glClear(GL_COLOR_BUFFER_BIT);
} //to bring the background
void warmup1()
{
wp_l=0;
char *str1="Return";
print_string_array(740,760,str1);
char *str2="Focus your eyes on the circle as it moves";
print_string_array(400,400,str1);
Sleep(3000);
int i;
float yy,xx,x,y,r=50,cx=150,cy=300,dy=1,t;
glClearColor(.67,.8,1,1);
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1,0,0);
glPointSize(10);
for(int kk=0;kk<=10;kk++)
{
for(int k=0;k<=360; k+=5)
{
xx=450+cos(3.142*k/180)*300;
yy=430+sin(3.142*k/180)*300;
for(i=0;i<20;i++)
{
glBegin(GL_POINTS);
for(t=0;t<=360;t+=5)
{
x=xx+cos(3.142*t/180)*r;
y=yy+sin(3.142*t/180)*r;
glVertex2f(x,y);
}
Sleep(.1);
glColor3f(1,0,1);
glEnd();
glFlush();
bgcolor();
cy+=dy;
}
}
}
glutPostRedisplay();
}
void warmup2()
{
wp_l=0;
char *str1="Return";
print_string_array(740,760,str1);

}
void warmup3()
{
wp_l=0;
char *str1="Return";
print_string_array(740,760,str1);
wp=-1;
}
void drawsquare(int x,int y)
{
glColor3f(1,1,1);
glBegin(GL_POLYGON);
glVertex2i(x+5,y+5);
glVertex2i(x+width-5,y+5);
glVertex2i(x+width-5,y+width-5);
glVertex2i(x+5,y+width-5);
glEnd();
}
void print_num_on_box(int x,int y,int posx,int posy)
{
switch(x)
{
case 1: x=49;
break;
case 2: x=50;
break;
case 3: x=51;
break;
case 4: x=52;
break;
case 5: x=53;
break;
case 6: x=54;
break;
case 7: x=55;
break;
case 8: x=56;
break;
case 9: x=57;
break;
case 0: x=48;
break;
default: break;
}
switch(y)
{
case 1: y=49;
break;
case 2: y=50;
break;
case 3: y=51;
break;
case 4: y=52;
break;
case 5: y=53;
break;
case 6: y=54;
break;
case 7: y=55;
break;
case 8: y=56;
break;
case 9: y=57;
break;
case 0: y=48;

break;
default: break;
}
char xx,yy;
xx=x,yy=y;
glColor3f(0,0,0);
glRasterPos2i(posx+10,posy+20);
glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_24,xx);
glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_24,yy);
}
void swap(int a[],int x,int y)
{
int temp;
temp=a[x];
a[x]=a[y];
a[y]=temp;
}
void draw_random_box_num(int gamelevel)
{
donelevel1=-1;
int k,pos[100],x,y,rand_gameNum,rand_gameNumX,rand_gameNumY,temp,key,a[100];
for(int i=0;i<gamelevel;i++)
{
pos[i]=rand()%100;
if(pos[i]!=0)
{
if(pos[i]>9)
x=pos[i]/10*width,y=pos[i]%10*width;
else
x=pos[i]*width,y=0;
}
drawsquare(X+x,Y+y);
rand_gameNum=rand()%100;
rand_gameNumX=rand_gameNum/10;
rand_gameNumY=rand_gameNum%10;
print_num_on_box(rand_gameNumX,rand_gameNumY,X+x,Y+y);
game[i][0]=-1;
game[i][1]=-1;
game[i][3]=X+x;
game[i][4]=Y+y;
game[i][2]=rand_gameNum;
a[i]=game[i][2];
printf("%d \t ",a[i]);
}
printf("\n");
int iPos;
int iMin;
for (iPos = 0; iPos <gamelevel; iPos++)
{
iMin = iPos;
for (int i = iPos+1; i <gamelevel; i++)
{
if (a[i] < a[iMin])
{
iMin = i;
}
}
if ( iMin != iPos )
{
swap(a,iPos,iMin);
}
}

for(int i=0;i<gamelevel;i++)
printf("%d \t ",a[i]);
printf("\n");
printf("\n");
for(int i=0;i<gamelevel;i++)
{
key=a[i];
for(int i=0;i<gamelevel;i++)
{
if(key==game[i][2])
{
gameEQ[i][0]=game[i][0];
gameEQ[i][1]=game[i][1];
gameEQ[i][2]=game[i][2];
gameEQ[i][3]=game[i][3];
gameEQ[i][4]=game[i][4];
printf("\t%d",gameEQ[i][0]);
printf("\t%d",gameEQ[i][1]);
printf("\t%d",gameEQ[i][2]);
printf("\t%d",gameEQ[i][3]);
printf("\t%d",gameEQ[i][4]);
}

}
printf("\n");
}
}
void level1()
{
game_mode=1;
st_l=0;
char *str1="Return"; print_string_array(740,760,str1);
if(donelevel1==0)
draw_random_box_num(6);
char *str3="Instructions"; print_string_array(100,100,str3); char *str4="Time:0000";
}

print_string_array(740,100,str4);

void level2()
{
st_l=0;
char *str1="Return"; print_string_array(740,760,str1);
}
void level3()
{
st_l=0;
char *str1="Return";
print_string_array(740,760,str1);
}
void aboutText()
{
ab_l=0;
glColor3f(1,0.2,0);
char *str1="About";
print_string_array(100,70,str1);
glColor3f(.8,0.4,0);
char *str2="This game is specially designed to examine users eye power/queotient.";
print_string_array(100,650,str2);
char *str3="This application include two section 1.Warmup section 2.Gaming section.";
print_string_array(100,620,str3);
char *str4="In WarmUp section excercises are given to eyes to improve eyeQ. In gaming";

print_string_array(100,590,str4);
char *str5="section users real eyeQ score will be known.";
print_string_array(100,560,str1);
glColor3f(1,0.2,0);
char *str6="Designed by: Ajay R and Ankit Singh Mantri";
print_string_array(100,500,str6);
glColor3f(.8,0.4,0);
char *str7="Source programming language: c++";
print_string_array(100,470,str7);

char *str8="Library used: OpenGl-www.opengl.orrg";


print_string_array(100,440,str8);

char *str9="Download more games on www.colife.wordpress.com";


print_string_array(100,410,str9);
char *str10="Copyright: Open Source";
print_string_array(100,380,str10);
char *str11="Return";
print_string_array(740,760,str11);
}
void warmup()
{
wp_l=1;
char *str1="Return";
print_string_array(740,760,str1);
char *str2="Warm Up 1";
print_string_array(400,450,str2);
char *str3="Warm Up 2";
print_string_array(400,420,str3);
char *str4="Warm Up 3";
print_string_array(400,390,str4);
}
void start()
{
char *str1="Return";
print_string_array(740,760,str1);
char *str2="Level 1";
print_string_array(380,500,str2);
char *str3="Level 2";
print_string_array(380,470,str3);
char *str4="Level 3";
print_string_array(380,440,str4);
char *str5="Level 4";
print_string_array(380,410,str3);
}
void score()
{
}
void fail()
{

}
void finish()
{
bgcolor();
}
int pqr=0;
void analyzegame(int x,int y)
{
for(int i=0;i<=6;i++)
{
if( x>gameEQ[pqr][3] && x<(gameEQ[pqr][4]+width) && y >gameEQ[pqr][4] && y<(gameEQ[pqr][4]+width) && gameEQ[pqr][0]<0
&& pqr<=6)
{
game[pqr][0]=0;
pqr=pqr+1;
drawsquare(x,y);
game[pqr][0]=-1;
printf("\t %d %d ",x,y);
}
else
{
fail();
score();
}
}
}
void mouseResponce(int x,int y)
{ y=800-y;
if(game_mode==1)
{
level1();
analyzegame(x,y);
}
// for about text in main page
if(x>100 && x<165 && y>250 && y<270)
{ ab_l=1;
bgcolor();
aboutText();
}
//for warmup
if(x>330 && x<420 && y>250 && y<270)
{
wp_l=1;
bgcolor();
warmup();
}
if(x>600 && x<645 && y>250 && y<270)
{
st_l=1;
bgcolor();
start();
}
if(x>400 && x<490 && y>450 && y<470 && wp_l>0 )
{
bgcolor();
warmup1();
}
if(x>400 && x<490 && y>420 && y<440 && wp_l>0 )

{
bgcolor();
warmup2();
}
if(x>400 && x<490 && y>390 && y<410 && wp_l>0 )
{
bgcolor();
warmup3();
}
if(x>380 && x<450 && y>500 && y<530 && st_l>0 )
{ bgcolor();
level1();
}
if(x>740 && x<780 && y>760 && y<780)
{
if(wp_l==0)
warmup();
if(ab_l==0)
aboutText();
if(st_l==0) start();
if(!(wp_l==ab_l==st_l==0) )glutPostRedisplay();
}

glFlush();
}
void mymous(int btn,int st,int x,int y)
{
if(btn==GLUT_LEFT_BUTTON && st==GLUT_DOWN)
{
mouseResponce(x,y);
}
if(btn==GLUT_RIGHT_BUTTON && st==GLUT_DOWN)
{
exit(0);
}
}
void display_eyeq_1stpage()
{
bgcolor();
//
//
//colorpallete();
mainMenuDesign();
titledesign();
glFlush();
}
void windowInit()
{
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowSize(900,800);
glutInitWindowPosition(400,25);
glutCreateWindow("eyeQ-GAmE Do you have sharp eyes !?");
}
void main()
{
windowInit();
myinit();

glutDisplayFunc(display_eyeq_1stpage);
glutMouseFunc(mymous);
glutMainLoop();
}

You might also like