Bouncing Ball Game Project in C Language in Hindi | with source code

 हेलो दोस्तों !

आज की इस पोस्ट में हम bouncing ball game का project C programming language की मदद से बनाना सीखेंगे। तो दोस्तों अगर आप इस प्रोजेक्ट को बनाना सीखना चाहते है तो इस पोस्ट को अंत तक जरूर पढ़े। 


इस पोस्ट के मुख्य टॉपिक्स निन्म है -

  1. प्रोजेक्ट ओवरव्यू। 
  2. प्रोजेक्ट कोडिंग लॉजिक। 
  3. प्रोजेक्ट सोर्स कोड। 
  4. प्रोजेक्ट वीडियो। 


1. प्रोजेक्ट ओवरव्यू :- 

तो दोस्तों सबसे पहले हम इस bouncing ball game project का ओवरव्यू देख लेते है की यह प्रोजेक्ट क्या करेगा। 


bouncing ball game project in c language in hindi


दोस्तों यह प्रोजेक्ट एक सिंपल सा bouncing ball game है जो आपने कभी न कभी जरूर खेला होगा। हमने इस प्रोजेक्ट की कोडिंग बाउंसिंग बॉल गेम के रूल के आधार पर ही की है। जैसे गेम कब एन्ड होगा ,स्कोर कैसे कैलकुलेट होगा ,बॉल कैसे बाउंस होगी आदि। इस प्रोजेक्ट को मजेदार बनाने के बनाने लिए हमने इस प्रोजेक्ट में ग्राफ़िक्स का यूज़ किया  है। इस गेम के अंदर हमने बहुत ही interesting ग्राफ़िक्स का यूज़ किया है। 

2.प्रोजेक्ट कोडिंग लॉजिक -  

दोस्तों अब हम इस bouncing ball game project को बनाने का लॉजिक देख लेते है की इस प्रोजेक्ट की कोडिंग करने का लॉजिक क्या है।


दोस्तों अगर आप प्रोग्रामिंग सीख रहे हैं तो आपको यह जरूर पता होगा की किसी प्रोग्राम या प्रोजेक्ट का लॉजिक क्या होता है और यह कितना इम्पोर्टेन्ट होता है। इसलिए हम इस प्रोजेक्ट का लॉजिक बता रहे है ताकि आप इस प्रोजेक्ट को अच्छी तरह समझ पाए और इसकी कोडिंग कर पायें। 

दोस्तों इस प्रोजेक्ट में सबसे पहले आपको गेम की बॉडी बनाना है। गेम की बॉडी में वो सभी चीज़ें आती है जो स्क्रीन पर दिखाई देती है। जैसे गेम बॉर्डर ,गेम स्कोर ,गेम चांस ,बॉल और कुछ messages आदि। इसके बाद आपको बॉल को मूव करना है जो आप कंडीशन लगाकर बॉल को मूव करा सकते है। 

बॉल मूव कराने के लिए आपको बॉल को और गेम बॉडी को बार-बार ड्रा करना पड़ेगा तभी यह संभव हो सकेगा। इसके साथ आप स्कोर भी कैलकुलेट करेंगे। जिसके लिए आप कंडीशन दे सकते है। और साथ में आपको चांस भी कम करने है जब बॉल नीचे वाली लाइन में को छुए तो आपको चांस कम करना है और जब चांस ख़त्म हो जाये तो गेम को एन्ड कर देना है। साथ में आपको बॉल को नीचे गिरने से बचाने वाली लाइन को भी मूव करना है। ताकि यूजर गेम को जब तक चाहे खेल सके। 

इन सबकी कोडिंग करने के लिए आपको अपनी प्रोग्रामिंग स्किल लगानी पड़ेगी। और अगर आप चाहे तो नीचे दिए इस प्रोजेक्ट के सोर्स कोड से इसकी कोडिंग का आईडिया ले सकते है। 

3.प्रोजेक्ट सोर्स कोड :-

दोस्तों अब हम इस bouncing ball game project का source code देख लेते है। 

तो दोस्तों ये है इस प्रोजेक्ट का सोर्स कोड जिसे हमने टर्बो IDE पर बनाया है और इसे compile करने के लिए turbo C कम्पाइलर से compile किया है। इसलिए अगर आप इस प्रोजेक्ट को किसी दूसरे कम्पाइलर से compile करेंगे तो शायद आपको कुछ एरर देखने को मिल सकते है। 

Source code :-

#include< stdio.h >
#include< stdlib.h >
#include< conio.h >
#include< graphics.h >
#include< dos.h >
int lineX=280,lineX2=330;
int ballX=305,ballY=325;
int score=0,chance=5;
int stop=0,stop2=0,stop3=0,stop4=0,stop5=0,stop6=0;
int leftUpMove=0,rightUpMove=0,upLeftMove=0,downLeftMove=0;
int lefDownMove=0,rightDownMove=0,upRightMove=0,downRightMove=0;
char str[10];
int moveBall()
{
  if(chance < 1)
  {
    return 1;
  }
  if(rightUpMove==0&&stop==0)
  {
    ballX+=5;
    ballY-=5;
    if(ballX==530)
    {
      score+=5;
      stop=1;
      stop2=0;
      upLeftMove=1;
      rightUpMove=1;
    }
  }else if(upLeftMove==1&&stop2==0)
  {
    ballX-=5;
    ballY-=5;
    if(ballY==50)
    {
      score+=5;
      stop2=1;
      stop3=0;
      downLeftMove=1;
      upLeftMove=0;
    }
  }else if(downLeftMove==1&&stop3==0)
  {
    ballX-=5;
    ballY+=5;
    if(ballX==110)
    {
      score+=5;
      stop3=1;
      stop4=0;
      downRightMove=1;
      downLeftMove=0;
    }else if((ballX >= lineX&&ballX <= lineX2)&&ballY==330)
    {
      stop3=1;
      stop5=0;
      leftUpMove=1;
      downLeftMove=0;
    }else if(ballY==360)
    {
      chance--;
      lineX=280,lineX2=330;
      ballX=305,ballY=325;
      stop=0,stop2=0,stop3=0,stop4=0,stop5=0,stop6=0;
      leftUpMove=0,rightUpMove=0,upLeftMove=0,downLeftMove=0;
      lefDownMove=0,rightDownMove=0,upRightMove=0,downRightMove=0;
    }
  }else if(downRightMove==1&&stop4==0)
  {
    ballX+=5;
    ballY+=5;
    if(ballY==360)
    {
      chance--;
      lineX=280,lineX2=330;
      ballX=305,ballY=325;
      stop=0,stop2=0,stop3=0,stop4=0,stop5=0,stop6=0;
      leftUpMove=0,rightUpMove=0,upLeftMove=0,downLeftMove=0;
      lefDownMove=0,rightDownMove=0,upRightMove=0,downRightMove=0;
    }else if((ballX >= lineX&&ballX <= lineX2)&&ballY==330)
    {
      stop4=1;
      stop=0;
      rightUpMove=0;
      downRightMove=0;
    }else if(ballX==530)
    {
      score+=5;
      stop4=1;
      stop3=0;
      downLeftMove=1;
      downRightMove=0;
    }
  }else if(leftUpMove==1&&stop5==0)
  {
    ballX-=5;
    ballY-=5;
    if(ballX==110)
    {
      score+=5;
      stop5=1;
      stop6=0;
      upRightMove=1;
      leftUpMove=0;
    }else if(ballY==50)
    {
      score+=5;
      stop5=1;
      stop3=0;
      downLeftMove=1;
      leftUpMove=0;
    }
  }else if(upRightMove==1&&stop6==0)
  {
    ballX+=5;
    ballY-=5;
    if(ballY==50)
    {
      score+=5;
      stop6=1;
      stop4=0;
      downRightMove=1;
      upRightMove=0;
    }
  }
  return 0;
}
int moveLine()
{
  char ch;
  if(kbhit())
  {
    ch=getch();
    switch(ch)
    {
    case 27:
      return 1;
    case 75:
      if(lineX > 90)
      {
	lineX-=10;
	lineX2-=10;
      }
    break;
    case 77:
      if(lineX2 < 550)
      {
	lineX+=10;
	lineX2+=10;
      }
    break;
    }
  }
  return 0;
}
void drawGameBody()
{
  clrscr();
  setcolor(5);
  settextstyle(0,0,2);
  outtextxy(180,10,"BOUNCING BALL GAME");
  settextstyle(3,0,2);
  outtextxy(15,160,"Press");
  outtextxy(25,180,"Esc");
  outtextxy(10,200,"to Exit");
  outtextxy(565,140,"SCORE");
  sprintf(str,"%d",score);
  outtextxy(585,170,str);
  outtextxy(560,200,"CHANCE");
  sprintf(str,"%d",chance);
  outtextxy(595,230,str);
  setcolor(1);
  setlinestyle(0,0,3);
  rectangle(90,30,550,380);
  setcolor(5);
  line(lineX,350,lineX2,350);
  setcolor(4);
  circle(ballX,ballY,15);
}
void main()
{
  int gd=0,gm,end=0,end2=0,i=0;
  char ch;
  clrscr();
  initgraph(&gd,&gm,"");
  restart:
  end=0;
  while(1)
  {
    drawGameBody();
    end=moveBall();
    end2=moveLine();
    delay(80);
    sound(i);
    if(i >= 1000)
    {
      i=100;
    }else
    {
      i+=100;
    }
    if(end==1||end2==1)
    {
      break;
    }
  }
  nosound();
  clrscr();
  setcolor(1);
  settextstyle(0,0,2);
  outtextxy(250,180,"GAME END");
  outtextxy(240,210,"YOUR SCORE");
  sprintf(str,"%d",score);
  outtextxy(305,240,str);
  outtextxy(80,300,"IF YOU WANT TO PLAY AGAIN THEN");
  outtextxy(130,330,"PRESS 'Y' OTHERWISE 'N'");
  renter:
  ch=getch();
  if(ch=='y'||ch=='Y')
  {
    chance=5,score=0;
    lineX=280,lineX2=330;
    ballX=305,ballY=325;
    stop=0,stop2=0,stop3=0,stop4=0,stop5=0,stop6=0;
    leftUpMove=0,rightUpMove=0,upLeftMove=0,downLeftMove=0;
    lefDownMove=0,rightDownMove=0,upRightMove=0,downRightMove=0;
    goto restart;
  }else if(ch=='n'||ch=='N')
  {
    exit(0);
  }else
  {
    clrscr();
    outtextxy(180,200,"INVALID KEY PRESSED");
    outtextxy(210,230,"ENTER VALID KEY");
    goto renter;
  }
  getch();
  closegraph();
}

4.प्रोजेक्ट वीडियो :-

दोस्तों अगर आप इस प्रोजेक्ट का आउटपुट देखना चाहते है तो आप हमारी वीडियो you tube पर देख सकते है। इस वीडियो में हमने इस प्रोजेक्ट को रन करके दिखाया है की यह किस प्रकार वर्क कर रहा है। तो दोस्तों अगर आप इस वीडियो को देखना चाहते है तो नीचे लिंक पर क्लिक करके देख सकते है। 


bouncing ball game using graphics in c language



इन पोस्ट को भी पढ़े -


Author :- तो दोस्तों अब हमारी यह पोस्ट ख़त्म होती है हम आशा करते है की हमारी यह पोस्ट आपको जरूर पसंद आई होगी और आप bouncing ball game का project C programming language की मदद से बनाना सीख गए होंगे। तो दोस्तों आज के लिए बस इतना ही फिर मिलेंगे ऐसी ही किसी और मजेदार पोस्ट में तब तक के लिए अलविदा !

Post a Comment

0 Comments