Trabajo Práctico N°1.

Trabajo Práctico N° 2.

Trabajo Práctico N° 3.

Trabajo Práctico N° 4.

Trabajo Práctico N° 5.

Trabajo Práctico Final.

Trabajo Práctico N°1

Dicho trabajo consistió en crear un circulo cromantico. Este trabajo tuvo como objetivo lograr que gane experiencia en los siguientes temas: Conocer el Entorno de Desarrollo Integrado (IDE) de Processing. Entender el espacio de coordenadas. Primeras aproximaciones a la sintaxis del lenguaje. Instrucciones de dibujo de figuras básicas y sus parámetros. Cómo establecer propiedades de las figuras. Modelado del color en espacios informáticos.

  • Circulo cromático
    void setup(){
                    background(#FFB7F8);
                    size(600,650);
                  }
    
                  void draw(){
                    fill(255,255,255);
                    textSize(26);
                    text("Circulo Cromático",10,30);
                    stroke(255,255,255);
                    strokeWeight(3);
                    fill(255,255,255);
                    ellipse(300,350,90,90);
    
                    //ColoresTerciarios
                    //naranja
                    fill(255,127,0);
                    ellipse(50,375,75,75);
                    //verde
                    fill(127,255,0);
                    ellipse(150,150,75,75);
                    //verdeazulado
                    fill(0,255,127);
                    ellipse(435,150,75,75);
                    //azul
                    fill(0,127,225);
                    ellipse(550,375,75,75);
                    //violeta
                    fill(127,0,255);
                    ellipse(435,575,75,75);
                    //violetaRojizo
                    fill(255,0,127);
                    ellipse(150,575,75,75);
    
                    //TrianguloCMY
                    noFill();
                    triangle(300,600,50,250,550,250);
                    //Magenta
                    fill(255,0,255);
                    ellipse(300,600,75,75);
                    //Cian
                    fill(0,255,255);
                    ellipse(550,250,75,75);
                    //Amarillo
                    fill(255,255,0);
                    ellipse(50,250,75,75);
    
                    //TrianguloRGB
                    noFill();
                    triangle(300,100,50,500,550,500);
                    //Green
                    fill(0,255,0);
                    ellipse(300,100,85,85);
                    //Red
                    fill(255,0,0);
                    ellipse(50,500,85,85);
                    //Blue
                    fill(0,0,255);
                    ellipse(550,500,85,85);
                  }

Trabajo Practico 2

Dicho trabajo consistió en crear un circulo cromantico. Este trabajo tuvo como objetivo lograr que gane experiencia en los siguientes temas: Conocer el Entorno de Desarrollo Integrado (IDE) de Processing. Entender el espacio de coordenadas. Primeras aproximaciones a la sintaxis del lenguaje. Instrucciones de dibujo de figuras básicas y sus parámetros. Cómo establecer propiedades de las figuras. Modelado del color en espacios informáticos.

  • TP2
    PImage shrek;
    float xShrek = 2000;
    float xShrek2 = -1500;
    
    PImage fiona;
    float xFiona1 = -2800;
    float xFiona2 = 2800;
    
    PImage gato;
    float yGato1 = -3800;
    float yGato2 = 4300;
    
    PImage burro;
    float yBurro1 = 5600;
    float yBurro2 = -5100;
    PImage titulo;
    PImage cielo;
    PImage fondo;
    PImage director;
    PImage musica2;
    PImage todos;
    //velocidades
    float velocidadDer = 6.0;
    float velocidadIzq = -6.0;
    float velocidadCae = 6.0;
    float velocidadSube = -6.0;
    float yTitulo = 500;
    float yFondo = 11800;
    float yFondo2 = 7200;
    float velocidadFondo1 = -6.8;
    float velocidadFondo =-7;
    float yText = 6850;
    float yText2 = 7600;
    float velocidadText = -7;
    PFont fuente1;
    PFont fuente2;
    import processing.sound.*;
    SoundFile file;
    void setup() {
      cielo = loadImage("fondo.png");
      shrek = loadImage("shrek.png");
      fiona= loadImage("fiona.png");
      gato = loadImage("gato.png");
      burro = loadImage("burro.png");
      fondo = loadImage("negro.png");
      director = loadImage("director.png");
      musica2 = loadImage("Musica2.png");
      titulo = loadImage("titulo.png");
      fuente1 = createFont("SHREK___.TTF", 60);
      fuente2 = createFont("Marcellus-Regular.ttf", 30);
      todos = loadImage("todos.png");
      size(1280, 720);
      background(cielo);
      frameRate(19);
      file = new SoundFile(this, "Holding Out For A Hero - Frou Frou Lyrics (mp3cut.net) (1).mp3");
      file.play();
      noCursor();
    }
    
    void draw() {
      background(cielo);
      textSize(60);
      textFont(fuente1);
      fill(#C3F500);
    
      //titulo
      image(titulo, 0, yTitulo);
      yTitulo += velocidadSube;
    
      //nombreShrek
      text("Mike Myers", xShrek, 200);
      xShrek += velocidadIzq;
      image(shrek, xShrek2, 0);
      xShrek2 += velocidadDer;
    
      //nombreFiona
      text("Cameron Diaz", xFiona1, 200);
      xFiona1 += velocidadDer;
      image(fiona, xFiona2, 0);
      xFiona2 += velocidadIzq;
    
      //nombreGato
      text("Antonio Banderas", 500, yGato1);
      yGato1 += velocidadCae;
      image(gato, 0, yGato2);
      yGato2 += velocidadSube;
    
      //nombreBurro
      text("Eddie Murphy", 300, yBurro1);
      yBurro1 += velocidadSube;
      image(burro, 0, yBurro2);
      yBurro2 += velocidadCae;
    
      image(fondo, 0, yFondo);
      yFondo += velocidadSube;
      image(director, 0, yFondo);
      yFondo += velocidadFondo1;
      textFont(fuente2);
      fill(255, 255, 255);
      text("Directed By \n Andrew Adamson \n Kelly Asbury \n Conrad Vernan", 500, yText);
      yText += velocidadText;
      image(musica2, 0, yFondo2);
      yFondo2 += velocidadFondo;
      text("Music by \n Harry Gregson-Williams \n Music Supervisor \n Chris Douridos", 500, yText2);
      yText2 += velocidadText;
    
      image(todos, mouseX, mouseY);
    }

Trabajo Práctico N °3

En este trabajo se propuso crear una aventura gráfica interactiva de temática libre, con la condición que incluya Elementos visuales, Mapas de bits,Tipografía, Pantalla de créditos. Como mínimo debe poseer 10 pantallas, permitiendo finales alternativos y un recorrido en formato de bucle.

  • TP3
    
    int pantalla = 1;
    PImage pantalla1;
    PImage pantalla2;
    PImage pantalla3;
    PImage pantalla4;
    PImage pantalla5;
    PImage pantalla6;
    PImage pantalla7;
    PImage pantalla8;
    PImage pantalla9;
    PImage pantalla10;
    PImage pantalla11;
    PImage pantalla12;
    PImage pantalla13;
    PImage pantalla14;
    PImage pantalla15;
    PImage pantalla16;
    PImage pantalla17;
    PImage pantalla18;
    PImage pantalla19;
    PImage pantalla20;
    PImage pantalla21;
    PImage pantalla22;
    PImage pantalla23;
    PImage pantalla24;
    PImage pantalla25;
    PImage pantalla00;
    PImage boton;
    PImage mouse;
    PFont tipo;
    int p2_posY_inicial;
    int p2_posY;
    
    void setup() {
      fill(0);
      fill(0);
      textSize(20);
      tipo = createFont("Acme-Regular.ttf", 20);
    
      pantalla00 = loadImage("pantalla00.png");
      pantalla1 = loadImage("pantalla1.png");
      pantalla2 = loadImage("pantalla2.png");
      pantalla3 = loadImage("pantalla3.png");
      pantalla4 = loadImage("pantalla4.png");
      pantalla6 = loadImage("pantalla6.png");
      pantalla7 = loadImage("pantalla7.png");
      pantalla8 = loadImage("pantalla8.png");
      pantalla9 = loadImage("pantalla9.png");
      pantalla10 = loadImage("pantalla10.png");
      pantalla11 = loadImage("pantalla11.png");
      pantalla12 = loadImage("pantalla12.png");
      pantalla13 = loadImage("pantalla13.png");
      pantalla14 = loadImage("pantalla14.png");
      pantalla15 = loadImage("pantalla15.png");
      pantalla16 = loadImage("pantalla16.png");
      pantalla17 = loadImage("pantalla17.png");
      pantalla18 = loadImage("pantalla18.png");
      pantalla19 = loadImage("pantalla19.png");
      pantalla20 = loadImage("pantalla20.png");
      pantalla21 = loadImage("pantalla21.png");
      pantalla23 = loadImage("pantalla23.png");
      pantalla24 = loadImage("pantalla24.png");
      pantalla25 = loadImage("pantalla25.png");
    
      pantalla00 = loadImage("pantalla00.png");
      boton = loadImage ("boton.png");
      mouse = loadImage("mouse.png");
      noCursor();
    
      p2_posY_inicial = porcentajeY(610);
      p2_posY = p2_posY_inicial;
    
      size(800, 600);
    }
    
    void draw() {
      background(255);
      textFont(tipo);
    
      if (pantalla == 1) {
        pantalla1();
      } else if (pantalla == 2) {
        pantalla2();
      } else if (pantalla == 3) {
    
        pantalla3();
      } else if (pantalla == 4) {
        pantalla4();
      } else if (pantalla == 5) {
        pantalla5();
      } else if (pantalla == 6) {
        pantalla6();
      } else if (pantalla == 7) {
        pantalla7();
      } else if (pantalla == 8) {
        pantalla8();
      } else if (pantalla == 9) {
        pantalla9();
      } else if (pantalla == 10) {
        pantalla10();
      } else if (pantalla == 11) {
        pantalla11();
      } else if (pantalla == 12) {
        pantalla12();
      } else if (pantalla == 13) {
        pantalla13();
      } else if (pantalla ==14) {
        pantalla14();
      } else if (pantalla ==15) {
        pantalla15();
      } else if (pantalla ==16) {
        pantalla16();
      } else if (pantalla ==17) {
        pantalla17();
      } else if (pantalla ==18) {
        pantalla18();
      } else if (pantalla ==19) {
        pantalla19();
      } else if (pantalla ==20) {
        pantalla20();
      } else if (pantalla ==21) {
        pantalla21();
      } else if (pantalla ==22) {
        pantalla22();
      } else if (pantalla ==23) {
        pantalla23();
      } else if (pantalla ==24) {
        pantalla24();
      } else if (pantalla ==25) {
        pantalla25();
      } else if (pantalla == 00) {
    
        pantalla00();
      }
    
      image(mouse, mouseX, mouseY);
    }
    
    int porcentajeX(int valor) {
      return round(map(valor, 0, 800, 0, width));
    }
    
    int porcentajeY(int valor) {
      return round(map(valor, 0, 600, 0, height));
    }
    
                        
  • MouseClicked
    
      void mouseClicked() {
      if (pantalla == 1) {
        //Botón Jugar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 2;
        }
    
        //Botón Creditos
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 00;
        } else  if (pantalla == 00) {
        }
      } else if (pantalla == 2) {
        //Botón Presentación Continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 3;
        }
      } else if (pantalla == 3) {
        //Botón Si
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 4;
        }
        //Botón No
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 5;
        }
      } else if (pantalla == 4) {
        //Boton Si se vuelven
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 6;
        }
        //Boton No se van
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 5;
        }
      } else if (pantalla == 5) {
        //Botón Creditos
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 00;
        }
      } else if (pantalla == 6) {
        //Botón si subirse al arbol
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 8;
        }
        //Boton No se sube al arbol
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 7;
        }
      } else if (pantalla == 7) {
        //Botón Continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 00;
        }
      } else if (pantalla == 8) {
        //Botón Si van a la casa
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 9;
        }
        //Boton No van a la casa
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 7;
        }
      } else if (pantalla == 9) {
        //Botón si Se quedan
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 10;
        }
        //Boton No se quedan
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 11;
        }
      } else if (pantalla == 10) {
        //Botón si Se van
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 11;
        }
        //Boton No se van
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 12;
        }
      } else if (pantalla == 11) {
        //Botón Continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 00;
        }
      } else if (pantalla == 12) {
        //Botón Si
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 14;
        }
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 13;
        }
      } else if (pantalla == 13) {
        //Botón Continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 00;
        }
      } else if (pantalla == 14) {
        //Botón continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 15;
        }
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 13;
        }
      } else if (pantalla == 15) {
        //Botón si realiza un plan
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 16;
        }
      } else if (pantalla == 16) {
        //Botón Si
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 18;
        }
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 17;
        }
      } else if (pantalla == 17) {
        //Botón Continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 13;
        }
      } else if (pantalla == 18) {
        //Botón continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 20;
        }
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 19;
        }
      } else if (pantalla == 19) {
        //Botón si Se esconden
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 00;
        }
      } else if (pantalla == 20) {
        //Botón continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 21;
        }
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 22;
        }
      } else if (pantalla == 21) {
        //Botón si le roba las botas
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 22;
        }
        //no se las roba
        if (mouseX > porcentajeX(200) && mouseX < porcentajeX(300) && mouseY >  porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 23;
        }
      } else if (pantalla == 22) {
        //Botón si Se van
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 00;
        }
      } else if (pantalla == 23) {
        //Botón continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 24;
        }
      } else if (pantalla == 24) {
        //Botón continuar
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 25;
        }
      } else if (pantalla == 25) {
        //Botón creditos
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          pantalla = 00;
        }
      } else if (pantalla == 00) {
        //Botón Inicio
        if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
          p2_posY = p2_posY_inicial;
          pantalla = 1;
        }
      }
    }
                        
  • Creditos
    void pantalla00() {
      image(pantalla00, 0, 0, width, height);
      fill(0);
      text("Esto fue realizado para Tecno1 \n en la Com. 4 \n Por Jazmin Gonzalez", porcentajeX(200), porcentajeY(p2_posY));
      if (p2_posY > porcentajeY(200)) {
        p2_posY --;
      }
    
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Inicio", porcentajeX(520), porcentajeY(480));
    }
                        
  • Pantalla 1
     void pantalla1 () {
      image(pantalla1, 0, 0, width, height);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Jugar", porcentajeX(520), porcentajeY(480));
      //Botón Creditos
      image(boton, porcentajeX(200), porcentajeY(450));
      text("Creditos", porcentajeX(218), porcentajeY(480));
    }
                        
  • Pantalla 2
    void pantalla2() {
      image(pantalla2, 0, 0, width, height);
      noStroke();
      fill(50, 50, 0, 50);
      rect( porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("Pulgarcito era el hijo más pequeño de una familia muy humilde, \n la cual estaba conformada por 6 hermanos mellizos. \n Lo llamaban así porque cuando nació no era mas grande que el dedo pulgar", porcentajeX(75), porcentajeY(50));
      image(boton, porcentajeX(500), porcentajeY(450));
      fill(0);
      text("Continuar", porcentajeX(510), porcentajeY(480));
    }
                        
  • Pantalla 3
    void pantalla3() {
      image(pantalla3, 0, 0, width, height);
      fill(0);
      image(boton, porcentajeX(500), porcentajeY(450));
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
      text("Si", porcentajeX(520), porcentajeY(480));
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 730, 190);
      fill(255);
      text("Los padres de Pulgarcito ya no tenían dinero, no les alcanzaba para la comida de sus hijos, \n " +
        "debido a esto planean salir de excursión y abandonarlos en el bosque, \n" +
        "  de esta manera no tendrían que ver como sus hijos morían de hambre. \n"+
        " Pulgarcito al escuchar la conversación de sus padres se horroriza.\n"+
        "¿Debería realizar un plan para salvar a sus hermanos y a él?", porcentajeX(75), porcentajeY(50));
      noStroke();
    }
                        
  • Pantalla 4
    
                          void pantalla4() {
        image(pantalla4, 0, 0, width, height);
        fill(0);
        //boton si se van
        image(boton, porcentajeX(500), porcentajeY(450));
        text("Si", porcentajeX(520), porcentajeY(480));
        //boton no se van
        image(boton, porcentajeX(200), porcentajeY(450));
        text("No", porcentajeX(218), porcentajeY(480));
        noStroke();
        fill(50, 50, 0, 50);
        rect(porcentajeX(50), porcentajeY(25), 695, 115);
        fill(255);
        text("Los padres de Pulgarcito ya se han ido, pero sus hermanos aún no saben lo que sucede. \n Pulgarcito había creado el plan de dejar migajas de pan desde su casa hasta el bosque \n" +
          "¿Pulgarcito debería contarle sobre ello a sus hermanos?", porcentajeX(75), porcentajeY(50));
      }
  • Pantalla 5
    void pantalla5() {
      image(pantalla11, 0, 0, width, height);
      //boton credito
      image(boton, porcentajeX(500), porcentajeY(450));
      fill(0);
      text("Continuar", porcentajeX(510), porcentajeY(480));
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("¡Oh no! las migas de pan ya no están. \n" +
        "Pulgarcito y sus hermanos se pierden en el bosque, no logran salvarse. \n" +
        "La próxima será.", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 6
    void pantalla6() {
      image(pantalla6, 0, 0, width, height);
      fill(0);
      //boton si trepa el arbol
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Si", porcentajeX(520), porcentajeY(480));
      //boton no trepa el arbol
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("¡Oh no! las migas de pan ya no están. \n" +
        "¡Mira! Pulgarcito podría subirse al árbol y buscar su casa, pero se ve muy peligroso \n" +
        "¿Debería arriesgarse y trepar el árbol?", porcentajeX(75), porcentajeY(50));
    }
  • Pantalla 7
    void pantalla7() {
      image(pantalla7, 0, 0, width, height);
      //Botón Jugar
      fill(0);
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Continuar", porcentajeX(520), porcentajeY(480));
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("Pulgarcito y sus hermanos deciden refugiarse debajo de este árbol,\n" +
        "y buscar su casa luego de que haya terminado la lluvia", porcentajeX(75), porcentajeY(50));
    }
  • Pantalla 8
    void pantalla8() {
      image(pantalla8, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Si", porcentajeX(520), porcentajeY(480));
      //Botón Creditos
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("¡Hurra! Hay una casa a la vista \n" +
        "¿Deberían ir allí?", porcentajeX(75), porcentajeY(50));
    }
  • Pantalla 9
    void pantalla9() {
      image(pantalla9, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Si", porcentajeX(520), porcentajeY(480));
    
      //Botón Creditos
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 680, 185);
      fill(255);
      text("¡Oh no! es la casa de los ogros.\n" +
        "La señora Ogra les ofrece a los niños quedarse hasta que pase la lluvia, \n" +
        "o hasta que llegue su marido, el señor Ogro, porque si él los encontrara en su casa, \n se los comería\n"+
        "¿Deberían quedarse Pulgarcito y sus hermanos?", porcentajeX(75), porcentajeY(50));
    }
  • Pantalla 10
    void pantalla10() {
      image(pantalla10, 0, 0, width, height);
      fill(0);
      //Botón Derecho
      image(boton, porcentajeX(500), porcentajeY(450));
      text("No", porcentajeX(520), porcentajeY(480));
    
      //Botón Izq
      image(boton, porcentajeX(200), porcentajeY(450));
      text("Si", porcentajeX(218), porcentajeY(480));
    
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 140);
      fill(255);
      text("¡El ogro ya regresó! \n" +
        "La señora Ogra les pide a los niños que se escondan en la pieza de sus hijas\n" +
        "Pulgarcito tiene sus dudas sobre quedarse, teme que el Ogro los encuentre \n ¿Deberían pasar la noche allí?", porcentajeX(75), porcentajeY(50));
    }
  • Pantalla 11
    void pantalla11() {
      image(pantalla11, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Continuar", porcentajeX(510), porcentajeY(480));
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 150);
      fill(255);
      text("Pulgarcito y sus hermanos vuelven al bosque, con la esperanza de encontrar su casa. \n Por desgracia no lo consiguen, quedando atrapados allí por siempre.", porcentajeX(75), porcentajeY(50));
    }
  • Pantalla 12
    void pantalla12() {
      image(pantalla12, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Si", porcentajeX(520), porcentajeY(480));
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("El ogro los encuentra y desea comerlos, pero para la suerte de ellos, \n la señora Ogra lo convence de no hacerlo \n" +
        "Pulgarcito no confía en el Ogro ¿Debería quedarse despierto por las dudas?", porcentajeX(75), porcentajeY(50));
    }
  • Pantalla 13
    void pantalla13() {
    image(pantalla13, 0, 0, width, height);
    fill(0);
    //Botón Jugar
    image(boton, porcentajeX(500), porcentajeY(450));
    text("Continuar", porcentajeX(510), porcentajeY(480));
    noStroke();
    fill(50, 50, 0, 50);
    rect(porcentajeX(50), porcentajeY(25), 650, 110);
    fill(255);
    text("¡Oh no! el Ogro a entrado a la habitación mientras todos dormían y se los a comido. \n", porcentajeX(75), porcentajeY(50));
    }
  • Pantalla 14
    void pantalla14() {
      image(pantalla14, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Si", porcentajeX(520), porcentajeY(480));
      //boton no se van
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("¿Pulgarcito debería elaborar un plan por seguridad?", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 15
    void pantalla15(){
      image(pantalla15,0,0,width,height);
        fill(0);
       //Botón Continuar
       image(boton, porcentajeX(500), porcentajeY(450));
        text("Continuar",porcentajeX(510), porcentajeY(480));
    
                noStroke();
    fill(50,50,0,50);
    rect(porcentajeX(50), porcentajeY(25), 650,110);
            fill(255);
      text("A pulgarcito se le a ocurrido la brillante idea de cambiar las coronas \n de las hijas del Ogro por los gorros de sus hermanos.",porcentajeX(75), porcentajeY(50));
    
    }
  • Pantalla 16
    void pantalla16() {
      image(pantalla16, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Si", porcentajeX(520), porcentajeY(480));
      //Botón Creditos
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("¡El Ogro se comió a sus hijas! el plan funciono. \n Pero ahora el Ogro esta muy enojado ¿Deberían huir los niños?", porcentajeX(75), porcentajeY(50));
    }
  • Pantalla 17
    void pantalla17() {
      image(pantalla17, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Continuar", porcentajeX(510), porcentajeY(480));
    
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("Pulgarcito y sus hermanos se hacen los dormidos \n esperando que el enojo del Ogro se le pase.", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 18
    void pantalla18() {
      image(pantalla18, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Si", porcentajeX(520), porcentajeY(480));
    
      //Botón Creditos
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
    
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("Pulgarcito junto con sus hermanos salieron corriendo de la casa. \n" +
        "¡El Ogro agarro las botas de siete leguas para correr más rápido! \n" +
        "¿Deberían esconderse los niños?", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 19
    void pantalla19() {
      image(pantalla19, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Continuar", porcentajeX(510), porcentajeY(480));
    
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("¡Oh no! El Ogro capturó a pulgarcito y sus hermanos.", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 20
    void pantalla20 () {
      image(pantalla20, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Si", porcentajeX(520), porcentajeY(480));
      //Botón Creditos
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
    
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("El ogro se canso de tanto buscar a los niños, \n"+
        "Se a echado a dormir una siesta del cansancio...¡con las botas puestas! \n" +
        "¿Debería robarlas Pulgarcito?", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 21
    void pantalla21 () {
      image(pantalla21, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Si", porcentajeX(520), porcentajeY(480));
      image(boton, porcentajeX(200), porcentajeY(450));
      text("No", porcentajeX(218), porcentajeY(480));
    
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("¡Eureka! Pulgarcito logró robar las botas, \n ¿Debería ir con sus hermanos en búsqueda de su casa? \n ", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 22
    void pantalla22 () {
      fill(0);
      image(pantalla11, 0, 0, width, height);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Continuar", porcentajeX(510), porcentajeY(480));
    
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("Pulgarcito junto a sus hermanos vuelven al bosque en búsqueda de su casa.", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 23
    void pantalla23() {
      image(pantalla23, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Continuar", porcentajeX(510), porcentajeY(480));
    
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("Pulgarcito va de regreso a la casa del Ogro para engañar a su esposa y robarle todo el oro \n y así poder ayudar económicamente a sus padres. \n"+
        "Al llegar a la casa, le miente a la Ogra, \n diciéndole que su marido fue capturado, y que a cambio de su liberación, \n sus raptores exigen oro.\n", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 24
    void pantalla24() {
      image(pantalla24, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Continuar", porcentajeX(510), porcentajeY(480));
    
      noStroke();
      fill(50, 50, 0, 50);
      rect(porcentajeX(50), porcentajeY(25), 650, 110);
      fill(255);
      text("La señora Ogra inmediatamente le entrega todo el oro, \n con la esperanza de salvar a su marido \n"+
        "Pulgarcito regresa con sus hermanos contento con el oro y las botas.", porcentajeX(75), porcentajeY(50));
    }
    
  • Pantalla 25
    void pantalla25() {
      image(pantalla25, 0, 0, width, height);
      fill(0);
      //Botón Jugar
      image(boton, porcentajeX(500), porcentajeY(450));
      text("Continuar", porcentajeX(510), porcentajeY(480));
      noStroke();
    }
    

Trabajo Práctico N° 4

Este trabajo consistió en la evolución del TP3 con la incorporación de Arreglos y Funciones.

  • Trabajo Práctico 4
     PFont tipo;
    int cantPantallas = 29;
    int cantImagenes = 29;
    PImage[] imagenes = new PImage [29];
    String [] texto = new String [29];
    String [] textBoton= new String [6];
    int [][][] botones = new int[cantPantallas][2][5];
    int p2_posY_inicial;
    int p2_posY;
    int pantalla = 1;
    PImage boton;
    PImage mouse;
    
    void setup() {
      size(800, 600);
      cargarBotones();
      TextosArreglo();
      imagenes();
      p2_posY_inicial = porcentajeY(610);
      p2_posY = p2_posY_inicial;
      tipo = createFont("Acme-Regular.ttf", 20);
      boton = loadImage ("boton.png");
      boton.resize(porcentajeX(109), porcentajeY(60));
      mouse = loadImage("mouse.png");
      noCursor();
    }
    
    void draw() {
      background(255);
      for (int i=0; i<29; i++) {
        PantallaCompleta(i, i, i);
      }
      dibujarBotones();
      textFont(tipo);
      image(mouse, mouseX, mouseY);
    }
    
    int porcentajeX(int valor) {
      return round(map(valor, 0, 800, 0, width));
    }
    
    int porcentajeY(int valor) {
      return round(map(valor, 0, 600, 0, height));
    }
  • Inicializar
    void PantallaCompleta(int nPantalla, int nImagen, int nTexto) { if (nPantalla==pantalla) { image(imagenes[nImagen], porcentajeX(0), porcentajeY(0)); fill(255); textFont(tipo); textSize(20); text(texto[nTexto], porcentajeX(50), porcentajeY(50)); } }
  • Pantallas
    void imagenes() { for (int i = 1; i < 29; i ++) { imagenes[i] = loadImage( i + ".png"); } image(imagenes[pantalla], 0, 0, width, height); } void TextosArreglo() { fill(250); textBoton[0] = ("Inicio"); textBoton[1] = ("Continuar"); textBoton[2] = ("Creditos"); textBoton[3] = ("Si"); textBoton[4] = ("No"); texto[1]= ""; texto[2] = ("Pulgarcito era el hijo más pequeño de una familia muy humilde, \n la cual estaba conformada por 6 hermanos mellizos."+ " \n Lo llamaban así porque cuando nació no era mas grande que el dedo pulgar"); texto[3] = ("Los padres de Pulgarcito ya no tenían dinero, no les alcanzaba para la comida de sus hijos, \n " + "debido a esto planean salir de excursión y abandonarlos en el bosque, \n" + " de esta manera no tendrían que ver como sus hijos morían de hambre. \n"+ " Pulgarcito al escuchar la conversación de sus padres se horroriza.\n"+ "Por ese motivo decide armar un plan."); texto[4] = ("Los padres de Pulgarcito ya se han ido, pero sus hermanos aún no saben lo que sucede. \n Pulgarcito había creado el plan de dejar migajas de pan desde su casa hasta el bosque \n" + "¿Pulgarcito debería contarle sobre ello a sus hermanos?"); texto[6] = ("¡Oh no! las migas de pan ya no están. \n" + "Pulgarcito y sus hermanos se pierden en el bosque, no logran salvarse. \n" + "La próxima será."); texto[5] = ("¡Oh no! las migas de pan ya no están. \n" + "¡Mira! Pulgarcito podría subirse al árbol y buscar su casa, pero se ve muy peligroso \n" + "¿Debería arriesgarse y trepar el árbol?"); texto[7] = ("¡Hurra! Hay una casa a la vista \n" + "¿Deberían ir allí?"); texto[8] = ("Pulgarcito y sus hermanos deciden refugiarse debajo de este árbol,\n" + "y buscar su casa luego de que haya terminado la lluvia"); texto[9] = ("¡Oh no! es la casa de los ogros.\n" + "La señora Ogra les ofrece a los niños quedarse hasta que pase la lluvia, \n" + "o hasta que llegue su marido, el señor Ogro, porque si él los encontrara en su casa, \n se los comería\n"+ "¿Deberían quedarse Pulgarcito y sus hermanos?"); texto[10] = ("Pulgarcito y sus hermanos vuelven al bosque, con la esperanza de encontrar su casa. \n Por desgracia no lo consiguen, quedando atrapados allí por siempre."); texto[11] = ("¡El ogro ya regresó! \n" + "La señora Ogra les pide a los niños que se escondan en la pieza de sus hijas\n" + "Pulgarcito tiene sus dudas sobre quedarse, teme que el Ogro los encuentre \n ¿Deberían pasar la noche allí?"); texto[12] = ("¡Oh no! el Ogro a entrado a la habitación mientras todos dormían y se los a comido. \n"); texto[13] = ("El ogro los encuentra y desea comerlos, pero para la suerte de ellos, \n la señora Ogra lo convence de no hacerlo \n" + "Pulgarcito no confía en el Ogro ¿Debería quedarse despierto por las dudas?"); texto[14] = texto[12]; texto[15] = ("¿Pulgarcito debería elaborar un plan por seguridad?"); texto[16] = texto[12]; texto[17] = ("A pulgarcito se le a ocurrido la brillante idea de cambiar las coronas \n de las hijas del Ogro por los gorros de sus hermanos."); texto[18] = ("¡El Ogro se comió a sus hijas! el plan funciono. \n Pero ahora el Ogro esta muy enojado ¿Deberían huir los niños?"); texto[19] = ("¡Oh no! El Ogro capturó a pulgarcito y sus hermanos."); texto[20] = ("Pulgarcito junto con sus hermanos salieron corriendo de la casa. \n" + "¡El Ogro agarro las botas de siete leguas para correr más rápido! \n" + "¿Deberían esconderse los niños?"); texto[21] = ("Pulgarcito y sus hermanos se hacen los dormidos \n esperando que el enojo del Ogro se le pase."); texto[22] = ("El ogro se canso de tanto buscar a los niños, \n"+ "Se a echado a dormir una siesta del cansancio...¡con las botas puestas! \n" + "¿Debería robarlas Pulgarcito?"); texto[23] = ("Pulgarcito junto a sus hermanos vuelven al bosque en búsqueda de su casa."); texto[24] = ("¡Eureka! Pulgarcito logró robar las botas, \n ¿Debería ir con sus hermanos en búsqueda de su casa? \n "); texto[25] = ("Pulgarcito va de regreso a la casa del Ogro para engañar a su esposa y robarle todo el oro \n y así poder ayudar económicamente a sus padres. \n"+ "Al llegar a la casa, le miente a la Ogra, \n diciéndole que su marido fue capturado, y que a cambio de su liberación, \n sus raptores exigen oro.\n"); texto[26] = ("La señora Ogra inmediatamente le entrega todo el oro, \n con la esperanza de salvar a su marido \n"+ "Pulgarcito regresa con sus hermanos contento con el oro y las botas."); texto[28] = (""); }
  • Botones
    void cargarBotones() {
    
      int[] botones1 = {2, 500, 600, 460, 510};
      int[] botones2 = {28, 200, 300, 460, 510}; //final izquierdo
      botones[1][0] = botones1;
      botones[1][1] = botones2;
    
      int[] botones3 = {3, 500, 600, 460, 510};
      botones[2][0] = botones3;
    
      int[] botones04 = {4, 500, 600, 460, 510};
      botones[3][0] = botones04;
    
      int[] botones5 = {6, 500, 600, 460, 510};
      int[] botones6 = {5, 200, 300, 460, 510};
      botones[4][0] = botones5;
      botones[4][1] = botones6;
    
      int[] botones7 = {6, 500, 600, 460, 510};
      int[] botones8 = {7, 200, 300, 460, 510};
      botones[5][0] = botones7;
      botones[5][1] = botones8;
    
      int[] botones9 = {28, 500, 600, 460, 510}; //final derecho
      botones[6][0] = botones9;
    
      int[] botones10 = {8, 500, 600, 460, 510};
      int[] botones11 = {9, 200, 300, 460, 510};
      botones[7][0] = botones10;
      botones[7][1] = botones11;
    
      botones[8][0] = botones9;
    
      int[] botones12 = {10, 500, 600, 460, 510};
      int[] botones13 = {11, 200, 300, 460, 510};
      botones[9][0] = botones12;
      botones[9][1] = botones13;
    
      botones[10][0] = botones9;
    
      int[] botones14 = {12, 500, 600, 460, 510};
      int[] botones15 = {13, 200, 300, 460, 510};
      botones[11][0] = botones14;
      botones[11][1] = botones15;
    
      botones[12][0] = botones9;
    
      int[] botones16 = {14, 500, 600, 460, 510};
      int[] botones17 = {15, 200, 300, 460, 510};
      botones[13][0] = botones16;
      botones[13][1] = botones17;
    
      botones[14][0] = botones9;
    
      int[] botones18 = {16, 500, 600, 460, 510};
      int[] botones19 = {17, 200, 300, 460, 510};
      botones[15][0] = botones18;
      botones[15][1] = botones19;
    
      botones[16][0]= botones9;
    
      int[] botones20 = {18, 500, 600, 460, 510};
      botones[17][0] = botones20;
    
      int[] botones21 = {20, 500, 600, 460, 510};
      int[] botones22 = {19, 200, 300, 460, 510};
      botones[18][0] = botones21;
      botones[18][1] = botones22;
    
      botones[20][0] = botones9;
    
      int[] botones23 = {21, 500, 600, 460, 510};
      int[] botones24 = {22, 200, 300, 460, 510};
      botones[19][0] = botones23;
      botones[19][1] = botones24;
    
      botones[21][0] = botones14;
    
      int[] botones25 = {23, 500, 600, 460, 510};
      int[] botones26 = {24, 200, 300, 460, 510};
      botones[22][0] = botones25;
      botones[22][1] = botones26;
    
      botones[23][0] = botones9;
    
      int[] botones27 = {25, 500, 600, 460, 510};
      botones[24][0] = botones27;
      botones[24][1] = botones7;
    
      int[] botones28 = {26, 500, 600, 460, 510};
      botones[25][0] = botones28;
    
      int[] botones29 = {27, 500, 600, 460, 510};
      botones[26][0] = botones29;
    
      botones[27][0] = botones9;
    
      int[] botones30 = {1, 500, 600, 460, 510};
      botones[28][0] = botones30;
    }
    void botonIzquierdoSi() {
      image(boton, porcentajeX(200), porcentajeY(450));
      text(textBoton[3], porcentajeX(220), porcentajeY(480));
    }
    void botonIzquierdoNext() { //en realidad es derecha jeje
      image(boton, porcentajeX(500), porcentajeY(450));
      text(textBoton[1], porcentajeX(510), porcentajeY(480));
    }
    void botonDerechoNo() {
      image(boton, porcentajeX(500), porcentajeY(450));
      text(textBoton[4], porcentajeX(530), porcentajeY(480));
    }
    void botonCreditos() {
      image(boton, porcentajeX(500), porcentajeY(450));
      text(textBoton[2], porcentajeX(530), porcentajeY(480));
    }
    void botonCreditosIzq() {
      image(boton, porcentajeX(200), porcentajeY(450));
      text(textBoton[2], porcentajeX(220), porcentajeY(480));
    }
    
    void dibujarBotones() {
      if (pantalla == 1| pantalla == 2 | pantalla == 3 | pantalla == 6 | pantalla == 8 | pantalla == 10 | pantalla == 12 | pantalla == 14 | pantalla == 16 | pantalla == 17 | pantalla == 20 | pantalla == 23 | pantalla == 25 | pantalla == 26 ) {
        botonIzquierdoNext();
      }
      if ( pantalla == 1) {
        botonCreditosIzq();
      } else if ( pantalla == 4 | pantalla ==  5| pantalla ==  7 | pantalla ==  9 | pantalla == 11 | pantalla == 13 | pantalla == 15 | pantalla ==  18 | pantalla == 19 | pantalla == 22 | pantalla == 24) {
        botonIzquierdoSi();
        botonDerechoNo() ;
      } else if (  pantalla == 27) {
        botonCreditos();
      }
      if (pantalla == 28) {
        image(boton, porcentajeX(500), porcentajeY(450));
        text(textBoton[0], porcentajeX(520), porcentajeY(480));
        text("Esto fue realizado para Tecno1 \n en la Com. 4 \n Por Jazmin Gonzalez", porcentajeX(200), porcentajeY(p2_posY));
      }
      if (p2_posY > porcentajeY(200)) {
        p2_posY --;
      }
    }
  • MouseClicked
    void mouseClicked() {
      if (mouseX > porcentajeX(botones[pantalla][0][1]) && mouseX < porcentajeX(botones[pantalla][0][2]) && mouseY > porcentajeY(botones[pantalla][0][3]) && mouseY < porcentajeY(botones[pantalla][0][4])) {
        pantalla = botones[pantalla][0][0];
      } else if (botones[pantalla][1].length > 0) { // Verifico si el segundo botón posee datos, indicando que existe
        if (mouseX > porcentajeX(botones[pantalla][1][1]) && mouseX < porcentajeX(botones[pantalla][1][2]) && mouseY > porcentajeY(botones[pantalla][1][3]) && mouseY < porcentajeY(botones[pantalla][1][4])) {
          pantalla = botones[pantalla][1][0];
        }
      }
     if (mouseX > porcentajeX(500)&& mouseX <   porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) {
        p2_posY = p2_posY_inicial;
      }
    }

Trabajo Práctico N° 5

Para esta nueva instancia se propuso realizar un video juego que este elaborado 100% en objetos, con solo una variable global asociada a una clase Jugeo, como minino debia tener cuatro clases. A su vez, este juego reemplazaria una pantalla en la aventura gráfica realizada anteriormente.

  • Trabajo Práctico 5
    //se remplaza a la pantalla 20, si pierde el juego van a la pantalla 19, y si lo ganan quedarian en la pantalla 22
    Juego juego;
    void setup() {
      size(800, 600);
      juego = new Juego();
    }
    void draw() {
      juego.dibujar();
    }
    void keyPressed() {
      juego.teclaPresionada();
    }
    void mouseClicked() {
      juego.click();
    }
    int porcentajeX(int valor) {
      return round(map(valor, 0, 800, 0, width));
    }
    
    int porcentajeY(int valor) {
      return round(map(valor, 0, 600, 0, height));
    }
  • Fondo
    class Fondo {
      // PImage [] imagenes = new PImage [3];
      int posX, posY, X, Y, posXInicial;
      int velocidad, tamanio;
      PImage fondomovil1, fondomovil2;
      PImage fondo;
      PImage arboles;
    
      Fondo() {
    
        //posicion fondo fijo
        X = -5;
        Y = -5;
        //posicion fondo movil
        posX = 801;
        posXInicial = 1400;
        posY = 0;
        velocidad = -5;
        tamanio = 10;
        fondomovil1 = loadImage("f1.png");
        fondomovil1.resize(porcentajeX(900), porcentajeY(480));
        fondomovil2 = loadImage("f2.png");
        fondomovil2.resize(porcentajeX(900), porcentajeY(480));
        arboles = loadImage("arboles.png");
        arboles.resize(porcentajeX(810), porcentajeY(560));
        fondo = loadImage("fondo.png");
        fondo.resize(porcentajeX(815), porcentajeY(610));
      }
      void dibujar() {
        image(fondo, porcentajeX(X), porcentajeY(Y));
        //imageMode(CENTER);
        image(fondomovil1, posX, posY);
        posX = posX + velocidad;
        image(fondomovil2, porcentajeX(posXInicial), porcentajeY(posY));
        posXInicial = posXInicial + velocidad;
        if ( posX <-540) {
          posX = 780;
        }
        if (posXInicial <- 540) {
          posXInicial = 800;
        }
        //imageMode(CORNER);
        image(arboles, porcentajeX(X), porcentajeY(Y));
      }
    }
    
  • Juego
    class Juego { int estado; PImage ganaste, perdiste, boton; VideoJuego videoJuego; PFont tipo = createFont("Acme-Regular.ttf", 20); Juego() { inicializar(); } void dibujar() { textFont(tipo); textSize(20); fill(255); if (estado == 1) { dibujoVideoJuego(); } else if (estado == 2) { dibujoPantallaGanaste(); } else if (estado == 3) { dibujoPantallaPerdiste(); } } void dibujoPantallaGanaste() { ganaste = loadImage("ganaste.png"); ganaste.resize(porcentajeX(800), porcentajeY(605)); image(ganaste, 0, 0); text("¡Felicidades! Lograste escapar.", porcentajeX(50), porcentajeY(50)); boton = loadImage("boton.png"); boton.resize(porcentajeX(100), porcentajeY(50)); image(boton, porcentajeX(500), porcentajeY(450)); text("Reiniciar", porcentajeX(509), porcentajeY(473)); } void dibujoPantallaPerdiste() { perdiste = loadImage("Perdiste.png"); perdiste.resize(porcentajeX(800), porcentajeY(605)); image(perdiste, 0, 0); boton = loadImage("boton.png"); boton.resize(porcentajeX(100), porcentajeY(50)); image(boton, porcentajeX(500), porcentajeY(450)); text("Reiniciar", porcentajeX(509), porcentajeY(473)); //irias a los creditos text("¡Oh no! El Ogro capturó a pulgarcito y sus hermanos.", porcentajeX(50), porcentajeY(50)); } void teclaPresionada() { if (estado == 1) { videoJuego.teclaPresionada(); } } void click() { if (estado == 3 || estado == 2) { if (mouseX > porcentajeX(500) && mouseX < porcentajeX(600) && mouseY > porcentajeY(460) && mouseY < porcentajeY(510)) { inicializar(); } } } void dibujoVideoJuego() { videoJuego.dibujar(); if (videoJuego.controlarGanarOPerder() == 2) { //gana estado = 2; } else if (videoJuego.controlarGanarOPerder() == 3) { //pierde estado = 3; } } void inicializar() { videoJuego = new VideoJuego(0, 0, porcentajeX(800), porcentajeY(600)); estado = 1; } }
  • Obstaculo
    class Obstaculo { int posX, posY, tam; int velocidad, tipo; PImage imagen ; Obstaculo(int p_posX, int p_posY, int p_nImagen) { posX = p_posX; posY = p_posY; tipo = p_nImagen; velocidad = -8; if (tipo == 1) { imagen = loadImage("O1.png"); imagen.resize(porcentajeX(119), porcentajeY(569)); } else if (tipo == 2) { imagen = loadImage("O2.png"); imagen.resize(porcentajeX(90), porcentajeY(569)); } else if (tipo == 3) { imagen = loadImage("O3.png"); imagen.resize(porcentajeX(174), porcentajeY(569)); } else if (tipo == 4) { imagen = loadImage("O4.png"); imagen.resize(porcentajeX(190), porcentajeY(569)); } //println(tipo); if (posX == 1) { posX = 800; } else if (posX == 2) { posX = 1000; } else if (posX == 3) { posX = 1300; } else if (posX==4) { posX = 1700; } } void dibujar() { image(imagen, posX, posY); posX = posX + velocidad; } void moverEnX( int p_posX) { posX = p_posX; } boolean saleDelaPantalla() { return posX <=0 ; } }
  • Pulgarcito
    class Pulgarcito {
      int posX, posY, tam, VelY, gravedad;
      float frame = 1;
      PImage [] imagenes = new PImage [7];
      int imagenAleatoria;
      int vidas;
      Pulgarcito(int p_posX, int p_posY, int p_tam) {
        for (int i = 1; i < imagenes.length; i ++) {
          imagenes [i] = loadImage("p" + i + ".png");
        }
        imagenes[1].resize(porcentajeX(188), porcentajeY(570));
        imagenes[2].resize(porcentajeX(174), porcentajeY(570));
        imagenes[3].resize(porcentajeX(96), porcentajeY(570));
        imagenes[4].resize(porcentajeX(138), porcentajeY(570));
        imagenes[5].resize(porcentajeX(197), porcentajeY(570));
        imagenes[6].resize(porcentajeX(188), porcentajeY(570));
        frameRate(15);
        posX = p_posX; //50;
        posY = p_posY;//400
        tam = p_tam;
        imagenAleatoria = round(random(1, 6));
        VelY = 0;
        gravedad = 3;
      }
      void dibujar() {
        if ( frame < 5) {
          image(imagenes[int (frame)], posX, posY);
        } else {
          image(imagenes[imagenAleatoria], posX, posY);
        }
        frame += 0.5;
        //println(posY);
        // println(posY);
      }
      void correr() {
        if (keyCode == RIGHT) {
          posX = posX + tam;
          frame = 1;
        }
      }
      void saltar() {
        /* if (keyCode == ' ' ) {
         posY = - porcentajeY(250);
         frame = 1;
         }*/
        if (keyCode == ' ') {
          if (posY == 0) {
            VelY = - 25;
          }
          frame = 1;
        }
      }
      void caer() {
        posY += VelY;
        VelY += gravedad;
        posY = constrain(posY, -250, 0);
        //frame = 1;
      }
    
      boolean chocaCon(Obstaculo obstaculo) {
        if (dist(porcentajeX(posX), porcentajeY(posY), porcentajeX(obstaculo.posX), porcentajeX(obstaculo.posY)) <= tam/2) {
          return true ;
        } else {
          return false;
        }
      }
    
      boolean haPerdido(Vida vidas) {
        println(vidas.cantVidas);
    
        return vidas.cantVidas <= 0;
      }
      boolean haGanado() {
        return porcentajeX(posX) >= porcentajeX(800);
      }
    }
  • Vidas
    class Vida {
      int cantVidas;
      float posX, posY;
    
    
      Vida(int p_cantVidas, float p_posX, float p_posY) {
        cantVidas = p_cantVidas;
        posX = p_posX;
        posY = p_posY;
      }
    
      void dibujar() {
        fill(255);
        textSize(26);
        text("Vidas:" + cantVidas, posX, posY);
      }
    
      void decrementar() {
        cantVidas--;
      }
    }
    
  • Video Juego
    class VideoJuego { int cantidadObjetos = 5; int posX, posY, tamX, tamY; int tam; Vida vidas; Pulgarcito pulgarcito; Fondo fondo; Obstaculo [] obstaculo = new Obstaculo [cantidadObjetos]; VideoJuego(int p_posX, int p_posY, int p_tamX, int p_tamY) { posX = p_posX; posY = p_posY; tamX = p_tamX; tamY = p_tamY; tam = tamX/cantidadObjetos; inicializar(); } void dibujar() { dibujoVideoJuego(); } void dibujarObstaculosYOgro() { for (int i = 1; i < cantidadObjetos; i++ ) { obstaculo[i].dibujar(); if (pulgarcito.chocaCon(obstaculo[i])) { vidas.decrementar(); } /* if (pulgarcito.chocaCon(ogro)) { }*/ if (obstaculo[i].saleDelaPantalla()) { obstaculo[i].moverEnX(posObstaculoVolver()); } } } /* void dibujarOgro() { //lo llamo en juego ogro.dibujar(); } void correogro() { ogro.correr(); }*/ void teclaPresionada() { pulgarcito.correr(); pulgarcito.saltar(); //ogro.correr(); } void dibujoVideoJuego() { fondo.dibujar(); dibujarObstaculos(); vidas.dibujar (); pulgarcito.dibujar(); pulgarcito.caer(); } int controlarGanarOPerder() { // if (pulgarcito.chocaCon(obstaculo[1]) || pulgarcito.chocaCon(obstaculo[2]) || pulgarcito.chocaCon(obstaculo[3]) || pulgarcito.chocaCon(obstaculo[4]) ) { if (pulgarcito.haPerdido(vidas)) { return 3; } else if (pulgarcito.haGanado()) { return 2; } return 0; } void dibujarObstaculos() { for (int i = 1; i < cantidadObjetos; i++ ) { obstaculo[i].dibujar(); if (obstaculo[i].saleDelaPantalla()) { obstaculo[i].moverEnX(posObstaculoVolver()); } if (pulgarcito . chocaCon (obstaculo [i])) { obstaculo[i].moverEnX(posObstaculoVolver()); vidas.decrementar(); } } } int posObstaculoVolver() { return round (random(800, 2000)); } void inicializar() { fondo = new Fondo(); pulgarcito= new Pulgarcito(porcentajeX(50), porcentajeY(0), width/16); pulgarcito.posY = constrain(posY, - 280, 0 ); vidas = new Vida (3, porcentajeX(50), porcentajeX(tam)); for (int i=1; i< cantidadObjetos; i ++) { int tipoObstaculo = floor(random(1, 5)); int posObstaculo = floor(random(1, 5)); obstaculo[i] = new Obstaculo(posObstaculo, 0, tipoObstaculo); } } }

Trabajo Práctico Final

Dicho trabajo consistió en crear un circulo cromantico. Este trabajo tuvo como objetivo lograr que gane experiencia en los siguientes temas: Conocer el Entorno de Desarrollo Integrado (IDE) de Processing. Entender el espacio de coordenadas. Primeras aproximaciones a la sintaxis del lenguaje. Instrucciones de dibujo de figuras básicas y sus parámetros. Cómo establecer propiedades de las figuras. Modelado del color en espacios informáticos.

  • Trabajo Práctico Final
    import processing.sound.*; Controlador controlador1; void setup() { size(800, 600); controlador1 = new Controlador(this); } void draw() { background(200); controlador1.dibujar(); } void mouseClicked() { controlador1.mouseClicked(); } void keyPressed() { controlador1.keyPressed(); }
  • Botón
    class Boton { int posX, posY, ancho, alto, pantallaAIr; String texto; PImage boton; Resize resize = new Resize(); Controlador controlador; Boton(String texto, int posX, int posY, int pantallaAIr, Resize resize, Controlador controlador) { this.texto = texto; this.posX = posX; this.posY = posY; this.pantallaAIr = pantallaAIr; this.resize = resize; this.controlador = controlador; boton = loadImage("boton.png"); ancho = 100; alto = 50; } void dibujar() { image(boton, resize.porcentajeX(posX - 8), resize.porcentajeY(posY - 8)); text(texto, resize.porcentajeX (posX + 5), resize.porcentajeY(posY + (alto/2))); } int mouseClicked() { if (mouseX > resize.porcentajeX(posX) && mouseX < resize.porcentajeX(posX + ancho) && mouseY > resize.porcentajeY(posY) && mouseY < resize.porcentajeY(posY + alto) ) { if (pantallaAIr == 28) { controlador.Musica.play(); controlador.Musica.loop(); } if (pantallaAIr == 1) { controlador.Musica.stop(); } return pantallaAIr; } return -1; } }
  • Controlador
    class Controlador {
      SoundFile Musica;
      Pantalla pantallaActual;
      Juego juego;
      Textos textos = new Textos();
      Creditos creditos;
      Resize resize = new Resize();
      int cantidadPantallas = 29;
      Pantalla [] pantallas = new Pantalla [cantidadPantallas];
      PImage [] fondos = new PImage [cantidadPantallas];
    
      int pantalla;
      Controlador(PApplet pro) {
        Musica = new SoundFile(pro, "Musica.wav");
        Boton boton1, boton2;
        cargarFondos();
        pantallas = new Pantalla [cantidadPantallas];
    
        pantalla = 1;
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 2, resize, this); //continuar
        boton2 = new Boton(textos.getTextoParaBoton(2), 200, 450, 28, resize, this);//creditos pantalla28
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 2;
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 3, resize, this );
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, null, null, null);
    
        pantalla = 3;
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 4, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, null, null, null);
    
        pantalla = 4;
        boton1 = new Boton(textos.getTextoParaBoton(4), 500, 450, 6, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 5, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 5;
        boton1 = new Boton(textos.getTextoParaBoton(4), 500, 450, 6, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 7, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        //final derecho
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 28, resize, this);
        pantallas[6] = new Pantalla(fondos[6], textos.getTextoParaPantalla(6), boton1, null, null, null);
        pantallas[8] = new Pantalla(fondos[8], textos.getTextoParaPantalla(8), boton1, null, null, null);
        pantallas[10] = new Pantalla(fondos[10], textos.getTextoParaPantalla(10), boton1, null, null, null);
        pantallas[12] = new Pantalla(fondos[12], textos.getTextoParaPantalla(12), boton1, null, null, null);
        pantallas[14] = new Pantalla(fondos[14], textos.getTextoParaPantalla(14), boton1, null, null, null);
        pantallas[16] = new Pantalla(fondos[16], textos.getTextoParaPantalla(16), boton1, null, null, null);
        pantallas[20] = new Pantalla(fondos[20], textos.getTextoParaPantalla(20), boton1, null, null, null);
        pantallas[23] = new Pantalla(fondos[23], textos.getTextoParaPantalla(23), boton1, null, null, null);
        pantallas[27] = new Pantalla(fondos[27], textos.getTextoParaPantalla(27), boton1, null, null, null);
    
        pantalla = 7;
        boton1 = new Boton(textos.getTextoParaBoton(4), 500, 450, 8, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 9, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 9;
        boton1 = new Boton(textos.getTextoParaBoton(4), 500, 450, 10, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 11, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 11;
        boton1 = new Boton(textos.getTextoParaBoton(4), 500, 450, 12, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 13, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 13;
        boton1 = new Boton(textos.getTextoParaBoton(4), 500, 450, 14, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 15, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 15;
        boton1 = new Boton(textos.getTextoParaBoton( 4), 500, 450, 16, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 17, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 17;
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 18, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, null, null, null);
    
        pantalla = 18;
        boton1 = new Boton(textos.getTextoParaBoton(4), 500, 450, 21, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 20, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 20;
        juego = new Juego(this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, juego);
    
        pantalla = 19;
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 28, resize, this);
        //  boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 20);
        pantallas[pantalla] = new Pantalla(fondos[20], textos.getTextoParaPantalla(pantalla), boton1, null, null, null);
    
        pantalla = 21;
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 12, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, null, null, null);
    
        pantalla = 22;
        boton1 = new Boton(textos.getTextoParaBoton(4), 500, 450, 23, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 24, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 24;
        boton1 = new Boton(textos.getTextoParaBoton(4), 500, 450, 25, resize, this);
        boton2 = new Boton(textos.getTextoParaBoton(3), 200, 450, 6, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, boton2, null, null);
    
        pantalla = 25;
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 26, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, null, null, null);
    
        pantalla = 26;
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 27, resize, this);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, null, null, null);
    
        pantalla = 28;
        boton1 = new Boton(textos.getTextoParaBoton(1), 500, 450, 1, resize, this);
        creditos = new Creditos(textos.getTextoCreditos(), 300, 600, resize, Musica);
        pantallas[pantalla] = new Pantalla(fondos[pantalla], textos.getTextoParaPantalla(pantalla), boton1, null, creditos, null);
    
    
        //Al terminar de crear las pantallas, indico la actual.
        pantallaActual = pantallas[1];
      }
      void dibujar() {
        pantallaActual.dibujar();
        pantallaActual.dibujarMouse();
      }
    
    
      void cargarFondos() {
        for (int i=1; i
  • Créditos
    class Creditos {
      int posX, posY, ancho, alto, pantallaAIr;
      String texto;
      Resize resize = new Resize();
      SoundFile Musica;
      Creditos(String texto, int posX, int posY, Resize resize, SoundFile Musica) {
        this.texto = texto;
        this.posX = posX;
        this.posY = posY;
        this.resize = resize;
        this.Musica = Musica;
      }
    
      void dibujar() {
        fill(255);
        text(texto, resize.porcentajeX(posX), resize.porcentajeY(posY));
        mover();
         //Musica.play();
      }
    
      void mover() {
        if (resize.porcentajeY(posY) > 200) {
          resize.porcentajeY (posY--);
        }
      }
    
      void reiniciarcreditos() {
        if (mouseX > resize.porcentajeX(500)&& mouseX <   resize.porcentajeX(600) && mouseY > resize.porcentajeY(460) && mouseY < resize.porcentajeY(510)) {
          posY = resize.porcentajeY(600);
        }
      }
    }
  • Juego Fondo
    class Fondo {
      // PImage [] imagenes = new PImage [3];
      int posX, posY, X, Y, posXInicial;
      int velocidad, tamanio;
      PImage fondomovil1, fondomovil2;
      PImage fondo;
      PImage arboles;
      Resize resize = new Resize();
    
      Fondo(Resize resize) {
    
        //posicion fondo fijo
        X = resize.porcentajeX(-5);
        Y = resize.porcentajeY(-5);
        //posicion fondo movil
        posX = resize.porcentajeX(801);
        posXInicial = resize.porcentajeX(1400);
        posY = resize.porcentajeY(0);
        velocidad = resize.porcentajeX(-5);
        tamanio = resize.porcentajeX(10);
        fondomovil1 = loadImage("f1.png");
        fondomovil1.resize(resize.porcentajeX(900), resize.porcentajeY(480));
        fondomovil2 = loadImage("f2.png");
        fondomovil2.resize(resize.porcentajeX(900), resize.porcentajeY(480));
        arboles = loadImage("arboles.png");
        arboles.resize(resize.porcentajeX(810), resize.porcentajeY(560));
        fondo = loadImage("fondo.png");
        fondo.resize(resize.porcentajeX(815), resize.porcentajeY(610));
      }
      void dibujar() {
        image(fondo, resize.porcentajeX(X), resize.porcentajeY(Y));
        //imageMode(CENTER);
        image(fondomovil1, resize.porcentajeX(posX), resize.porcentajeY(posY));
        posX = resize.porcentajeX(posX + velocidad);
        image(fondomovil2, resize.porcentajeX(posXInicial), resize.porcentajeY(posY));
        posXInicial = posXInicial + velocidad;
        if ( resize.porcentajeX(posX) <- resize.porcentajeX(540)) {
          posX = resize.porcentajeX(780);
        }
        if (resize.porcentajeX(posXInicial) <- resize.porcentajeX(540)) {
          posXInicial = resize.porcentajeX(800);
        }
        //imageMode(CORNER);
        image(arboles, resize.porcentajeX(X), resize.porcentajeY(Y));
      }
    }
  • Juego Juego
    class Juego {
      int estado;
      PImage ganaste, perdiste, boton;
      VideoJuego videoJuego;
      PFont tipo = createFont("Acme-Regular.ttf", 20);
      Controlador  controlador;
      Resize resize = new Resize();
      Juego(Controlador controlador) {
        this.controlador = controlador;
        inicializar();
      }
      void dibujar() {
        textFont(tipo);
        textSize(20);
        fill(255);
        if (estado == 1) {
          dibujoVideoJuego();
        } else if (estado == 2) {
          dibujoPantallaGanaste();
        } else if (estado == 3) {
          dibujoPantallaPerdiste();
        }
        println(estado);
      }
      void dibujoPantallaGanaste() {
        //22
        controlador.pantallaActual = controlador.pantallas[22];
      }
      void dibujoPantallaPerdiste() {
        //19
        controlador.pantallaActual = controlador.pantallas[19];
      }
      void teclaPresionada() {
        if (estado == 1) {
          videoJuego.teclaPresionada();
        }
        if (estado == 2) {
          controlador.pantallaActual = controlador.pantallas[22];
          inicializar();
        }
        if (estado == 3) {
          controlador.pantallaActual = controlador.pantallas[19];
          inicializar();
        }
      }
      void dibujoVideoJuego() {
        videoJuego.dibujar();
        if (videoJuego.controlarGanarOPerder() == 2) { //gana
          estado = 2;
        } else if (videoJuego.controlarGanarOPerder() == 3) { //pierde
          estado = 3;
        }
      }
      void reiniciarJuego() {
        if  (controlador.pantallaActual == controlador.pantallas[18]) {
          if (mouseX > resize.porcentajeX(200)&& mouseX <   resize.porcentajeX(300) && mouseY > resize.porcentajeY(460) && mouseY <  resize.porcentajeY(510)) {
            inicializar();
            //estado = 1;
          }
        }
      }
      void inicializar() {
        videoJuego = new VideoJuego(0, 0, resize.porcentajeX(800), resize.porcentajeY(600));
        estado = 1;
        videoJuego.vidas.cantVidas = 3;
      }
    }
  • Juego Obstáculos
    class Obstaculo {
      int posX, posY, tam;
      int velocidad, tipo;
      PImage imagen ;
      Resize resize = new Resize();
      Obstaculo(int p_posX, int p_posY, int p_nImagen, Resize resize) {
        posX = p_posX;
        posY = p_posY;
        tipo = p_nImagen;
        velocidad = resize.porcentajeX(-8);
        if (tipo == 1) {
          imagen = loadImage("O1.png");
          imagen.resize(resize.porcentajeX(119), resize.porcentajeY(569));
        } else if (tipo == 2) {
          imagen = loadImage("O2.png");
          imagen.resize(resize.porcentajeX(90), resize.porcentajeY(569));
        } else if (tipo == 3) {
          imagen = loadImage("O3.png");
          imagen.resize(resize.porcentajeX(174), resize.porcentajeY(569));
        } else if (tipo == 4) {
          imagen = loadImage("O4.png");
          imagen.resize(resize.porcentajeX(190), resize.porcentajeY(569));
        }
        if (posX == resize.porcentajeX(1)) {
          posX =resize.porcentajeX(800);
        } else if (posX == resize.porcentajeX(2)) {
          posX = resize.porcentajeX(1000);
        } else if (posX == resize.porcentajeX(3)) {
          posX = resize.porcentajeX(1300);
        } else if (posX== resize.porcentajeX(4)) {
          posX = resize.porcentajeX(1700);
        }
      }
      void dibujar() {
        image(imagen, posX, posY);
        posX = posX + velocidad;
      }
      void moverEnX( int p_posX) {
        posX = p_posX;
      }
    
      boolean saleDelaPantalla() {
        return posX <= resize.porcentajeX(0) ;
      }
    }
  • Juego Pulgarcito
    class Pulgarcito {
      int posX, posY, tam, VelY, gravedad;
      float frame = 1;
      PImage [] imagenes = new PImage [7];
      int imagenAleatoria;
      int vidas;
      Resize resize = new Resize();
      Pulgarcito(int p_posX, int p_posY, int p_tam) {
        for (int i = 1; i < imagenes.length; i ++) {
          imagenes [i] = loadImage("p" + i + ".png");
        }
        imagenes[1].resize(resize.porcentajeX(188), resize.porcentajeY(570));
        imagenes[2].resize(resize.porcentajeX(174), resize.porcentajeY(570));
        imagenes[3].resize(resize.porcentajeX(96), resize.porcentajeY(570));
        imagenes[4].resize(resize.porcentajeX(138), resize.porcentajeY(570));
        imagenes[5].resize(resize.porcentajeX(197), resize.porcentajeY(570));
        imagenes[6].resize(resize.porcentajeX(188), resize.porcentajeY(570));
        frameRate(15);
        posX = p_posX; //50;
        posY = p_posY;//400
        tam = p_tam;
        imagenAleatoria = round(random(1, 6));
        VelY = resize.porcentajeY(0);
        gravedad = resize.porcentajeY(3);
      }
      void dibujar() {
        if ( frame < 5) {
          image(imagenes[int (frame)], posX, posY);
        } else {
          image(imagenes[imagenAleatoria], posX, posY);
        }
        frame += 0.5;
        //println(posY);
        // println(posY);
      }
      void correr() {
        if (keyCode == RIGHT) {
          posX = resize.porcentajeX(posX + tam);
          frame = 1;
        }
      }
      void saltar() {
        if (keyCode == ' ') {
          if (posY == resize.porcentajeY(0)) {
            VelY = resize.porcentajeY(- 25);
          }
          frame = 1;
        }
      }
      void caer() {
        posY += VelY;
        VelY += gravedad;
        posY = constrain(posY, resize.porcentajeY(-250), resize.porcentajeY(0));
        //frame = 1;
      }
    
      boolean chocaCon(Obstaculo obstaculo) {
        if (dist(resize.porcentajeX(posX), resize.porcentajeY(posY), resize.porcentajeX(obstaculo.posX), resize.porcentajeX(obstaculo.posY)) <= tam/2) {
          return true ;
        } else {
          return false;
        }
      }
    
      boolean haPerdido(Vida vidas) {
       // println(vidas.cantVidas);
    
        return vidas.cantVidas <= 0;
      }
      boolean haGanado() {
        return resize.porcentajeX(posX) >= resize.porcentajeX(800);
      }
    }
  • Juego Vida
    class Vida {
      int cantVidas;
      float posX, posY;
    
    
      Vida(int p_cantVidas, float p_posX, float p_posY) {
        cantVidas = p_cantVidas;
        posX = p_posX;
        posY = p_posY;
      }
    
      void dibujar() {
        fill(255);
        textSize(26);
        text("Vidas:" + cantVidas, posX, posY);
      }
    
      void decrementar() {
        cantVidas--;
      }
    }
  • Juego VideoJuego
    class VideoJuego { int cantidadObjetos = 5; int posX, posY, tamX, tamY; int tam; Vida vidas; Pulgarcito pulgarcito; Fondo fondo; Obstaculo [] obstaculo = new Obstaculo [cantidadObjetos]; Resize resize = new Resize(); VideoJuego(int p_posX, int p_posY, int p_tamX, int p_tamY) { posX = p_posX; posY = p_posY; tamX = p_tamX; tamY = p_tamY; tam = tamX/cantidadObjetos; inicializar(); } void dibujar() { dibujoVideoJuego(); } void dibujarObstaculosYOgro() { for (int i = 1; i < cantidadObjetos; i++ ) { obstaculo[i].dibujar(); if (pulgarcito.chocaCon(obstaculo[i])) { vidas.decrementar(); } if (obstaculo[i].saleDelaPantalla()) { obstaculo[i].moverEnX(posObstaculoVolver()); } } } void teclaPresionada() { pulgarcito.correr(); pulgarcito.saltar(); } void dibujoVideoJuego() { fondo.dibujar(); dibujarObstaculos(); vidas.dibujar (); pulgarcito.dibujar(); pulgarcito.caer(); } int controlarGanarOPerder() { if (pulgarcito.haPerdido(vidas)) { return 3; } else if (pulgarcito.haGanado()) { return 2; } return 0; } void dibujarObstaculos() { for (int i = 1; i < cantidadObjetos; i++ ) { obstaculo[i].dibujar(); if (obstaculo[i].saleDelaPantalla()) { obstaculo[i].moverEnX(posObstaculoVolver()); } if (pulgarcito . chocaCon (obstaculo [i])) { obstaculo[i].moverEnX(posObstaculoVolver()); vidas.decrementar(); } } } int posObstaculoVolver() { return round (random(resize.porcentajeX(800), resize.porcentajeX(2000))); } void inicializar() { fondo = new Fondo(resize); pulgarcito= new Pulgarcito(resize.porcentajeX(50), resize.porcentajeY(0), width/16); pulgarcito.posY = constrain(posY, resize.porcentajeY(- 280),resize.porcentajeY(0) ); vidas = new Vida (3, resize.porcentajeX(50), resize.porcentajeX(tam)); for (int i=1; i< cantidadObjetos; i ++) { int tipoObstaculo = floor(random(1, 5)); int posObstaculo = floor(random(1, 5)); obstaculo[i] = new Obstaculo(posObstaculo, resize.porcentajeY(0), tipoObstaculo, resize); } } }
  • Pantalla
    class Pantalla { Boton[] botones; PImage fondo; Creditos creditos; Boton boton1; Boton boton2; Juego juego; String textoPantalla; PFont tipo = createFont("Acme-Regular.ttf", 20); Resize resize = new Resize(); Pantalla(PImage fondo, String textoPantalla, Boton boton1, Boton boton2, Creditos creditos, Juego juego) { this.fondo = fondo; this.boton1 = boton1; this.boton2 = boton2; this.creditos = creditos; this.juego = juego; this.textoPantalla = textoPantalla; } void dibujar() { image(this.fondo, resize.porcentajeX(0), resize.porcentajeY(0), width, height); textFont(tipo); textSize(20); fill(255); text(this.textoPantalla, resize.porcentajeX(50), resize.porcentajeY(50)); if (boton1 != null) { boton1.dibujar(); } if (boton2 != null) { boton2.dibujar(); } if ( creditos != null) { creditos.dibujar(); } if ( juego != null) { juego.dibujar(); } } void dibujarMouse() { PImage mouse = loadImage("mouse.png"); image(mouse, mouseX, mouseY); noCursor(); } int mouseClicked() { int pantallaAIr = -1; if (boton1 != null) { pantallaAIr = boton1.mouseClicked(); } if (boton2 != null && pantallaAIr == -1) { pantallaAIr = boton2.mouseClicked(); } return pantallaAIr; } }
  • Resize
    class Resize {
      Resize(){
      }
      int porcentajeX(int valor) {
        return round(map(valor, 0, 800, 0, width));
      }
    
      int porcentajeY(int valor) {
        return round(map(valor, 0, 600, 0, height));
      }
    }
  • Textos
    class Textos { String textosPantallas []; String textBoton[]; String creditos[]; Textos() { textosPantallas = new String [29]; //textosPantallaBotones = new String [29][2]; textBoton = new String [6]; creditos = new String [1]; inicializarTextosPantallas(); // inicializarTextosBotones(); inicializarTextoBotones(); creditos(); } void inicializarTextosPantallas() { textosPantallas[1] = ""; textosPantallas[2] = "Pulgarcito era el hijo más pequeño de una familia muy humilde, \n la cual estaba conformada por 6 hermanos mellizos."+ " \n Lo llamaban así porque cuando nació no era mas grande que el dedo pulgar"; textosPantallas[3] = "Los padres de Pulgarcito ya no tenían dinero, no les alcanzaba para la comida de sus hijos, \n " + "debido a esto planean salir de excursión y abandonarlos en el bosque, \n" + " de esta manera no tendrían que ver como sus hijos morían de hambre. \n"+ " Pulgarcito al escuchar la conversación de sus padres se horroriza.\n"+ "Por ese motivo decide armar un plan."; textosPantallas[4] = "Los padres de Pulgarcito ya se han ido, pero sus hermanos aún no saben lo que sucede. \n Pulgarcito había creado el plan de dejar migajas de pan desde su casa hasta el bosque \n" + "¿Pulgarcito debería contarle sobre ello a sus hermanos?"; textosPantallas[5] = "¡Oh no! las migas de pan ya no están. \n" + "¡Mira! Pulgarcito podría subirse al árbol y buscar su casa, pero se ve muy peligroso \n" + "¿Debería arriesgarse y trepar el árbol?"; textosPantallas[6] = "¡Oh no! las migas de pan ya no están. \n" + "Pulgarcito y sus hermanos se pierden en el bosque, no logran salvarse. \n" + "La próxima será."; textosPantallas[7] = "¡Hurra! Hay una casa a la vista \n" + "¿Deberían ir allí?"; textosPantallas[8] = "Pulgarcito y sus hermanos deciden refugiarse debajo de este árbol,\n" + "y buscar su casa luego de que haya terminado la lluvia"; textosPantallas[9] = "¡Oh no! es la casa de los ogros.\n" + "La señora Ogra les ofrece a los niños quedarse hasta que pase la lluvia, \n" + "o hasta que llegue su marido, el señor Ogro, porque si él los encontrara en su casa, \n se los comería\n"+ "¿Deberían quedarse Pulgarcito y sus hermanos?"; textosPantallas[10] = "Pulgarcito y sus hermanos vuelven al bosque, con la esperanza de encontrar su casa. \n Por desgracia no lo consiguen, quedando atrapados allí por siempre."; textosPantallas[11] = "¡El ogro ya regresó! \n" + "La señora Ogra les pide a los niños que se escondan en la pieza de sus hijas\n" + "Pulgarcito tiene sus dudas sobre quedarse, teme que el Ogro los encuentre \n ¿Deberían pasar la noche allí?"; textosPantallas[12] = "¡Oh no! el Ogro a entrado a la habitación mientras todos dormían y se los a comido. \n"; textosPantallas[13] = "El ogro los encuentra y desea comerlos, pero para la suerte de ellos, \n la señora Ogra lo convence de no hacerlo \n" + "Pulgarcito no confía en el Ogro ¿Debería quedarse despierto por las dudas?"; textosPantallas[14] = "¡Oh no! el Ogro a entrado a la habitación mientras todos dormían y se los a comido. \n"; textosPantallas[15] = "¿Pulgarcito debería elaborar un plan por seguridad?"; textosPantallas[16] = "¡Oh no! el Ogro a entrado a la habitación mientras todos dormían y se los a comido."; textosPantallas[17] = "A pulgarcito se le a ocurrido la brillante idea de cambiar las coronas \n de las hijas del Ogro por los gorros de sus hermanos."; textosPantallas[18] = "¡El Ogro se comió a sus hijas! el plan funciono. \n Pero ahora el Ogro esta muy enojado ¿Deberían huir los niños?"; textosPantallas[19] = "¡Oh no! El Ogro capturó a pulgarcito y sus hermanos."; textosPantallas[20] = "Pulgarcito junto con sus hermanos salieron corriendo de la casa. \n" + "¡El Ogro agarro las botas de siete leguas para correr más rápido! \n" + "¿Deberían esconderse los niños?"; textosPantallas[21] = "Pulgarcito y sus hermanos se hacen los dormidos \n esperando que el enojo del Ogro se le pase."; textosPantallas[22] = "¡Felicidades! Lograste escapar. \n El ogro se canso de tanto buscar a los niños, \n"+ "Se a echado a dormir una siesta del cansancio...¡con las botas puestas! \n" + "¿Debería robarlas Pulgarcito?"; textosPantallas[23] = "Pulgarcito junto a sus hermanos vuelven al bosque en búsqueda de su casa."; textosPantallas[24] = "¡Eureka! Pulgarcito logró robar las botas, \n ¿Debería ir con sus hermanos en búsqueda de su casa? \n "; textosPantallas[25] = "Pulgarcito va de regreso a la casa del Ogro para engañar a su esposa y robarle todo el oro \n y así poder ayudar económicamente a sus padres. \n"+ "Al llegar a la casa, le miente a la Ogra, \n diciéndole que su marido fue capturado, y que a cambio de su liberación, \n sus raptores exigen oro.\n"; textosPantallas[26] = "La señora Ogra inmediatamente le entrega todo el oro, \n con la esperanza de salvar a su marido \n"+ "Pulgarcito regresa con sus hermanos contento con el oro y las botas."; textosPantallas[27] = " "; textosPantallas[28] = ""; } void inicializarTextoBotones() { textBoton[0] = ("Inicio"); textBoton[1] = ("Continuar"); textBoton[2] = ("Creditos"); textBoton[3] = ("Si"); textBoton[4] = ("No"); } void creditos() { creditos[0]= "Esto fue realizado para Tecno1 \n en la Com. 4 \n Por Jazmin Gonzalez"; } String getTextoParaPantalla(int pantalla) { return textosPantallas[pantalla]; } /* String getTextoParaPantallaBoton(int pantalla, int boton) { return textosPantallaBotones[pantalla][boton]; }*/ String getTextoParaBoton(int boton) { return textBoton[boton]; } String getTextoCreditos() { return creditos[0]; } }