123 Eng

Engineering the engineers™


Latest Jobs   Forum Map

 


Home
Source Codes
Engineering Colleges

Training  Reports
Seminar Reports
Placement Papers

Forums

   Computer Science / IT
   Electronics
   Electrical
   Mechanical
   Chemical
   Civil

   CAT / MBA

   GMAT / Foreign MBA
Latest Jobs

Engineering Jobs / Technical Jobs
Management Jobs

Sitemap
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