Rock Paper Scissors game written in java with GUISolutionimp

Rock Paper Scissors game written in java with GUI

Solution

import java.awt.Color;

import java.awt.Container;

import java.awt.event.*;

import javax.swing.*;

public class RockPaperScissors {

               /*

               * 1 is rock

               * 2 is paper

               * 3 is scissors

               */

               static int humanWon; // use for statistic

               static int win=0;

               static int total=0;

               static int tie=0;

               public static void main(String[] args){ // main

                               gamePanel();// launch main game

                               introductionPanel(); // launch instruction

               }

               private static void introductionPanel(){ // give the instruction to the game

                               String text=\"Rock, Paper, Scissors! This game is fairly simple.\ Simply pick your hands whenever you are ready.\ Rock beats scissors, scissors beat paper\ and paper wrap the rock. Yes paper beats rock.\";

                               JOptionPane.showMessageDialog(null,text, \"How to play!\", 0, new ImageIcon(System.getProperty(\"user.dir\")+\"/image/5.gif\"));

               }

               private static void gamePanel(){ // the main game panel

                               JFrame frame = new JFrame(\"Rock, Scissors, Paper\"); //the main frame of the game

                               Container panel = frame.getContentPane(); // creating a container panel, so we can place buttons where we pleased

                               panel.setLayout(null);

                               String[] iconString= new String[3]; // creating icon string name so we can place the directory in with little effort

                               int[] boundInt= new int[3]; // same idea

                               for(int i=0; i<=2; i++){ // creating the condtions

                                              iconString[i]=System.getProperty(\"user.dir\")+\"/image/\"+i+\".jpg\";

                                              boundInt[i]=40+150*i;

                               }

                               JButton b1 = new JButton (\" \", new ImageIcon(iconString[0]));

                               b1.setBackground(Color.white);

                               b1.setBounds(40,boundInt[0],150,100);

                               JButton b2 = new JButton (\" \", new ImageIcon(iconString[1]));

                               b2.setBackground(Color.white);

                               b2.setBounds(40,boundInt[1],150,100);

                               JButton b3 = new JButton (\" \", new ImageIcon(iconString[2]));

                               b3.setBackground(Color.white);

                               b3.setBounds(40,boundInt[2],150,100);//creating three buttons

                               JLabel l1 = new JLabel(new ImageIcon(System.getProperty(\"user.dir\")+\"/image/3.jpg\"));

                               l1.setBounds(300, 140, 128, 200);

                               panel.add(l1);//creating a question button

                               JButton b4 = new JButton(\"Cheat\");

                               b4.setBounds(350, 430, 80, 30); //create a code button, this button will give you an automatic win

                               JButton b5 = new JButton(\"Quit\"); //quit

                               b5.setBounds(260, 430, 80, 30);

                               panel.add(b1);

                               panel.add(b2);

                               panel.add(b3);

                               panel.add(b4);

                               panel.add(b5); //place button on panel

                               b1.addActionListener( //next three button will listen for which play pick and calculate the win in computeWinner

                                                             new ActionListener() {

                                                                            public void actionPerformed( ActionEvent event ) {

                                                                                            computeWinner(1);

                                                                            }

                                                             }

                               );

                               b2.addActionListener(

                                                             new ActionListener() {

                                                                            public void actionPerformed( ActionEvent event ) {

                                                                                            computeWinner(2);

                                                                            }

                                                             }

                               );

                               b3.addActionListener(

                                                             new ActionListener() {

                                                                            public void actionPerformed( ActionEvent event ) {

                                                                                            computeWinner(3);

                                                                            }

                                                             }

                               );

                               b4.addActionListener(

                                                             new ActionListener() {//cheat button, hit the guy and get a win

                                                                            public void actionPerformed( ActionEvent event ) {

                                                                                            win=win+1;

                                                                                            total=total+1;

                                                                                           JOptionPane.showMessageDialog(null,\"Rack up another win!\"+\"\ Win/Loss rate: \" + win+\"/\"+total+\"\ Tie: \"+tie,\"Cheater do prosper\", 0, new ImageIcon(System.getProperty(\"user.dir\")+\"/image/4.jpg\"));

                                                                            }

                                                             }

                               );

                               b5.addActionListener( //quit the game and show three beat up guys

                                                             new ActionListener() {

                                                                            public void actionPerformed( ActionEvent event ) {

                                                                                            String text=\"Paper: Thank goodness you stop playing!\ The rock keep trying to break free\ and the scissors keep cutting me!\ Rock: Let me out!\ Scissors: Snip snip.\ \ Author: Thank you for playing and I have\ take these guys to the hospital now.\";

                                                                                           JOptionPane.showMessageDialog(null,text, \"Thank you for playing!\", 0, new ImageIcon(System.getProperty(\"user.dir\")+\"/image/6.gif\"));

                                                                                            System.exit(0);

                                                                            }

                                                             }

                               );

                               frame.setSize(500, 500);

                               frame.setVisible(true);

                              frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //set frame size and the game begins!                       

               }

               public static void computeWinner(int x){ // computing the winner

                               int computerChoice=computerRandomChoice();

                               int humanChoice=x;

                               String text,text1=\"\";

                               String winningCombination= \"\"+Math.min(computerChoice, humanChoice)+Math.max(computerChoice, humanChoice);

                               switch(Integer.parseInt(winningCombination)){

                               case 12:

                                              text = \"Paper wins!\";

                                              if(humanChoice==2) humanWon=1;

                                              break;

                               case 13:

                                              text = \"Rock wins!\";

                                              if(humanChoice==1) humanWon=1;

                                              break;

                               case 23:

                                              text = \"Scissors wins!\";

                                              if(humanChoice==3) humanWon=1;

                                              break;

                               default: text=\"It is a tie!\";

                               humanWon=2;

                               tie=tie+1;

                               }

                               if(humanWon==1){

                                              text1=\"Human wins! \";

                                              humanWon=0;

                                              win=win+1;

                                              total=total+1;

                               }else if(humanWon==2){

                                              text1=\"It is a tie! \";

                                              humanWon=0;                     

                               }else{

                                              text1=\"Computer wins! \";

                                              total=total+1;

                               }

                               JFrame frame = new JFrame(\"Rock, Scissors, Paper\");

                               Container panel = frame.getContentPane();

                               panel.setLayout(null);

                               JLabel l0 = new JLabel(text1+text);

                               l0.setBounds(75, 10, 300, 35);

                               panel.add(l0);

                               //show the result in a new splash screen

                              

                               JLabel l1 = new JLabel(\"Human\'s Choice\");

                               l1.setBounds(40, 35, 150, 35);

                               panel.add(l1);

                               JLabel l2 = new JLabel(\"Computer\'s Choice\");

                               l2.setBounds(215, 35, 150, 35);

                               panel.add(l2);

                               JLabel l3 = new JLabel(new ImageIcon(System.getProperty(\"user.dir\")+\"/image/\"+(humanChoice-1)+\".jpg\"));

                               l3.setBounds(10, 100, 170, 60);

                              panel.add(l3);

                               JLabel l4 = new JLabel(new ImageIcon(System.getProperty(\"user.dir\")+\"/image/\"+(computerChoice-1)+\".jpg\"));

                               l4.setBounds(200, 100,170, 60);

                               panel.add(l4);

                               JLabel l5 = new JLabel(\"Win/Loss rate: \" + win+\"/\"+total);

                               l5.setBounds(125, 25, 150, 350);

                               panel.add(l5);

                               JLabel l6 = new JLabel(\"Tie: \"+tie);

                               l6.setBounds(125, 30, 125, 370);

                               panel.add(l6);

                               frame.setSize(400, 270);

                               frame.setVisible(true);                       

               }

               public static int computerRandomChoice(){// creating a random choice of rock paper or scissors by the computer

                               int result=(int)(Math.random()*3)+1;               

                               return result;

               }

}

Rock Paper Scissors game written in java with GUISolutionimport java.awt.Color; import java.awt.Container; import java.awt.event.*; import javax.swing.*; public
Rock Paper Scissors game written in java with GUISolutionimport java.awt.Color; import java.awt.Container; import java.awt.event.*; import javax.swing.*; public
Rock Paper Scissors game written in java with GUISolutionimport java.awt.Color; import java.awt.Container; import java.awt.event.*; import javax.swing.*; public
Rock Paper Scissors game written in java with GUISolutionimport java.awt.Color; import java.awt.Container; import java.awt.event.*; import javax.swing.*; public
Rock Paper Scissors game written in java with GUISolutionimport java.awt.Color; import java.awt.Container; import java.awt.event.*; import javax.swing.*; public
Rock Paper Scissors game written in java with GUISolutionimport java.awt.Color; import java.awt.Container; import java.awt.event.*; import javax.swing.*; public

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site