import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class trips extends Applet implements MouseListener { int x=-1; int y=-1; static int[][] ruudud=new int[3][3]; //Et kas on seal ruudus miskit voi mitte ja mis seal on boolean mis=false; boolean gameover=false; //Joonistamine--- public void paint(Graphics g) { addMouseListener(this); int mitut2is=0;//peab olema siin, et 2ra ei paisuks; //Gridi joonistamine--- g.setColor(Color.black); g.drawLine(0, 100, 300, 100); g.drawLine(0, 200, 300, 200); g.drawLine(100, 0, 100, 300); g.drawLine(200, 0, 200, 300); //---Gridi joonistamine if(gameover==true) { //kui m2ng l2bi on, ja hiirega kl6psatakse, tuleb uuesti alustada... for(int i=0;i<=2;i++) for(int j=0;j<=2;j++) ruudud[i][j]=0; gameover=false; x=-1; y=-1; } for(int i=0;i<=2;i++) { //kui mitut2is on 9, siis pole enam miskit k2ia for(int j=0;j<=2;j++) if(ruudud[i][j]!=0) mitut2is++; System.out.println(mitut2is); } if(mitut2is==8) { System.out.println(mitut2is); mitut2is=0; gameover=true; } for(int i=0;i<=2;i++)//ei taha et ringid 2ra kaoksid... for(int j=0;j<=2;j++) if(ruudud[i][j]==1) { g.setColor(Color.red); g.fillOval(((j+1)*100)-60, ((i+1)*100)-60, 20, 20); } else if(ruudud[i][j]==2) { g.setColor(Color.green); g.fillOval(((j+1)*100)-60, ((i+1)*100)-60, 20, 20); } //Ringide joonistamine vastavalt klikile--- if(x>=0 && x<100 && y>=0 && y<100 && ruudud[0][0]==0) { if(mis==true) { ruudud[0][0]=1; g.setColor(Color.red); mis=false; } else { ruudud[0][0]=2; g.setColor(Color.green); mis=true; } g.fillOval(40, 40, 20, 20); } if(x>=100 && x<200 && y>=0 && y<100 && ruudud[0][1]==0) { if(mis==true) { ruudud[0][1]=1; g.setColor(Color.red); mis=false; } else { ruudud[0][1]=2; g.setColor(Color.green); mis=true; } g.fillOval(140, 40, 20, 20); } if(x>=200 && x<300 && y>=0 && y<100 && ruudud[0][2]==0) { if(mis==true) { ruudud[0][2]=1; g.setColor(Color.red); mis=false; } else { ruudud[0][2]=2; g.setColor(Color.green); mis=true; } g.fillOval(240, 40, 20, 20); } if(x>=0 && x<100 && y>=100 && y<200 && ruudud[1][0]==0) { if(mis==true) { ruudud[1][0]=1; g.setColor(Color.red); mis=false; } else { ruudud[1][0]=2; g.setColor(Color.green); mis=true; } g.fillOval(40, 140, 20, 20); } if(x>=100 && x<200 && y>=100 && y<200 && ruudud[1][1]==0) { if(mis==true) { ruudud[1][1]=1; g.setColor(Color.red); mis=false; } else { ruudud[1][1]=2; g.setColor(Color.green); mis=true; } g.fillOval(140, 140, 20, 20); } if(x>=200 && x<300 && y>=100 && y<200 && ruudud[1][2]==0) { if(mis==true) { ruudud[1][2]=1; g.setColor(Color.red); mis=false; } else { ruudud[1][2]=2; g.setColor(Color.green); mis=true; } g.fillOval(240, 140, 20, 20); } if(x>=0 && x<100 && y>=200 && y<300 && ruudud[2][0]==0) { if(mis==true) { ruudud[2][0]=1; g.setColor(Color.red); mis=false; } else { ruudud[2][0]=2; g.setColor(Color.green); mis=true; } g.fillOval(40, 240, 20, 20); } if(x>=100 && x<200 && y>=200 && y<300 && ruudud[2][1]==0) { if(mis==true) { ruudud[2][1]=1; g.setColor(Color.red); mis=false; } else { ruudud[2][1]=2; g.setColor(Color.green); mis=true; } g.fillOval(140, 240, 20, 20); } if(x>=200 && x<300 && y>=200 && y<300 && ruudud[2][2]==0) { if(mis==true) { ruudud[2][2]=1; g.setColor(Color.red); mis=false; } else { ruudud[2][2]=2; g.setColor(Color.green); mis=true; } g.fillOval(240, 240, 20, 20); } //---Ringide joonistamine vastavalt klikile //miskit paremat ei tule p2he, seega if-dega see asi tuleb hetkel //orisontaalne punane if(ruudud[0][0]==1&&ruudud[0][1]==1&&ruudud[0][2]==1) { g.setColor(Color.blue); g.drawLine(0, 50, 300, 50); gameover=true; } if(ruudud[1][0]==1&&ruudud[1][1]==1&&ruudud[1][2]==1) { g.setColor(Color.blue); g.drawLine(0, 150, 300, 150); gameover=true; } if(ruudud[2][0]==1&&ruudud[2][1]==1&&ruudud[2][2]==1) { g.setColor(Color.blue); g.drawLine(0, 250, 300, 250); gameover=true; } //vertikaalne punane if(ruudud[0][0]==1&&ruudud[1][0]==1&&ruudud[2][0]==1) { g.setColor(Color.blue); g.drawLine(50, 0, 50, 300); gameover=true; } if(ruudud[0][1]==1&&ruudud[1][1]==1&&ruudud[2][1]==1) { g.setColor(Color.blue); g.drawLine(150, 0, 150, 300); gameover=true; } if(ruudud[0][2]==1&&ruudud[1][2]==1&&ruudud[2][2]==1) { g.setColor(Color.blue); g.drawLine(250, 0, 250, 0); gameover=true; } //diagonaalne punane if(ruudud[0][0]==1&&ruudud[1][1]==1&&ruudud[2][2]==1) { g.setColor(Color.blue); g.drawLine(1, 1, 300, 300); gameover=true; } if(ruudud[0][2]==1&&ruudud[1][1]==1&&ruudud[2][0]==1) { g.setColor(Color.blue); g.drawLine(0, 300, 300, 0); gameover=true; } //orisontaalne roheline if(ruudud[0][0]==2&&ruudud[0][1]==2&&ruudud[0][2]==2) { g.setColor(Color.blue); g.drawLine(0, 50, 300, 50); gameover=true; } if(ruudud[1][0]==2&&ruudud[1][1]==2&&ruudud[1][2]==2) { g.setColor(Color.blue); g.drawLine(0, 150, 300, 150); gameover=true; } if(ruudud[2][0]==2&&ruudud[2][1]==2&&ruudud[2][2]==2) { g.setColor(Color.blue); g.drawLine(0, 250, 300, 250); gameover=true; } //vertikaalne roheline if(ruudud[0][0]==2&&ruudud[1][0]==2&&ruudud[2][0]==2) { g.setColor(Color.blue); g.drawLine(50, 0, 50, 300); gameover=true; } if(ruudud[0][1]==2&&ruudud[1][1]==2&&ruudud[2][1]==2) { g.setColor(Color.blue); g.drawLine(150, 0, 150, 300); gameover=true; } if(ruudud[0][2]==2&&ruudud[1][2]==2&&ruudud[2][2]==2) { g.setColor(Color.blue); g.drawLine(250, 0, 250, 0); gameover=true; } //diagonaalne roheline if(ruudud[0][0]==2&&ruudud[1][1]==2&&ruudud[2][2]==2) { g.setColor(Color.blue); g.drawLine(1, 1, 300, 300); gameover=true; } if(ruudud[0][2]==2&&ruudud[1][1]==2&&ruudud[2][0]==2) { g.setColor(Color.blue); g.drawLine(0, 300, 300, 0); gameover=true; } } //---Joonistamine //Hiire värk--- public void mousePressed(MouseEvent e) { x=e.getX(); y=e.getY(); repaint(); } public void mouseReleased(MouseEvent e){} public void mouseClicked(MouseEvent e){} public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} //---Hiire v2rk public static void main(String argumendid[]) { for(int i=0;i<=2;i++) for(int j=0;j<=2;j++) ruudud[i][j]=0; Frame f=new Frame("trips-traps-trull"); f.setSize(310, 325); f.add(new trips()); f.setVisible(true); } }