Thursday, April 3, 2014

Problems with moving computer controlled Jbutton
















i have created another class for my collisions. also i still need to add a couple of collisions. just need to know how the game will identify when a goal is scored by scoring it in a scoring system.
















....
















package assignmnet2AirHockey;
















import java.awt.EventQueue;
















import javax.swing.JFrame;















import javax.swing.JPanel;















import javax.swing.JButton;















import javax.swing.ImageIcon;















import java.awt.Color;















import javax.swing.border.MatteBorder;















import javax.swing.SwingConstants;















import java.awt.event.ActionListener;















import java.awt.event.ActionEvent;















import java.awt.event.KeyAdapter;















import java.awt.event.KeyEvent;















import javax.swing.JLabel;
















import javax.swing.Timer;















import java.awt.event.ComponentAdapter;















import java.awt.event.ComponentEvent;
















public class AirHockeyGame extends JFrame {















Timer timer;















int timerCount = 100;















int ballSpeedX = 2;















int ballSpeedY = 2;
















private JPanel contentPane;















private JButton btnPuck;















private JButton btnRedPlayer;















private JButton btnBluePlayer;















private JButton btnRedGoal;















private JButton btnBlueGoal;
















/**















* Launch the application.















*/















public static void main(String[] args) {















EventQueue.invokeLater(new Runnable() {















public void run() {















try {















AirHockeyGame frame = new AirHockeyGame();















frame.setVisible(true);















} catch (Exception e) {















e.printStackTrace();















}















}















});















}
















/**















* Create the frame.















*/















public AirHockeyGame() {















addComponentListener(new ComponentAdapter() {















public void componentShown(ComponentEvent e) {















timer.start();















}















});
















{
















};















setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);















setBounds(100, 100, 400, 500);















contentPane = new JPanel();















contentPane.setBackground(Color.WHITE);















contentPane.setBorder(new MatteBorder(10, 10, 10, 10, (Color) Color.RED));















setContentPane(contentPane);















contentPane.setLayout(null);
















btnPuck = new JButton("");















btnPuck.setIcon(new ImageIcon(AirHockeyGame.class.getResource("/images/ImageBlackPuck.png")));















btnPuck.setBounds(197, 215, 30, 39);















contentPane.add(btnPuck);
















btnRedPlayer = new JButton("");















btnRedPlayer.addKeyListener(new KeyAdapter() {















public void keyPressed(KeyEvent arg0) {















if (arg0.getKeyCode() == KeyEvent.VK_LEFT)















{















// Move Red Player Left















btnRedPlayer.setBounds(btnRedPlayer.getX() - 6, btnRedPlayer.getY(),















btnRedPlayer.getWidth(), btnRedPlayer.getHeight());















}
















if (arg0.getKeyCode() == KeyEvent.VK_RIGHT)















{















// Move Red Player Right















btnRedPlayer.setBounds(btnRedPlayer.getX() + 6, btnRedPlayer.getY(),















btnRedPlayer.getWidth(), btnRedPlayer.getHeight());















}















}















});















btnRedPlayer.setIcon(new ImageIcon(AirHockeyGame.class.getResource("/images/ImageRedPaddle.png")));















btnRedPlayer.setBounds(175, 373, 70, 71);















contentPane.add(btnRedPlayer);
















btnBluePlayer = new JButton("");















btnBluePlayer.setIcon(new ImageIcon(AirHockeyGame.class.getResource("/images/ImageBluePaddle.png")));















btnBluePlayer.setBounds(175, 34, 70, 71);















contentPane.add(btnBluePlayer);
















btnRedGoal = new JButton("");















btnRedGoal.setIcon(new ImageIcon(AirHockeyGame.class.getResource("/images/GoalRedSide.png")));















btnRedGoal.setBounds(108, 449, 196, 23);















contentPane.add(btnRedGoal);
















btnBlueGoal = new JButton("");















btnBlueGoal.setVerticalAlignment(SwingConstants.TO P);















btnBlueGoal.addActionListener(new ActionListener() {















public void actionPerformed(ActionEvent arg0) {















}















});















btnBlueGoal.setIcon(new ImageIcon(AirHockeyGame.class.getResource("/images/GoalBlueSide.png")));















btnBlueGoal.setBounds(108, 6, 196, 23);















contentPane.add(btnBlueGoal);
















JLabel lblNewLabel = new JLabel("");















lblNewLabel.setIcon(new ImageIcon(AirHockeyGame.class.getResource("/images/Middle of Pitch.png")));















lblNewLabel.setBounds(0, 154, 394, 167);















contentPane.add(lblNewLabel);
















timer = new Timer (timerCount, new ActionListener() {















public void actionPerformed (ActionEvent count) {















btnPuck.setBounds(btnPuck.getX() + ballSpeedX, btnPuck.getY() + ballSpeedY,















btnPuck.getWidth(), btnPuck.getHeight());
















if (LogicClass.collisionBotTop(btnPuck.getX(), btnPuck.getWidth(),















contentPane.getWidth(), 0) == true)















{















ballSpeedX *= -1;















}















}});















}















}































No comments:

Post a Comment