1
00:00:02,800 --> 00:00:07,910
Bueno hoy tocó el turno del capítulo largo este va a ser un capítulo un poquito largo.

2
00:00:08,370 --> 00:00:15,690
Espero que lo podamos desarrollar tranquilos antes de ver el tema del movimiento de la bola.

3
00:00:15,690 --> 00:00:22,620
Voy a completar algo aquí en arma pantalla en la rutina arma pantalla.

4
00:00:22,620 --> 00:00:24,170
Qué tiene que ver con el fondo.

5
00:00:24,180 --> 00:00:31,920
Yo ya no voy a tener que mostrar el fondo 1 sino que voy a tener que preguntar por la variable fondo.

6
00:00:32,160 --> 00:00:40,770
Recuerden que hay una variable que se va a ir incrementando conforme yo voy moviéndome de nivel que

7
00:00:40,770 --> 00:00:47,730
lo vamos a ver ese cálculo también pero vamos a hacer un switch dentro de arma pantalla vamos a hacer

8
00:00:47,730 --> 00:00:54,660
un switch que va a preguntar por Fondo n y me va a permitir que en base a lo que diga fondo en mostrar

9
00:00:54,720 --> 00:01:02,340
un fondo u otro vamos a poner un cais vamos a hacer un vamos a copiar esto lo vamos a quitar de ahí

10
00:01:02,520 --> 00:01:07,410
lo vamos a colocar aquí muy bien y ahora vamos a hacer el break perfecto.

11
00:01:07,650 --> 00:01:14,700
Ahora vamos a dibujar los cuatro fondos faltantes porque en base a la variable fondo en eso voy a tener

12
00:01:14,700 --> 00:01:18,830
que mostrar una imagen de fondo o no del 1 al 5.

13
00:01:18,820 --> 00:01:24,720
Ustedes lo pueden variar pueden modificar este programa es de ustedes no es mío yo no tengo.

14
00:01:24,720 --> 00:01:30,890
Si bien lo hice yo desde cero aquí no hay una sola línea copiada de ningún otro código.

15
00:01:30,990 --> 00:01:36,690
Obviamente he consultado material de referencia cuando alguna cosa por ahí se me dificultaba porque

16
00:01:36,690 --> 00:01:44,100
no estoy haciendo juegos en todo momento es algo que me gusta pero no lo estoy haciendo en todo momento

17
00:01:44,100 --> 00:01:50,490
entonces cuando se me dificultaba algo quizás iba a internet y me fijaba bien la sintaxis pero todo

18
00:01:50,490 --> 00:02:00,120
lo que están viendo ahora no es copia de ningún otro desarrollo es algo propio y lo van a poder usar

19
00:02:00,180 --> 00:02:07,860
yo les estoy dejando en video el permiso les estoy diciendo que lo pueden usar lo pueden usar como propio

20
00:02:07,860 --> 00:02:12,180
pueden cambiarle lo que quieran en imágenes sonido código o lo que sea.

21
00:02:12,180 --> 00:02:17,120
No hace falta que me referencian ni que digan que lo hice yo ni nada.

22
00:02:17,250 --> 00:02:23,820
Ninguna de esas cosas de estrellas de Hollywood lo pueden usar y hagan lo que quieran y ojalá les sirva

23
00:02:23,820 --> 00:02:32,160
y ojalá aprendan a hacer otros juegos si hicieron otros juegos como el Pacman o el Galaxy o el Space

24
00:02:32,160 --> 00:02:41,100
Invaders me escriben a mi twitter o me mandan un mail y lo comparten y lo disfrutamos entre todos.

25
00:02:41,100 --> 00:02:50,280
Bueno aquí yo ya dibujé en base a fondo n lo que vamos a hacer ahora es ir a nuestra rutina la más importante

26
00:02:50,280 --> 00:02:51,030
de todas.

27
00:02:51,030 --> 00:02:57,630
Vamos a agregar algunas cositas en jugar previamente porque a jugar le faltan algunas cosas.

28
00:02:57,630 --> 00:03:03,170
Vamos a por ejemplo nosotros ya tenemos el inicio de nivel.

29
00:03:03,390 --> 00:03:10,800
Vamos a hacer que al iniciar el nivel al iniciar el nivel haga un mini pase primero para que haga una

30
00:03:10,800 --> 00:03:18,000
pausa en el inicial hizo nivel ya se va a encargar de ejecutar el sonido que tenga que ejecutar.

31
00:03:18,000 --> 00:03:21,760
Hacemos una pausa y lo que vamos a hacer aquí.

32
00:03:22,500 --> 00:03:29,880
Recuerden que yo les dije que aquí aparte de una variable que se daba entró había dos líneas de código

33
00:03:29,880 --> 00:03:35,250
que tenían que ver con sonidos y yo no se las había explicado porque todavía no habíamos visto sonidos.

34
00:03:35,250 --> 00:03:36,480
Aquí lo que hace.

35
00:03:36,480 --> 00:03:40,460
Pregunta si un juego no música.

36
00:03:40,590 --> 00:03:47,520
Vamos a primero efectos vamos a hacer efectos primero y vamos a decirle que la música que el sonido

37
00:03:47,880 --> 00:03:55,550
de inicio nivel lo detenga porque estoy arrancando un nuevo juego entonces quiero que el sonido se detenga.

38
00:03:55,620 --> 00:04:02,680
Y acá pregunto si música o sea si estas variables booleanas que yo estoy jugando con las teclas Lilit

39
00:04:02,750 --> 00:04:10,230
y tal se encuentra activa significa que la música se está escuchando entonces que se ejecute el sonido

40
00:04:10,230 --> 00:04:11,900
de música juego muy bien.

41
00:04:11,940 --> 00:04:14,130
Vamos a poner un Nul muy bien.

42
00:04:14,130 --> 00:04:20,790
Ahora esto lo que hace es que si la música está habilitada me empieza a arrancar la música del juego

43
00:04:20,790 --> 00:04:25,650
que hasta ahora no lo teníamos activado en nuestra rutina jugar.

44
00:04:25,650 --> 00:04:30,170
Luego tenemos chequeaba C luego tenemos en juego está correcto.

45
00:04:30,180 --> 00:04:36,340
Luego yo había agregado una yo se los voy a agregar para que les sirva yo tengo un chequeo de si la

46
00:04:36,350 --> 00:04:42,400
tecla es el número cero para que me avance de nivel para que ustedes pueden hacer las comprobaciones.

47
00:04:42,400 --> 00:04:51,150
Podemos agregar aquí y qué le puse yo le puse un favor es igual a cero es igual a 63 y más y es como

48
00:04:51,150 --> 00:04:57,210
que hago una trampita por qué hago una trampita porque mapa y le borro todos los ladrillos.

49
00:04:57,210 --> 00:05:02,660
La manera de pasar de niveles es bueno no voy a juego porque ustedes van a querer probarlo.

50
00:05:02,650 --> 00:05:07,900
No no quiero esperar a pegarle a todos los ladrillos porque van a estar muchos minutos entonces esta

51
00:05:07,900 --> 00:05:14,080
rutina lo que haces cuando detectó el cero borra mapa directamente le pone un 0 a todos los elementos

52
00:05:14,080 --> 00:05:19,720
del vector y el sistema lo reconoce como que ya no hay más ladrillos pasemos de nivel.

53
00:05:19,870 --> 00:05:22,770
Es una trampita que le hago yo al sistema.

54
00:05:22,820 --> 00:05:27,910
Bueno luego tenemos cuentas ladrillos cuento ladrillos es muy importante.

55
00:05:27,910 --> 00:05:34,780
Es una función que vamos a crear ahora esta función lo único que me va a devolver es un número que es

56
00:05:34,780 --> 00:05:40,780
lo que quiero saber cuántos ladrillos me quedan porque por ahí tengo 63 elementos del vector y todos

57
00:05:40,780 --> 00:05:44,070
tienen cero o algunos tienen ocho.

58
00:05:44,080 --> 00:05:50,380
Ojo con eso porque si son eliminé todos mis ladrillos y me quedaron los ladrillos que no se rompen los

59
00:05:50,380 --> 00:05:55,630
voy a tener que tratar como si fueran un cero porque si no podía quedarme en un loop eternamente en

60
00:05:55,630 --> 00:05:58,120
una pantalla sin ningún ladrillo por romper.

61
00:05:58,210 --> 00:06:04,510
Entonces esa función que la vamos a crear en unos segundos es la que nos va a devolver un número de

62
00:06:04,510 --> 00:06:13,000
ladrillos hábiles habilitado digamos del 1 al 7 Muy bien y si el ladrillo es igual a cero vamos a a

63
00:06:13,000 --> 00:06:21,040
incrementar la variable Leiber vamos a subir de nivel nuevo nivel le vamos a decir que es tru.

64
00:06:21,100 --> 00:06:27,580
Fíjense esto yo ejecuto hasta que sea nuevo nivel mientras no sea nuevo nivel como acá estoy sesteando

65
00:06:27,940 --> 00:06:33,480
se va a caer de este wey y va a ejecutar un mini pasiva inicializar un nuevo nivel.

66
00:06:33,520 --> 00:06:40,690
Yo paso de pantalla esto es pasar de pantalla paso a un nuevo nivel muy bien Fondo n lo voy a incrementar.

67
00:06:40,810 --> 00:06:47,140
Esta es la variable que por la cual yo acabo de hacer un switch en arma pantalla tenía un uno ahora

68
00:06:47,140 --> 00:06:52,300
tiene un dos me va a mostrar el fondo de la pantalla 2 pero aquí voy a tener que hacer un chequeo aquí

69
00:06:52,300 --> 00:07:01,420
voy a tener que hacer un chequeo que si Fondo n es igual a 6 entonces fondo en es igual a 1 para qué.

70
00:07:01,420 --> 00:07:06,040
Porque yo no tengo cinco pantallas no tengo 10 pantallas tengo 5.

71
00:07:06,280 --> 00:07:13,000
Entonces cuando el incremento de esa variable me deseis yo tengo que volver a empezar con el 1 y a mostrar

72
00:07:13,000 --> 00:07:16,720
desde la pantalla 1 luego la 2 luego la 3 así sucesivamente.

73
00:07:16,720 --> 00:07:23,170
Bueno muy bien luego de eso lo que voy a hacer es no voy a esperar aquí Tere y voy a explicar por qué

74
00:07:23,340 --> 00:07:29,530
voy a hacer un inicializar a nivel porque en realidad yo de aquí me tengo que ir cuando me quedé sin

75
00:07:29,530 --> 00:07:36,700
vidas cuando dio escape y cuando nuevo nivel se llegó a la fouls pero a esto se refiere cuando yo ya

76
00:07:36,700 --> 00:07:41,750
terminé el juego donde se va sestear esa variable en fouls cuando terminé el juego.

77
00:07:41,770 --> 00:07:49,550
Pero mientras yo esté en juego lo que va a hacer es va a mostrarme un nuevo nivel sin irme del Weyl

78
00:07:49,570 --> 00:07:56,200
principal me va a dibujar un nuevo nivel pero no me voy a ir del Weyl principal bueno muy bien chequeó

79
00:07:56,230 --> 00:08:04,290
teclas de sonido armo pantallas y fluida perfecto esto está perfecto.

80
00:08:04,330 --> 00:08:10,110
Bueno vamos a grabarlo no vamos a ejecutarlo porque tenemos mucho por hacer.

81
00:08:10,240 --> 00:08:16,360
Nosotros tuvimos aquí un cuento ladrillos vamos a incluir o nos va a devolver un tipo entero muy bien

82
00:08:16,920 --> 00:08:25,180
y aquí lo que voy a tener que hacer obviamente es contar los ladrillos ahora cómo contamos los ladrillos

83
00:08:25,750 --> 00:08:35,200
es muy simple hago Infor de una variable y es igual a cero le voy a decir que sea menor a 63 le voy

84
00:08:35,200 --> 00:08:40,050
a decir que más y tengo a mi favor que colocamos dentro del foro.

85
00:08:40,090 --> 00:08:48,860
Voy a preguntar y mapa de la posición y es distinto de ocho y mapa de la posición y es mayor a cero.

86
00:08:48,910 --> 00:08:57,220
Entonces me retornã el elemento y por qué esto por qué hace esto porque no me voy a integrar las 63

87
00:08:57,220 --> 00:09:02,890
posiciones directamente cuando encuentra que hay un ladrillo ya sale de la rutina no me interesa saber

88
00:09:02,890 --> 00:09:10,030
si hay 20 o 25 ladrillos me da lo mismo que haya uno o 40 realmente lo que quiero saber es si hay por

89
00:09:10,030 --> 00:09:16,990
lo menos un ladrillo entonces dónde encontró un ladrillo me retornã uno no es es un uno.

90
00:09:17,090 --> 00:09:23,200
Y aquí cuando salió y no se fue nunca significa que no había ningún ladrillo entonces me retornã cero

91
00:09:23,770 --> 00:09:27,460
esto es lo que hace esta función de cuento la Adric.

92
00:09:27,460 --> 00:09:34,060
Vamos a ver ahora la rutina de muevo bola que es la rutina más importante de todas.

93
00:09:34,060 --> 00:09:41,410
Bueno vamos ahora al turno de muevo bola esta rutina que es un poco larga pero vamos a ver línea por

94
00:09:41,410 --> 00:09:42,960
línea y vamos a explicarla.

95
00:09:42,970 --> 00:09:44,440
Lo primero que hago yo.

96
00:09:44,460 --> 00:09:51,850
Yo no sé si ustedes han visto que mi base es una base que tiene unos bordes de color rojo en esos bordes

97
00:09:51,860 --> 00:09:56,120
cuando la pelota pegue va a tener que tener un comportamiento diferente.

98
00:09:56,260 --> 00:09:57,600
Así pega en el medio.

99
00:09:57,600 --> 00:09:58,240
Por qué.

100
00:09:58,250 --> 00:10:02,140
Porque yo tengo que de realismo a nuestro juego.

101
00:10:02,140 --> 00:10:08,340
Lo que voy a hacer es sestear dos variables que habíamos creado que es punta izquierda y punta derecha

102
00:10:08,470 --> 00:10:15,100
vamos a punta punta izquierda y en punta izquierda yo voy a decirle que la punta izquierda de mi base

103
00:10:15,250 --> 00:10:19,240
es la posición x de mi base más 20.

104
00:10:19,240 --> 00:10:25,280
Ahora voy a explicar la bien y punta derecha es base X más 100.

105
00:10:25,330 --> 00:10:31,690
Muy bien a qué me estoy refiriendo con esto yo voy a estar moviendo la base entonces la posición x la

106
00:10:31,690 --> 00:10:37,810
base X de mi base va a ir cambiando constantemente yo me voy a estar moviendo entonces voy a tener que

107
00:10:37,810 --> 00:10:46,060
calcular la posición desde donde termina la punta izquierda de la base y dónde comienza la punta derecha

108
00:10:46,480 --> 00:10:53,800
porque como les dije si la bola llega hasta abajo y toca la base voy a tener que determinar en tres

109
00:10:53,800 --> 00:11:00,280
áreas diferentes para saber cuál es el comportamiento que tiene que tener la bola se los voy a mostrar

110
00:11:00,370 --> 00:11:06,760
con el fondo de pantalla si mi bola toca esta punta que es esta punta izquierda no puede hacer este

111
00:11:06,760 --> 00:11:13,630
movimiento irse para el otro lado tiene que rebotar en el sentido contrario al que venía la bola viene

112
00:11:13,630 --> 00:11:18,730
por aquí toca la base y vuelve para el mismo lugar en el que venía.

113
00:11:18,940 --> 00:11:25,660
Si la bola viene por aquí toca la mitad de la de la base y va para el lado contrario si la bola viene

114
00:11:25,660 --> 00:11:32,620
por aquí y toca esta punta en lugar de ir hacia la izquierda tiene que volver sobre sus pasos.

115
00:11:32,750 --> 00:11:40,080
Es una es un rebote normal de la física de lo que es el juego si ustedes lo han jugado se han dado cuenta

116
00:11:40,100 --> 00:11:47,170
que funciona de esa manera pero aquí vuelve para atrás pero aquí vuelve para atrás y cuando pega en

117
00:11:47,170 --> 00:11:54,880
el medio sigue el curso que viene la trayectoria que viene llevando vamos a ir a nuestro código entonces

118
00:11:54,880 --> 00:12:01,990
ya tenemos definido cuál es la punta izquierda en posición x y cuál es la punta derecha lo que vamos

119
00:12:01,990 --> 00:12:10,240
a hacer ahora es determinar un tema muy importante que es la línea C por la cual empiezan los ladrillos

120
00:12:10,270 --> 00:12:17,470
porque yo por cada vez que la bola se mueva voy a tener que chequear la posición y voy a tener que chequear

121
00:12:17,560 --> 00:12:25,900
si hay una colisión con ladrillos o hay una colisión con mi base entonces no tiene ningún sentido que

122
00:12:25,900 --> 00:12:32,610
la bola esté por aquí y yo esté chequeando ladrillos voy a consumir ciclos de procesador.

123
00:12:32,740 --> 00:12:40,510
Voy a colocar instrucciones cuando no tiene sentido entonces como yo ya conozco esta fila qué posiciones.

124
00:12:40,540 --> 00:12:46,780
Recién cuando la bola llegue a esta posición va a comenzar a chequear ladrillos lo que voy a agregar

125
00:12:46,780 --> 00:12:52,650
ahora es UNIV y bola C es menor a 2 25 por qué.

126
00:12:52,660 --> 00:12:58,390
Porque la posición 225 cae por aquí cuando la bola atraviese ese límite.

127
00:12:58,390 --> 00:13:04,930
Ahí voy a hacer todos los chequeos que correspondan a la colisión de ladrillo entonces vamos a ver unas

128
00:13:04,930 --> 00:13:11,590
rutinas que son conocidas por ustedes que fui la bola y columna bola que nosotros las vimos con los

129
00:13:11,590 --> 00:13:18,740
ladrillos se acuerda que convertíamos las posiciones XC las convertíamos en columnas y filas.

130
00:13:18,850 --> 00:13:22,200
Entonces vamos a decir que la bola es igual.

131
00:13:22,240 --> 00:13:30,730
Voy a traer la parte entera la parte entera de que un cálculo de bola y griega menos 20 dividido 30

132
00:13:30,820 --> 00:13:36,020
más uno nos empezamos a meter en terrenos donde hay cálculos muy complejos.

133
00:13:36,040 --> 00:13:43,180
Yo se los describo tal cual son se los voy a tratar de explicar puede pasar que a pesar de la explicación

134
00:13:43,210 --> 00:13:52,420
no lo comprendan pero yo estoy transformando esa posición sé en una fila se acuerdan que teníamos siete

135
00:13:52,420 --> 00:14:00,720
filas lo que va a determinar es cuál es la fila en la que estoy parado y colisionando con un ladrillo

136
00:14:00,840 --> 00:14:06,280
colisionando o no ya estoy en el área de donde están los ladrillos y yo voy a tener que devolver la

137
00:14:06,280 --> 00:14:12,580
parte entera de todo este cálculo porque no me sirve tener decimales la parte entera de la posición

138
00:14:12,910 --> 00:14:21,130
menos 20 20 porque porque tengo un borde de arriba un borde de arriba que lo tengo que tomar en cuenta

139
00:14:21,280 --> 00:14:24,130
este borde lo tengo que tomar en cuenta.

140
00:14:24,250 --> 00:14:33,340
Entonces tengo que restarle a la posición de la bola ese borde y tengo que dividirlo por 30 30 que es

141
00:14:33,340 --> 00:14:39,540
el alto de cada ladrillo el alto de cada ladrillo que eran unos 25 a eso le sumo.

142
00:14:39,580 --> 00:14:46,330
A eso le voy a sumar el espacio este entre ladrillos para calcular que más o menos cada ladrillo tiene

143
00:14:46,330 --> 00:14:47,710
30 de alto.

144
00:14:47,710 --> 00:14:54,700
Ese cálculo me va a devolver por ejemplo si estoy en la fila 7 en la 6 en la 5 en la 4.

145
00:14:54,850 --> 00:14:55,300
Para qué.

146
00:14:55,300 --> 00:15:02,450
Para saber qué ladrillo estoy tocando yo no tengo forma de saber qué tocando si no capturo en base a

147
00:15:02,450 --> 00:15:09,080
su sus coordenadas las coordenadas de la bola y lo convierto en un elemento en definitiva lo voy a tener

148
00:15:09,080 --> 00:15:16,190
que convertir en un elemento de la matriz para ir a preguntar qué valor tiene la bola.

149
00:15:16,190 --> 00:15:18,500
Lo mismo vamos a hacer con bola.

150
00:15:18,500 --> 00:15:27,860
Va a ser un entero de que un cálculo matemático que va a ser bola X bola x menos 13 o 64 vamos a hacer

151
00:15:27,920 --> 00:15:30,860
que el largo del ladrillo más 1.

152
00:15:30,890 --> 00:15:38,030
Este es el cálculo entonces así como OBP como divido por la medida en alto del ladrillo voy a dividir

153
00:15:38,030 --> 00:15:43,040
por el largo del ladrillo para saber la columna vamos a ponerlo de alguna manera.

154
00:15:43,070 --> 00:15:49,520
Si yo estoy parado aquí yo tengo que saber en qué posición esta posición dividirlo por el largo del

155
00:15:49,520 --> 00:15:56,300
ladrillo restarle el borde inferior el borde izquierdo y me va a devolver la columna en la que estoy

156
00:15:56,300 --> 00:15:56,900
parado.

157
00:15:56,960 --> 00:15:58,600
Eso es lo que hace ese cálculo.

158
00:15:58,610 --> 00:16:02,040
Luego tenemos elemento elemento que va a ser.

159
00:16:02,070 --> 00:16:06,460
Y ahora si un cálculo FIH la bola menos uno por nueve.

160
00:16:06,490 --> 00:16:12,940
Y a esto yo lo que voy a hacer es sumarle con bola y al final le voy a restar un 1.

161
00:16:12,950 --> 00:16:18,110
Son algoritmos no tienen por qué entenderlos de movida porque son complejos.

162
00:16:18,110 --> 00:16:23,960
Lo que me va a devolver esto en base a estos dos valores que yo ya sé fila y columna me me va a devolver

163
00:16:24,230 --> 00:16:31,360
el elemento el elemento que va de 0 a 62 en mi mapa de bits en mi mapa de ladrillos.

164
00:16:31,460 --> 00:16:40,040
Entonces lo que estoy obteniendo aquí es el número de elementos de mi mapa en qué elemento del mapa

165
00:16:40,040 --> 00:16:43,430
estoy tocando si estoy tocando en uno o no vamos a ver.

166
00:16:43,430 --> 00:16:45,870
Quizás no estoy tocando en ninguno.

167
00:16:45,870 --> 00:16:48,860
Ok entonces qué es lo que tengo que chequear ahora.

168
00:16:48,860 --> 00:16:55,640
Ahora lo que tengo que chequear después del IF ya tengo el elemento es muy simple si el mapa en la posición

169
00:16:55,640 --> 00:17:00,630
elemento es distinto de cero significa que le di a un ladrillo real.

170
00:17:00,710 --> 00:17:02,820
Vamos a ver qué pasa con eso.

171
00:17:02,900 --> 00:17:09,730
Si le di a un ladrillo voy a tener que cambiar la dirección en la que se mueve.

172
00:17:09,800 --> 00:17:16,640
Voy a preguntar si uno las voy a tener que cambiar porque lo que tengo que hacer es que rebote hacia

173
00:17:16,640 --> 00:17:25,400
abajo si la bola sube con C con y griega en menos 1 y toca en un ladrillo más allá que lo voy a hacer

174
00:17:25,400 --> 00:17:26,510
desaparecer.

175
00:17:26,660 --> 00:17:33,440
Más allá de que se va a ejecutar un sonido sube con menos uno cuando toque va a tener que tener un valor

176
00:17:33,440 --> 00:17:37,510
de uno para que vaya bajando tiene que hacer el rebote.

177
00:17:37,580 --> 00:17:44,660
Pero por qué pregunta si es menos uno porque quizás venga de arriba quizás la bola vino rebotando rebotó

178
00:17:44,660 --> 00:17:49,400
este borde rebotó este borde y le pegó por arriba al ladrillo.

179
00:17:49,400 --> 00:17:59,250
Entonces yo voy a tener que que si es menos 1 le muevo un 1 Anadir y griega y de lo contrario adherí

180
00:17:59,280 --> 00:18:06,330
griega le muevo menos 1 o sea que si yo venía bajando y rebotó en un ladrillo sube muy bien.

181
00:18:06,440 --> 00:18:07,400
Vamos a ver.

182
00:18:07,490 --> 00:18:13,200
Nosotros ya tenemos aquí el cambio de dirección estamos cambiando de dirección por qué.

183
00:18:13,200 --> 00:18:17,480
Porque hemos detectado esto está mal aquí.

184
00:18:17,580 --> 00:18:27,130
Perdone esto va adentro es parte de lo que voy a ejecutar cuando bola y griega sea menor a 2:25 muy

185
00:18:27,130 --> 00:18:34,880
bien muy bien y aquí lo voy a cerrar perfecto yo sigo dentro de LIF de bola y griega menos 2:25.

186
00:18:35,120 --> 00:18:42,020
Ahora lo que tengo que preguntar es si el elemento al que le acabo de pegar el ladrillo es distinto

187
00:18:42,020 --> 00:18:43,080
de 8.

188
00:18:43,190 --> 00:18:44,740
Ya sé que es mayor a cero.

189
00:18:46,290 --> 00:18:48,380
Ya sé que es distinto de cero.

190
00:18:48,630 --> 00:18:57,840
Entonces yo voy a tener que preguntar aquí si mapa de elemento es igual es distinto de 8 y qué era 8

191
00:18:57,840 --> 00:19:00,240
8 era nuestro ladrillo que no se rompía.

192
00:19:00,240 --> 00:19:04,860
Entonces lo que estoy preguntando aquí es para poder romperlo ladrillo se entiende.

193
00:19:05,190 --> 00:19:13,470
Si es 8 no me interesa ya estar el rebote dibujado era y griega ir en positivo se pone el negativo va

194
00:19:13,470 --> 00:19:19,800
a seguir su trayectoria no hay ningún problema ahora sí es distinto de 8 significa que es el ladrillo

195
00:19:19,800 --> 00:19:21,230
yo lo tengo que romper.

196
00:19:21,810 --> 00:19:31,740
Entonces lo que voy a hacer ahí es ejecutar primero un sonido vamos a ejecutar un sonido y ese sonido

197
00:19:31,740 --> 00:19:34,530
va a ser el sonido de ladrillo roto.

198
00:19:34,590 --> 00:19:38,040
Vamos a preguntar si efectos por qué.

199
00:19:38,040 --> 00:19:42,210
Porque si yo quité los efectos no quiero escucharlos no me lo tienen que mostrar.

200
00:19:42,210 --> 00:19:50,730
Esto lo vamos a preguntar siempre si sonido o si efectos vamos a hacer un play sample de sonido ladrillo

201
00:19:50,730 --> 00:19:53,810
roto coma doscientos ustedes.

202
00:19:53,850 --> 00:20:00,120
Luego van a regular los volúmenes de acuerdo a la preferencia de ustedes y las coordenadas que vienen

203
00:20:00,120 --> 00:20:01,120
en esta función.

204
00:20:01,170 --> 00:20:02,520
Y ahora qué voy a hacer.

205
00:20:02,520 --> 00:20:06,840
Voy a poner que mapa de elemento es igual a cero.

206
00:20:06,870 --> 00:20:13,290
Fíjense lo que hicimos como elemento era distinto de 8 y es mayor a cero porque lo preguntábamos aquí

207
00:20:13,380 --> 00:20:19,980
lo que voy a hacer es ejecutar un sonido y después voy a grabarle un cero a esa posición de nuestro

208
00:20:19,980 --> 00:20:23,120
mapa ese ladrillo desaparece de la vista por qué.

209
00:20:23,130 --> 00:20:30,480
Porque cuando ahora yo vuelva a dibujar la pantalla cuando vaya a ejecutar armo ladrillos o muestro

210
00:20:30,480 --> 00:20:34,830
ladrillos lo que va a hacer es que como encuentra un cero ahí no dibuja nada.

211
00:20:34,830 --> 00:20:38,900
Entonces nos da el efecto de que hemos explotado un ladrillo.

212
00:20:38,970 --> 00:20:48,420
Lo que hacemos aquí es vamos a aumentar nuestro puntaje vamos a colocarle de 10 a 10 puntos cada ladrillo

213
00:20:48,420 --> 00:20:56,550
que yo esté rompiendo nuestro puntaje va a aumentar en 10 ok y vamos a hacer un muestreo ladrillos.

214
00:20:56,550 --> 00:21:05,030
Aquí ya está nuestra rutina lo que tiene que ver con romper un ladrillo ejecuto un sonido le pongo a

215
00:21:05,030 --> 00:21:13,260
cero en el mapa subo mi puntaje muestro ladrillos ahí se acabó lo que tiene que ver con romper ladrillos

216
00:21:13,490 --> 00:21:13,970
ok.

217
00:21:14,340 --> 00:21:23,490
Bueno ahora sí nosotros hemos pegado en un elemento 8 en un ladrillo número 8 o sea uno que no es para

218
00:21:23,490 --> 00:21:24,320
romper.

219
00:21:24,360 --> 00:21:30,030
Yo no voy a usar este sonido porque este sonido es cuando el ladrillo se rompió tengo que usar un sonido

220
00:21:30,030 --> 00:21:30,980
de rebote.

221
00:21:31,020 --> 00:21:39,190
Vamos a poner un &amp; aquí y aquí voy a ejecutar simplemente no voy a hacer ninguna otra cosa más que ejecutar.

222
00:21:39,210 --> 00:21:46,400
Por supuesto preguntando por efectos si tengo habilitado los efectos especiales voy a ejecutar un play

223
00:21:46,400 --> 00:21:56,490
sample de sonido de rebota pelota rebote pelota 200 150.000 cero y cerramos el hit se entiende esto.

224
00:21:56,490 --> 00:22:01,070
Estoy ya en condiciones de romper ladrillos.

225
00:22:01,290 --> 00:22:06,600
Ahora nosotros ya hemos hecho todo lo necesario para esta sección.

226
00:22:06,600 --> 00:22:11,310
Qué pasa con esta ahora vamos a tener que evaluar porque no es lo mismo la colisión con un ladrillo

227
00:22:11,310 --> 00:22:14,980
que la colisión con la base y mucho menos con el fondo.

228
00:22:15,000 --> 00:22:21,490
Vamos a colocar aquí un &amp; que va a ser el de este y no vamos a dejar bastante espacio aquí.

229
00:22:21,510 --> 00:22:31,450
Yo voy a preguntar si bola X bola y griega perdón es mayor a 6:50 y Dir. y griega es igual a uno.

230
00:22:31,530 --> 00:22:33,080
Qué significa esto.

231
00:22:33,240 --> 00:22:40,160
Me va a estar evaluando si yo estoy por este sector pero necesito evaluar si la bola viene bajando o

232
00:22:40,170 --> 00:22:46,800
no va subiendo porque si va subiendo no hay problema yo ya sé que no que rebotó en la base y está subiendo

233
00:22:47,040 --> 00:22:55,200
ahora si detecta que la bola viene bajando y pasó esta línea ahí yo voy a tener que chequear si la base

234
00:22:55,290 --> 00:23:00,780
está en la posición de las coordenadas de que se encuentra la bola con lo cual voy a poder hacer el

235
00:23:00,780 --> 00:23:05,220
rebote si no va voy a perder una vida porque no voy a llegar.

236
00:23:05,250 --> 00:23:10,390
Entonces lo que se hace aquí lo que se hace aquí es Univ.

237
00:23:10,440 --> 00:23:24,180
Sí bola X es mayor o igual a base X y bola x es menor igual a base X más 120.

238
00:23:24,210 --> 00:23:28,080
Por qué se hace esto porque mi base mide 120.

239
00:23:28,080 --> 00:23:37,080
Entonces yo de la punta de la base de esta punta voy a calcular 120 posiciones si lo que está preguntando

240
00:23:37,080 --> 00:23:41,640
es si el lugar de la X de la bola.

241
00:23:41,640 --> 00:23:44,670
Ya sabemos que la posición se está aquí.

242
00:23:44,670 --> 00:23:51,670
Ya sabemos que pegada en la línea la base ahora queremos saber el X está en esta punta está por acá

243
00:23:51,680 --> 00:23:52,920
el medio está por aquí.

244
00:23:52,930 --> 00:24:01,900
Si la posición x de la bola está entre estas dos coordenadas significa que logré pegarle con mi base

245
00:24:01,900 --> 00:24:02,660
a la bola.

246
00:24:02,710 --> 00:24:11,890
Aquí lo que voy a hacer es por ejemplo volver a preguntar por efectos si efectos voy a ejecutar un sonido

247
00:24:11,980 --> 00:24:19,540
qué sonido sonido rebotaba hace el sonido que va a ser la bola cuando toca mi base que va a ser diferente

248
00:24:19,540 --> 00:24:20,890
a cuando toca una pared.

249
00:24:21,010 --> 00:24:23,770
200 150 mil.

250
00:24:23,790 --> 00:24:26,290
Cero y cerramos muy bien.

251
00:24:26,380 --> 00:24:32,230
Ahora ya sabemos que tocó la base pero ahora tenemos que preguntarnos qué parte de la base tocó recuerdan

252
00:24:32,230 --> 00:24:37,550
lo que dijimos de la punta X y la punta derecha la punta izquierda de punta derecha.

253
00:24:37,900 --> 00:24:46,180
Ahora decimos que sí bola x es menor o igual a punta izquierda significa que pegó en el extremo izquierdo

254
00:24:46,180 --> 00:24:55,660
de mi de mi base y no me importa no me importa de dónde venga no me importa en qué dirección venga siempre

255
00:24:55,810 --> 00:25:01,360
la voy a mandar para atrás siempre voy a hacer que X vaya en menos uno.

256
00:25:01,360 --> 00:25:12,030
En cambio sí bola X es mayor o igual a punta derecha Dir. x es igual a 1 se entiende esto.

257
00:25:12,220 --> 00:25:19,070
Ahora eso para Dir. X y Dir. se va a tener que ser menos 1 porque rebotó.

258
00:25:19,180 --> 00:25:24,120
Ahora tiene que ir para arriba nunca va a ir para abajo y aquí voy a poner un ratón.

259
00:25:24,160 --> 00:25:29,740
Ya está no quiero que haga más nada está esta rutina cuando tocó la bola la base no tiene que hacer

260
00:25:29,740 --> 00:25:30,940
ningún cálculo más.

261
00:25:30,970 --> 00:25:32,290
Ok muy bien.

262
00:25:32,290 --> 00:25:36,820
Ya le di las coordenadas para dónde tienen que ir para izquierda para la derecha.

263
00:25:37,000 --> 00:25:39,250
Ya tengo absolutamente todo.

264
00:25:39,280 --> 00:25:46,270
Ahora si no toco la base o sea si no entró en las coordenadas de la base significa que perdí perdí una

265
00:25:46,270 --> 00:25:46,780
vida.

266
00:25:47,050 --> 00:25:55,500
Entonces aquí voy a ejecutar la pérdida de vida y voy a preguntar si efectos muy bien Play sample de

267
00:25:55,510 --> 00:26:06,610
que el sonido qué sonido el sonido de vida perdida 200 150 mil cero demás perdí una vida entonces sabidas

268
00:26:06,700 --> 00:26:13,670
hay que restarle uno y vamos a ejecutar vamos a ejecutar una rutina nueva llamada dibuja muerte que

269
00:26:13,810 --> 00:26:18,760
esta rutina lo que va a hacer es mostrar la animación de la base que explota.

270
00:26:18,790 --> 00:26:24,400
Por ahora no la vamos a definir en este capítulo porque si no se va a ser extremadamente largo lo vamos

271
00:26:24,400 --> 00:26:25,640
a tirar un capítulo más.

272
00:26:25,720 --> 00:26:30,110
Aquí vamos a preguntar si vidas es mayor a cero retoma.

273
00:26:30,190 --> 00:26:37,150
Juego retoma juego la base me la coloca en el medio la bola me la coloca en el medio CTA estas variables

274
00:26:37,180 --> 00:26:43,390
no es nuevo nivel no es un no estoy en juego y me va a armar pantalla y va a estar esperando a que yo

275
00:26:43,660 --> 00:26:50,320
nuevamente pulse la barra espaciadora para que la bola vuelva a salir porque acabo de perder eso es

276
00:26:50,320 --> 00:26:53,920
lo que hace retomas juego y aquí coloco otro ratón.

277
00:26:54,010 --> 00:27:00,440
Ok muy bien qué es lo mismo que poner un rotaron acá y quitar estos dos para hacerlo más prolijo.

278
00:27:00,460 --> 00:27:00,910
Muy bien.

279
00:27:00,910 --> 00:27:06,550
Hemos detectado la colisión con ladrillos y hemos detectado la colisión con nuestra base.

280
00:27:06,580 --> 00:27:10,480
Vamos a ver ahora vamos a ver ahora que me falta.

281
00:27:10,640 --> 00:27:17,290
Aunque es muy bien vamos a ver ahora cuando realmente la bola se tiene que mover por el medio no tengo

282
00:27:17,290 --> 00:27:20,320
que colisionar ningún ladrillo.

283
00:27:20,320 --> 00:27:26,180
No tengo que colisionar con la base ni con el fondo y vamos a darle el movimiento verdad.

284
00:27:26,800 --> 00:27:31,460
Entonces aquí preguntamos si bola X es mayor a 580.

285
00:27:31,480 --> 00:27:35,130
Vamos a decirle que directs es igual a menos uno.

286
00:27:35,170 --> 00:27:44,230
Qué significa si la bola viene por aquí llegó a la posición 580 y con X en positivo x subiendo de valor

287
00:27:44,350 --> 00:27:50,650
X tiene que bajar ahora la posición x es la que más marca la izquierda derecha.

288
00:27:50,680 --> 00:27:56,390
Si va subiendo en el número rebotó en el borde y va en la dirección contraria.

289
00:27:56,410 --> 00:28:03,310
Eso es lo que vamos a reproducir ahora el chequeo de los bordes y vamos a cambiar de dirección si bola

290
00:28:03,430 --> 00:28:05,310
x es menor a 15.

291
00:28:05,350 --> 00:28:14,320
Entonces Dir. x es igual a 1 el caso contrario voy al extremo izquierdo en negativo con la X y me voy

292
00:28:14,320 --> 00:28:24,210
ahora en positivo si bola C es menor a 15 C es igual a 1 que está haciendo esto.

293
00:28:24,220 --> 00:28:31,000
Si estás subiendo toca el borde y tiene que empezar a bajar te está dibujando este movimiento este movimiento

294
00:28:31,000 --> 00:28:38,680
cuadrático que va a ser la bola de un lado para el otro muy bien qué vamos a hacer ahora si bola X es

295
00:28:38,680 --> 00:28:50,850
mayor a 580 o bola x es menor a 15 o Hola se es menor a 15 osea si se cumplió cualquiera de estas tres

296
00:28:50,850 --> 00:28:53,250
condiciones voy a tener que ejecutar un sonido.

297
00:28:53,340 --> 00:28:54,990
Entonces qué voy a hacer.

298
00:28:54,990 --> 00:29:03,960
Voy a colocar aquí voy a abrir nuestro IFF voy a preguntar si efectos y le voy a decir Play sample de

299
00:29:03,960 --> 00:29:06,120
sonido y sonido.

300
00:29:06,120 --> 00:29:17,010
Rebote pelota rebote pelota coma doscientos coma 150 coma mil coma cero se entiende lo que estoy rebotando

301
00:29:17,010 --> 00:29:23,880
por los costados ya chequeamos romper ladrillos ya chequeamos irnos hasta el fondo y sabemos si tocamos

302
00:29:23,880 --> 00:29:28,460
base o perdimos vida ahora le tenemos que dar movimiento.

303
00:29:28,500 --> 00:29:31,010
Ahora tenemos que cambiar la posición.

304
00:29:31,140 --> 00:29:35,500
Hasta ahora lo que hicimos fue decirle Mira ahí vamos para allá ahora tenemos que ir para acá pero no

305
00:29:35,500 --> 00:29:36,840
lo hemos movido.

306
00:29:36,840 --> 00:29:39,140
Bola X sigue valiendo lo mismo.

307
00:29:39,210 --> 00:29:44,420
Bola griega sigue valiendo lo mismo ahora vamos a modificar esos valores para qué.

308
00:29:44,430 --> 00:29:48,750
Para que la bola se mueva en qué dirección y en la que le acabamos de decir aquí.

309
00:29:48,990 --> 00:29:57,960
Entonces si Dir. x es igual a 1 porque lo hemos sitiado aquí si tengo que ir hacia la derecha vamos

310
00:29:57,960 --> 00:30:05,010
a decir que bola x es igual la bola X más velocidad se acuerdan la variable velocidad que arrancaba

311
00:30:05,010 --> 00:30:05,570
en 3.

312
00:30:05,580 --> 00:30:12,570
Bueno esto lo tengo que poner por variable y no poner un 3 aquí porque a medida que vaya aumentando

313
00:30:12,570 --> 00:30:18,960
la dificultad del sistema del juego en velocidad va a haber un 4 o un 5 entonces en mi bola se va a

314
00:30:18,960 --> 00:30:20,210
mover cada vez más rápido.

315
00:30:20,220 --> 00:30:32,040
Si Dir. x es igual a menos 1 bola x es igual la bola x Menos velocidad ok y lo mismo vamos a copiar

316
00:30:32,330 --> 00:30:35,500
y vamos a pegar lo vamos a hacer con y griega.

317
00:30:35,520 --> 00:30:42,720
Bueno ya tenemos el movimiento de la bola ahora nos queda una sola instrucción que es armo pantalla

318
00:30:42,780 --> 00:30:48,070
y se terminó la rutina de movimiento la rutina mueva bola se terminó.

319
00:30:48,090 --> 00:30:53,210
Tenemos chequeamos base tenemos contamos ladrillos tenemos todo.

320
00:30:53,200 --> 00:31:01,260
Vamos a ahora al próximo capítulo y vamos a ver cómo aumentar la dificultad y vamos a hacer la animación

321
00:31:01,260 --> 00:31:02,490
de la muerte.

322
00:31:02,490 --> 00:31:04,310
Nos vemos en el próximo capítulo.
