Total members 10259 | Gratitudes |It is currently Mon May 21, 2012 4:08 pm Login / Join Codemiles


All times are UTC [ DST ]




Post new topic Reply to topic  Quick reply  [ 3 posts ] 
Author Topic
 Topic subject: Rapid Roll game
PostPosted: Fri Oct 17, 2008 12:41 pm 
Offline
Mastermind
User avatar

Joined: Tue Mar 27, 2007 10:55 pm
Posts: 2277
Location: Earth
Has thanked: 39 time
Have thanks: 61 time

* Project Name:   Rapid Roll game
* Programmer:   subrahmanyeswararao
* Type:   Multithreading
* Technology:  Java
* IDE:   Any
* Description:   I developed this game in JAVA using AWT and THREADS
cocepts.
Use left and right arrows to play the game. Give me feedback on my coding


Code:
import java.awt.*;                     //CHANGE THE scrollSpeed value
import java.awt.event.*;                //to run the thread with more speed
import java.util.*;
import java.io.*;

class HighSc
{

  int hsc;
  BufferedReader br;
  FileInputStream fis;
  String sths;
  public String getHighScore()  throws IOException
  {
     fis = new FileInputStream("highscore.txt");
     br = new BufferedReader(new InputStreamReader(fis));

     sths = br.readLine();

     fis.close();
     return sths;
     }

}


class GameFrame extends Frame implements  Runnable, KeyListener
,ActionListener
{


   MenuBar mb;
   Menu m1;
   MenuItem mi1,mi2,mi3,mi4,mi5,mi6;

    Button b1,b2,b3;
    Button ball;
    Button oneUp;

    final int TOPLINE = 50;
    final int BOTTOMLINE = 350;
    final int LEFTLINE = 20;
    final int RIGHTLINE = 350 ;

    int scrollSpeed = 25;

    int x=50, y=300;
    int x2=125,y2=200;
    int x3 = 90,y3=100;
    int bx = 80;
    int by = 239;
    int ox = 0;
    int oy = 0;
    int score = 0;
    int oneUpCount = 1;

    int  t1,t2,t3;

    int chances=3;
    int a,b,c;
    int diff = 65;
    String msg = "";
    String chns = "";
    String st = "";


    char ch;
    int kcode;
    boolean flagLKey = true;
    boolean flagRKey = true;
    boolean flagTop1 = false;
    boolean flagTop2 = false;
    boolean flagTop3 = false;
    boolean flagDrop = true;
    boolean flagMove = true;
    boolean flagBetween = true;
    boolean flagOnx = true;
    boolean flagOnx2 = false;
    boolean flagOnx3 = false;
    boolean flagJump = true;
    boolean flagNew1 = false;
    boolean flagOneUp = false;

    Thread t;

    GameFrame()
    {


     mb = new MenuBar();
     m1  = new Menu("File");
     mi1 = new MenuItem("New Game");
     mi2 = new MenuItem("HighScores");
     mi3 = new MenuItem("Exit");

     setMenuBar(mb);
     mb.add(m1);

     m1.add(mi1);
     m1.add(mi2);
     m1.add(mi3);



        setTitle("simple frame");
        setSize(400,350);

        setLayout(null);
        b1 = new Button("");
        b2 = new Button("");
        b3 = new Button("");
        ball = new Button("o");
        oneUp = new Button("0");
        add(ball);
        add(b1);
        add(b2);
        add(b3);
        add(oneUp);
        b1.setBounds(x,y,70,20);
        b2.setBounds(x2,y2,70,20);
        b3.setBounds(x3,y3,70,20);

        ball.setBounds(bx,by,10,10);
        oneUp.setBounds(bx-5,by,5,5);

        setBackground(Color.blue);
        setForeground(Color.white);
        ball.addKeyListener(this);

        mi1.addActionListener(this);
        mi2.addActionListener(this);
   mi3.addActionListener(this);

         addWindowListener(new WindowAdapter()
         {
             public void windowClosing(WindowEvent we)
             {
                  closeAll();
                }
            });

          t = new Thread(this,"game");
          t.start();

      }  //end of constructor

      public void actionPerformed(ActionEvent ae)
      {
          st = ae.getActionCommand();
          if(st.equals("New Game"))
          {

              stop();this.setVisible(false);
              Frame ng = new GameFrame();
              ng.setVisible(true);

             }
          else if(st.equals("HighScores"))
          {

        HighSc hs = new HighSc();
             try
             {
               msg = "";
               msg  =  hs.getHighScore(); repaint();
               }
             catch(IOException ie)
             {
      System.out.println(ie);
               }
       }
          else if(st.equals("Exit"))
          {
              closeAll();
        }

        }

      public void closeAll()
      {

        stop();
        t = null;
         System.exit(0);

        }

      public void keyPressed(KeyEvent ke)
      {
            kcode = ke.getKeyCode();




             switch(kcode)
             {

                case KeyEvent.VK_LEFT:
                                       if(flagDrop)
                                          bx -= 4;





if(ox<=bx+2&&ox>=bx&&(oy>=by&&oy<=by+6))
                                       {
                chances++;ox = 0;oy = 0;
                 repaint(); flagOneUp = false;
                }

           while(flagLKey)
                     {
          if(((bx>=x&&bx<=x+70)&&(by<y&&by>=y-11))
                 ||((bx>=x2&&bx<=x2+70)&&(by<y2&&by>=y2-11))
            ||((bx>=x3&&bx<=x3+70)&&(by<y3&&by>=y3-11)))

             {
                             flagBetween = true;
                             bx  -= 2; flagDrop = false;
                           }
                        else
         {
             flagDrop = true;
                       flagBetween = false;
                            if(flagOnx)
                               flagOnx = false;
                            else if(flagOnx2)
                               flagOnx2 = false;
                            else if(flagOnx3)
                               flagOnx3 = false;

             break;
           }

                         repaint();  break;
         }


                                            break;

                case KeyEvent.VK_RIGHT:
                                        if(flagDrop)
                 bx +=4;


if(ox<=bx+2&&ox>=bx&&(oy>=by&&oy<=by+6))
               {
                  chances++;   ox = 0; oy = 0;
                  repaint();   flagOneUp = false;
                 }

                      while(flagRKey)
                      {

         if(((bx>=x&&bx<=x+70)&&(by<y&&by>=y-11))
                 ||((bx>=x2&&bx<=x2+70)&&(by<y2&&by>=y2-11))
            ||((bx>=x3&&bx<=x3+70)&&(by<y3&&by>=y3-11)))

         {
                       bx  += 2;
                            flagBetween = true;
             flagDrop = false;
                            repaint(); break;
            }
                        else
          {
                            flagBetween = false;
                            flagDrop = true;

               if(flagOnx)
                               flagOnx = false;
                            else if(flagOnx2)
                               flagOnx2 = false;
                            else if(flagOnx3)
                               flagOnx3 = false;

             break;
             }
                       }
                       break;
                 }

          }
     public void keyReleased(KeyEvent ke)
      {
           if(bx<LEFTLINE)
            {
               flagLKey = false;
               flagRKey = true;
              }
           else if(bx>BOTTOMLINE)
           {
               flagRKey = false;
               flagLKey = true;
             }
           else
           {
               flagLKey = true;
               flagRKey = true;
              }


          }

      public void keyTyped(KeyEvent ke)
      {

          }

     public void flagDropFun()
     {


            while(flagDrop)
            {
          by += 1;

              if(((bx>=x&&bx<=x+70)&&(by<y&&by>=y-11))
                  ||((bx>=x2&&bx<=x2+70)&&(by<y2&&by>=y2-11))
            ||((bx>=x3&&bx<=x3+70)&&(by<y3&&by>=y3-11)))
               {

                 flagDrop = false;
       flagBetween = true;


if(!flagOnx2&&!flagOnx3&&(bx>=x&&bx<=x+70)&&(by<y&&by>=y-11))
       {
           flagOnx = true;   flagJump = true;score +=5;
           flagOnx2 = false;
           flagOnx3 = false;
         }
       else
if(!flagOnx&&!flagOnx3&&(bx>=x2&&bx<=x2+70)&&(by<y2&&by>=y2-11))
       {

           flagOnx2 = true;    flagJump = true; score += 5;
                     flagOnx  = false;
           flagOnx3 = false;
                   }
                 else
if(!flagOnx&&!flagOnx2&&(bx>=x3&&bx<=x3+70)&&(by<y3&&by>=y3-11))
                 {
           flagOnx3 = true;   flagJump = true; score +=5;
                     flagOnx  = false;
                     flagOnx2 = false;
                   }
                 else
                  {
                     flagOnx = false;
                     flagOnx2 = false;
                     flagOnx3 = false;

                    }

                 }

               repaint(); break;
             }

       }


       public void run()
       {
            try
            {

             while(flagMove)
             {

               while(flagDrop)
          {
        flagDropFun();break;
       }


              a = (int)(Math.random()*100);
         b = (int)(Math.random()*100);
         c = (int)(Math.random()*10);


              if(y<TOPLINE||y2<TOPLINE||y3<TOPLINE)
              {
      oneUpCount++;
      if(oy<TOPLINE)
      {
           ox=0; oy =0;     flagOneUp = false;
             }
                }

                if(y<TOPLINE)
                 {
                        x = a+b+c;
                             y = y2+100;


               if(by<TOPLINE-11||flagNew1)
                     {
                         bx = x+30;
          by = y-11;
          flagNew1 = false;
          flagOnx = true;
                         flagBetween = true;

         }


           }

                  else if(y2<TOPLINE)
                  {

                             x2 = a+b+c;
                             y2 = y3+100;



                    if(by<39||flagNew1)
                     {
                         bx = x2+30;
          by = y2-11;
               flagNew1 = false;
                         flagOnx2 = true;
          flagBetween = true;

         }

                     }

                  else if(y3<TOPLINE)
                   {
                             x3 = a+b+c;
                             y3 = y+100;



                    if(by<39||flagNew1)
                     {
                         bx = x3+30;
          by = y3-11;
          flagOnx3 = true;
          flagNew1 = false;
            flagOnx3 = true;
          flagBetween = true;
         }

                     }
                      y -= 1;
                      y2 -=1;
                      y3 -= 1;

                   if(flagOneUp)
         {
            if(t2==1)
                      {
         ox = x+t2+t3;
         oy = y-5;
         }

            else if(t2==2)
                     {
         ox = x2+t2+t3;
         oy = y2-5;

         }
            else if(t2==3)
                      {
         ox = x3+t2+t3;
         oy = y3-5;

         }

            }

          if(oneUpCount==7)
                    {
         t1 =(int)(Math.random()*10);
         t3 = (int)(Math.random()*10);
         t2 = (int)(t1/3)+1;
         flagOneUp = true;
         oneUpCount = 1;
                 }

                    if(by<TOPLINE)
                    {

                           if(by<TOPLINE-10)
                           {
                             t.sleep(100);
              chances--;
                             }
                           if(chances==0)
            {
                              msg = "Game Over"; repaint();
                              stop();
              }
                     }



                if((flagOnx&&flagBetween))
                {

                  if(!flagLKey&&!flagRKey)
                  {
                     bx = x+30;
                    }
                   by = y-11;
                   flagJump = false;

                  }

                else if((flagOnx2&&flagBetween))
                {
                 if(!flagLKey&&!flagRKey)
          bx = x2+30;
                  by = y2-11;
                  flagJump = false;

                  }
                else if(flagOnx3&&flagBetween)
                {
        if(!flagLKey&&!flagRKey)
                bx = x3+30;
                  by = y3-11;
                  flagJump = false;

                  }

               while(flagDrop)
                {
                    by += 1;
          if(by>BOTTOMLINE)
                    {
                        chances--;
         flagNew1 = true;
         flagDrop = false;
                        t.sleep(100);
         if(chances == 0)
         {
                          msg = "Game Over"; repaint();
                              stop();
                          }

                       }
          repaint(); break;
                  }

       /*             if(score%50==0)
          {
         scrollSpeed -= 3; score += 5;
                      }        */

               repaint();

                    Thread.sleep(scrollSpeed);

                 } //end of while flagMove

               }
              catch(InterruptedException ie)
              {
                   System.out.println(ie);
                 }

           }
          public void stop()
          {
                flagMove = false;
                t = null;
              }

       public void paint(Graphics g)
        {
             b1.setBounds(x,y,70,20);
             b2.setBounds(x2,y2,70,20);
             b3.setBounds(x3,y3,70,20);
             ball.setBounds(bx,by,10,10);
             oneUp.setBounds(ox,oy,5,5);
        g.drawString("Score :"+score,280,65);
        g.drawString("Chances :"+chances,280,75);

             g.drawString(msg,100,100);

           }

} // end of  BFrame

public class RapidRollGame
{
    public static void main(String []args)
     {
        Frame f1 = new GameFrame();
        f1.setVisible(true);

        }

  }



_________________
Currenlty programming with : java , html , php , and javascript . (OCJP-6 certified )



For this message the author msi_333 has received gratitude : Walle
TOP
 Profile Send private message  
Reply with quote  
 Topic subject: Re: Rapid Roll game
PostPosted: Sat Oct 29, 2011 2:38 am 
Shoot, who would have thohgut that it was that easy?


TOP
  
Reply with quote  
 Topic subject: Re: Rapid Roll game
PostPosted: Wed Feb 22, 2012 10:11 am 
where is stop, continue, newgame if u provide these this game was awasome


TOP
  
Reply with quote  
Post new topic Reply to topic Quick reply  [ 3 posts ] 
Quick reply


  


 Similar topics
 Chess Game in Java
 Call of duty 4 Mobile Game Free Download
 Snake Java (SE) Game
 Looking for Game Programmers/Developers (Non-Profit)
 make a game using flash
 Inserting video into the game
 Toer defense Game J2SE HELP ME
 3D c++ game with source code
 3d OpenGL game with source code
 Simple Snake Game

All times are UTC [ DST ]


Users browsing similar posts

Users browsing this forum: No registered users and 1 guest



Jump to:  
Previous Topic | Next Topic 




Home
General Talks
Finished Projects
Code Library
Games
Tutorials

Java
C/C++
C-sharp
php
Script
JSP/Servlets
Ajax
ASP/ASP.net
Google SEO
Database
Communications
Phpbb3 styles
Photoshop tutorials
Flash tutorials
Find a job






Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
All copyrights reserved to codemiles.com 2007-2011
mileX v1.0 designed by codemiles team