import javax.swing.*; import java.awt.event.*; import java.awt.*; public class M2ng extends JApplet implements ActionListener, MouseListener, ComponentListener{ Staadion staadion=new Staadion(); Meeskond m1=new Meeskond("Viljandi", this); Meeskond m2=new Meeskond("Tartu", this); Pall p=new Pall(200, 100, this); JButton nuppLiigu=new JButton("Liiguta"); JButton nuppLiiguPidevalt=new JButton("Liigu"); JButton nuppPaigutus=new JButton("Paiguta"); Timer taimer=new Timer(500, this); Jalgpallur valitudPallur=null; JCheckBox m1cb=new JCheckBox("Arvuti"); JCheckBox m2cb=new JCheckBox("Arvuti"); public static final long serialVersionUID=1; public M2ng(){ m1.koostaMeeskond(); m2.koostaMeeskond(); staadion.paneKoduMeeskond(m1); staadion.paneV66rasMeeskond(m2); staadion.panePall(p); staadion.addMouseListener(this); addComponentListener(this); m2.muudaV2rv(java.awt.Color.RED); add(staadion); JPanel alapaneel=new JPanel(new GridLayout(1, 2)); alapaneel.add(m1cb); alapaneel.add(nuppLiigu); alapaneel.add(nuppLiiguPidevalt); alapaneel.add(nuppPaigutus); alapaneel.add(m2cb); add(alapaneel, BorderLayout.SOUTH); nuppLiigu.addActionListener(this); nuppLiiguPidevalt.addActionListener(this); nuppPaigutus.addActionListener(this); m1cb.addActionListener(this); m2cb.addActionListener(this); //p.uusKiirus(2, 1.5); //pikslit kaadri kohta } public Staadion kysiStaadion(){ return staadion; } public Pall kysiPall(){ return p; } public void actionPerformed(ActionEvent e){ if(e.getSource()==nuppLiigu || e.getSource()==taimer){ p.liigu(); //Mõelge välja koodilõik, mille abil meeskondade //liikumise järjekord kaadris on juhuslik. if(Math.random()<0.5){ m1.liigu(); m2.liigu(); } else { m2.liigu(); m1.liigu(); } } if(e.getSource()==nuppPaigutus){ algseis(); } if(e.getSource()==nuppLiiguPidevalt){ if(taimer.isRunning()){ taimer.stop(); nuppLiiguPidevalt.setText("Liigu"); } else { taimer.start(); nuppLiiguPidevalt.setText("Paus"); } } if(e.getSource()==m1cb){ m1.muudaAutomaatneArvutus(m1cb.isSelected()); } if(e.getSource()==m2cb){ m2.muudaAutomaatneArvutus(m2cb.isSelected()); } staadion.repaint(); } public void algseis(){ m1.paigutaMeeskond(); m2.paigutaMeeskond(); p.paiguta(kysiStaadion().getWidth()/2, kysiStaadion().getHeight()/2); } public void mousePressed(MouseEvent e){ Jalgpallur tabatud=m1.leiaPallurKohal(e.getX(), e.getY()); if(tabatud==null){ tabatud=m2.leiaPallurKohal(e.getX(), e.getY()); } if(valitudPallur==null && tabatud!=null){ valitudPallur=tabatud; valitudPallur.muudaM2rkimine(true); } else if(valitudPallur!=null && tabatud==null) { valitudPallur.arvutaLiikumine(e.getX(), e.getY()); valitudPallur.muudaM2rkimine(false); valitudPallur=null; } } public void mouseReleased(MouseEvent e){} public void mouseClicked(MouseEvent e){} public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} public void componentHidden(ComponentEvent e){} public void componentShown(ComponentEvent e){} public void componentMoved(ComponentEvent e){} public void componentResized(ComponentEvent e){ algseis(); } public static void main(String[] arg){ JFrame f=new JFrame("Mäng 1"); f.getContentPane().add(new M2ng()); f.setSize(400, 300); f.setVisible(true); } }