public void jugar(JFrame frame, EstadoVictoria escucharVictoria){
        Point limitePueblo;
        
        //cambio dificultad
        
        System.out.println("dif min is " + this.defenseDiffMin + " and dif max is " + this.defenseDiffMax);
        System.out.println("Gold min is " + this.goldMin + " and gold max is " + this.goldMax);
        
        //aumento Dificultad de defensas y oro dado 
        int goldIncreasePercentage = rand.nextInt(goldMax - goldMin) + goldMin;
        defenseIncreasePercentage = rand. nextInt(defenseDiffMax - defenseDiffMin) + defenseDiffMin;
        
        victoriaOro = baseOro + (baseOro * (goldIncreasePercentage / 100));
        this.oro = victoriaOro;
        
        System.out.println("Cantidad de oro en victoria es: " + victoriaOro);
        System.out.println("Aumento de dificultad " + defenseIncreasePercentage + "%");
        
        //<<<<
          
        this.llenarMatrizVacio();
        
        //genera el pueblo de forma aleatoria y retorna el limite de ella
        Point[] puntosImportante = Pueblo.generarPueblo(this.nivel, this.matriz, 
                this.refContenedor, this.edificios, defenseIncreasePercentage, this.ejercito);
        
        limitePueblo = puntosImportante[0];
        this.puntoCasa = puntosImportante[1];
        
        this.SoldadosTerrestres(limitePueblo);

        for(int i = 0; i< ejercito.size(); i++)
           ejercito.get(i).start(); //inicia el hilo de cada unidad
        for(int i = 0; i< edificios.size(); i++){
           edificios.get(i).pegarEnPanel();
           edificios.get(i).start(); //inicia el hilo de cada unidad
        }
       
        escucharVictoria.revisarVictoria(frame);
    }