import java.awt.*; import java.awt.event.*; import java.applet.*; public class Haupt extends Applet implements ActionListener { Wuerfelallgemein WMiddle,WMiddleW; Wuerfelallgemein WLeft,WLeftW; Wuerfelallgemein WUp,WUpW; Wuerfelallgemein WDown,WDownW; Wuerfelallgemein WRight,WRightW; Wuerfelallgemein WBack,WBackW; int winner[] ={0,0,0,0,0,0},sieg=0; Panel eingabePN = new Panel(); Panel eingabePW = new Panel(); Panel eingabePE = new Panel(); Panel eingabePS = new Panel(); Label Schwierigkeitsgrad = new Label("Schwierigkeitsgrad"); Button easy = new Button("easy"); Button normal = new Button("normal"); Button difficult = new Button("difficult"); Label ScheibeDrehen = new Label("Scheibe drehen"); Label ScheibeVorne = new Label("Vorne"); Label ScheibeMitte = new Label("Mitte"); Label ScheibeHinten = new Label("Hinten"); Button VorneUhr = new Button("<-|"); Button MitteUhr = new Button("<-|"); Button HintenUhr = new Button("<-|"); Button VorneNUhr = new Button("|->"); Button MitteNUhr = new Button("|->"); Button HintenNUhr = new Button("|->"); Label Horizontal = new Label("Horizontal"); Button ObenH = new Button("->"); Button MitteH = new Button("->"); Button UntenH = new Button("->"); Button ObenHL = new Button("<-"); Button MitteHL = new Button("<-"); Button UntenHL = new Button("<-"); Label Vertikal = new Label("Vertikal"); Button LinksV = new Button("^"); Button MitteV = new Button("^"); Button RechtsV = new Button("^"); Button LinksVR = new Button("`´"); Button MitteVR = new Button("`´"); Button RechtsVR= new Button("`´"); Canvas malFlaeche = new Canvas(); /**Errichten eines Frames von der Größe 800*600 */ public static void main(String[] args){ Frame frame = new Frame(); Applet a = new Haupt(); frame.setTitle("Wuerfel"); frame.add(a, "Center"); a.init(); frame.setSize(800,600); frame.show(); frame.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){System.exit(0);} } ); } private GridBagConstraints makegbc( int x, int y, int width, int height) { GridBagConstraints gbc = new GridBagConstraints(); gbc.gridx = x; gbc.gridy = y; gbc.gridwidth = width; gbc.gridheight = height; gbc.insets = new Insets(1, 1, 1, 1); return gbc; } public void init() { addComponentListener(new ComponentRepaintAdapter()); this.setFont(new Font("Serif", Font.PLAIN, 14)); setLayout(null); setBackground(Color.black); setForeground(Color.white); malFlaeche.setBounds(1,10,600,480); add(malFlaeche); Schwierigkeitsgrad.setBounds(640,10,150,30); add(Schwierigkeitsgrad); easy.setBounds(600,50,50,30); add(easy); normal.setBounds(660,50,50,30); add(normal); difficult.setBounds(720,50,50,30); add(difficult); // Horizontal.setBounds(620,150,50,30); // add(Horizontal); ObenH.setBounds(680,190,50,30); add(ObenH); ObenHL.setBounds(620,190,50,30); add(ObenHL); MitteH.setBounds(680,230,50,30); add(MitteH); MitteHL.setBounds(620,230,50,30); add(MitteHL); UntenH.setBounds(680,270,50,30); add(UntenH); UntenHL.setBounds(620,270,50,30); add(UntenHL); ScheibeDrehen.setBounds(620,370,100,30); add(ScheibeDrehen); VorneUhr.setBounds(620,420,30,30); add(VorneUhr); ScheibeVorne.setBounds(660,420,50,30); add(ScheibeVorne); VorneNUhr.setBounds(720,420,30,30); add(VorneNUhr); MitteUhr.setBounds(620,460,30,30); add(MitteUhr); ScheibeMitte.setBounds(660,460,50,30); add(ScheibeMitte); MitteNUhr.setBounds(720,460,30,30); add(MitteNUhr); HintenUhr.setBounds(620,500,30,30); add(HintenUhr); ScheibeHinten.setBounds(660,500,50,30); add(ScheibeHinten); HintenNUhr.setBounds(720,500,30,30); add(HintenNUhr); // Vertikal.setBounds(70,500,50,30); // add(Vertikal); LinksV.setBounds(150,500,40,30); add(LinksV); LinksVR.setBounds(150,540,40,30); add(LinksVR); MitteV.setBounds(200,500,40,30); add(MitteV); MitteVR.setBounds(200,540,40,30); add(MitteVR); RechtsV.setBounds(250,500,40,30); add(RechtsV); RechtsVR.setBounds(250,540,40,30); add(RechtsVR); /* setLayout(new BorderLayout(,)); add("North", eingabePN); add("West", eingabePW); add("East", eingabePE); add("South", eingabePS); add("Center", malFlaeche); setBackground(Color.black); setForeground(Color.white); eingabePW.setLayout(new GridLayout(4, 1)); eingabePW.add(ScheibeDrehen); eingabePW.add(Vorne); eingabePW.add(Mitte); eingabePW.add(Hinten); eingabePN.add(Schwierigkeitsgrad); eingabePN.add(easy); eingabePN.add(normal); eingabePN.add(difficult); eingabePE.setLayout(new GridLayout(5, 1)); eingabePE.add(Horizontal); eingabePE.add(ObenH); eingabePE.add(MitteH); eingabePE.add(UntenH); eingabePS.add(Vertikal); eingabePS.add(LinksV); eingabePS.add(MitteV); eingabePS.add(RechtsV); */ easy.addActionListener(this); normal.addActionListener(this); difficult.addActionListener(this); ObenH.addActionListener(this); MitteH.addActionListener(this); UntenH.addActionListener(this); ObenHL.addActionListener(this); MitteHL.addActionListener(this); UntenHL.addActionListener(this); VorneUhr.addActionListener(this); MitteUhr.addActionListener(this); HintenUhr.addActionListener(this); VorneNUhr.addActionListener(this); MitteNUhr.addActionListener(this); HintenNUhr.addActionListener(this); LinksV.addActionListener(this); MitteV.addActionListener(this); RechtsV.addActionListener(this); LinksVR.addActionListener(this); MitteVR.addActionListener(this); RechtsVR.addActionListener(this); WMiddleW= WMiddle = new Wuerfelallgemein(1,1,1, 1,1,1, 1,1,1); WLeftW = WLeft = new Wuerfelallgemein(2,2,2, 2,2,2, 2,2,2); WUpW = WUp = new Wuerfelallgemein(3,3,3, 3,3,3, 3,3,3); WDownW = WDown = new Wuerfelallgemein(4,4,4, 4,4,4, 4,4,4); WRightW = WRight = new Wuerfelallgemein(5,5,5, 5,5,5, 5,5,5); WBackW = WBack = new Wuerfelallgemein(6,6,6, 6,6,6, 6,6,6); }//init public void paint(Graphics g){ Font font; String[] arfonts = {"up","left","front","right","back","down","W-I-N-N-E-R"}; g=malFlaeche.getGraphics(); setBackground(Color.black); setForeground(Color.black); /*für Schrift auf weiss gesetzt gewesen*/ g.fillRect(0, 0, malFlaeche.getSize().width, malFlaeche.getSize().height); WuerfelTools.zeichnen(g, WUp,160,20); WuerfelTools.zeichnen(g, WLeft,10,170); WuerfelTools.zeichnen(g, WMiddle,160,170); WuerfelTools.zeichnen(g, WRight,310,170); WuerfelTools.zeichnen(g, WBack,460,170); WuerfelTools.zeichnen(g, WDown,160,320); /*Würfelabschnitte beschriften*/ font = new Font(arfonts[0],Font.PLAIN,12); g.setFont(font); g.drawString(arfonts[0],210,10); for (int i=1; i