﻿1
00:00:04,380 --> 00:00:05,370
‫Hola y bienvenido.

2
00:00:05,370 --> 00:00:10,260
‫En esta lección, aprenderemos acerca de las sentencias if, esencialmente sentencias de rama de C++,

3
00:00:10,590 --> 00:00:14,520
‫y las usaremos para enviar nuestra plataforma hacia adelante y hacia atrás.

4
00:00:14,520 --> 00:00:15,180
‫Sumerjámonos.

5
00:00:16,300 --> 00:00:21,340
‫Así que ahora hay un par de lugares en los comentarios donde mencionamos que deberíamos hacer algo

6
00:00:21,640 --> 00:00:23,260
‫si hemos ido demasiado lejos.

7
00:00:23,560 --> 00:00:25,690
‫¿Cómo hacemos esto si.

8
00:00:25,990 --> 00:00:31,210
‫Bueno, anteriormente en Blueprint, hicimos eso si tenemos un nodo de rama.

9
00:00:31,450 --> 00:00:36,550
‫Ahora, en C++, hay un concepto similar y se llama sentencia if.

10
00:00:36,880 --> 00:00:39,970
‫Así que aquí hay un nodo de rama que teníamos como ejemplo anteriormente.

11
00:00:40,300 --> 00:00:45,070
‫Y pueden ver que teníamos esta variable que dice, tengo hambre, es un valor booleano, y

12
00:00:45,070 --> 00:00:50,980
‫podríamos ponerla en la condición y luego podríamos tener una rama de ejecución verdadera o una rama de ejecución falsa

13
00:00:50,980 --> 00:00:53,080
‫y podríamos ejecutar funciones de código.

14
00:00:53,410 --> 00:00:58,270
‫Cualquier cosa en Blueprint en C ++, es muy similar excepto que es textual.

15
00:00:58,270 --> 00:01:04,810
‫Así que tendríamos una variable llamada I'm Hungry, que es un valor booleano, y podemos decir si y tener paréntesis alrededor de

16
00:01:04,810 --> 00:01:05,410
‫eso.

17
00:01:06,250 --> 00:01:14,140
‫Luego abriríamos algunas llaves después de nuestra declaración if a menudo en la siguiente línea, y luego dentro de

18
00:01:14,170 --> 00:01:19,570
‫estas llaves podemos ejecutar las cosas que deberían suceder si es cierto.

19
00:01:19,570 --> 00:01:25,210
‫Así que estamos diciendo que si tengo hambre, como comida chatarra mientras la esposa no está mirando y luego podemos cerrar

20
00:01:25,210 --> 00:01:28,840
‫las llaves para decir, está bien, ese es el final de esto.

21
00:01:28,840 --> 00:01:30,400
‫Eso debería suceder condicionalmente.

22
00:01:31,150 --> 00:01:35,530
‫Y luego hay una opción que si queremos poner una rama falsa, si

23
00:01:35,530 --> 00:01:42,160
‫queremos conectar algo con lo falso aquí, entonces ponemos una palabra clave else y podemos comenzar un segundo conjunto de llaves.

24
00:01:42,160 --> 00:01:46,360
‫Y aquí podríamos seguir jugando videojuegos y luego podemos cerrar las llaves.

25
00:01:46,690 --> 00:01:51,310
‫Ahora aquí podemos tener tantas líneas como queramos entre estas llaves, no es necesario que

26
00:01:51,310 --> 00:01:52,600
‫haya una sola línea.

27
00:01:52,900 --> 00:01:57,040
‫Por lo tanto, podría agregar mucho código aquí si lo desea, o simplemente puede tener una sola línea.

28
00:01:57,340 --> 00:02:01,660
‫Y también con la variable aquí, no tiene que ser una variable que se conecte a una declaración if.

29
00:02:01,660 --> 00:02:04,960
‫Puede ser cualquier expresión que devuelva un valor booleano.

30
00:02:04,960 --> 00:02:08,680
‫Así que puedes llamar un poco a una función aquí.

31
00:02:08,680 --> 00:02:12,250
‫Podría usar un operador para obtener un resultado diferente.

32
00:02:12,670 --> 00:02:15,100
‫Así que hay algunas opciones diferentes disponibles para nosotros.

33
00:02:15,340 --> 00:02:21,460
‫Pero antes de nada de eso, necesitamos configurar qué tan lejos puede llegar esta plataforma antes de que deba

34
00:02:21,460 --> 00:02:22,870
‫regresar y hacer eso.

35
00:02:22,870 --> 00:02:24,670
‫Necesitamos una nueva propiedad.

36
00:02:25,030 --> 00:02:28,270
‫Actualmente tenemos nuestra distancia movida como visible en cualquier lugar.

37
00:02:28,270 --> 00:02:34,330
‫Vamos a crear uno nuevo justo arriba aquí, algunas propiedades que deben agregarse en cualquier lugar porque queremos

38
00:02:34,330 --> 00:02:36,460
‫poder configurarlo en el editor.

39
00:02:37,360 --> 00:02:44,770
‫Y usaré la misma categoría de plataforma móvil desde arriba y luego hacia abajo aquí, será de tipo flotante

40
00:02:44,770 --> 00:02:50,830
‫porque será una distancia y la llamaré la distancia de movimiento así cuando se le dé

41
00:02:51,070 --> 00:02:55,540
‫una valor por defecto, voy a darle 100 unidades por defecto.

42
00:02:55,540 --> 00:03:00,640
‫Pero obviamente podemos anular eso, cambiarlo en el editor y luego podemos hacer uso de esto

43
00:03:00,640 --> 00:03:02,080
‫en el archivo C++.

44
00:03:02,470 --> 00:03:06,220
‫Entonces, la forma en que vamos a hacer esto es que ya hemos movido nuestra distancia variable.

45
00:03:06,730 --> 00:03:12,100
‫De hecho, no quiero poder observar más, así que voy a eliminar la propiedad visible en cualquier lugar y la

46
00:03:12,100 --> 00:03:14,560
‫variable de movimiento de distancia del archivo de encabezado.

47
00:03:15,280 --> 00:03:20,140
‫Luego voy a volver a C++ y lo declararemos como una variable local en su lugar.

48
00:03:20,200 --> 00:03:26,560
‫Entonces, la manera fácil de cambiar eso es colocar un flotador frente al movimiento de distancia que básicamente lo declara como una variable

49
00:03:26,560 --> 00:03:31,240
‫local aquí dentro de la tecnología, lo que significa que sabemos que está completamente nuevo cada vez

50
00:03:31,240 --> 00:03:32,320
‫que lo usamos.

51
00:03:33,010 --> 00:03:35,590
‫Así que ahora tenemos que revertir la dirección de quién fue demasiado lejos.

52
00:03:35,830 --> 00:03:43,840
‫Entonces, la forma en que podemos hacer esto es que podemos usar operadores menores o iguales o iguales o mayores que que hemos visto

53
00:03:43,840 --> 00:03:46,930
‫en el pasado como nodos en el modelo.

54
00:03:46,930 --> 00:03:51,250
‫Pero ahora podemos usarlos como operadores como lo haríamos con suma o multiplicación.

55
00:03:51,850 --> 00:03:56,290
‫Y la forma en que podemos hacer esto es decir, está bien, bueno, hemos movido la distancia.

56
00:03:56,770 --> 00:04:00,280
‫¿Es esto mayor que en la distancia de movimiento?

57
00:04:00,280 --> 00:04:07,750
‫Así que podemos usar el símbolo mayor que, que es este Chevron derecho y luego podemos poner la distancia de movimiento.

58
00:04:08,030 --> 00:04:11,410
‫Parece que lo he llamado distancia de movimiento, pero creo que debería ser la distancia de movimiento.

59
00:04:11,410 --> 00:04:13,480
‫Así que accidentalmente tuve una D adicional allí.

60
00:04:13,480 --> 00:04:19,870
‫Eliminemos eso del encabezado del archivo y verá que esta expresión aquí devuelve un valor booleano para que

61
00:04:19,870 --> 00:04:22,420
‫podamos usarlo dentro de nuestra declaración if.

62
00:04:22,930 --> 00:04:32,290
‫Entonces, lo que podemos hacer es decir si el espacio abre corchetes y luego voy a cortar esta expresión y pegarla

63
00:04:32,290 --> 00:04:33,940
‫en esos corchetes.

64
00:04:33,940 --> 00:04:40,270
‫Así que está bien si la distancia recorrida es mayor que la distancia recorrida, entonces esencialmente queremos

65
00:04:40,270 --> 00:04:41,800
‫invertir la dirección.

66
00:04:41,800 --> 00:04:44,460
‫Así que para eso estamos haciendo este comentario.

67
00:04:44,480 --> 00:04:48,250
‫Queremos invertir la dirección del movimiento e invertir la dirección del movimiento.

68
00:04:48,250 --> 00:04:50,140
‫Tenemos una velocidad de plataforma.

69
00:04:50,350 --> 00:04:57,010
‫Así que fijemos la velocidad de la plataforma en el negativo de sí mismo, básicamente invirtiendo su dirección.

70
00:04:57,010 --> 00:04:59,560
‫Entonces la velocidad de la plataforma es igual.

71
00:05:00,630 --> 00:05:02,640
‫Velocidad de plataforma negativa.

72
00:05:02,880 --> 00:05:07,140
‫Entonces eso básicamente va a voltear la flecha sobre la velocidad.

73
00:05:07,590 --> 00:05:11,820
‫Voy a poner un punto y coma al final de esa línea y veamos si esta declaración realmente funciona

74
00:05:11,820 --> 00:05:12,390
‫como pretendíamos.

75
00:05:12,390 --> 00:05:14,520
‫Vayamos al editor y hagamos clic en compilar.

76
00:05:14,610 --> 00:05:19,590
‫Y ahora que se completó con éxito, podemos seguir adelante y presionar reproducir y ver qué sucede.

77
00:05:20,220 --> 00:05:26,820
‫Así que espero que avance y retroceda más o menos como lo está haciendo, y eso es bastante bueno.

78
00:05:27,090 --> 00:05:31,410
‫Ahora, lo que realmente está pasando es que va un poco más allá de su punto de partida.

79
00:05:31,870 --> 00:05:33,340
‫Ahora, la razón de eso.

80
00:05:33,360 --> 00:05:35,100
‫Entonces, si echamos un vistazo, ese es el punto de partida.

81
00:05:35,100 --> 00:05:40,290
‫Y si voy y presiono reproducir y miro hacia el lado desde el mismo ángulo donde está parado mi jugador,

82
00:05:40,290 --> 00:05:44,520
‫puedes ver que va a la misma distancia desde el punto de inicio en cada dirección.

83
00:05:44,910 --> 00:05:50,970
‫Y eso es porque cuando miramos lo que se calcula aquí, la distancia recorrida es desde una ubicación

84
00:05:50,970 --> 00:05:52,950
‫de inicio que nunca cambia.

85
00:05:53,250 --> 00:05:56,310
‫Nunca actualizamos esa ubicación de inicio.

86
00:05:56,310 --> 00:05:58,830
‫Así que vamos en la dirección negativa.

87
00:05:58,830 --> 00:06:03,000
‫Luego vamos a viajar más allá de él la misma cantidad que viajamos hacia el otro lado.

88
00:06:03,480 --> 00:06:06,180
‫Así que no es así como quiero que funcione mi plataforma.

89
00:06:06,300 --> 00:06:09,930
‫Así que voy a desafiarte a que actualices tu ubicación de inicio.

90
00:06:09,930 --> 00:06:12,210
‫Vamos a estar haciendo eso dentro de la declaración.

91
00:06:12,210 --> 00:06:17,850
‫Entonces, solo sucederá cuando lleguemos al final de nuestro viaje y lo configurará para que sea la

92
00:06:17,850 --> 00:06:23,760
‫ubicación actual, de modo que básicamente restablezcamos nuestro punto de partida al otro lado y luego podamos viajar en

93
00:06:23,760 --> 00:06:24,850
‫la dirección opuesta.

94
00:06:24,870 --> 00:06:28,200
‫Así que pruebe los resultados y vea si funciona como espera.

95
00:06:28,320 --> 00:06:29,610
‫Pausa el video y pruébalo.

96
00:06:32,840 --> 00:06:33,410
‫Bueno.

97
00:06:33,410 --> 00:06:34,100
‫Bienvenido de nuevo.

98
00:06:34,130 --> 00:06:39,240
‫Así que vamos a después de haber invertido la velocidad aquí, en realidad no importa si es antes o

99
00:06:39,240 --> 00:06:42,230
‫después porque no tienen un impacto el uno en el otro.

100
00:06:42,890 --> 00:06:52,010
‫Vamos a establecer la ubicación de inicio igual a la ubicación actual, lo que esencialmente significa que en el siguiente cuadro la distancia

101
00:06:52,010 --> 00:06:57,470
‫recorrida será cero porque sabemos que la distancia entre la ubicación de inicio

102
00:06:57,470 --> 00:06:59,570
‫y ella misma será cero.

103
00:06:59,690 --> 00:07:02,300
‫Regresemos y realmente presionemos el botón de compilación.

104
00:07:02,480 --> 00:07:05,600
‫Y cuando termine, presionemos reproducir y veamos qué sucede ahora.

105
00:07:06,380 --> 00:07:09,010
‫Así que espero que esto vaya hacia adelante y hacia atrás.

106
00:07:09,020 --> 00:07:09,680
‫Ahí tienes

107
00:07:09,860 --> 00:07:15,230
‫Casi la misma cantidad de unidades que siempre regresan a su ubicación inicial, sin retroceder más,

108
00:07:15,230 --> 00:07:16,610
‫lo cual es fantástico.

109
00:07:16,610 --> 00:07:18,220
‫Justo lo que quería que sucediera.

110
00:07:18,230 --> 00:07:24,950
‫Así que eso es todo por esta lección, hemos aprendido cómo usar nuestras declaraciones if y expresiones booleanas para hacer eso

111
00:07:24,950 --> 00:07:29,300
‫y hemos permitido que eso envíe nuestra plataforma de un lado a otro.

112
00:07:29,330 --> 00:07:30,020
‫Buena cosa.

113
00:07:30,380 --> 00:07:31,760
‫Te veré en la próxima conferencia.

