Explorar el Código

README-es.md edited online with Bitbucket

Jose R Ortiz Ubarri hace 8 años
padre
commit
a091328fa2
Se han modificado 1 ficheros con 36 adiciones y 33 borrados
  1. 36
    33
      README-es.md

+ 36
- 33
README-es.md Ver fichero

16
 
16
 
17
 ## Pre-Lab:
17
 ## Pre-Lab:
18
 
18
 
19
-Antes de llegar al laboratorio debes:
19
+Antes de llegar al laboratorio debes haber:
20
 
20
 
21
-1. Haber repasado los siguientes conceptos:
21
+1. Repasado los siguientes conceptos:
22
 
22
 
23
     a. operadores lógicos
23
     a. operadores lógicos
24
 
24
 
25
     b. if, else, else if, switch
25
     b. if, else, else if, switch
26
 
26
 
27
-2. Haber estudiado los conceptos e instrucciones para la sesión de laboratorio.
27
+2. Estudiado los conceptos e instrucciones para la sesión de laboratorio.
28
+
29
+3. Tomado el quiz Pre-Lab que se encuentra en Moodle.
28
 
30
 
29
 ---
31
 ---
30
 
32
 
59
 Tu tarea es completar el diseño de la aplicación del juego. 
61
 Tu tarea es completar el diseño de la aplicación del juego. 
60
 
62
 
61
 
63
 
62
-### Ejercicio 1: Familiarizate con las funciones pre-definidas. 
64
+### Ejercicio 1 - Familiarizarte con las funciones pre-definidas. 
63
 
65
 
64
 El primer paso en esta experiencia de laboratorio es familiarizarte con las funciones (métodos) pre-definidas en el código.  Invocarás algunas de estas funciones en el código que completarás para detectar las colisiones.  
66
 El primer paso en esta experiencia de laboratorio es familiarizarte con las funciones (métodos) pre-definidas en el código.  Invocarás algunas de estas funciones en el código que completarás para detectar las colisiones.  
65
 
67
 
66
-**Instrucciones**
68
+#### Instrucciones:
67
 
69
 
68
-1. Descarga la carpeta `Conditionals-CarScrollingGame` de `Bitbucket` usando un terminal, moviéndote al directorio `Documents/eip`, y escribiendo el comando `git clone http://bitbucket.org/eip-uprrp/conditionals-carscrollinggame`.
70
+1. Carga a `QtCreator` el proyecto `CarScrollingGame`. Hay dos maneras de hacer esto:
69
 
71
 
70
-2. Carga a Qt creator el proyecto `CarScrollingGame`  haciendo doble "click" en el archivo `CarScrollingGame.pro` que se encuentra en la carpeta  `Documents/eip/Conditionals-CarScrollingGame` de tu computadora. 
72
+        * Utilizando la máquina virtual: Haz doble “click” en el archivo `CarScrollingGame.pro` que se encuentra  en el directorio `/home/eip/labs/conditionals-carscrollinggame` de la máquina virtual.
73
+        * Descargando la carpeta del proyecto de `Bitbucket`: Utiliza un terminal y escribe el commando `git clone http:/bitbucket.org/eip-uprrp/conditionals-carscrollinggame` para descargar la carpeta `conditionals-carscrollinggame` de `Bitbucket`. En esa carpeta, haz doble “click” en el archivo `CarScrollingGame.pro`.
71
 
74
 
72
-3. Configura el proyecto. El proyecto consiste de varios archivos. **Solo escribirás código en el archivo** `work.cpp`**. No debes cambiar nada en los demás archivos.** 
75
+2. Configura el proyecto. El proyecto consiste de varios archivos. **Solo escribirás código en el archivo** `work.cpp`**. No debes cambiar nada en los demás archivos.** 
73
 
76
 
74
-4. Vas a necesitar algunos de los métodos definidos en los siguientes  archivos para crear tu código.
77
+3. Vas a necesitar algunos de los métodos definidos en los siguientes  archivos para crear tu código.
75
 
78
 
76
-   * `car.h` y `car.cpp`: contienen la definición de la clase `Car`, los métodos de esta clase y sus declaraciones.
77
-   *  `flag.h` y `flag.cpp`: contienen la definición de la clase `Flag`, los métodos de esta clase y sus declaraciones.
78
-   *  `obtstacle.h` y `obstacle.cpp`: contienen la definición de la clase `Obstacle`, los métodos de esta clase y sus declaraciones.
79
-   * `play.h` y `play.cpp`: contienen la definición de la clase `Play`, los métodos de esta clase y sus declaraciones.
79
+       * `car.h` y `car.cpp`: contienen la definición de la clase `Car`, los métodos de esta clase y sus declaraciones.
80
+       *  `flag.h` y `flag.cpp`: contienen la definición de la clase `Flag`, los métodos de esta clase y sus declaraciones.
81
+       *  `obtstacle.h` y `obstacle.cpp`: contienen la definición de la clase `Obstacle`, los métodos de esta clase y sus declaraciones.
82
+       * `play.h` y `play.cpp`: contienen la definición de la clase `Play`, los métodos de esta clase y sus declaraciones.
80
 
83
 
81
-Familiarízate con los métodos en estos archivos. Pon énfazis en los siguientes métodos:
84
+       Familiarízate con los métodos en estos archivos. Pon énfazis en los siguientes métodos:
82
 
85
 
83
-   * `Car::getYCar()`: Devuelve la coordenada en $$Y$$ de la posición del carro en la pista.
84
-   * `Flag::getXFlag()`: Devuelve la coordenada en $$X$$ de la posición de la bandera en la pista.
85
-   * `Flag::getYFlag()`: Devuelve la coordenada en $$Y$$ de la posición de la bandera en la pista.
86
-   * `Flag::hide()`: Esconde la bandera.  Desaparece de la pista.
87
-   * `Obstacle::getXObstacle()`: Devuelve la coordenada en $$X$$ de la  posición del obstáculo en la pista.
88
-   * `Obstacle::getYObstacle()`: Devuelve la coordenada en $$Y$$ de la posición del obstáculo en la pista.
89
-   * `Play::setScore(n)`: Recibe un número entero y lo suma a la puntuación del juego.
86
+       * `Car::getYCar()`: Devuelve la coordenada en $$Y$$ de la posición del carro en la pista.
87
+       * `Flag::getXFlag()`: Devuelve la coordenada en $$X$$ de la posición de la bandera en la pista.
88
+       * `Flag::getYFlag()`: Devuelve la coordenada en $$Y$$ de la posición de la bandera en la pista.
89
+       * `Flag::hide()`: Esconde la bandera.  Desaparece de la pista.
90
+       * `Obstacle::getXObstacle()`: Devuelve la coordenada en $$X$$ de la  posición del obstáculo en la pista.
91
+       * `Obstacle::getYObstacle()`: Devuelve la coordenada en $$Y$$ de la posición del obstáculo en la pista.
92
+       * `Play::setScore(n)`: Recibe un número entero y lo suma a la puntuación del juego.
90
     
93
     
91
-Nota que no hay método `getXCar()` porque el  carro no se desplaza en el eje de $$X$$.  
94
+       Nota que no hay método `getXCar()` porque el  carro no se desplaza en el eje de $$X$$.  
92
 
95
 
93
-### Ejercicio 2: Completar la función para cambiar la pista del juego.
96
+### Ejercicio 2 - Completar la función para cambiar la pista del juego.
94
 
97
 
95
 En este ejercicio utilizarás la estructura de condición de C++ **switch** para cambiar los atributos de la pista. Completarás el método `setTrack` que se encuentra en el archivo `work.cpp`. Este método cambia el ambiente de la pista del juego dependiendo del valor que recibe el parámetro `track_type`.  
98
 En este ejercicio utilizarás la estructura de condición de C++ **switch** para cambiar los atributos de la pista. Completarás el método `setTrack` que se encuentra en el archivo `work.cpp`. Este método cambia el ambiente de la pista del juego dependiendo del valor que recibe el parámetro `track_type`.  
96
 
99
 
110
 
113
 
111
 La función `setObstaclePixmap(string)`  ya está definida y recibe una variable de tipo `string` que puede ser un valor entre (**"hole"**, **"cone"**, **"it"**, **"zombie"**, **"spongebob"**, **"patric"**, **"monster"**).
114
 La función `setObstaclePixmap(string)`  ya está definida y recibe una variable de tipo `string` que puede ser un valor entre (**"hole"**, **"cone"**, **"it"**, **"zombie"**, **"spongebob"**, **"patric"**, **"monster"**).
112
 
115
 
113
-**Instrucciones**
116
+#### Instrucciones:
114
 
117
 
115
 Para completar la función `setTrack()`:
118
 Para completar la función `setTrack()`:
116
 
119
 
118
 
121
 
119
 2. Cambia la imagen de los obstáculos utilizando la estructura de selección `switch` de modo que los obstáculos cambien de acuerdo al valor recibido por `setTrack()`. Si el tipo de pista que se recibe es:
122
 2. Cambia la imagen de los obstáculos utilizando la estructura de selección `switch` de modo que los obstáculos cambien de acuerdo al valor recibido por `setTrack()`. Si el tipo de pista que se recibe es:
120
 
123
 
121
-    * `play::DAY` - los obstáculos sean de tipo "hole" o "cone" 
122
-    * `play::NIGHT` - los obstáculos sean de tipo "it" o "zombie"
123
-    * `play::BEACH` - los obstáculos sean de tipo "spongebob" o "patric"
124
-    * `play::CANDYLAND` - los obstáculos sean de tipo "monster"
124
+       * `play::DAY` - los obstáculos sean de tipo "hole" o "cone" 
125
+       * `play::NIGHT` - los obstáculos sean de tipo "it" o "zombie"
126
+       * `play::BEACH` - los obstáculos sean de tipo "spongebob" o "patric"
127
+       * `play::CANDYLAND` - los obstáculos sean de tipo "monster"
125
 
128
 
126
-    En las opciones que tengan dos posibles obstáculos utilza  `rand() % 2`  para escoger aleatoriamente entre un obstáculo u otro. 
129
+       En las opciones que tengan dos posibles obstáculos utilza  `rand() % 2`  para escoger aleatoriamente entre un obstáculo u otro. 
127
 
130
 
128
 
131
 
129
-### Ejercicio 3: Completar la función para colisiones con obstáculos. 
132
+### Ejercicio 3 - Completar la función para colisiones con obstáculos. 
130
 
133
 
131
 En este ejercicio completarás el método `obstacleCollision` que se encuentra en el archivo `work.cpp`. La función recibe un objeto de clase `Obstacle` y otro objeto de clase `Car` y debe detectar si hay colisión o no entre el carro y el obstáculo. La función devuelve cierto si hay colisión entre el carro y un obstáculo y falso si no hay colisión.
134
 En este ejercicio completarás el método `obstacleCollision` que se encuentra en el archivo `work.cpp`. La función recibe un objeto de clase `Obstacle` y otro objeto de clase `Car` y debe detectar si hay colisión o no entre el carro y el obstáculo. La función devuelve cierto si hay colisión entre el carro y un obstáculo y falso si no hay colisión.
132
 
135
 
142
 
145
 
143
 ---
146
 ---
144
 
147
 
145
-### Ejercicio 4: Completar la función para colisiones con banderas.
148
+### Ejercicio 4 - Completar la función para colisiones con banderas.
146
 
149
 
147
 En este ejercicio completarás el método `flagCollision` que se encuentra en el archivo `work.cpp`. La función recibe un objeto de clase `Obstacle` y otro objeto de clase `Flag` y debe detectar si hay colisión o no entre el carro y la bandera. Esta función es bien similar a la función del Ejericio 3, excepto que esta función no devuelve valor.  Las acciones que ocurren cuando se detecta la colisión se van a tomar dentro de la función.
150
 En este ejercicio completarás el método `flagCollision` que se encuentra en el archivo `work.cpp`. La función recibe un objeto de clase `Obstacle` y otro objeto de clase `Flag` y debe detectar si hay colisión o no entre el carro y la bandera. Esta función es bien similar a la función del Ejericio 3, excepto que esta función no devuelve valor.  Las acciones que ocurren cuando se detecta la colisión se van a tomar dentro de la función.
148
 
151
 
153
 
156
 
154
 ---
157
 ---
155
 
158
 
156
-##Entregas
159
+## Entregas
157
 
160
 
158
 Utiliza "Entrega" en Moodle para entregar el archivo `work.cpp` que contiene las invocaciones y cambios que hiciste al programa. Recuerda utilizar buenas prácticas de programación, incluir el nombre de los programadores y documentar tu programa.
161
 Utiliza "Entrega" en Moodle para entregar el archivo `work.cpp` que contiene las invocaciones y cambios que hiciste al programa. Recuerda utilizar buenas prácticas de programación, incluir el nombre de los programadores y documentar tu programa.
159
 
162
 
161
 
164
 
162
 ---
165
 ---
163
 
166
 
164
-##Referencias
167
+## Referencias
165
 [1] Dave Feinberg, http://nifty.stanford.edu/2011/feinberg-generic-scrolling-game/
168
 [1] Dave Feinberg, http://nifty.stanford.edu/2011/feinberg-generic-scrolling-game/