0% found this document useful (0 votes)
210 views

Text Twist

This document contains the code for a Java game called Text Twist 2. It uses Swing components like JPanels, JLabels and JButtons to create the graphical user interface. Key listeners and timers are implemented to allow player input and game movement/animation. The game displays letters on the left side and tracks score on the right. The player moves a ball with arrow keys to find letters.

Uploaded by

chuck4301
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
210 views

Text Twist

This document contains the code for a Java game called Text Twist 2. It uses Swing components like JPanels, JLabels and JButtons to create the graphical user interface. Key listeners and timers are implemented to allow player input and game movement/animation. The game displays letters on the left side and tracks score on the right. The player moves a ball with arrow keys to find letters.

Uploaded by

chuck4301
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

import import import import

javax.swing.*; java.awt.*; java.awt.Button; java.awt.event.*;

public class TextTwist2 extends JPanel implements ActionListener, KeyListener { Rectangle r1 = new Rectangle (10, 150, 30, 30); Rectangle r3; boolean r1test=false; Timer tm = new Timer(10, this); int x = 0, y = 185, velX = 0, velY = 0; JMenuBar menuBar; JMenu file, instruction, about, exit; JMenuItem newgame, quit, author, instruct; JPanel backPanel, leftPanel, rightPanel; JLabel score, wordFound, back, letter, letter2, letter3, letter4, letter5, letter6, letter7; JButton ok, clear; JTextField tf1; int g; FlowLayout layout; GridLayout layout1; public TextTwist2() { tm.start(); addKeyListener(this); setFocusable(true); setFocusTraversalKeysEnabled(false); } private JPanel createContentPane(){ backPanel = new JPanel(); backPanel.setLayout(null); backPanel.setSize(700,700); backPanel.setBackground(Color.PINK); backPanel.setOpaque(true); leftPanel(); backPanel.add(leftPanel); backPanel.setOpaque(true);

rightPanel(); backPanel.add(rightPanel); backPanel.setOpaque(true); return backPanel; } private JPanel leftPanel(){ layout1 = new GridLayout(); leftPanel = new JPanel(); leftPanel.setLayout(layout); leftPanel.setSize(300,400); leftPanel.setLocation(50,50); leftPanel.setBackground(Color.GRAY); leftPanel.setVisible(true); letter = new JLabel(new ImageIcon("C:\\Users\\kristel\\angie\\gawa kina ikay\\letters\\18.gif")); letter.setSize(10,10); letter.setBounds(50, 150, 175, 100); letter.setVisible(true); leftPanel.add(letter); letter2 = new JLabel(new ImageIcon("C:\\Users\\kristel\\angie\\gawa kina ikay\\letters\\9.gif")); letter2.setSize(10,10); letter2.setBounds(125, 50, 75, 75); letter2.setVisible(true); leftPanel.add(letter2); letter3 = new JLabel(new ImageIcon("C:\\Users\\kristel\\angie\\gawa kina ikay\\letters\\14.gif")); letter3.setSize(10,10); letter3.setBounds(150, 200, 150, 75); letter3.setVisible(true); leftPanel.add(letter3); letter4 = new JLabel(new ImageIcon("C:\\Users\\kristel\\angie\\gawa kina ikay\\letters\\1.gif")); letter4.setSize(10,10); letter4.setBounds(25, 50, 75, 50); letter4.setVisible(true); leftPanel.add(letter4);

letter5 = new JLabel(new ImageIcon("C:\\Users\\kristel\\angie\\gawa kina ikay\\letters\\7.gif")); letter5.setSize(10,10); letter5.setBounds(75, 250, 200, 200); letter5.setVisible(true); leftPanel.add(letter5); letter6 = new JLabel(new ImageIcon("C:\\Users\\kristel\\angie\\gawa kina ikay\\letters\\4.gif")); letter6.setSize(10,10); letter6.setBounds(200, 125, 100, 50); letter6.setVisible(true); leftPanel.add(letter6); letter7 = new JLabel(new ImageIcon("C:\\Users\\kristel\\angie\\gawa kina ikay\\letters\\16.gif")); letter7.setSize(10,10); letter7.setBounds(50, 250, 75, 50); letter7.setVisible(true); leftPanel.add(letter7); return leftPanel; } public void paintComponent(Graphics g) { super.paintComponent(g); g.setColor(Color.GREEN); g.fillRect(x,y,30,30); } private JPanel rightPanel(){ layout = new FlowLayout(); rightPanel = new JPanel(); rightPanel.setLayout(layout); rightPanel.setSize(150,200); rightPanel.setLocation(400,50); rightPanel.setBackground(Color.WHITE); rightPanel.setVisible(true); score = new JLabel ("Score: "); score.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); score.setBounds(100, 100, 50, 50); rightPanel.add(score); wordFound = new JLabel ("Word Found: ");

wordFound.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); wordFound.setBounds(200, 200, 50, 50); rightPanel.add(wordFound); tf1 = new JTextField (10); tf1.setFont( new Font( "Rockwell", Font.PLAIN, 16) ); rightPanel.add(tf1); ok = new JButton ("OK"); score.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); rightPanel.add(ok); clear = new JButton ("CLEAR"); score.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); rightPanel.add(clear); return rightPanel; } public void actionPerformed(ActionEvent e) { if (x < 0) { velX = 0; x = 0; } if (x > 550) { velX = 0; x = 530; } if (y < 0) { velY = 0; y = 0; } if (y > 330) { velY = 0; y = 330; } x = x + velX; y = y + velY; repaint(); } public void keyPressed(KeyEvent e) { int c = e.getKeyCode();

if (c == { velX velY } if (c == { velX velY } if (c == { velX velY

KeyEvent.VK_LEFT) = -1; = 0; KeyEvent.VK_UP) = 0; = -1; KeyEvent.VK_RIGHT) = 1; = 0;

} if (c == KeyEvent.VK_DOWN) { velX = 0; velY = 1; } } public void keyTyped(KeyEvent e){} public void keyReleased(KeyEvent e) { } private JMenuBar createMenuBar(){ menuBar = new JMenuBar(); file = new JMenu("File"); file.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); menuBar.add(file); newgame= new JMenuItem("NewGame"); newgame.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); file.add(newgame); instruction = new JMenu("Instructions"); instruction.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); menuBar.add(instruction); instruct= new JMenuItem("Mechanics"); instruct.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); instruction.add(instruct); instruct.addActionListener(new ActionListener(){ public void actionPerformed (ActionEvent event){

JOptionPane.showMessageDialog(null," The User must move the ball \n using the arrows keys to find the letters","Mechanics", JOptionPane.INFORMATION_MESSAGE); } }); about= new JMenu("About"); about.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); menuBar.add(about); exit = new JMenu("Exit"); exit.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); menuBar.add(exit); quit = new JMenuItem("Quit"); quit.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); exit.add(quit); author= new JMenuItem("Creator"); author.setFont( new Font( "Rockwell", Font.PLAIN, 16 ) ); about.add(author); author.addActionListener(new ActionListener(){ public void actionPerformed (ActionEvent event){ JOptionPane.showMessageDialog(null,"Final examination in subject Object-Oriented Programming(OOP) Done by\n Ms.Angeline T. Zacarias", "Creator",JOptionPane.INFORMATION_MESSAGE); } }); quit.addActionListener(new ActionListener(){ public void actionPerformed (ActionEvent event){ int option = JOptionPane.showConfirmDialog(null, "Are you sure you want to exit?", "Exit Game" ,JOptionPane.YES_NO_OPTION); if(option == JOptionPane.YES_OPTION) System.exit(0); } }); return menuBar; } public static void main(String[] args) { TextTwist2 t = new TextTwist2(); JFrame jf = new JFrame(); jf.setContentPane(t.createContentPane()); jf.setJMenuBar(t.createMenuBar()); jf.setTitle("TEXT WITH A TWIST"); jf.setSize(600,600);

jf.setVisible(true); jf.setResizable(false); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jf.add(t); } }

You might also like