123 Eng

Engineering the engineers™


Latest Jobs   Forum Map

 


Home

Source Codes

BE Students

Training  Reports (updated)

Placement Papers (updated)

Forums

   Computer Science / IT

   Electronics

   Electrical

   Mechanical

   Chemical

   Civil

   CAT / MBA

   GMAT / Foreign MBA

Latest Jobs

Engineering Jobs / Technical Jobs

Management Jobs

Sitemap

About-Us

Terms of use

Displaying  Source Code(s)  
 

 
Simple Snake game.

--------------------------------------------------------------------------------

Description : This game contains one white colored object which is under user control and runs over the screen, and we need to touch the target object, which is in red color with out touching the border lines.

#include <graphics.h>
#include <stdio.h>
#include <stdlib.h>
#define T 2000
int n=0,px,py;
main()
{
int gd=DETECT,gm,i,j;
clrscr();
gotoxy(25,4);
printf("DON'T TUCH THE BORDER");
gotoxy(25,6);
printf("Press < p > for pause");
gotoxy(17,8);
printf("IN MIDDLE OF GAME, PRESS < Esc > TO EXIT");
x:
gotoxy(26,10);
printf("press < s > to start ");
gotoxy(26,12);
printf(" Use SMALL case only");
gotoxy(34,10);
if(getch()=='s')
initgraph(&gd,&gm,"c:\tc\bgi");
else {
clrscr();
goto x;
}
line(0,0,0,479);
line(0,0,639,0);
line(639,0,639,479);
line(0,479,639,479);
pause();
print();
right(100,100);
}
right(int x,int y)
{
char ch,fu='r';
int i,j;
for(i=x;i<=652;i++){
for(j=y;j<=y+10;j++){
putpixel(i,j,4);
putpixel(i-10,j,16);
}
delay(T-n);
check(i,j-1);
if(kbhit()){
ch=getch();
if(ch=='p')
pause();
else
choice(i,j-1,ch,fu);
}
}
}
left(int x,int y)
{
char ch,fu='l';
int i,j;
for(i=x;i>-12;i--){
for(j=y;j<=y+10;j++){
putpixel(i,j,4);
putpixel(i+10,j,16);
}
delay(T-n);
check(i,j-1);
if(kbhit()){
ch=getch();
if(ch=='p')
pause();
else
choice(i,j-1,ch,fu);
}
}
}
down(int x,int y)
{
char ch,fu='d';
int i,j;
for(j=y;j<=492;j++){
for(i=x;i<=x+10;i++){
putpixel(i,j,4);
putpixel(i,j-10,16);
}
delay(T-n);
check(i-1,j);
if(kbhit()){
ch=getch();
if(ch=='p')
pause();
else
choice(i-1,j,ch,fu);
}
}
}
up(int x,int y)
{
char ch,fu='u';
int i,j;
for(j=y;j>=-12;j--){
for(i=x;i<=x+10;i++){
putpixel(i,j,4);
putpixel(i,j+10,16);
}
delay(T-n);
check(i-1,j);
if(kbhit()){
ch=getch();
if(ch=='p')
pause();
else
choice(i-1,j,ch,fu);
}
}
}
choice(int i,int j,char ch,char fu)
{
if(fu=='r'){
if(ch=='K'){
j-=10;
i-=10;
left(i,j);
}
else if(ch=='P'){
i-=10;
down(i,j);
}
else if(ch=='H'){
j-=10;
i-=10;
up(i,j);
}
else if(ch==27)
esc();
else {
j-=10;
right(i,j);
}
}
else if(fu=='l'){
if(ch=='M'){
j-=10;
/*i+=-10; no comments here free me*/
right(i,j);
}
else if(ch=='P')
down(i,j);
else if(ch=='H'){
j-=10;
up(i,j);
}
else if(ch==27)
esc();
else {
j-=10;
left(i,j);
}
}
else if(fu=='d'){
if(ch=='H'){
j-=10;
i-=10;
up(i,j);
}
else if(ch=='K'){
i-=10;
j-=10;
left(i,j);
}
else if(ch=='M'){
j-=10;
right(i,j);
}
else if(ch==27)
esc();
else {
i-=10;
down(i,j);
}
}
else if(fu=='u'){
if(ch=='P'){
j+=10;
i-=10;
down(i,j);
}
else if(ch=='M')
right(i,j);
else if(ch=='K'){
i-=10;
left(i,j);
}
else if(ch==27)
esc();
else {
i-=10;
up(i,j);
}
}
}

check(int i,int j)
{
if (n>T-1750) {
gotoxy(7,5);
printf("U r Great U got Good Score, If possible Please Develop this game");
gotoxy(24,7);
printf("Press ENTER Key To Continue");
getchar();
esc();
}
if(i<3 || i>637 || j<3 || j>477){
outtextxy(240,240,"YOU HAVE TOUUCHED THE BORDER");
outtextxy(280,280,"GAME OVER");
outtextxy(240,370,"Better Luck Next Time");
outtextxy(200,310,"<press ENTER Key to continue>");
getchar();
esc();
}
else if(tuch(i,j)){
rub();
bell();
n+=10;
stage();
print();
}
}
int tuch(int i,int j)
{
int x=px,y=py,t,s,flag=0;
for(t=x;t<=x+15;t++){
for(s=y;s<=y+15;s++)
if(j==s && i==t)
flag=1;
}
return(flag);
}
rub()
{
setcolor(16);
outtextxy(px,py,"±");
setcolor(15);
}
bell()
{
int i;
for(i=1;i<=5;i++){
sound(200*i);
delay(10000);
nosound();
}
}
stage()
{
gotoxy(60,5);
printf("U got %d points",n);
sleep(1);
gotoxy(60,5);
printf(" ");
}
print()
{
px=random(636);
py=random(460);
if(px<10)
px+=10;
if(py<10)
py+=10;
outtextxy(px,py,"±");
}
pause()
{
outtextxy(200,470,"< Press Any Key To Continue >");
getch();
setcolor(16);
outtextxy(200,470,"< Press Any Key To Continue >");
setcolor(15);
}
esc()
{
gotoxy(20,18);
printf(" THANK YOU ");
gotoxy(20,20);
printf(" < Press any key to continue > ");
getch();
closegraph();
exit(0);
}
 

 

 

Contribute content or training reports / feedback / Comments
job placement papers
All rights reserved © copyright 123ENG