1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

could some one turn this into a application rather an applet for me please?

Discussion in 'Game programming' started by ashbash13, Apr 23, 2009.

  1. ashbash13

    ashbash13 New Member

    Joined:
    Apr 23, 2009
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    0
    Code:
    /*              Lights on, Lights off
     *
     * 
     *  Ashley Jones
     */
    import java.applet.*;
    import java.lang.*;
    import java.awt.*;
    import java.net.*;
    public class AllLights extends Applet {
         final int ON  =  1;
         final int OFF = -1;
         final int WIDTH = 200;
         protected int light[][];
         protected int counterOn  = 0;
         protected int counterOff = 0;
         int end = 0;
         public void init() {
              end = 0;
              light = new int[5][5];
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        light[i][j] = OFF;
                   }
              }
              countLight();
         }
         public void start() {
              setBackground(Color.Black);
              init();
         }
         public void paint(Graphics g) {
              g.setColor(Color.green);
              g.fill3DRect(210, 165, 60, 20, true);
              g.setColor(Color.white);
              g.drawString("Start Over", 214, 180);
              drawBoard(g);
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        if (light[i][j]  != 0) {
                             drawLight(i, j, g);
                        }
                   }
              }
              drawCountLight(g);
         }
         public void drawBoard(Graphics g) {
              g.setColor(Color.black);
              g.drawLine(0,0, 0,WIDTH);
              g.drawLine(WIDTH,0, WIDTH,WIDTH);
              g.drawLine(0,0, WIDTH,0);
              g.drawLine(0,WIDTH, WIDTH,WIDTH);
              for (int i = 1; i < 5; i++) {
                   g.drawLine(WIDTH*i/5,0, WIDTH*i/5,WIDTH);
                   g.drawLine(0,WIDTH*i/5, WIDTH,WIDTH*i/5);
              }
         }
         public void drawLight(int column, int row, Graphics g) {
              if (light[column][row] == ON) {
                   g.setColor(Color.yellow);
              } else if (light[column][row] == OFF) {
                   g.setColor(Color.gray);
              }
              g.fillRect(column * WIDTH / 5 + 2, row * WIDTH / 5 + 2,
                         WIDTH / 5 - 3, WIDTH / 5 - 3);
         }
         void countLight() {
              counterOn = 0;
              counterOff = 0;
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        if(light[i][j] == ON) counterOn++;
                        if(light[i][j] == OFF) counterOff++;
                   }
              }
              if (counterOn == 25) {
                   endGame(getGraphics());
              }
         }
         public void endGame(Graphics g) {
              update(getGraphics());
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        light[i][j] = OFF;
                        update(getGraphics());
                   }
              }
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        light[i][j] = ON;
                        update(getGraphics());
                   }
              }
              g.setColor(Color.yellow);
              g.fillRect(65, 98, 80, 10);
              g.setColor(Color.black);
              g.drawString("Congratz", 66, 106);
              g.setColor(Color.red);
              g.drawString("Congratz", 65, 105);
              end = 1;
         }
         void drawCountLight(Graphics g) {
              g.setColor(Color.white);
              g.fill3DRect(WIDTH+15, 50, 30,20, false);
              g.fill3DRect(WIDTH+15, 110, 30,20, false);
              g.setColor(Color.gray);
              g.fill3DRect(WIDTH+5, 85, 20,20, true);
              g.setColor(Color.yellow);
              g.fill3DRect(WIDTH+5, 20, 20,20, true);
              g.setColor(Color.black);
              g.drawString("LightOn", WIDTH+30, 35);
              g.drawString("LightOff", WIDTH+30, 100);
              g.drawString(Integer.toString(counterOn), WIDTH+20, 65);
              g.drawString(Integer.toString(counterOff), WIDTH+20, 125);
         }
         public boolean mouseUp(Event event, int x, int y) {
              if (end == 1) {
                   init();
                   update(getGraphics());
              } else {
                   if (x > 210 && x < 270 && y > 165 && y < 185) {
                        init();
                        update(getGraphics());
                   }
                   int column = (int)(x / (WIDTH / 5));
                   int row    = (int)(y / (WIDTH / 5));
                   light[column][row] = -light[column][row];
                   try {
                        light[column+1][row] = -light[column+1][row];
                   } catch(Exception e) {
                   }
                   try {
                        light[column-1][row] = -light[column-1][row];
                   } catch(Exception e) {
                   }
                   try {
                        light[column][row+1] = -light[column][row+1];
                   } catch(Exception e) {
                   }
                   try {
                        light[column][row-1] = -light[column][row-1];
                   } catch(Exception e) {
                   }
                   countLight();
                   if (end == 0) {
                        update(getGraphics());
                   }
              }
              return true;
         }
    }
     
  2. SaswatPadhi

    SaswatPadhi ~ Б0ЯИ Τ0 С0δЭ ~

    Joined:
    May 5, 2009
    Messages:
    1,343
    Likes Received:
    55
    Trophy Points:
    0
    Occupation:
    STUDENT !
    Location:
    Orissa, INDIA
    Home Page:
    Nice question, converting applet to app ! :smile:

    I think this might work :wink: , not tested though.
    I've added a main func, see code below :

    Code:
    /*              Lights on, Lights off
     *
     * 
     *              Ashley Jones
     */
    
    // We no longer need to import java.applet.*;
    
    import java.lang.*;
    import java.awt.*;
    import java.net.*;
    
    public class AllLights extends Applet {
         final int ON  =  1;
         final int OFF = -1;
         final int WIDTH = 200;
         protected int light[][];
         protected int counterOn  = 0;
         protected int counterOff = 0;
         int end = 0;
    
         // Added this :
         public static void main(String[] MArg) {
              Frame fr = new Frame();
              fr.addWindowListener(new java.awt.event.WindowAdapter() {
                   public void windowClosing(java.awt.event.WindowEvent e) {
                        System.exit(0);
                   };
              });
    
              AllLights AL = new AllLights();
              AL.setSize(200,200); // enter size here, i saw width = 200, so entered the same for height !
              fr.add(AL);
              fr.pack();
              AL.init();
              fr.setSize(200,200 + 20);  // 20 for frame title, increase if you wish
              fr.show();
         }
    
         // Code below is untouched.
         public void init() {
              end = 0;
              light = new int[5][5];
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        light[i][j] = OFF;
                   }
              }
              countLight();
         }
         public void start() {
              setBackground(Color.Black);
              init();
         }
         public void paint(Graphics g) {
              g.setColor(Color.green);
              g.fill3DRect(210, 165, 60, 20, true);
              g.setColor(Color.white);
              g.drawString("Start Over", 214, 180);
              drawBoard(g);
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        if (light[i][j]  != 0) {
                             drawLight(i, j, g);
                        }
                   }
              }
              drawCountLight(g);
         }
         public void drawBoard(Graphics g) {
              g.setColor(Color.black);
              g.drawLine(0,0, 0,WIDTH);
              g.drawLine(WIDTH,0, WIDTH,WIDTH);
              g.drawLine(0,0, WIDTH,0);
              g.drawLine(0,WIDTH, WIDTH,WIDTH);
              for (int i = 1; i < 5; i++) {
                   g.drawLine(WIDTH*i/5,0, WIDTH*i/5,WIDTH);
                   g.drawLine(0,WIDTH*i/5, WIDTH,WIDTH*i/5);
              }
         }
         public void drawLight(int column, int row, Graphics g) {
              if (light[column][row] == ON) {
                   g.setColor(Color.yellow);
              } else if (light[column][row] == OFF) {
                   g.setColor(Color.gray);
              }
              g.fillRect(column * WIDTH / 5 + 2, row * WIDTH / 5 + 2,
                         WIDTH / 5 - 3, WIDTH / 5 - 3);
         }
         void countLight() {
              counterOn = 0;
              counterOff = 0;
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        if(light[i][j] == ON) counterOn++;
                        if(light[i][j] == OFF) counterOff++;
                   }
              }
              if (counterOn == 25) {
                   endGame(getGraphics());
              }
         }
         public void endGame(Graphics g) {
              update(getGraphics());
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        light[i][j] = OFF;
                        update(getGraphics());
                   }
              }
              for (int i = 0; i < 5; i++) {
                   for (int j = 0; j < 5; j++) {
                        light[i][j] = ON;
                        update(getGraphics());
                   }
              }
              g.setColor(Color.yellow);
              g.fillRect(65, 98, 80, 10);
              g.setColor(Color.black);
              g.drawString("Congratz", 66, 106);
              g.setColor(Color.red);
              g.drawString("Congratz", 65, 105);
              end = 1;
         }
         void drawCountLight(Graphics g) {
              g.setColor(Color.white);
              g.fill3DRect(WIDTH+15, 50, 30,20, false);
              g.fill3DRect(WIDTH+15, 110, 30,20, false);
              g.setColor(Color.gray);
              g.fill3DRect(WIDTH+5, 85, 20,20, true);
              g.setColor(Color.yellow);
              g.fill3DRect(WIDTH+5, 20, 20,20, true);
              g.setColor(Color.black);
              g.drawString("LightOn", WIDTH+30, 35);
              g.drawString("LightOff", WIDTH+30, 100);
              g.drawString(Integer.toString(counterOn), WIDTH+20, 65);
              g.drawString(Integer.toString(counterOff), WIDTH+20, 125);
         }
         public boolean mouseUp(Event event, int x, int y) {
              if (end == 1) {
                   init();
                   update(getGraphics());
              } else {
                   if (x > 210 && x < 270 && y > 165 && y < 185) {
                        init();
                        update(getGraphics());
                   }
                   int column = (int)(x / (WIDTH / 5));
                   int row    = (int)(y / (WIDTH / 5));
                   light[column][row] = -light[column][row];
                   try {
                        light[column+1][row] = -light[column+1][row];
                   } catch(Exception e) {
                   }
                   try {
                        light[column-1][row] = -light[column-1][row];
                   } catch(Exception e) {
                   }
                   try {
                        light[column][row+1] = -light[column][row+1];
                   } catch(Exception e) {
                   }
                   try {
                        light[column][row-1] = -light[column][row-1];
                   } catch(Exception e) {
                   }
                   countLight();
                   if (end == 0) {
                        update(getGraphics());
                   }
              }
              return true;
         }
    }
    
     

Share This Page