/*
   * Actualiza los records actuales cuando termina la jugada
   */
  public void actualizaRecord() {
    int temp = 0;

    if (record > Integer.parseInt(rec1)) {
      recNom1 = JOptionPane.showInputDialog(null, "Nombre", JOptionPane.QUESTION_MESSAGE);
      rec1 = Integer.toString(record);

    } else if (record > Integer.parseInt(rec2)) {
      recNom2 = JOptionPane.showInputDialog(null, "Nombre", JOptionPane.QUESTION_MESSAGE);
      rec2 = Integer.toString(record);
    } else if (record > Integer.parseInt(rec3)) {
      recNom3 = JOptionPane.showInputDialog(null, "Nombre", JOptionPane.QUESTION_MESSAGE);
      rec3 = Integer.toString(record);
    }
  }
    /**
     * Act - do whatever the GameLogicVracht wants to do. This method is called whenever
     * the 'Act' or 'Run' button gets pressed in the environment.
     */
    public void act() 
    {
        float dt = 1.0f / 60.0f;
                     
        //Deze code spawnt de containers en checkt of er collision is tussen containers en trucks met bijbehorende kleuren. Zo ja, dan worden er acties uitgevoerd.
        //Gele truck
        for(int i = 0; i < AantalContainersGeel; i++)
        {
            if(EpicVrachtOverslaan.Vector2.Distance(truckGeelPosition, containerGeelPosition.get(i)) <= 50.0)
            {
                //Als de container de vrachtwagen aangeraakt heeft, is er collision. Dan doen we:
                collisiongeel = 1;
            }

            if(collisiongeel == 1)
            {
            //Eerst veranderen we de sprite naar de volle versie.    
            truckGeelAppearance = new EpicVrachtOverslaan.Texture2D("Truck Geel Vol.png");
            //Dan rijdt de truck weg.
            truckGeelPosition = truckGeelPosition.sub(EpicVrachtOverslaan.Vector2.UnitX.mul(dt).mul(300.0f));
            //eventueel kunnen we later nog toevoegen dat de trucks elkaars plaats innemen.
                     
            }
        }
            
            
        //Blauwe truck
        for(int i = 0; i <  AantalContainersBlauw; i++)
        {
            if(EpicVrachtOverslaan.Vector2.Distance(truckBlauwPosition, containerBlauwPosition.get(i)) <= 50.0)
            {
                //Als de container de vrachtwagen aangeraakt heeft, is er collision. Dan doen we:
                collisionblauw = 1;
            }
         
            if(1 == 1)
            {
            //Eerst veranderen we de sprite naar de volle versie.    
            truckBlauwAppearance = new EpicVrachtOverslaan.Texture2D("Truck Blauw Vol.png");
            //Dan rijdt de truck weg.
            truckBlauwPosition = truckBlauwPosition.sub(EpicVrachtOverslaan.Vector2.UnitX.mul(dt).mul(28.0f));
            //eventueel kunnen we later nog toevoegen dat de trucks elkaars plaats innemen.
            }
        }
            
        //Groene truck
        for(int i = 0; i <  AantalContainersGroen; i++)
        {
            if(EpicVrachtOverslaan.Vector2.Distance(truckGroenPosition, containerGroenPosition.get(i)) <= 50.0)
            {
                //Als de container de vrachtwagen aangeraakt heeft, is er collision. Dan doen we:
                collisiongroen = 1;
            }
         
            if(collisiongroen == 1)
            {
            //Eerst veranderen we de sprite naar de volle versie.    
            truckGroenAppearance = new EpicVrachtOverslaan.Texture2D("Truck Groen Vol.png");
            //Dan rijdt de truck weg.            
            truckGeelPosition = truckGeelPosition.sub(EpicVrachtOverslaan.Vector2.UnitX.mul(dt).mul(300.0f));
            //eventueel kunnen we later nog toevoegen dat de trucks elkaars plaats innemen.
            }
        }
        
        
        //Rood
        for(int i = 0; i <  AantalContainersRood; i++)
        {
          
            if(EpicVrachtOverslaan.Vector2.Distance(truckRoodPosition, containerRoodPosition.get(i)) <= 50.0)
            {
            //Als de container de vrachtwagen aangeraakt heeft, is er collision. Dan doen we:

            collisionrood = 1;
            }
         
            if(collisionrood == 1)
            {
            //Eerst veranderen we de sprite naar de volle versie.    
            truckRoodAppearance = new EpicVrachtOverslaan.Texture2D("Truck Rood Vol.png");
            //Dan rijdt de truck weg.
            truckRoodPosition = truckRoodPosition.sub(EpicVrachtOverslaan.Vector2.UnitX.mul(dt).mul(300.0f));   
            }
        }
        
        for(int i = 0; i <  AantalContainersRood; i++)
        {
            if(EpicVrachtOverslaan.Vector2.Distance(grijperPosition, containerRoodPosition.get(i)) <=50.0 && Greenfoot.isKeyDown(" "))
            {
                JOptionPane.showMessageDialog(new JInternalFrame(), "Message content","Message title", JOptionPane.INFORMATION_MESSAGE);  
                
                containerRoodPosition[i];
            }
        }
        
        
        
        
       
        //Met deze code word het bewegen v.d. grijper met de w-a-s-d toetsen geregeld.
        if (Greenfoot.isKeyDown("A"))
          grijperPosition = grijperPosition.sub(EpicVrachtOverslaan.Vector2.UnitX.mul(dt).mul(300.0f));
        if (Greenfoot.isKeyDown("D"))
          grijperPosition = grijperPosition.add(EpicVrachtOverslaan.Vector2.UnitX.mul(dt).mul(300));
        if (Greenfoot.isKeyDown("W"))
          grijperPosition = grijperPosition.sub(EpicVrachtOverslaan.Vector2.UnitY.mul(dt).mul(300.0f));
        if (Greenfoot.isKeyDown("S"))
          grijperPosition = grijperPosition.add(EpicVrachtOverslaan.Vector2.UnitY.mul(dt).mul(300.0f));
        
        
        //Alle code hieronder doet het daadwerkelijke "plaatsen" v.d. objecten onder de door ons hierboven gegeven voorwaarden.
        EpicVrachtOverslaan.DrawingContext drawingContext = EpicVrachtOverslaan.DrawingContext;
        drawingContext.BeginDraw();
        EpicVrachtOverslaan.DrawingContext.Draw(truckGeelAppearance, truckGeelPosition);
        EpicVrachtOverslaan.DrawingContext.Draw(truckRoodAppearance, truckRoodPosition);
        EpicVrachtOverslaan.DrawingContext.Draw(truckGroenAppearance, truckGroenPosition);
        EpicVrachtOverslaan.DrawingContext.Draw(truckBlauwAppearance, truckBlauwPosition);
       
        for(EpicVrachtOverslaan.Vector2 a : containerGeelPosition)
        {
            drawingContext.Draw(containerGeelAppearance, a);
        }
        
        for(EpicVrachtOverslaan.Vector2 a : containerRoodPosition)
        {
            drawingContext.Draw(containerRoodAppearance, a);
        }
        
        for(EpicVrachtOverslaan.Vector2 a : containerGroenPosition)
        {
            drawingContext.Draw(containerGroenAppearance, a);
        }
        
        for(EpicVrachtOverslaan.Vector2 a : containerBlauwPosition)
        {
            drawingContext.Draw(containerBlauwAppearance, a);
        }
              
        EpicVrachtOverslaan.DrawingContext.Draw(grijperAppearance, grijperPosition);
        
        EpicVrachtOverslaan.DrawingContext.Draw(voortgansbalkAppearance, voortangsbalkPosition);
        EpicVrachtOverslaan.DrawingContext.Draw(indicatiebalkAppearance, indicatiebalkPosition);
        
        
        

    }