[Java] Snake - Geschwindigkeitseinstellung

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Targa, 16. Februar 2009 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 16. Februar 2009
    Zuletzt von einem Moderator bearbeitet: 14. April 2017
    Snake - Geschwindigkeitseinstellung

    Moin,

    Snake ansich funktioniert schon prima aber die Einstellung für die Geschwindigkeit will nicht so

    Klasse Oberflaeche:

    PHP:


    package wurmspiel
    ;

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


    public class 
    Oberflaeche  extends  JFrame
    {
        
        private static final 
    long serialVersionUID  0xf8be7c93953488efL ;
        private 
    Steuerung dieSteuerung ;
        private 
    JPanel dasSpielFeld ;
        private 
    Graphics g ;
        private 
    JButton btnStart ;
        private 
    Menu speed ;
        private 
    JLabel meldung ;
        private 
    JPanel pSued ;
        private 
    MenuBar hauptMenue ;
        private 
    Menu menue1 ;
        public static 
    double Takt ;

        public 
    Oberflaeche ( Steuerung st )
        {
            
    dasSpielFeld  = new  JPanel ();
            
    btnStart  = new  JButton ( "Start" );
            
    meldung  = new  JLabel ();
            
    pSued  = new  JPanel ();
            
    hauptMenue  = new  MenuBar ();
            
    menue1  = new  Menu ( "Datei" );
            
    speed  = new  Menu ( "Geschwindigkeit" );
            
            
    addWindowListener (new  WindowAdapter () {

                public 
    void windowClosing ( WindowEvent e )
                {
                    
    System .exit( 0 );
                }

            }
    );
            
    dieSteuerung  st ;
            
    speed . add ( "Level 1" );
            
    speed . addSeparator ();
            
    speed . add ( "Level 2" );
            
    speed . addSeparator ();
            
    speed . add ( "Level 3" );
            
    speed . addSeparator ();
            
    speed . add ( "Level 4" );
            
    menue1 . add ( "Start" );
            
    menue1 . addSeparator ();
            
    menue1 . add ( "Beenden" );
            
    hauptMenue . add ( menue1 );
            
    hauptMenue . add ( speed );
            
    setMenuBar ( hauptMenue );
            
            
    menue1 . addActionListener (new  ActionListener () {

                public 
    void actionPerformed ( ActionEvent evt )
                {
                    if(
    evt . getSource () instanceof  MenuItem )
                    {
                        
    String menuAdd  evt . getActionCommand ();
                        if(
    menuAdd  ==  "Beenden" )
                            
    System .exit( 0 );
                        if(
    menuAdd  ==  "Start" )
                            
    start ();
                    }
                }

            }
        );

            
            
    speed . addActionListener (new  ActionListener ()
            {
                public 
    void actionPerformed ( ActionEvent evt )
                {
                    if(
    evt . getSource () instanceof  MenuItem )
                    {
                        
    String menuAdd  =   evt . getActionCommand ();
                        if(
    menuAdd  ==  "Level 1" )
                            
    Takt  0.5D ;
                        if(
    menuAdd  ==  "Level 2" )
                            
    Takt  0.4D ;
                        if(
    menuAdd  ==  "Level 3" )
                            
    Takt  0.3D ;
                        if(
    menuAdd  ==  "Level 4" )
                            
    Takt  0.2D ;
                        
                    }
                    
                }
            }
    );
            
           

            
            
    pSued . setLayout (new  FlowLayout ( 0 ));
            
    btnStart . addKeyListener (new  KeyAdapter () {

                public 
    void keyPressed ( KeyEvent ev )
                {
                    
    mausKlick ( ev );
                }

            }
    );
            
    btnStart . addMouseListener (new  MouseAdapter () {

                public 
    void mouseClicked ( MouseEvent ev )
                {
                    if(
    ev . getSource () ==  btnStart )
                        
    start ();
                    
                }

            }
    );
            
    pSued . add ( btnStart );
            
    meldung . setText ( " Viel Glück!" );
            
    pSued . add ( meldung );
            
    setLayout (new  BorderLayout ());
            
    add ( pSued "Last" );
            
    dasSpielFeld . setBackground ( Color . green );
            
    add ( dasSpielFeld "Center" );
        }

        public 
    void mausKlick ( KeyEvent ev )
        {
            
    dieSteuerung . verarbeiteTastenDruck ( ev );
        }

        public 
    void start ()
        {
            
    dieSteuerung . initialisiereSpiel ();
        }

        public 
    void setzeMeldung ( String pMeldung )
        {
            
    meldung . setText ( pMeldung );
        }

        public 
    void initialisiereOberflaeche ()
        {
            
    dasSpielFeld . getGraphics ();
            
    dasSpielFeld . repaint ();
            
    aktualisiereOberflaeche ();
        }

        public 
    void aktualisiereOberflaeche ()
        {
            
    dieSteuerung . zeichneFutterUndWurm ( g );
            
    g . drawLine ( 0 0 0 278 );
            
    g . drawLine ( 0 0 276 0 );
            
    g . drawLine ( 0 280 280 280 );
            
    g . drawLine ( 279 0 279 279 );
        }

        public static 
    double getTakt ()
        {
            return 
    Takt ;
        }

    }


    Klasse Uhr:

    PHP:



    package wurmspiel
    ;



    public class 
    Uhr
        
    implements  Runnable
    {
        
             private 
    Thread th ;
             private 
    double aTakt ;
             private 
    Steuerung dieSteuerung ;
             public 
    Oberflaeche dieOberflaeche ;

        public 
    Uhr ( Steuerung s )
        {

            
            
    aTakt  Oberflaeche . getTakt ();
            
    dieSteuerung  s ;
            
    dieSteuerung . setMeineUhr ( this );
        }

        public 
    void starte ()
        {
            if(
    th  ==  null )
            {
                
    th  = new  Thread ( this );
                
    th . start ();
            }
        }

        public 
    void stoppe ()
        {
            
    th  null ;
        }

        public 
    void run ()
        {
            for(
    Thread me  Thread . currentThread ();  me  ==  th ;)
                try
                {
                    
    Thread . sleep (( long )( aTakt  500D ));
                    
    dieSteuerung . verarbeiteUhrTick ();
                }
                catch(
    Exception exception ) { }

        }

       
    }




    Problem ist nun, dass wenn ich es starte und auf start klicke man von Anfang an verloren hat.

    Ich bin nicht so der Pro in Java deswegen redet Deutsch und nicht javaisch

    Gerne auch ICQ Support

    Rest der Klassen etc.
     
  2. 17. Februar 2009
    AW: Snake - Geschwindigkeitseinstellung

    Wie bekomme ich denn das Wurmspiel zum laufen?
    Würde mir es gerne mal anschauen um die bei der Fehlersuche zu helfen
     
  3. 17. Februar 2009
    AW: Snake - Geschwindigkeitseinstellung

    Eclipse JDK herunterladen und Installieren. Oder halt irgendein anderer Java-Compiler!
     
  4. 17. Februar 2009
    AW: Snake - Geschwindigkeitseinstellung

    aber wenn er nichtmal das hinkriegt, wird er auch nicht helfen können.

    Ps: habs ihm gemacht
     
  5. 17. Februar 2009
    Zuletzt von einem Moderator bearbeitet: 14. April 2017
    AW: Snake - Geschwindigkeitseinstellung

    Großes Danke an mogstabrezn

    Hier zum Spielen: https://www.xup.in/dl,79939456/Snake.jar/
     
  6. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.